- From: Tim Kindberg <timothy@hpl.hp.com>
- Date: Fri, 23 Sep 2005 15:09:28 +0100
- To: uri@w3.org
- CC: Tim Kindberg <timothy@hpl.hp.com>, sandro hawke <sandro@w3.org>
Dear URI community, I've been overloaded and only just managed to return to the problem of updating the tag URI specification to accommodate RFC 2822, the most recent standard for email addresses. I had some great input from Etan Wexler and Frank Ellerman a while back. Following that, I'm inclined to go for Frank's simpler approach: take a subset of RFC 2822 email addresses that users could be expected to read & manipulate by hand and brain (following the 'tag' philosophy), and simply %-encode certain of their characters. Principle 1: only allow relatively simple, human-legible/tractable email address to be embedded in tags. So only allow printing characters (%20 - %7E). NB only whitespace character is " " (which has to be quoted in RFC2822-land). No folding, no control characters. Principle 2: disallow obsolete constructs. Principle 3: disallow comments -- no value in a tag but lots of potential for confusion. In addition, the following characters should not appear literally as part of an email address in a tag; they must be %-encoded (ONCE) from the original email address: gen-delims = ":" / "/" / "?" / "#" / "[" / "]" / "@" sub-delims-used-in-tag-syntax = "," percent = "%" non-uri-characters = "<", ">", "^", "`", "{", "|", "}" The above gives me the following syntax, bsed on similar terms in RFC 2822: emailAddress = tag-local-part "@" DNSname tag-local-part = tag-dot-atom-text / tag-no-fold-quote tag-dot-atom-text = 1*tag-atext *("." 1*tag-atext) tag-atext = ALPHA / DIGIT / "!" / "%23" / "$" / "%25" / "&" / "'" / "*" / "+" / "-" / "%2F" / "=" / "%3F" / "%5E" / "_" / "%60" / "%7B" / "%7C" / "%7D" / "~" tag-no-fold-quote = "%22" *(tag-qtext / tag-quoted-pair) "%22" tag-quoted-pair = "%5C" tag-qptext tag-qtext = tag-atext / "(" / ")" / "%2C" / "." / "%3A" / ";" / "%3C" / "%3E" / "%40" / "%5B" / "%5D" / tag-qptext = tag-qtext / "%20" / "%5C" / "%22" (The defn of DNSname in http://www.ietf.org/internet-drafts/draft-kindberg-tag-uri-07.txt remains intact.) A final comment: there are several ways to write a given email address, e.g. timothy@hpl.hp.com = "\timothy"@hpl.hp.com = TIMothy@hpl.hp.com. Tags containing those different forms are distinct. We leave that to the users. As always, the community's comments would be appreciated. Cheers, Tim. -- Tim Kindberg hewlett-packard laboratories filton road stoke gifford bristol bs34 8qz uk purl.org/net/TimKindberg timothy@hpl.hp.com voice +44 (0)117 312 9920 fax +44 (0)117 312 8003
Received on Friday, 23 September 2005 14:10:14 UTC