Directionality Scope/inheritence issue (same as translatability)

Hi all,

Looking at directionality it seems we have the same issue as the one I described in
http://lists.w3.org/Archives/Public/public-i18n-its/2006JanMar/0368.html.

For example:

<myDoc xmlns:its="http://www.w3.org/2005/11/its">
 <head>
  <its:documentRules>
   <its:dirRule its:selector="//*[@dir='ltr']" its:dir="ltr"/>
   <its:dirRule its:selector="//*[@dir='rtl']" its:dir="rtl"/>
  </its:documentRules>
 </head>
 <body>
  <par dir='ltr'>LTR text <span dir='rtl'>RTL text</span> LTR text.</par>
  <par dir='rtl'>RTL text <span dir='ltr'>LTR text</span> RTL text.</par>
 </body>
</myDoc>

Here no matter how you arrange the rules, one of the <span> contents will end up flagged as the same direction specified in the dir
attribute of its <par> parent, which is obviously wrong.

Here again, the problem is that the global rules for dir (according the defintion here:
http://www.w3.org/International/its/itstagset/itstagset.html#selection-defaults-etc) has the direction inherited by its children,
and we have no way to know if one of the children corresponds to another direction specified earlier in the rules.

I'm guessing that here again, the solution would be an additional attribute that would flag a rule has being not overwritable by the
next rules.

Something like:

<myDoc xmlns:its="http://www.w3.org/2005/11/its">
 <head>
  <its:documentRules>
   <its:dirRule its:selector="//*[@dir='ltr']" its:dir="ltr" its:overwritable="no" />
   <its:dirRule its:selector="//*[@dir='rtl']" its:dir="rtl" its:overwritable="no" />
  </its:documentRules>
 </head>

... Then cases like this would work:

 <body>
  <par dir='ltr'>LTR text <span dir='rtl'>RTL text</span> LTR text.</par>
  <par dir='rtl'>RTL text <span dir='ltr'>LTR text</span> RTL text.</par>
  <par dir='rtl'>RTL text <b>bold RTL text</b> RTL text.</par> </body>
</myDoc>

It's easy to implement in a decorated tree, but I'm not sure how that would work for XSLT or Xquery implementation.

I think it's important that we solve this very soon, because currently it makes any markup similar to ITS local markup not very
useable throught ITS.

Cheers,
-yves

Received on Tuesday, 21 March 2006 20:57:09 UTC