[Structure Type] uri

Summary

The instances of this type represent URIs parsed into components.

Package

ystok.help

Slots
scheme
A keyword representing a scheme of resource retrieval or protocol;
for example: :http, :ftp and the like.
host
A simple string or nil;
host is a part of the naming authority.
port
An integer number of the port or nil;
port is a part of the naming authority.
path
An hierarchical data that identifies a resource within the scope of the scheme and naming authority;
path is stored as a simple string or nil.
query
A non-hierarchical data that, along with the path component, identifies a resource within the scope of the scheme and naming authority;
query is stored as represented by
either a simple string (unparsed),
or an association list (parsed),
or nil.
fragment
Identification of a secondary resource, which may be some portion or subset of the primary resource, some view on representations of the primary resource;
fragment serves for client-side indirect referencing.
It is represented by a simple string or nil.
plist
A standard Common Lisp property list.
The properties are not handled by Ystok-URI except for the :user and :password, which are considered reserved.
Description

A uri instance stores components of URI separately. This parsed representation guarantees an efficient URI treatment.

For efficiency, all the strings stored in slots must be simple (of the simple-string type). Be cautious when calling any of (setf uri-slot) function explicitly.

The uri structure type also defines the following primitives: