** MathML
[58] [[MathML 3.0]] で [CODE(XMLe)@en[[[math]]]] [[要素]]に追加されました。
* 例
[10] [SAMP[english1 4WERBEH 3WERBEH 2WERBEH english5]]
のように表示されるべき段落があるとします。段落自体は[[ラテン文字]]の英文ですから、
左から右に向かうべきですが、中に[[ヘブライ文字]]で書かれた文を引用しています。
この部分は右から左に向かうべきです。
このとき、 [ABBR[HTML] [Hypertext Markup Language]]
[[マーク付け]]としては
- [11] [SAMP(HTML)[english1 HEBREW2 HEBREW3 HEBREW4
english5
]]
- [12] [SAMP(HTML)[english1 HEBREW2 HEBREW3 HEBREW4
english5
]]
- [13] [SAMP(HTML)[english1 [CODE(char)[RLE]]HEBREW2 HEBREW3 HEBREW4[CODE(char)[PDP]] english5
]]
のどれでも [ABBR[OK]] です。
(>>13 では [CODE(HTMLe)[[[q]]]] のタグを書いていません。
[CODE(char)[RLE]] と [CODE(char)[PDP]] を [CODE(HTMLe)[q]]
要素に含めるべきか否かよくわからないからです。
視覚的マーク付けと意味的マーク付けは相性が悪い。)
>>11 だけでも、 [ABBR[bidi] [双方向性]]
算法がヘブライ文字を見つけて右から左に向かうことを勝手に判断しますから、
普通は期待通りの結果が得られます。
[14] ここで、 [SAMP[english1 4WERBEH english3 2WERBEH english5]]
を考えます。ややこしいことに、
引用するヘブライ文字の文が更にラテン文字の英語を含んでしまっています。
- [15] [SAMP(HTML)[english1 HEBREW2 english3
HEBREW4
english5
]]
- [16] [SAMP(HTML)[english1 HEBREW2 english3
HEBREW4
english5
]]
- [17] [SAMP(HTML)[english1 [CODE(char)[RLE]]HEBREW2 [CODE(char)[LRE]]english3[CODE(char)[PDP]] HEBREW4[CODE(char)[PDP]] english5
]]
>>15 はうまくいきません。
[ABBR[Bidi] [双方向性]] 算法はそもそも[[平文]]を想定しているので、
マーク付けによって木構造があっても特に取り計らってくれません。
[SAMP[HEBREW2]] と [SAMP[HEBREW4]] をそれぞれ別の埋め込み文とみなして、
[SAMP[english1 2WERBEH english3 4WERBEH english5]]
としてしまいます。
このように、2階層以上に左から右、右から左の入れ子関係があるときには、
>>16 か >>17 のように陽にこれを示さなければいけません。
[18] はっきりいってこの方式は駄目ですね。
折角の木構造を生かせていない。
[45]
[[XHTML m12n]] では、[[双方向的文]][[モジュール]]に、
この[[モジュール]]を選択すると [[I18n]] [[属性集成]]に
[CODE(HTMLa)@en[[[dir]]]] が追加される、とあります。
これはわかりにくい。 [[Anne]] たんが見落とすのも無理はない。
しかも、[Q@en[dir* ("ltr" | "rtl")]] と名前の後に星印がついている。
つまり必須。それはおかしい。
([[名無しさん]] [WEAK[2006-08-06 05:24:05 +00:00]])
[46]
[CITE['dir' attribute on BIDI inline elements and actual browsers from Helmut Wollmersdorfer on 2006-12-18 (www-html@w3.org from December 2006)]]
([[名無しさん]] [WEAK[2006-12-20 23:30:41 +00:00]])
[49]
[CITE@fr[Denes Nad Makedonija - Wikipédia]] ([TIME[2008-06-04 06:14:58 +09:00]] 版)
[PRE(HTML example code)[
Hymne national
]PRE]
;; The document element also has the [CODE(HTMLa)@en[[[dir]]]] attribute
specified with the value of [CODE(HTML)@en[[[ltr]]]], therefore the
[CODE(HTMLa)@en[[[dir]]]] attribute on the [CODE(HTMLe)@en[[[span]]]]
element is redundant.
([[名無しさん]])
[[#comment]]
** table 要素 dir 属性 (HTML, XHTML 1)
[26] [ABBR[HTML] [Hypertext Markup Language]] の
[CODE(HTMLe)[[[table]]]] 要素の [CODE(HTMLa)[dir]]
属性は、 >>1- の通常の役割に加えて、表の方向を決定します。
[CODE(HTML)[ltr]] なら表は左から右へ、 [CODE(HTML)[rtl]]
なら右から左へ進みます。
[CODE(HTMLe)[table]] はブロック水準要素型なので、 >>4-
の通り、既定値は上位要素からの継承です。
[36]
仕様書:
- [[SI 4281]]:1998
-- [CSECTION[9.2 Tables]]
- [[HTML 4]]
--
[27] 表が左から右に進むときは、最初の行は左側で、
次の行がその右に続きます。
右から左に進むときは、最初の行は右側で、次の行がその左に続きます。
どちらの場合も最初の列は上で、次の列が下に続きます。
[SRC[HTML 4, SI 4281:1998 9.2]]
[41]
このような効果があるのは、 [CODE(HTMLe)[table]] 要素だけです。
[CODE(HTMLe)[[[tbody]]]] や [CODE(HTMLe)[[[tr]]]]
は通常通りの働きしか持ちません。
なお、 [CODE(HTMLe)[[[th]]]] や [CODE(HTMLe)[[[td]]]]
の [CODE(HTMLa)[dir]] 属性は、通常通りそのこま内のレンダリングを制御します。
両要素型はブロック水準要素型らしいので、上位の指定を継承します。
[30]
表の中では行だけではなく列からも継承します。
[CODE(SGML)[%[[cellvalign]]]]
の説明をみてください。
[[#comment]]
** メモ
[[#comment]]
* bdo 要素 dir 属性 (HTML, XHTML 1)
[28] [CODE(HTMLe)[[[bdo]]]] 要素型の説明を参照してください。
* メモ
[43]
[CITE[Re: [Comment on its tagset WD] On (Bi)Directionality from Felix Sasaki on 2006-01-18 (www-i18n-comments@w3.org from January 2006)]]
([[名無しさん]] [WEAK[2006-01-28 02:48:57 +00:00]])
[47]
[[ISO/IEC 19757]]-3:2006 は
[DFN@en[[CODE(XMLe)@en[[QN[[[dir]]] [http://purl.oclc.org/dsdl/schematron]]]]]]
[[要素]]を定義しています。
[CODE(XMLa)@en[[[value]]]] [[属性]]があって、
[CODE(XML)@en[[[ltr]]]] ([[左]]から[[右]]) または
[CODE(XML)@en[[[rtl]]]] ([[右]]から[[左]])
の[[自然言語文]]を表すとだけ規定されています。
([[名無しさん]])
[48]
[CITE@en-US[Internationalization Tag Set (ITS) Version 1.0]] ([CODE[2007-04-03 18:11:18 +09:00]] 版)
([[名無しさん]])
[52] [CITE[IRC logs: freenode / #whatwg / 20100824]]
( ([TIME[2010-09-02 21:15:06 +09:00]] 版))
[53] [CITE@en[Web Applications 1.0 r5579 Try to clarify that directionality affects the use of the title outside the document.Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=10817]]
( ([TIME[2010-10-05 08:48:00 +09:00]] 版))
[54] [CITE@en[Web Applications 1.0 r5672 Revamp how dir='' is implemented; add dir=auto; update to recent CSS developments.Fixing http://www.w3.org/Bugs/Public/show_bug.cgi?id=10808]]
( ([TIME[2010-11-09 09:57:00 +09:00]] 版))
[59] [CITE@en[Web Applications 1.0 r5886 Incomplete requirement text for and