XML基底

XML 基底

[1] XML Base (基底) <http://www.w3.org/TR/xmlbase/> は、 XML における基底URI に関する仕様書 (W3C 勧告) です。

この仕様書の規定で最も目を惹くのは xml:base 属性でしょう。この属性は、その要素の基底 URI を特に指定するものです。

もちろん主体はこの属性でしょうが、それ以外にも、 この属性以外の要素と基底 URI との関係を詳しく規定している点が重要といえるでしょう。

[5] 現在では HTML文書XML文書も、基底URLXML StandardHTML Standard で規定されています。

仕様書

[8]

仕様書の構成と、この wiki での関連 WikiPage

[2]

  1. 1 Introduction
  2. 2 Terminology
  3. 3 xml:base Attribute ⇒xml:base
    1. 3.1 URI Reference Encoding and Escaping ⇒XML//URI
  4. 4 Resolving Relative URIs ⇒XML//URI//基底
    1. 4.1 Relation to RFC 2396
    2. 4.2 Granularity of base URI information
    3. 4.3 Matching URIs with base URIs
    4. 4.4 Interpretation of same-document references (第2版で追加)
  5. 5 Conformance
    • 「4章の規定に従って基底 URI を決定する応用は、この仕様に適合する。」
  6. A References
  7. B References (Non-Normative)
  8. C Impacts on Other Standards (Non-Normative) ⇒>>3-

歴史

第1版勧告以前

[6] XML Base Disposition of Comments <http://www.w3.org/2000/06/xmlbase-comments-20000607>

[7] XML Base Disposition of Comments <http://www.w3.org/XML/2000/08/xmlbase-comments-20000810.html>

第1版勧告後〜第2版勧告前

[9] E01 2002年10月21日 <http://www.w3.org/2001/06/xmlbase-errata#E01>: 文書または外部実体文書実体または外部実体に修正。

[10] E02 2003年1月23日 <http://www.w3.org/2001/06/xmlbase-errata#E02>: 既定属性に関する注記を追加:

[11] E03 2004年3月2日 <http://www.w3.org/2001/06/xmlbase-errata#E03>: 妥当でないURI参照xml:base属性を使って与えられた要素基底URIは、 応用依存。

[12] Errata in REC-xmlbase-20010627 <http://www.w3.org/2001/06/xmlbase-errata#E04> (名無しさん 2006-12-12 07:59:54 +00:00)

URL (のようなもの) の定義を RFC 2396 から RFC 2396 + XLink 1.1 WD のものに変更する旨ですが、実際の変更点は >>132e ED として示されています。

この際、 xml:base 属性値空文字列素片識別子のみの場合の意味は RFC 2396 風に (基底URL に関わらず) その文書自体となるのではなく、 RFC 3986 同文書参照の通りその文脈の基底URL に照らして解決する旨の節が追加されています。

その節の Note によれば、 RFC 2396 的解釈をする処理器があるので、 同文書参照強く非推奨 (strongly discouraged) であるとしています。

[13] XML Base -- Review Version <http://www.w3.org/XML/2006/11/xmlbase-2e/> (名無しさん 2006-12-12 08:00:12 +00:00)

[14] XML Base (Second Edition) <http://www.w3.org/TR/2006/PER-xmlbase-20061220/> (名無しさん 2006-12-21 15:14:02 +00:00)

[15] LEIRI 待ちで随分遅れたみたいですね。。。

[16] その後 LEIRI W3C WG Note が出版され、 XML基底第2版勧告はその WG Note を参照する形になっています。 PER と微妙に意味は変わっていますが (IRI の項を参照してください。)、大体の定義に変化はありません。

XML 基底と他の仕様との関係

[3] XML 本体仕様はシステム識別子で URI に変換されるものを使っていますが、 その辺の規定は XML 基底によっては影響されません。 (詳しくは XML//URI, XML//URI//基底を参照。)

XML情報集合では各情報項目の [基底 URI] (又は [宣言基底 URI] 特性が関係します。

XML名前空間では基本的に XML 基底の影響は受けません。 詳しくは名前空間名を参照。

XPath 1.0, XSLT 1.0 は XML 基底に対応していません。 特に意識しなければ正しい基底 URI は得られません。 外部実体が絡む場合は絶望的です。

XMLSchema 第2部の規定するデータ型 uriReference は特に XML 基底との関係を述べていません。

XLink の解釈のためには XML 基底が必要です。 ちなみに XML 基底はもともと XLink の一部として考えられていました。

XHTML1 と XML 基底との関係は規定されていません。 XML 基底とは互換性のない base 要素型があり、そちらが使われます。 XHTML2 では xml:base 属性が採用される予定です。

RDF//XML では、調べるべし