UAX #9: applicability of higher-level protocols to bidi plaintext

Ken Whistler via Unicode unicode at unicode.org
Mon Jul 16 19:40:50 CDT 2018


On 7/16/2018 3:51 PM, Shai Berger via Unicode wrote:
> And I should add, in response to the other points raised in this
> thread, from the same page in the core standard: "If the same plain text
> sequence is given to disparate rendering processes, there is no
> expectation that rendered text in each instance should have the same
> appearance. Instead, the disparate rendering processes are simply
> required to make the text legible according to the intended reading."
> That paragraph ends with the following summary, emphasized in the
> source:
>
> 	Plain text must contain enough information to permit the text
> 	to be rendered legibly, and nothing more.
>
> The last answer inhttp://www.unicode.org/faq/bidi.html  violates this
> dictum, as I have showed here with different examples. As long as it
> stands, the Unicode standard fails its own criteria.

I've been trying to following your reasoning in this long thread, but am 
still not
finding much to convince that there is anything wrong in the #bidi8 FAQ 
entry
that you keep claiming is wrong.

First, for your "Hello, world!" example, in a rendering that imposes a 
RTL directional
context, the correct, conformant display of that string is:

!Hello, world

as you cited in your earlier example. To do otherwise, would represent a 
*non*-conformant
implementation of the UBA.

So your complaint seems to boil down to the claim that if you transmit 
"Hello, world!" to
a process which then renders it conformantly according to the Unicode 
Standard (including
UBA), then that process must somehow know *and honor* your intent that 
it display
in a LTR directional context. That information, however, is explicitly 
*not* contained in
the plain text string there, and has to be conveyed by means of a 
higher-level protocol.
(E.g. HTML markup as dir="ltr", etc.)

If the receiving process, by whatever means, has raised its hand and 
says, effectively,
"I assume a RTL context for all text display", that is its right. You 
can't complain if it
displays your "Hello, world!" as shown above. Well, you *can* complain, 
but you
wouldn't be correct. Basically, you and the receiving process do not 
share the same
assumptions about the higher-level protocol involved which specifies 
paragraph
direction.

So as I see it, you are either wanting the plain text to somehow contain 
and enforce
upon the renderer your assumption about the directional context that it 
should be
displayed in, OR, you are just unhappy about the bidirectional rendering 
conundrums
of some edge cases for the UBA. In either case, the remedy is the 
application of
LTR characters to provide context (or directional isolate controls, or 
explicit
higher-level markup).

--Ken



More information about the Unicode mailing list