From: jon@hackcraft.net
Date: Thu Nov 13 2003 - 04:56:31 EST
Quoting Chris Jacobs <chris.jacobs@freeler.nl>:
> "The interpretation of private use characters (Co) as graphic characters or
> not is determined by private agreement."
> "The interpretation of private use characters (Co) as base characters or not
> is determined by private agreement."
> "The interpretation of Private Use characters (Co) as combining characters or
> not is determined by private agreement. "
>
> Is this just another way of saying that this is left undefined, or does it
> imply that a conformant application should be able to detect if private
> agreements exist?
In my reading a bit of both. These properties for these characters are
undefined by Unicode.
As I see it the following behaviours would all be conformant:
1. Your application uses these characters in accordance to a private agreement
between other users of the protocol the application was built to support.
2. Your application works with a protocol which has a rule against the use of
private use characters (such a rule would be at a higher level than Unicode)
and it throws and error in such cases (this is really a variant on the first
possibility - essentially a private agreement that these characters are non-
characters and should not occur).
3. Your application has no "knowledge" of any private agreement. It treats
private use characters as graphic non-combining characters, rendering them with
an indicator of a unrenderable character ("box" shapes and question marks are
common glyphs for use here, the Last Resort font offers a glyph which indicates
that it is a private use character rather than any other unknown character)
and/or passing them to the next processing step unchanged.
4. Your application behaves as in the item above, but offers a mechanism to
override this behaviour (particularly useful if it were a library rather than
an application per se).
It is not conformant to "fix" these characters by replacing them with other
characters, though obviously a application like item 1 or 2 can do whatever
operation it is meant to do with them.
-- Jon Hanna <http://www.hackcraft.net/> *Thought provoking quote goes here*
This archive was generated by hypermail 2.1.5 : Thu Nov 13 2003 - 05:52:14 EST