[11] [CITE[Namespaces in XML 1.1]] [DFN[[ABBR[XML] [Extensible Markup Language]] 名前空間 1.1]] は [ABBR[[[XML 1.1]]] [Extensible Markup Language version 1.1]] と併用すること[WEAK[(だけ)]]を想定した改訂版 [[XML名前空間]]仕様です。 機能的にはほとんど [[XML名前空間 1.0]] と同じですが、幾つかの違いがあります。 [[#comment]] * [ABBR[XML] [Extensible Markup Language]] 名前空間 1.0 から 1.1 への変更点 [17] [ABBR[XML] [Extensible Markup Language]] 名前空間 1.0 と 1.1 の差異の概略: - 1.0 Errata の統合 - 編集上の種々の修正 - [[RFC 2119]] [[鍵語]]の採用 - 「[[タグ]]」, 「[[要素]]」, 「[[要素型]]」の用語の使い方の整理 - [[URI参照]]から [[IRI参照]]に変更 - 新用語[DFN[[[展開名]]]]: [[名前空間名]]と[[局所名]]の組。 - 空文字列である [ABBR[IRI] [Internationalized Resource Identifier]] 参照の禁止、相対 [ABBR[IRI] [Internationalized Resource Identifier]] 参照の非推奨を明記。 -- 前者は前からちょこっとは書いてあった。後者は Errata に書いてあった。 --1.1 では一節をもうけてでかでかと書いてある。 - 例示に [SAMP[example.[VAR[*]]]] を使うようになった。 -- (謎の [CODE(URI)[[[urn:loc.gov]]]] は相変わらず。) - [ABBR[IRI] [Internationalized Resource Identifier]] 参照の比較方法が一節を割いて説明されるようになった。 - 生成規則の定義が [ABBR[XML] [Extensible Markup Language]] 1.1 に合わせて改められた。 - [SAMP(XML)[[CODE(XMLa)[[[xmlns]]:[VAR[foo]]]]=""]] が認められるようになった [WEAK[(これが最大の変更点)]]。 [[名前空間束縛]]の無効化を行う。 - 適用対象が [ABBR[XML] [Extensible Markup Language]] 1.1 文書に変更された。 例示の [ABBR[XML] [Extensible Markup Language]] 宣言も修正された。 -- 少し前に [ABBR[XML] [Extensible Markup Language]] 名前空間 1.0 の適用対象は [ABBR[XML] [Extensible Markup Language]] 1.0 のみに訂正されています。 - 処理器の適合性の章 (8) が追加された。概要: -- [[名前空間整形式]]性違反を報告しなければ'''ならない'''。 -- 妥当な [ABBR[IRI] [Internationalized Resource Identifier]] であることは検査する[RUBYB['''必要'''はない] [not '''REQUIRED''']]。 -- [ABBR[XML] [Extensible Markup Language]] 名前空間 1.1 仕様書に適合する妥当性検証 [ABBR[XML] [Extensible Markup Language]] 処理器は[[名前空間妥当]]性も加えて報告するなら[DFN[名前空間妥当性検証]](処理器)である。 - [ABBR[IRI] [Internationalized Resource Identifier]] についての章 (9) が追加された。概要: -- [ABBR[IRI] [Internationalized Resource Identifier]] はまだ作業中。 必要な範囲で定義する。 [ABBR[[[RFC]]] [Request for Comments]] が出たらこの章は置き換える。 -- [ABBR[IRI] [Internationalized Resource Identifiers]] [ABBR[RFC] [Request for Comments]] が出て対応ソフトウェアが広く使われるまで名前空間名は [ABBR[[[URI]]] [Uniform Resource Identifiers]] に限定するのが[RUBYB[いい] [advise]]。 -- 実装は、認められる文字に関して、 [ABBR[IRI] [Internationalized Resource Identifiers]] 仕様原案に対する違反を拒絶しないほうが[RUBYB[いい] [advise]]。 -- [ABBR[IRI] [Internationalized Resource Identifiers]] 仕様原案 5 ] で認められる[DFN[追加文字]]は: --- [CODE(Char)[U+00A0]]〜[CODE(char)[U+D7FF]], [CODE(char)[U+F900]]〜[CODE(char)[U+FDCF]], [CODE(char)[U+FDF0]]〜[CODE(char)[U+FFEF]], [CODE(char)[U+10000]]〜[CODE(char)[U+1FFFD]], ..., [CODE(char)[U+D0000]]〜[CODE(char)[U+DFFFD]], [CODE(char)[U+E1000]]〜[CODE(char)[U+EFFFD]] --- [ABBR[IRI] [Internationalized Resource Identifiers]] 仕様原案 3 では [ABBR[ASCII] [American Standard Code for Information Interchange]] の範囲の非 [ABBR[URI] [Uniform Resource Identifiers]] 文字も認めていた。 -- [DFN[[ABBR[IRI] [Internationalized Resource Identifiers]] 参照]]は、 次の手順で [ABBR[URI] [Uniform Resource Identifiers]] 参照に変換できる文字列である。 === ホスト名部があれば、 [[RFC 3490]] 4.1 の [CODE[[[ToASCII]]]] ([CODE[[[UseSTD3ASCIIRules]]]] := [CODE[TRUE]], [CODE[[[AllowUnassigned]]]] := [CODE[TRUE]]) 操作で変換。 === 追加文字を次の手順で逃避 ==== 追加文字を [[UTF-8]] に変換。 ==== それを [[URI符号化]]。 ==== 元の文字を [ABBR[URI] [Uniform Resource Identifiers]] 符号化列で置き換える。 --- [ABBR[IRI] [Internationalized Resource Identifiers]] 仕様原案 5 には更に[[正規化]]の手順も含まれるが、なにが [ABBR[IRI] [Internationalized Resource Identifiers]] 参照であるかには関わらない。 - 附属書 A が削除された。 - 参考文献に修正多々。 - 附属書 D (変更点) が追加された。概要: -- この版は2002年12月6日付け 1.0 errata を取込んでいる。 -- 接頭辞宣言解除の機構を加えた。 -- [ABBR[URI] [Uniform Resource Identifiers]] から [ABBR[IRI] [Internationalized Resource Identifiers]] にした。 -- 編集上他にも色々いじくった。 -- 附属書 A はあぼーんした、 1.0 は Errata で大きく修正されている上に 1.1 で更にかき回していて、そのためか差分版も提供されていなくて、 1.0 と 1.1 で何が変わったのか、 ぱっと見では分からなくてまことに困ったものです。 せめて 1.0 Second Edition を同時に出してくれれば良かったのに。 [[#comment]] * メモ [18] よく見るとXML名前空間 1.1仕様書内のXML仕様書へのリンクがすべて[[XML 1.0]]行きになってる。。。 ([[名無しさん]] [WEAK[2005-12-25 04:59:00 +00:00]])