[Zope3-dev] spelling of namespace signifiers

Casey Duncan casey@zope.com
05 Jun 2002 10:53:44 -0400


On Wed, 2002-06-05 at 10:09, Jim Fulton wrote:
[snip]
> 
>   How would you spell the relative link? You'd have to
>   use:
> 
>      ../container;etc/Services
> 
>   but then you'd need to know the container name.

Maybe it would be possible to allow multiple namespace designations in
the URL, with the last one winning out such that:

http://server/folder/container;views/Services;etc

was legal (if messy). This would be there purely to support easy
relative URLs. The rule would be that given several ambiguous namespace
designations, the one in the rightmost path segment would win.

So, to recap:

container/bar.html;view

is bad because many clients see ;view as part of the file name (and
therefore don't follow the standard)

container/view;bar.html

is bad because standards conforming clients think "view" is the file
name.

container/view::bar.html

is possibly bad because : means something else that might confuse URL
parsers, it get urlencoded (ugly) and relative urls have to be written
./view::bar.html

container/view--bar.html (et al)

has been suggested as a fix for the ills of the above. -- would need to
be made illegal in an id for that to work. Dash already has the
advantage of not being legal in a Python identifier.

container;view=bar.html

makes relative URLs hard because they need to know the container name.

container;views/bar.html

makes relative URLs to a different namespace potentially have to know
the container name.

Just from a simple complication analysis of the above,
container/view--bar.html looks like a pretty viable option, the only
stumbling block to me is getting used to -- as a delimiter. Brings back
memories of Hypercard ;^).

-Casey