What has to be stable?

John C Klensin klensin at jck.com
Mon Dec 17 19:13:49 CET 2007

--On Monday, 17 December, 2007 07:10 -0800 Paul Hoffman
<phoffman at imc.org> wrote:

> That's quite a long list of requirements on the Unicode
> Consortium. Is there some agreement from them, even if
> informal, to meet each of those requirements?

Actually, Paul, the list isn't very long.   I might have stated
in in terms of generative rules, which would be shorter, but I
think the form of Patrik's list is more useful in this case.  

This list is really nothing new.  We all understand, from the
time IDNA2003 was completed and earlier, that Unicode is not
usable for this class of application as simply a collection of
code points.  Instead, regardless of where they come from, one
needs canonical normalization rules and tables, mapping or
matching tables for any characters one wants to consider
equivalent (with compatibility equivalences and case-mappings
being important members of that category), a way to know which
code points are assigned and which are not, and, unless one has
a way to have either a version freeze or version-detection and
version-specific code paths, a collection of property and class
information adequate to support decision-making.   

In the general case, all of that means that we need Unicode
--both the code point list and the associated attributes and
functions-- to be as stable as we have come to expect from, for
example, ISO 8859-1. Once a character is assigned to a code
point, the assignment and all related properties and mappings
must be stable.  If something needs to be changed, it involves
either a new standard (e.g., ISO 8859-15), not some sort of
retroactive change to a few code points or their properties.

In that way, the desirable requirement is "once a code point is
assigned in a version of Unicode and bound to a class and
script, and a set of properties and mappings, all of those
things must be immutable".  Patrik's list is a great deal more
relaxed than that, in that it provides a list of specific
properties and characteristics that IDNA must depend on for _it_
to be stable and provide a long-term stable base for locators
and identifiers that depend on the DNS. 


More information about the Idna-update mailing list