[Zope3-dev] Final(?) "Safe" Character List

Phillip J. Eby pje@telecommunity.com
Fri, 07 Jun 2002 10:25:43 -0500


Well, this looks to be it, unless anybody has any other alterations to
make.  These are the characters we have to work with for an escape
sequence.  (We should probably make up some kind of summary of the
unsuccessful results of the tests as well, for future reference in deciding
on rules for content ids.)


Characters Under Consideration
==============================

!        RFC 1738 "extra"; RFC 2396 "unreserved mark"

+        Listed as "safe" in RFC 1738; RFC 2396 "reserved in context"

=        RFC 1738 "reserved in context"

@        RFC 1738 "reserved in context"

_        RFC 1738 "safe"; RFC 2396 "unreserved mark"

======== End Table


So I think we're ready to move to a proposals phase for parameter encoding
and view selection syntax.

I think the key issue here is, which of the characters above, or what
combination of characters above, will *not* be allowed to begin a content
ID?  (Assuming we don't use a regex or split-based syntax like
'view=foo+thepage.html'.)

Here are some (far from exhaustive) ideas, to get the debate rolling...
Personally, I don't like *any* of them, but some stink a *little* less than
the others:


Short Form              Long Form
------------------      ----------------------------------

!view!thePage.html      !ns=view+skin=theSkin!thePage.html

@view=thePage.html      @ns+view!skin+theSkin=thePage.html

@view!thePage.html      @ns=view+skin=theSkin!thePage.html

=view@thePage.html      =ns+view=skin+theSkin@thePage.html

@view@thePage.html      @ns=view+skin=theSkin@thePage.html

__view@thePage.html     __ns=view+__skin=theSkin@thePage.html


Ugh!  We really don't have much to work with here.  It's *really* too bad
that ( and ) didn't work out.  Even "(ns=view+skin=theSkin)thePage.html" is
a lot more readable than any of the crap above.

Anybody think we should dip into the "*", "$", "~", "[", and "]" characters
and do another round of testing?