Re: Case sensitivity on the LHS
"Adam M. Costello" <[email protected]>
| Newsgroups | gmane.ietf.imaa |
|---|---|
| Message-ID | <[email protected]> |
Roy Badami <[email protected]> wrote: > So does IDNA permit mixed-case annotation? I was under the impression > that at one point the draft forbade the use of mixed-case annotation > with IDNA, but I can't find that prohibition in the current documents. IDNA makes no mention of mixed-case annotation or case preservation. > How exactly does mixed-case annotation work in IDNA? Officially, it doesn't. It was too contentious to be mentioned. The prevailing opinion was that IDNA is complex enough already, and shouldn't saddle implementors with nonessential complications. However, IDNA is architected so that mixed-case annotations could be added in the future in a backward-compatible way. The ToASCII operation already has almost enough flexibility for this, because the case of the letters used to encode the non-ASCII characters is unconstrained. The ASCII letters, however, are always lowercased by the Nameprep step, and Punycode simply copies them, so a strict implementation of ToASCII cannot preserve the case of ASCII letters for inputs containing some non-ASCII characters. And a strict implementation of ToUnicode has no flexibility at all; the exact Unicode output is completely determined regardless of any mixed-case in the ACE input. But ToASCII and ToUnicode don't really need to be that strict to ensure interoperability. As long as they output something equivalent to what the official versions output, that's good enough. A future update of IDNA could therefore relax the specification enough to allow for mixed-case annotations. Even if such an update never comes, gutsy implementors could go ahead and do it, and still interoperate with the strictly conformant implementations and with each other. That last sentence is probably heresy. :) > You have to somehow pass case information through the nameprep > process; is the precise algorithm actually spelled out anywhere? Nope. Since it's not officially supported, working out all the details wasn't a priority, and hasn't yet been done. AMC P.S. Roy, have you subscribed to the list yet? You appear to be participating as actively as anyone.