<< Prev | - Up - | Next >> |
Sections provide a means of hierarchically structuring the database. A section is simply a container for subentries, much like a directory or a folder. If mogul:/sherlock/BakerStreet
is the URI id of a section, then the URI of an immediate entry might be mogul:/sherlock/BakerStreet/pipe
. This makes it easy to structure the database into sections and subsections, just like you would organize your files into directories and subdirectories.
An individual contributor obtains an id from the Mozart Consortium and typically will use it to denote a section entry in which he accumulates all his package entries, plus possibly one contact entry for himself. A larger group, however, might want to grant subsections to its members or employees thus allowing for local decentralization.
A section's body contains lines that look just like headers. Each line corresponds to a subentry, and associates an id with the url at which the entry can be found. For example:
type: section
id: sherlock
email: watson@baker-street.com
holmes: SherlockHolmes.entry
lestrade: http://www.scotland-yard.uk/people/lestrade/MeForMogul
irregulars: BakerStreetIrregulars.entry
The id of a subentry must be given in a ``relative'' form.1 The actual id is then computed by resolving relative to the section's ID. Thus the relative URI id irregulars
is resolved relative to mogul:/sherlock
to produce the absolute URI id mogul:/sherlock/irregulars
Similarly, URLs of entries may be given in a relative form: they are then resolved relative to the URL of the section entry. For example, assuming that the URL of the section entry above is
http://www.baker-street.com/~watson/mogul/db/sherlock.main
then, the URL for subentry mogul:/sherlock/holmes
, which was supplied in the relative form SherlockHolmes.entry
, will be resolved to:
http://www.baker-street.com/~watson/mogul/db/SherlockHolmes.entry
Note that the optional email
header permits to introduce an administrative address for a subsection that is different from that of its parent section.
<< Prev | - Up - | Next >> |
mogul:
scheme prefix is omitted. Otherwise, the colon is mistaken for the end of the header key.