On 2/12/15 2:10 PM, Peter Saint-Andre - &yet wrote:
On 2/12/15 8:50 AM, Pete Resnick wrote:
On 2/11/15 7:59 PM, Peter Saint-Andre - &yet wrote:
One thing that bothers me here is that we're not providing actionable
guidance to the vast majority of non-delusional profile authors. Are
we saying that it's not a good idea to say anything about
directionality at all?

In my mind there are two possibilities that a profile author ends up
with:

1. My application doesn't care whether the strings I'm using appear
differently in different contexts. If a string looks one way to a person
on a LTR system and a different way to a person on an RTL system, that's
fine. I don't care what order the characters appear (for instance, if
numerals appear before or after punctuation).

or:

2. I want my strings to appear consistently. Numerals appearing on one
side of a dot on an LTR system and on the other side of a dot on an RTL
system would be a really bad thing.

If 1, your profile should say, "Directionality Rule: None".

If 2, then you want "Directionality Rule: Something", and unless you
have some magic specialized knowledge (that you don't, trust us), you
want "Directionality Rule: 5893". And, BTW, you had better be basing
things on IdentifierClass; 5893 is *not* sane if you're basing on
FreeformClass, and you probably meant to give answer #1 above.

Do we agree that the above is what the WG is saying?

That seems reasonable.

If so, does the text capture that?

Not quite. We capture the conclusions but not the reasoning. Let me see
if I can formulate some text...

Here you go...

###

5.2.5.  Directionality Rule

   The directionality rule of a profile specifies how to treat strings
   containing what are often called "right-to-left" (RTL) characters
   (see Unicode Standard Annex #9 [UAX9]).  RTL characters come from
   scripts that are normally written from right to left and are
   considered by Unicode to, themselves, have right to left
   directionality.  Strings containing RTL characters often also contain
   "left-to-right" (LTR) characters, such as numerals, as well as
   characters without directional properties.  Consequently, such
   strings are known as "bidirectional strings".

   Presenting bidirectional strings in different layout systems (e.g., a
   user interface that is configured to handle primarily an RTL script
   vs. an interface that is configured to handle primarily an LTR
   script) can yield display results that, while predictable to those
   who understand the display rules, are counter-intuitive to casual
   users.  In particular, the same bidirectional string (in PRECIS
   terms) might not be presented in the same way to users of those
   different layout systems, even though they are consistent within any
   particular layout system.  In some applications, these presentation
   differences might be considered problematic and thus the application
   designers might wish to restrict the use of bidirectional strings by
   specifying a directionality rule.  In other applications, these
   presentation differences might not be considered problematic (this
   especially tends to be true of more "free-form" strings) and thus no
   directionality rule is needed.

   The PRECIS framework does not directly address how to deal with
   bidirectional strings across all string classes and profiles, and
   does not define any new directionality rules, since at present there
   is no widely accepted and implemented solution for the safe display
   of arbitrary bidirectional strings beyond the Unicode bidirectional
   algorithm [UAX9].  Although rules for management and display of
   bidirectional strings have been defined for domain name labels and
   similar identifiers through the "Bidi Rule" specified in the IDNA2008
   specification on right-to-left scripts [RFC5893], those rules are
   quite restrictive and are not necessarily applicable to all
   bidirectional strings.

   The authors of a PRECIS profile might believe that they need to
   define a new directionality rule of their own.  Because of the
   complexity of the issues involved, such a belief is almost always
   misguided, even if the authors have done a great deal of careful
   research into the challenges of displaying bidirectional strings.
   This document strongly suggests that profile authors who are thinking
   about defining a new directionality rule think again, and instead
   consider using the "Bidi Rule" [RFC5893] (for profiles based on the
   IdentifierClass) or following the Unicode bidirectional algorithm
   [UAX9] directly (for profiles based on the FreeformClass or in
   situations where the IdentifierClass is not appropriate).

###


_______________________________________________
precis mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/precis

Reply via email to