cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From (Stephen R. Savitzky)
Subject Re: Sitemap and Links...
Date Tue, 11 Jan 2000 17:26:38 GMT
This might be a good point at which to mention the way the PIA (see our
website at does site mapping.  There are several
significant differences between our site-mapping framework and the one
proposed for Cocoon:

 1. There is a map element for each directory in URL-space, which either
    comes from a file in the directory itself, or is inherited from the
    parent directory.  Hence, the site map scales naturally with the size of
    the site, and there is no need to load descriptions for directories
    until they are accessed.

 2. The map file can specify multiple directories which are effectively
    overlaid, and can specify resources elsewhere in the filesystem:

    <site:Container name="foo" virtual="/home/pia/foo">
	<!-- specifies /home/pia/foo as a virtual overlay -->

	<site:Resource name="passwords.txt" virtual="/etc/passwd"/>
	<!-- if a `real' passwords.txt exists, it overrides the virtual
	     file. -->

	<site:Container name="bar" real="/home/bar/htdocs/>
	<!-- effectively specifies a symbolic link. -->


 3. There are no wildcards: resources are either described by full name or
    by extension:

    <site:Container name="zorch">
        <site:Resource name="foo.xhtml" type="text/html" tagset="frob.ts"/>
	<site:Ext name="html" type="text/html" />
        <site:Ext name="xhtml" type="text/html" tagset="default.ts" />
        <site:Ext name="xml" type="application/xml" hidden="yes" />

 4. Most importantly, URL's passed to the server are not required to have an
    extension.  Extensions are tried in the order specified in the map.  So
    in the example above, 

	.../zorch/bar would map into bar.html (with no processing) if it
	exists, otherwise bar.xhtml (processed with default.ts).  Even if
	bar.xml exists, it's hidden from the client and can only be accessed
	internally.  .../zorch/foo maps into foo.xhtml and gets special

 5. Elements without a namespace prefix become "properties" that are
    accessible via a NamedNodeMap while documents are being processed.
    Inside of documents they're accessible as predefined external entities.

It might also be worthwhile looking at the W3C's RDF (Resource Description
Framework), and the IETF's WebDAV framework.  Our scheme is vaguely based on
ideas from a combination of these. 

Stephen R. Savitzky  <>  <>
Platform for Information Applications:      <>
Chief Software Scientist, Ricoh Silicon Valley, Inc. Calif. Research Center
 voice: 650.496.5710  front desk: 650.496.5700  fax: 650.854.8740 
  home: <> URL:

View raw message