The general URL structure of this area is:
/m//MemberName/pageName.html
/s/SongTitle/AuthorName/pageName.html/t//Publisher_Name/AuthorName/SongTitle/pageName.html
/c//AuthorName/SongTitle/pageName.html
/p//ArtistName/SongTitle/pageName.html
/p//GroupName/SongTitle/pageName.html
The double-slash (yes, it's permitted in URL's and it's recognizably
different from a single slash) is shorthand for two additional
index levels, which are derived from the first two
characters of the following name, e.g.
author/A/Au/AuthorName. This will both provide built-in
indexing and limit directory size. Translating double-slashed URL's is
handled using magic (e.g.,
mod_rewrite, with something like
//(.)(.) ->/$1/$1$2 -- it's actually a little more
complex; see the ''Structured Homedirs'' example in the Apache 1.3 URL
Rewriting Guide).
Another possibility would be to use (c) for creator and
(p) for performer, thus incorporating the common (if
technically incorrect) text shorthand for the ``circle-C'' and
``circle-P'' copyright symbols.
Note that a person's MemberName doesn't have to be the same as their AuthorName, and that in fact the connection might not even be public knowledge (if your name was WolfgangAmadeusMozart you might prefer to go incognito as WolfBoy, for example). Names are ``WikiWords''; underscores are displayed as spaces in page headings; interior caps are displayed with a preceeding space in AuthorName and SongTitle, but not in Publisher_Name or MemberName (where interior caps are often what you want). Hyphens and periods are permitted. For example:
The system is very WikiLike -- a preprocessor looks for "words" with
embedded capitals, underscores, hyphens, and periods, and turns them into
links automagically. The song index under /s// is actually
done by means of a database lookup -- the song pages are really
under the corresponding composer.
Every directory contains a couple of XML files that contain all of the essential information for that directory. The XML is processed (offline, for speed and security) to produce the standardized pages like framesets, navigation bars, home pages, indices, cross references, and so on. Embedded XML is also used for page style elements.