コックニー方言の英語。ネイティブアメリカンのナヴァホ族の言語。主コード「x」は、実験的言語コードであることを示す。2文字の主コードは、[ISO639]の言語略号のために予約されている。(サンスクリット語)などがある。2文字の副コードは、すべて[ISO3166]の国コードであると理解される。言語コードの継承ある要素は、次の優先順に従って言語コード情報を継承する。lang属性は継承される)。(これはサーバによって設定され得る)。Content-Languageヘッダの例は次のようなものである。en-cockneyユーザエージェントのデフォルト値及びユーザの設定。次に例示する文書の主言語はフランス語("fr")である。1つの段落がスペイン語("es")であると宣言されており、その後はフランス語に戻る。次の段落には日本語("ja")の句が埋め込まれており、日本語の句が終わると再びフランス語に戻っている。挿入で中断され、</EM>...またフランス語になる...</BODY></HTML>注意。表のコマは、lang属性の値を、親要素からではなくスパン中の最初のコマから継承してよい。詳しくは、表の配置の継承の項を参照されたい。言語コードの解釈HTMLの文脈では、ユーザエージェントは言語コードを単一のトークンとしてではなくトークンの階層として解釈すべきである。ユーザエージェントが言語情報によってレンダリングを調整する際、つまりスタイルシート言語コードとlang属性値を比較する際、常に正確な合致を試みねばならないが、主コードの合致でも十分であることをも考慮する必要がある。次に用いるようにする必要がある。言語コード階層は、主コードが共通する言語を、その変型で主コードが等しく副コードが異なる1つ以上の言語によって理解できるということを保証するものではない。言語コード階層は単に、ユーザにとってそうした操作が正しい場合においてユーザが当該の変形を要求することを許容するのみである。[UNICODE]が定義する固有の方向性を持たないテキスト)の、基本方向を指定する。この値はまた、表の方向性についても指定する。左から右の、テキストあるいは表。右から左の、テキストあるいは表。文書の言語をlang属性で指定するのに加えて、著者は、文書のテキストや表の構成に関する基本方向(左-右か、右-左か)をも指定する必要があり得よう。方向性の指定は、dir属性によって行う。[UNICODE]仕様は、文字に対して方向性を割り当てており、またテキストの適切な方向性を決定するための(複合)アルゴリズムを定義している。文書中に、表示可能な右-左文字が含まれていない場合、適合ユーザエージェントは、[UNICODE]の双方向アルゴリズムの適用を要求されない。文書中に右-左文字が含まれていて、かつユーザエージェントがこれを表示する場合、ユーザエージェントは双方向アルゴリズムを用いねばならない。ユニコード仕様はテキスト方向を扱う特殊文字を規定しているが、HTMLはdir属性(DIR要素と混同しないこと)及びBDO要素という、より高次のマーク付け構成素を提供し、同じ目的を果たす。dir="rtl">...ヘブライ語の引用...</Q>上のHTMLマーク付けの方が、これと等価な下のユニコード制御文字の数値参照よりも、直感的に判りやすい。&#x202B;&#x05F4;...ヘブライ語の引用...&#x05F4;&#x202C;ユーザエージェントは、テキスト方向の決定にlang属性を用いてはならない。dir属性は、継承され、また上書きされ得る。詳細はテキスト方向情報の継承の項を参照されたい。次に、双方向性アルゴリズムの望ましい動作を説明する例を示す。この例には、左-右用字系である英語と、右-左用字系であるヘブライ語が含まれる。HEBREW6上の例文(並びに後述の関連例文すべて)に含まれる文字は、上に示した順序でコンピュータに保存される。ファイル中の最初の文字が「e」であり、2番目の文字が、「n」、最後の文字が「6」である。ここで、この段落を含む文書の主言語が英語であると仮定する。これはつまり、基本方向が左-右であることを意味する。すると、この行の正しいプレゼンテーションは、次の通りとなる。点線が、文の構造を示している。英語が主であり、ヘブライ語テキストがそこに埋め込まれている。ユーザエージェントが双方向アルゴリズムを適用しているため、正しいプレゼンテーションのために追加的なマーク付けを行う必要はない。仮に、これとは反対に主言語がヘブライ語であるとすると、基本方向は右-左となる。そこで正しいプレゼンテーションはこうである。ヘこの場合、文全体は右-左方向でプレゼンテーションされ、埋め込まれた英語部分が双方向アルゴリズムによって適切に逆転される。テキスト方向情報の継承ユニコードの双方向アルゴリズムは、テキストの固まりについて基本のテキスト方向を必要とする。dir属性の設定を行う。あるブロックレベル要素にdir属性が設定された場合、当該要素が閉じられるまでの間にある、すべての子孫ブロックレベル要素に対して効果を持つ。子孫である要素のdir属性値は、継承された値を上書きする。文書全体の基本テキスト方向を設定するには、HTML要素にdir属性を設定する。dir="ltr">...左-右のテキスト...</P><P>...再び右-左のテキスト...</P></HTML>一方、行内要素は、dir属性を継承しない。これはつまり、dir属性のない行内要素は双方向アルゴリズムに関して追加的な埋込みレベルを開始しないということを意味している。(ここでは、要素は、デフォルトのプレゼンテーションによってブロックレベルであるか行内レベルであるかと考えられている。INS要素とDEL要素は文脈によってブロックレベルでも行内レベルでもあり得るという点に注意されたい。埋込みテキストの方向設定[UNICODE]の双方向アルゴリズムは、前述の例のように、埋込み文字列を、その固有の方向性に応じて自動的に逆転させる。一般的には、1レベルの埋込みしか表せない。方向転換の埋込みレベルを追加したい場合、行内要素にdir属性を設定する必要がある。再度前述のテキストを考えよう。HEBREW6ここで、この段落を含む文書の主言語が英語であると仮定する。この英文はHEBREW2からHEBREW4までのヘブライ語の区間を含み、このヘブライ語区間は英語の引用(english3)を含む。すると、このテキストの望ましいプレゼンテーションは、次の通りとなる。英2回の方向変換を埋込むためには、追加情報を与える必要がある。ここでは2番目の埋込みを明示的に区切ることで追加情報とする。次の例では、テキストのマーク付けにSPAN要素とそのdir属性を用いる。HEBREW6著者は、複数の方向転換を埋込むために、ユニコードの特殊文字を用いてもよい。文字とPDFとで囲む。ユニコードの制御文字とHTMLの方向性マーク付けとの併用。[UNICODE]の整形用制御文字に関連する衝突が起こり得るという点に注意する必要がある。どちらか一方を相互排他的に用いねばならない。マーク付けすることの方が、文書構造の統一性をよりよく保証し、また双方向性HTMLテキストを単純なテキストエディタで編集する際に起こる問題を回避できる。[UNICODE]制御文字の利用に傾きがちなソフトウエアもあろう。マーク付けと制御文字の両方を用いる場合、マーク付けを適切に入れ子にすることと方向性の埋め込みや上書きを適切にすることについて、多大な注意を払う必要がある。しないと、レンダリング結果は不定である。[CI]この必須属性は、当該要素の内容テキストについての基本方向を指定する。この指定方向は、[UNICODE]が定義する、文字の固有方向を上書きする。