<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-menu-disabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-os vector-sticky-header-enabled skin-thumbsize-clientpref-standard" lang="ja" dir="ltr"><head>
    <meta charset="UTF-8">
    <title>XML</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="icon" type="image/png" href="./_res_/favicon.png">
    <link rel="canonical" href="https://ja.wikipedia.org/wiki/XML"> <link href="./_mw_/ext.cite.parsoid.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/mediawiki.skinning.content.parsoid.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
    <meta name="ResourceLoaderDynamicStyles" content="">
    <link href="./_mw_/ext.gadget.PDFLinkIcon.css" rel="stylesheet" type="text/css">
    <link href="./_mw_/ext.gadget.RedirectColor.css" rel="stylesheet" type="text/css">
    <link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
    <link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
    <link rel="stylesheet" type="text/css" href="./_res_/footer.css">
    <link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
  </head>
  <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-XML rootpage-XML skin-vector-2022 action-view">
    <div class="mw-page-container">
      <div class="mw-page-container-inner">
        <div class="mw-content-container">
          <main id="content" class="mw-body">
            <header class="mw-body-header vector-page-titlebar">
              <h1 id="firstHeading" class="firstHeading mw-first-heading"><span lang="ja" dir="ltr"><span class="mw-page-title-main">XML</span></span></h1>
            </header>
            <a id="top"></a>
            <div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
              <div id="contentSub">
                <div id="mw-content-subtitle"></div>
              </div>
              <div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="ja" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="ja" dir="ltr" data-mw-parsoid-version="0.24.0.0-alpha7" data-mw-html-version="2.8.0"><section data-mw-section-id="0" id="mwAQ"><span class="mw-empty-elt" typeof="mw:Transclusion" id="mwAg"><style data-mw-deduplicate="TemplateStyles:r101346560" typeof="mw:Extension/templatestyles">
/* start https://ja.wikipedia.org/ */


.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}html.skin-theme-clientpref-night .mw-parser-output .hatnote>table{color:inherit}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .hatnote>table{color:inherit}}


/* end   https://ja.wikipedia.org/ */
</style></span>
<table class="infobox " style="width:22em; " typeof="mw:Transclusion" id="mwBA"><caption itemprop="name" class="" style="font-size:130%; padding-bottom:0.15em;">Extensible Markup Language</caption><tbody><tr class="" style="" itemprop=""><td colspan="2" class="" style="text-align:center; " itemprop="">
<span typeof="mw:File"><img src="./_assets_/0c70a452f799bfe840676ee341124611/Extensible_Markup_Language_(XML)_logo.svg.png" decoding="async" data-file-width="123" data-file-height="51" data-file-type="drawing" height="41" width="100" class="mw-file-element" loading="lazy"></span><span typeof="mw:Entity">&nbsp;</span><span class="mw-valign-text-top" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q2115?uselang=ja#P154" title="ウィキデータを編集" class="external"><img alt="ウィキデータを編集" src="./_assets_/0c70a452f799bfe840676ee341124611/OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" data-file-width="20" data-file-height="20" data-file-type="drawing" height="10" width="10" class="mw-file-element" loading="lazy"></a></span><div style="">Extensible Markup Languageのロゴマーク。</div></td></tr><tr class="" style="" itemprop=""><td colspan="2" class="" style="text-align:center; " itemprop="">
<span typeof="mw:File"><img src="./_assets_/0c70a452f799bfe840676ee341124611/XML.svg.png" decoding="async" data-file-width="293" data-file-height="333" data-file-type="drawing" height="227" width="200" class="mw-file-element" loading="lazy"></span></td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;"><a rel="mw:WikiLink" href="%E6%8B%A1%E5%BC%B5%E5%AD%90" title="拡張子">拡張子</a></th><td class="" style="line-height:1.35em;" itemprop="">
<code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwBQ">.xml</code></td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;"><a rel="mw:WikiLink" href="%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2%E3%82%BF%E3%82%A4%E3%83%97" title="メディアタイプ">MIMEタイプ</a></th><td class="" style="line-height:1.35em;" itemprop="">
application/xml</td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;"><a rel="mw:WikiLink" href="Uniform_Type_Identifier" title="Uniform Type Identifier">UTI</a></th><td class="" style="line-height:1.35em;" itemprop="">
public.xml</td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;">開発者</th><td class="" style="line-height:1.35em;" itemprop="">
<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortium</a> (W3C)</td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;">初版</th><td class="" style="line-height:1.35em;" itemprop="">
<span style="white-space:nowrap;">1998年</span><span style="display:none"><span typeof="mw:Entity">&nbsp;</span>(<span class="bday dtstart published updated">1998</span>)</span></td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;">種別</th><td class="" style="line-height:1.35em;" itemprop="">
<a rel="mw:WikiLink" href="%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語">マークアップ言語</a></td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;">派生元</th><td class="" style="line-height:1.35em;" itemprop="">
<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect">Standard Generalized Markup Language</a> (SGML)</td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;">拡張</th><td class="" style="line-height:1.35em;" itemprop="">
<a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect">XHTML</a>、<a rel="mw:WikiLink" href="DocBook" title="DocBook">DocBook</a>、<a rel="mw:WikiLink" href="RSS" title="RSS">RSS</a>、<a rel="mw:WikiLink" href="EbXML" title="EbXML">ebXML</a>、 ...</td></tr><tr class="" style="" itemprop=""><th scope="row" style="text-align:left; white-space:nowrap; padding:0.2em 0;line-height:1.2em; padding-right:0.65em;"><a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E8%A6%8F%E6%A0%BC" title="国際規格">国際標準</a></th><td class="" style="line-height:1.35em;" itemprop="">
<a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/xml/" class="external text">1.0 (Fifth Edition)</a> <a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/xml11/" class="external text">1.1 (Second Edition)</a></td></tr></tbody></table>
<p id="mwBg"><b id="mwBw">XML</b>（エックスエムエル）は、基本的な<a rel="mw:WikiLink" href="%E6%A7%8B%E6%96%87" title="構文" class="mw-disambig" id="mwCA">構文</a>規則を共通とすることで、任意の用途向けの<a rel="mw:WikiLink" href="%E8%A8%80%E8%AA%9E" title="言語" id="mwCQ">言語</a>に拡張することを容易としたことが特徴の<a rel="mw:WikiLink" href="%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語" id="mwCg">マークアップ言語</a>の総称である。正式名称は<span style="speak:none" aria-hidden="true" typeof="mw:Transclusion" id="mwCw"><b>Extensible Markup Language</b></span><span>（エクステンシブル マークアップ ランゲージ）</span>。<a rel="mw:WikiLink" href="%E6%97%A5%E6%9C%AC%E7%94%A3%E6%A5%AD%E8%A6%8F%E6%A0%BC" title="日本産業規格" id="mwDA">JIS</a>による訳語は「<b id="mwDQ">拡張可能なマーク付け言語</b>」。XML文書のフォーマットをあらかじめ統一することで、異種プラットフォーム間での情報交換も可能となる。</p>

<p id="mwDg"><a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwDw">SGML</a>からの移行を目的として開発された。<a rel="mw:WikiLink" href="%E6%96%87%E6%B3%95" title="文法" id="mwEA">文法</a>はSGMLの構文解析器と互換性を保つようにSGMLのサブセットに定められシンプルになり、機能はSGMLに無いものが追加されている。</p>

<p id="mwEQ">XML の仕様は、<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwEg">World Wide Web Consortium</a> (W3C) により策定・勧告されている。1998年2月に XML 1.0 が勧告された。2010年4月現在、XML 1.0 と XML 1.1 の2つのバージョンが勧告されている（<a rel="mw:WikiLink" href="#バージョン" class="mw-selflink-fragment" id="mwEw">#バージョン</a>）。</p>

<p id="mwFA">「e<b id="mwFQ">X</b>tensible <b id="mwFg">M</b>arkup <b id="mwFw">L</b>anguage の略である」と書かれることがあるが、これは間違いであり、<b id="mwGA">X</b>は<b id="mwGQ">Ex</b>の発音を表している<sup class="mw-ref reference" id="cite_ref-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1" id="mwGg"><span class="mw-reflink-text" id="mwGw"><span class="cite-bracket" id="mwHA">[</span>1<span class="cite-bracket" id="mwHQ">]</span></span></a></sup>。</p>

</section><section data-mw-section-id="1" id="mwHw" aria-labelledby="概要"><div class="mw-heading mw-heading2"><h2 id="概要"><span id=".E6.A6.82.E8.A6.81" typeof="mw:FallbackId"></span>概要</h2></div>
<section data-mw-section-id="2" id="mwIA" aria-labelledby="基礎的概念と利用目的"><div class="mw-heading mw-heading3"><h3 id="基礎的概念と利用目的"><span id=".E5.9F.BA.E7.A4.8E.E7.9A.84.E6.A6.82.E5.BF.B5.E3.81.A8.E5.88.A9.E7.94.A8.E7.9B.AE.E7.9A.84" typeof="mw:FallbackId"></span>基礎的概念と利用目的</h3></div>
<p id="mwIQ">XMLは、個別の目的に応じたマークアップ言語を定めるための汎用的言語であり、「タグの入れ子」式の構文が拡張性を容易にするとして「extensible」を謳っている。</p>

<p id="mwIg">データ構造としては<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwIw">木構造</a>になるため、巡回があるような<a rel="mw:WikiLink" href="%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%BB%E3%83%88%E3%83%9D%E3%83%AD%E3%82%B8%E3%83%BC" title="ネットワーク・トポロジー" id="mwJA">ネットワーク構造</a>を直接扱うことはできない（<a rel="mw:WikiLink" href="XLink" title="XLink" id="mwJQ">XLink</a>などの提案がある）。</p>

<p id="mwJg">XMLの最も重要な目的は、異なる<a rel="mw:WikiLink" href="%E6%83%85%E5%A0%B1%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0" title="情報システム" id="mwJw">情報システム</a>の間で構造化された文書や構造化されたデータの共有を容易にすることである<sup class="mw-ref reference" id="cite_ref-XmlOriginsGoals_2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-XmlOriginsGoals-2" id="mwKA"><span class="mw-reflink-text" id="mwKQ"><span class="cite-bracket" id="mwKg">[</span>2<span class="cite-bracket" id="mwKw">]</span></span></a></sup>。</p>

</section><section data-mw-section-id="3" id="mwLA" aria-labelledby="HTMLとXMLの違い"><div class="mw-heading mw-heading3"><h3 id="HTMLとXMLの違い"><span id="HTML.E3.81.A8XML.E3.81.AE.E9.81.95.E3.81.84" typeof="mw:FallbackId"></span>HTMLとXMLの違い</h3></div>
<p id="mwLQ">Webページを記述するマークアップ言語である<a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwLg">HTML</a>は、XMLと文法がよく似ている。これはどちらもSGMLが元になっているためである。</p>

<p id="mwLw">HTMLが特定目的のための言語であるのに対し、XMLはHTMLのような特定目的のための言語を新たに定めるための仕組みであり、タグを定義する事でXMLベースのマークアップ言語を定義することができる。実際、HTMLと同等の機能をXMLによって定義した<a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwMA">XHTML</a>が開発されている。</p>

</section><section data-mw-section-id="4" id="mwMQ" aria-labelledby="XMLを基盤とするマークアップ言語とスキーマ言語"><div class="mw-heading mw-heading3"><h3 id="XMLを基盤とするマークアップ言語とスキーマ言語"><span id="XML.E3.82.92.E5.9F.BA.E7.9B.A4.E3.81.A8.E3.81.99.E3.82.8B.E3.83.9E.E3.83.BC.E3.82.AF.E3.82.A2.E3.83.83.E3.83.97.E8.A8.80.E8.AA.9E.E3.81.A8.E3.82.B9.E3.82.AD.E3.83.BC.E3.83.9E.E8.A8.80.E8.AA.9E" typeof="mw:FallbackId"></span>XMLを基盤とするマークアップ言語とスキーマ言語</h3></div>
<p id="mwMg">XMLで文書の論理的構造を規定する制約を追加することによって、XMLを適用したマークアップ言語を<a rel="mw:WikiLink" href="%E5%AE%9F%E8%A3%85" title="実装" id="mwMw">実装</a>できる。XMLを適用したマークアップ言語は非常に多く存在している （<a rel="mw:WikiLink" href="#XMLの応用" class="mw-selflink-fragment" id="mwNA">#XMLの応用</a>の節を参照）。例えば、<a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwNQ">Extensible HyperText Markup Language</a> (XHTML)<sup class="mw-ref reference" id="cite_ref-3" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-3" data-mw-group="注" id="mwNg"><span class="mw-reflink-text" id="mwNw"><span class="cite-bracket" id="mwOA">[</span>注 1<span class="cite-bracket" id="mwOQ">]</span></span></a></sup>、<a rel="mw:WikiLink" href="DocBook" title="DocBook" id="mwOg">DocBook</a>、<a rel="mw:WikiLink" href="RSS" title="RSS" id="mwOw">RSS</a>、<a rel="mw:WikiLink" href="Mathematical_Markup_Language" title="Mathematical Markup Language" class="mw-redirect" id="mwPA">Mathematical Markup Language</a> (MathML)、<a rel="mw:WikiLink" href="EbXML" title="EbXML" id="mwPQ">ebXML</a>、<a rel="mw:WikiLink" href="Scalable_Vector_Graphics" title="Scalable Vector Graphics" id="mwPg">Scalable Vector Graphics</a> (SVG)、<a rel="mw:WikiLink" href="MusicXML" title="MusicXML" id="mwPw">MusicXML</a> などがある。さらにXMLは、そういった個別のXMLについての構文規則を示すための<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwQA">スキーマ言語</a>も用意している。スキーマ自体もXMLの<a rel="mw:WikiLink" href="XML_Schema" title="XML Schema" id="mwQQ">XML Schema</a>の他、XMLではない記法でとても簡潔に大変わかりやすく書ける、Compact Syntaxも用意されている<a rel="mw:WikiLink" href="RELAX_NG" title="RELAX NG" id="mwQg">RELAX NG</a>もある。</p>

</section><section data-mw-section-id="5" id="mwQw" aria-labelledby="オープンな仕様"><div class="mw-heading mw-heading3"><h3 id="オープンな仕様"><span id=".E3.82.AA.E3.83.BC.E3.83.97.E3.83.B3.E3.81.AA.E4.BB.95.E6.A7.98" typeof="mw:FallbackId"></span>オープンな仕様</h3></div>
<p id="mwRA">XMLは、同じく汎用的に使えるマークアップ言語である <a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwRQ">Standard Generalized Markup Language</a> (SGML) の、簡素化されたサブセットとして、人間にとっても比較的判読しやすいように設計された （<a rel="mw:WikiLink" href="#歴史" class="mw-selflink-fragment" id="mwRg">#歴史</a>を参照）。XMLの仕様は、XMLワーキンググループなどにより設計が行われ、World Wide Web Consortium (W3C) により勧告 （策定） されている。XMLは無償で使える<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E6%A8%99%E6%BA%96" title="オープン標準" id="mwRw">オープン標準</a>の技術である。XML仕様のW3C勧告ではXMLの文法とXMLプロセサ （XMLパーサ、XML文書の<a rel="mw:WikiLink" href="%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90%E5%99%A8" title="構文解析器" id="mwSQ">構文解析器</a>） のための要件を定めている。<a rel="mw:WikiLink" href="1998%E5%B9%B4" title="1998年" id="mwSg">1998年</a>2月に XML 1.0 が勧告され、2004年2月に XML 1.1 が勧告された（<a rel="mw:WikiLink" href="#バージョン" class="mw-selflink-fragment" id="mwSw">#バージョン</a>参照）。</p>

</section><section data-mw-section-id="6" id="mwTA" aria-labelledby="正当性水準について"><div class="mw-heading mw-heading3"><h3 id="正当性水準について"><span id=".E6.AD.A3.E5.BD.93.E6.80.A7.E6.B0.B4.E6.BA.96.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6" typeof="mw:FallbackId"></span>正当性水準について</h3></div>
<p id="mwTQ">XML文書の正当性の水準には、整形式XML文書と妥当なXML文書の、2つの水準がある （<a rel="mw:WikiLink" href="#整形式XML文書と妥当なXML文書" class="mw-selflink-fragment" id="mwTg">#整形式XML文書と妥当なXML文書</a>を参照）。XML文書のマークアップ規則に従って記述されていることだけが問題とされる文脈で、スキーマ言語を使わずに、XML文書のマークアップ規則に従って記述された文書を、「整形式XML文書」 (well-formed XML document) という （<a rel="mw:WikiLink" href="#XMLの構文と整形式XML文書" class="mw-selflink-fragment" id="mwTw">#XMLの構文と整形式XML文書</a>を参照）。さらに、XML文書をより厳密に構造化した文書やデータとして扱いたい場合は、XML文書の構造を<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwUA">スキーマ言語</a>によって定義することができ、XMLプロセサでそのXML文書（XMLインスタンス）に対してその文書構造に従っていることを検証する（妥当性検証を行う）というように、XML技術を使うこともできる （<a rel="mw:WikiLink" href="#XML文書の論理的構造と妥当なXML文書" class="mw-selflink-fragment" id="mwUQ">#XML文書の論理的構造と妥当なXML文書</a>を参照）。
XML文書に対して妥当性検証を行うことにより、従来<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="アプリケーションソフトウェア" id="mwUg">アプリケーションソフトウェア</a>で行ってきた、XML文書の構造の検査や、XML文書に含まれるデータに対する<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B" title="データ型" id="mwUw">データ型</a>のチェックや値の範囲のチェックが、可能となる。スキーマ言語としては <a rel="mw:WikiLink" href="Document_Type_Definition" title="Document Type Definition" id="mwVA">Document Type Definition</a> (DTD、文書型定義)、W3C XML Schema、RELAX NG （<a rel="mw:WikiLink" href="%E6%96%87%E6%9B%B8%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E5%AE%9A%E7%BE%A9%E8%A8%80%E8%AA%9E" title="文書スキーマ定義言語" id="mwVQ">文書スキーマ定義言語</a>: DSDL）などがある。XML文書の構造がスキーマ言語によって定義され、XML文書の妥当性を検証する<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="ソフトウェア" id="mwVg">ソフトウェア</a>によって妥当性が検証されたXML文書のことを「妥当なXML文書」 (valid XML document) という。整形式XML文書は、妥当なXML文書である場合と、妥当なXML文書ではない場合とがある。スキーマ言語を採用して妥当性検証を行う方法でXMLを使うこともできるし、スキーマ言語を採用せず妥当性検証を行わないで手軽にXMLを使うこともできる。</p>

</section><section data-mw-section-id="7" id="mwVw" aria-labelledby="幅広い人間言語のサポート"><div class="mw-heading mw-heading3"><h3 id="幅広い人間言語のサポート"><span id=".E5.B9.85.E5.BA.83.E3.81.84.E4.BA.BA.E9.96.93.E8.A8.80.E8.AA.9E.E3.81.AE.E3.82.B5.E3.83.9D.E3.83.BC.E3.83.88" typeof="mw:FallbackId"></span>幅広い人間言語のサポート</h3></div>
<p id="mwWA">XML勧告では、XMLプロセサがサポートすべき<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F" title="文字符号化方式" id="mwWQ">文字符号化方式</a>（<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89" title="文字コード" id="mwWg">文字コード</a>）として<a rel="mw:WikiLink" href="UTF-8" title="UTF-8" id="mwWw">UTF-8</a>と<a rel="mw:WikiLink" href="UTF-16" title="UTF-16" id="mwXA">UTF-16</a> (<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwXQ">Unicode</a>) を定めているため、英語以外の言語も扱いやすくなっている （<a rel="mw:WikiLink" href="#多言語環境で使う" class="mw-selflink-fragment" id="mwXg">#多言語環境で使う</a>を参照）。また、UTF-8とUTF-16以外の文字コード（<a rel="mw:WikiLink" href="UCS-4" title="UCS-4" class="mw-redirect" id="mwXw">UCS-4</a>、<a rel="mw:WikiLink" href="EUC-JP" title="EUC-JP" id="mwYA">EUC-JP</a>、<a rel="mw:WikiLink" href="Shift_JIS" title="Shift JIS" id="mwYQ">Shift_JIS</a>、<a rel="mw:WikiLink" href="EBCDIC" title="EBCDIC" id="mwYg">EBCDIC</a>など）を用いることも可能である<sup class="mw-ref reference" id="cite_ref-4" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-4" data-mw-group="注" id="mwYw"><span class="mw-reflink-text" id="mwZA"><span class="cite-bracket" id="mwZQ">[</span>注 2<span class="cite-bracket" id="mwZg">]</span></span></a></sup>。</p>

</section><section data-mw-section-id="8" id="mwZw" aria-labelledby="補完技術"><div class="mw-heading mw-heading3"><h3 id="補完技術"><span id=".E8.A3.9C.E5.AE.8C.E6.8A.80.E8.A1.93" typeof="mw:FallbackId"></span>補完技術</h3></div>
<p id="mwaA">XMLだけでは最低限の書式しか決められていないため、XMLの力を引き出す各種の関連技術が別途標準化されている （<a rel="mw:WikiLink" href="#XMLの拡張" class="mw-selflink-fragment" id="mwaQ">#XMLの拡張</a>および<a rel="mw:WikiLink" href="#XML文書をプログラムで処理する" class="mw-selflink-fragment" id="mwag">#XML文書をプログラムで処理する</a>、<a rel="mw:WikiLink" href="#XML文書を視覚的に表示する" class="mw-selflink-fragment" id="mwaw">#XML文書を視覚的に表示する</a>、<a rel="mw:WikiLink" href="#XML情報集合" class="mw-selflink-fragment" id="mwbA">#XML情報集合</a>を参照）。
以下に挙げるものをはじめとして、現在も多くの関連技術の標準化作業が行われている。</p>

<ul id="mwbQ"><li id="mwbg"><a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)" title="プログラム (コンピュータ)" id="mwbw">プログラム</a>からXML文書を処理する方法として、<a rel="mw:WikiLink" href="Document_Object_Model" title="Document Object Model" id="mwcA">Document Object Model</a> (DOM) や <a rel="mw:WikiLink" href="Simple_API_for_XML" title="Simple API for XML" id="mwcQ">Simple API for XML</a> (SAX) などの<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9" title="アプリケーションプログラミングインタフェース" id="mwcg">アプリケーションプログラミングインタフェース</a> (API) が標準化されている<sup class="mw-ref reference" id="cite_ref-5" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-5" data-mw-group="注" id="mwcw"><span class="mw-reflink-text" id="mwdA"><span class="cite-bracket" id="mwdQ">[</span>注 3<span class="cite-bracket" id="mwdg">]</span></span></a></sup>。</li></ul>

<ul id="mwdw"><li id="mweA">XML文書のスタイルを指定する技術（<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88" title="スタイルシート" id="mweQ">スタイルシート</a>）として <a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language" id="mweg">Extensible Stylesheet Language</a> (XSL) や <a rel="mw:WikiLink" href="Cascading_Style_Sheets" title="Cascading Style Sheets" id="mwew">Cascading Style Sheets</a> (CSS) などがある。</li></ul>

<ul id="mwfA"><li id="mwfQ">XML文書を非<a rel="mw:WikiLink" href="%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB" title="テキストファイル" id="mwfg">テキスト</a>形式（<a rel="mw:WikiLink" href="%E3%83%90%E3%82%A4%E3%83%8A%E3%83%AA" title="バイナリ" id="mwfw">バイナリ</a>）で効率的に表現する方法として、World Wide Web Consortium (W3C) は <a rel="mw:WikiLink" href="Efficient_XML_Interchange" title="Efficient XML Interchange" id="mwgA">Efficient XML Interchange</a> (EXI) フォーマットを定義した。</li></ul>

</section><section data-mw-section-id="9" id="mwgQ" aria-labelledby="XMLの普及とXMLへの批評"><div class="mw-heading mw-heading3"><h3 id="XMLの普及とXMLへの批評"><span id="XML.E3.81.AE.E6.99.AE.E5.8F.8A.E3.81.A8XML.E3.81.B8.E3.81.AE.E6.89.B9.E8.A9.95" typeof="mw:FallbackId"></span>XMLの普及とXMLへの批評</h3></div>
<p id="mwgg">XMLは現在、広く普及している技術であるが、その技術的な有用性などについて、肯定的に評価する人々が多い一方で、批判的に評価する人々も多い （<a rel="mw:WikiLink" href="#XMLに対する支持と批判" class="mw-selflink-fragment" id="mwgw">#XMLに対する支持と批判</a>を参照）。</p>

</section></section><section data-mw-section-id="10" id="mwhA" aria-labelledby="整形式XML文書と妥当なXML文書"><div class="mw-heading mw-heading2"><h2 id="整形式XML文書と妥当なXML文書"><span id=".E6.95.B4.E5.BD.A2.E5.BC.8FXML.E6.96.87.E6.9B.B8.E3.81.A8.E5.A6.A5.E5.BD.93.E3.81.AAXML.E6.96.87.E6.9B.B8" typeof="mw:FallbackId"></span>整形式XML文書と妥当なXML文書</h2></div>
<p id="mwhQ">XML文書の正当性の水準には、整形式XML文書と妥当なXML文書の、2つの水準がある。なおXML文書に対して、整形式XML文書としての検査のみを行うXMLプロセサを<b id="mwhg">非検証XMLプロセサ</b>といい、整形式XML文書としての検査に加えて妥当なXML文書としての検査を行うXMLプロセサを<b id="mwhw">検証XMLプロセサ</b>という。</p>

<dl id="mwiA"><dt id="mwiQ">整形式XML文書</dt>
<dd id="mwig">整形式XML文書 (well-formed XML document) は、XMLの構文の規則のすべてに準拠している。例えば、文書中のある要素が開始タグが有るが対応する終了タグが欠落している場合、その文書は<b id="mwiw">整形式</b> (well-formed) ではない。整形式ではない文書はXML文書とはみなされない。非検証XMLプロセサおよび検証XMLプロセサは、整形式ではない文書を処理することはできない (処理を試みるとエラーになる)。</dd>
<dt id="mwjA">妥当なXML文書</dt>
<dd id="mwjQ">妥当なXML文書 (valid XML document) は、整形式XML文書としての条件を満たしていることに加えて、文書の論理的構造を規定する何らかの規則に準拠している。このような規則は、RELAX NG や XML Schema、Document Type Definition (DTD、文書型定義) などの<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwjg">スキーマ言語</a>で定義されたスキーマで定める。例えば、あるXML文書がスキーマに定義されていない要素 (タグ) を含んでいた場合、検証XMLプロセサは、そのXML文書を処理することはできない。検証XMLプロセサによって検証されたXML文書は、<b id="mwjw">妥当</b> (valid) であると位置づけられる。なお、妥当な文書であっても、非検証XMLプロセサでは<a rel="mw:WikiLink" href="#実体参照" class="mw-selflink-fragment" id="mwkA">実体</a>の定義を確認しないため、仕様で定められている実体参照(<span typeof="mw:Entity" id="mwkQ">&amp;</span>lt;、<span typeof="mw:Entity" id="mwkg">&amp;</span>gt;など)以外の私的な実体参照を用いている場合、非検証XMLプロセサは当該実体を参照できず致命的なエラーとなる。</dd></dl>

</section><section data-mw-section-id="11" id="mwkw" aria-labelledby="XMLの構文と整形式XML文書"><div class="mw-heading mw-heading2"><h2 id="XMLの構文と整形式XML文書"><span id="XML.E3.81.AE.E6.A7.8B.E6.96.87.E3.81.A8.E6.95.B4.E5.BD.A2.E5.BC.8FXML.E6.96.87.E6.9B.B8" typeof="mw:FallbackId"></span>XMLの構文と整形式XML文書</h2></div>
<p id="mwlA">整形式XML文書が満たすべき構文の規則を説明する。</p>

<p id="mwlQ">整形式XML文書としての条件が満たされることのみを考慮する場合 (スキーマ言語を使わずに手軽にXMLを使う場合) においても、XMLは、大量の文書やもしくは<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwlg">木構造</a>として表現することができるデータを格納するための、一般的な枠組みとしての役割を果たすことができる。</p>

<p id="mwlw">XML文書は、<b id="mwmA">要素</b> (element) と<b id="mwmQ">属性</b> (attribute) が複数集まって、構成されている。
要素は内部に子要素を含むことができる。属性は要素に付随し、属性の内部に子要素を含むことはできない。要素は開始タグと終了タグで内容を挟むことで表現する。
開始タグは「&lt;要素名&gt;」、終了タグは「&lt;/要素名&gt;」で記述する。</p>

<p id="mwmg">一つの要素を記述するための基本的な構文を次に示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwmw"><pre id="mwnA"><span id="mwnQ"></span><span class="nt" id="mwng">&lt;要素名</span><span class="w" id="mwnw"> </span><span class="na" id="mwoA">属性=</span><span class="s" id="mwoQ">"値"</span><span class="nt" id="mwog">&gt;</span>内容<span class="nt" id="mwow">&lt;/要素名&gt;</span>
</pre></div>

<p id="mwpA">ここで、<span typeof="mw:Nowiki" id="mwpQ">&lt;要素名 属性="値"&gt;</span> をこの要素の開始タグといい、<span typeof="mw:Nowiki" id="mwpg">&lt;/要素名&gt;</span> を終了タグという。「内容」は何らかのテキストである。</p>

<p id="mwpw">次に示す例は整形式XML文書である。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwqA"><pre id="mwqQ"><span id="mwqg"></span><span class="nt" id="mwqw">&lt;書籍</span><span class="w" id="mwrA"> </span><span class="na" id="mwrQ">出版日=</span><span class="s" id="mwrg">"2007-10-31"</span><span class="nt" id="mwrw">&gt;</span>これは書籍です....<span class="w" id="mwsA"> </span><span class="nt" id="mwsQ">&lt;/書籍&gt;</span>
</pre></div>

<p id="mwsg">この例は、書籍という要素を一つもつXML文書である。<code id="mwsw"><span typeof="mw:Entity" id="mwtA">&lt;</span>書籍<span typeof="mw:Entity" id="mwtQ">&gt;</span></code> が書籍要素の開始タグであり、<span typeof="mw:Entity" id="mwtg">&lt;</span>/書籍<span typeof="mw:Entity" id="mwtw">&gt;</span> が書籍要素の終了タグである。「出版日="2007-10-31"」は書籍要素の属性である。この属性の名前 （属性名） は「出版日」であり、この属性の値 （属性値） は "2007-10-31" である。「これは書籍です.... 」は、書籍要素の内容である。</p>

<p id="mwuA">要素の内容を構成するテキストはまた、さらに任意の数の要素を含むことができる （なお、このように一つの要素内に文字列データと子要素が混在するものを、「混合内容」と呼ぶ<sup class="mw-ref reference" id="cite_ref-6" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-6" data-mw-group="注" id="mwuQ"><span class="mw-reflink-text" id="mwug"><span class="cite-bracket" id="mwuw">[</span>注 4<span class="cite-bracket" id="mwvA">]</span></span></a></sup>）。
すなわち、一般的なXML文書は<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwvQ">木構造</a>をなす。
この点において、XMLは<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="プログラミング言語" id="mwvg">プログラミング言語</a><a rel="mw:WikiLink" href="LISP" title="LISP" id="mwvw">LISP</a>の<a rel="mw:WikiLink" href="S%E5%BC%8F" title="S式" id="mwwA">S式</a>と似ている。
S式でも木構造を記述する。S式の木構造のおのおのの節は、自分自身のプロパティリストをもつことができる。</p>

<p id="mwwQ">要素は内部に別の要素を含むことができる。構造化したXML文書の例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwwg"><pre id="mwww"><span id="mwxA"></span><span class="w" id="mwxQ"> </span><span class="nt" id="mwxg">&lt;レシピ</span><span class="w" id="mwxw"> </span><span class="na" id="mwyA">名前=</span><span class="s" id="mwyQ">"パン"</span><span class="w" id="mwyg"> </span><span class="na" id="mwyw">準備時間=</span><span class="s" id="mwzA">"5分"</span><span class="w" id="mwzQ"> </span><span class="na" id="mwzg">調理時間=</span><span class="s" id="mwzw">"3時間"</span><span class="nt" id="mw0A">&gt;</span>
<span class="w" id="mw0Q">   </span><span class="nt" id="mw0g">&lt;料理&gt;</span>基本的なパン<span class="nt" id="mw0w">&lt;/料理&gt;</span>
<span class="w" id="mw1A">   </span><span class="nt" id="mw1Q">&lt;材料</span><span class="w" id="mw1g"> </span><span class="na" id="mw1w">量=</span><span class="s" id="mw2A">'3'</span><span class="w" id="mw2Q"> </span><span class="na" id="mw2g">単位=</span><span class="s" id="mw2w">'カップ'</span><span class="nt" id="mw3A">&gt;</span>小麦粉<span class="nt" id="mw3Q">&lt;/材料&gt;</span>
<span class="w" id="mw3g">   </span><span class="nt" id="mw3w">&lt;材料</span><span class="w" id="mw4A"> </span><span class="na" id="mw4Q">量=</span><span class="s" id="mw4g">'0.25'</span><span class="w" id="mw4w"> </span><span class="na" id="mw5A">単位=</span><span class="s" id="mw5Q">'オンス'</span><span class="nt" id="mw5g">&gt;</span>イースト<span class="nt" id="mw5w">&lt;/材料&gt;</span>
<span class="w" id="mw6A">   </span><span class="nt" id="mw6Q">&lt;材料</span><span class="w" id="mw6g"> </span><span class="na" id="mw6w">量=</span><span class="s" id="mw7A">'1.5'</span><span class="w" id="mw7Q"> </span><span class="na" id="mw7g">単位=</span><span class="s" id="mw7w">'カップ'</span><span class="w" id="mw8A"> </span><span class="na" id="mw8Q">状態=</span><span class="s" id="mw8g">"温かい"</span><span class="nt" id="mw8w">&gt;</span>水<span class="nt" id="mw9A">&lt;/材料&gt;</span>
<span class="w" id="mw9Q">   </span><span class="nt" id="mw9g">&lt;材料</span><span class="w" id="mw9w"> </span><span class="na" id="mw-A">量=</span><span class="s" id="mw-Q">"1"</span><span class="w" id="mw-g"> </span><span class="na" id="mw-w">単位=</span><span class="s" id="mw_A">"ティースプーン"</span><span class="nt" id="mw_Q">&gt;</span>食塩<span class="nt" id="mw_g">&lt;/材料&gt;</span>
<span class="w" id="mw_w">   </span><span class="nt" id="mwAQA">&lt;要領&gt;</span>
<span class="w" id="mwAQE">     </span><span class="nt" id="mwAQI">&lt;手順&gt;</span>全ての材料を一緒にして混ぜます。<span class="nt" id="mwAQM">&lt;/手順&gt;</span>
<span class="w" id="mwAQQ">     </span><span class="nt" id="mwAQU">&lt;手順&gt;</span>十分にこねます。<span class="nt" id="mwAQY">&lt;/手順&gt;</span>
<span class="w" id="mwAQc">     </span><span class="nt" id="mwAQg">&lt;手順&gt;</span>布で覆い、暖かい部屋で1時間そのままにしておきます。<span class="nt" id="mwAQk">&lt;/手順&gt;</span>
<span class="w" id="mwAQo">     </span><span class="nt" id="mwAQs">&lt;手順&gt;</span>もう一度こねます。<span class="nt" id="mwAQw">&lt;/手順&gt;</span>
<span class="w" id="mwAQ0">     </span><span class="nt" id="mwAQ4">&lt;手順&gt;</span>パン焼きの容器に入れます<span class="nt" id="mwAQ8">&lt;/手順&gt;</span>
<span class="w" id="mwARA">     </span><span class="nt" id="mwARE">&lt;手順&gt;</span>布で覆い、暖かい部屋で1時間そのままにしておきます。<span class="nt" id="mwARI">&lt;/手順&gt;</span>
<span class="w" id="mwARM">     </span><span class="nt" id="mwARQ">&lt;手順&gt;</span>オーブンに入れて温度を180℃にして30分間焼きます。<span class="nt" id="mwARU">&lt;/手順&gt;</span>
<span class="w" id="mwARY">   </span><span class="nt" id="mwARc">&lt;/要領&gt;</span>
<span class="w" id="mwARg"> </span><span class="nt" id="mwARk">&lt;/レシピ&gt;</span>
</pre></div>

<p id="mwARo">要素の属性の値は、必ずシングルクォート (') かダブルクォート (") で括らなければならない。そして要素内にある属性は、互いに属性名が異なっていなければならない。XML文書では要素は正しく入れ子になっていなければならない。要素は決してオーバーラップしていてはならない。</p>

<p id="mwARs">例えば、次の文書は整形式XML文書ではない。なぜなら <code id="mwARw">書名</code> 要素と <code id="mwAR0">著者</code> 要素がオーバーラップしているからである。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAR4"><pre id="mwAR8"><span id="mwASA"></span><span class="cm" id="mwASE">&lt;!-- 正しくありません! 整形式XML文書ではありません! --&gt;</span>
<span class="nt" id="mwASI">&lt;書籍目録&gt;</span><span class="w" id="mwASM"> </span><span class="nt" id="mwASQ">&lt;書名&gt;</span>XML入門<span class="nt" id="mwASU">&lt;著者&gt;</span>筒井<span class="nt" id="mwASY">&lt;書名&gt;</span>続・XML入門<span class="nt" id="mwASc">&lt;著者&gt;</span>小松<span class="nt" id="mwASg">&lt;/書名&gt;&lt;/著者&gt;&lt;/書名&gt;&lt;/著者&gt;</span><span class="w" id="mwASk"> </span><span class="nt" id="mwASo">&lt;/書籍目録&gt;</span>
</pre></div>

<p id="mwASs">次の2つの文書は整形式XML文書である。</p>
<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwASw"><pre id="mwAS0"><span id="mwAS4"></span><span class="cm" id="mwAS8">&lt;!-- 正しい整形式XML文書です --&gt;</span>
<span class="nt" id="mwATA">&lt;書籍目録&gt;</span><span class="w" id="mwATE"> </span><span class="nt" id="mwATI">&lt;書名&gt;</span>XML入門<span class="nt" id="mwATM">&lt;/書名&gt;</span><span class="w" id="mwATQ"> </span><span class="nt" id="mwATU">&lt;著者&gt;</span>筒井<span class="nt" id="mwATY">&lt;/著者&gt;</span><span class="w" id="mwATc"> </span><span class="nt" id="mwATg">&lt;書名&gt;</span>続・XML入門<span class="nt" id="mwATk">&lt;/書名&gt;</span><span class="w" id="mwATo"> </span><span class="nt" id="mwATs">&lt;著者&gt;</span>小松<span class="nt" id="mwATw">&lt;/著者&gt;</span><span class="w" id="mwAT0"> </span><span class="nt" id="mwAT4">&lt;/書籍目録&gt;</span>
</pre></div>
<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAT8"><pre id="mwAUA"><span id="mwAUE"></span><span class="cm" id="mwAUI">&lt;!-- もう一つの正しい整形式XML文書です --&gt;</span>
<span class="nt" id="mwAUM">&lt;書籍目録&gt;</span><span class="w" id="mwAUQ"> </span><span class="nt" id="mwAUU">&lt;書名&gt;</span>XML入門<span class="nt" id="mwAUY">&lt;/書名&gt;</span><span class="w" id="mwAUc"> </span><span class="nt" id="mwAUg">&lt;著者&gt;</span>筒井<span class="nt" id="mwAUk">&lt;書名&gt;</span>続・XML入門<span class="nt" id="mwAUo">&lt;著者&gt;</span>小松<span class="nt" id="mwAUs">&lt;/著者&gt;&lt;/書名&gt;&lt;/著者&gt;</span><span class="w" id="mwAUw"> </span><span class="nt" id="mwAU0">&lt;/書籍目録&gt;</span>
</pre></div>

<p id="mwAU4">整形式XML文書においては、XML文書は正確に一つの<b id="mwAU8">ルート要素</b> （<b id="mwAVA">文書要素</b>; document element とも呼ばれる） をもたなければならない。ルート要素とは、XML文書の要素の階層構造において最上位の要素のことをいう。最上位の要素は一つでなければならない。最上位の要素が複数ある文書は、整形式XML文書ではない。
整形式XML文書が一つのルート要素をもたなければならないという条件が意味することは、整形式XML文書のテキストは、ルート要素の開始タグと対応する終了タグの間に、収められなければならないということである。ルート要素の開始タグと終了タグの間に収められたテキストは、任意の数の要素や文字列データを含むことができる。</p>

<p id="mwAVE">ルート要素の前に、必要に応じて、<b id="mwAVI">XML宣言</b> (XML declaration) をおくことができる。このXML宣言は、XMLのどのバージョンが使われているか （現時点ではバージョン1.0であることが多い） などを示す。XML宣言では、XMLのバージョンの他に、<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F" title="文字符号化方式" id="mwAVM">文字符号化方式</a> （<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89" title="文字コード" id="mwAVQ">文字コード</a>） の指定や、他のXML文書との依存関係についての指定を、行うこともできる。</p>
<ul id="mwAVU"><li id="mwAVY">XML文書の文字符号化方式が<a rel="mw:WikiLink" href="UTF-8" title="UTF-8" id="mwAVc">UTF-8</a>か<a rel="mw:WikiLink" href="UTF-16" title="UTF-16" id="mwAVg">UTF-16</a>の場合は、XML宣言をおいてもよいし、XML宣言をおかなくてもよい。</li>
<li id="mwAVk">XML文書の文字符号化方式がUTF-8でもUTF-16でもない場合は、XML宣言をおいて文字符号化方式を明示する必要がある。</li></ul>

<p id="mwAVo">XML宣言を含んだXML文書の例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAVs"><pre id="mwAVw"><span id="mwAV0"></span><span class="cp" id="mwAV4">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span>
<span class="nt" id="mwAV8">&lt;書籍</span><span class="w" id="mwAWA"> </span><span class="na" id="mwAWE">出版日=</span><span class="s" id="mwAWI">"2007-10-31"</span><span class="nt" id="mwAWM">&gt;</span>これは書籍です....<span class="w" id="mwAWQ"> </span><span class="nt" id="mwAWU">&lt;/書籍&gt;</span>
</pre></div>

<p id="mwAWY">XML仕様では、<b id="mwAWc">XMLプロセサ</b> （XMLパーサ、XML文書の<a rel="mw:WikiLink" href="%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90%E5%99%A8" title="構文解析器" id="mwAWk">構文解析器</a>） が、<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwAWo">Unicode</a>の文字符号化方式である<a rel="mw:WikiLink" href="UTF-8" title="UTF-8" id="mwAWs">UTF-8</a>および<a rel="mw:WikiLink" href="UTF-16" title="UTF-16" id="mwAWw">UTF-16</a>で記述されたXML文書を処理できることを、<b id="mwAW0">必須</b>条件としている （<a rel="mw:WikiLink" href="UCS-4" title="UCS-4" class="mw-redirect" id="mwAW4">UCS-4</a>は必須条件ではない）。XMLプロセサは、UTF-8およびUTF-16の他にも、いくつかの任意の文字符号化方式の文書を処理できるようにして良い。例えば、<a rel="mw:WikiLink" href="UCS-4" title="UCS-4" class="mw-redirect" id="mwAW8">UCS-4</a>、<a rel="mw:WikiLink" href="EUC-JP" title="EUC-JP" id="mwAXA">EUC-JP</a>、<a rel="mw:WikiLink" href="Shift_JIS" title="Shift JIS" id="mwAXE">Shift_JIS</a>、<a rel="mw:WikiLink" href="EBCDIC" title="EBCDIC" id="mwAXI">EBCDIC</a>などの文字符号化方式の文書を処理できるXMLプロセサが、広く普及し、使われている。</p>

<p id="mwAXM"><b id="mwAXQ"><a rel="mw:WikiLink" href="%E3%82%B3%E3%83%A1%E3%83%B3%E3%83%88_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)" title="コメント (コンピュータ)" id="mwAXU">コメント</a></b>はXML文書の木構造のどこにでもおくことができる。
<!--
要素の内容が文字列データ （すなわちDTDの用語でいう #PCDATA ） の場合、コメントを要素の内容の内におくこともできる。
-->
コメントは、"<span typeof="mw:Entity" id="mwAXY">&lt;</span>!--" で始まり、"--<span typeof="mw:Entity" id="mwAXc">&gt;</span>" で終わる。
なお、コメント内に "--" を含むことはできない。</p>

<p id="mwAXg">コメントを含むXML文書の例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAXk"><pre id="mwAXo"><span id="mwAXs"></span><span class="nt" id="mwAXw">&lt;書籍</span><span class="w" id="mwAX0"> </span><span class="na" id="mwAX4">出版日=</span><span class="s" id="mwAX8">"2007-10-31"</span><span class="nt" id="mwAYA">&gt;</span>
<span class="w" id="mwAYE"> </span><span class="cm" id="mwAYI">&lt;!-- これはコメントです.... --&gt;</span>
<span class="w" id="mwAYM"> </span>これは書籍です....<span class="w" id="mwAYQ"> </span>
<span class="nt" id="mwAYU">&lt;/書籍&gt;</span>
</pre></div>

<p id="mwAYY">内容のない要素を<b id="mwAYc">空要素</b> (empty element) という。XMLでは、空要素を表現するために特別な構文を使うことができる。開始タグを書きその直後に終了タグを書くこともできるが、その代わりに空要素のタグを使うことができるのである。空要素タグは開始タグと似ているが、閉じ括弧の直前にスラッシュをおく。</p>

<p id="mwAYg">次の3つの例は、XMLでは同等である。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAYk"><pre id="mwAYo"><span id="mwAYs"></span><span class="nt" id="mwAYw">&lt;foo&gt;&lt;/foo&gt;</span>
<span class="nt" id="mwAY0">&lt;foo/&gt;</span>
<span class="nt" id="mwAY4">&lt;foo</span><span class="w" id="mwAY8"> </span><span class="nt" id="mwAZA">/&gt;</span>
</pre></div>

<p id="mwAZE">空要素タグは属性を含むことができる。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAZI"><pre id="mwAZM"><span id="mwAZQ"></span><span class="nt" id="mwAZU">&lt;情報</span><span class="w" id="mwAZY"> </span><span class="na" id="mwAZc">著者=</span><span class="s" id="mwAZg">"小松左京"</span><span class="w" id="mwAZk"> </span><span class="na" id="mwAZo">分類=</span><span class="s" id="mwAZs">"サイエンスフィクション"</span><span class="w" id="mwAZw"> </span><span class="na" id="mwAZ0">日付=</span><span class="s" id="mwAZ4">"2009-01-01"</span><span class="nt" id="mwAZ8">/&gt;</span>
</pre></div>

<section data-mw-section-id="12" id="mwAaA" aria-labelledby="多言語環境で使う"><div class="mw-heading mw-heading3"><h3 id="多言語環境で使う"><span id=".E5.A4.9A.E8.A8.80.E8.AA.9E.E7.92.B0.E5.A2.83.E3.81.A7.E4.BD.BF.E3.81.86" typeof="mw:FallbackId"></span>多言語環境で使う</h3></div>
<p id="mwAaE">XML文書ではどの<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwAaI">Unicode</a>の文字も （XMLで特別な意味をもつ、開き山括弧 "<span typeof="mw:Entity" id="mwAaM">&lt;</span>" のような文字を除いて）、要素名として、属性名として、コメント内容として、文字データとして、<a rel="mw:WikiLink" href="#処理命令" class="mw-selflink-fragment" id="mwAaQ">処理命令</a> （後述） として、直接に使うことができる。このため、<a rel="mw:WikiLink" href="%E6%BC%A2%E5%AD%97" title="漢字" id="mwAaU">漢字</a>と<a rel="mw:WikiLink" href="%E3%82%AD%E3%83%AA%E3%83%AB%E6%96%87%E5%AD%97" title="キリル文字" id="mwAaY">キリル文字</a>を共に含む次の文書も、整形式XML文書である。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAac"><pre id="mwAag"><span id="mwAak"></span><span class="cp" id="mwAao">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span>
<span class="nt" id="mwAas">&lt;俄語&gt;</span>Данные<span class="nt" id="mwAaw">&lt;/俄語&gt;</span>
</pre></div>

</section><section data-mw-section-id="13" id="mwAa0" aria-labelledby="文書型宣言"><div class="mw-heading mw-heading3"><h3 id="文書型宣言"><span id=".E6.96.87.E6.9B.B8.E5.9E.8B.E5.AE.A3.E8.A8.80" typeof="mw:FallbackId"></span>文書型宣言</h3></div>
<p id="mwAa4">XML文書 （あるいは<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwAa8">SGML</a>文書、<a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwAbA">HTML</a><a rel="mw:WikiLink" href="%E3%82%A6%E3%82%A7%E3%83%96%E3%83%9A%E3%83%BC%E3%82%B8" title="ウェブページ" id="mwAbE">ウェブページ</a>を含む） において、<b id="mwAbI">文書型宣言</b> （<b id="mwAbM">DOCTYPE宣言</b>、Document Type Declaration） は、その文書を特定の Document Type Definition(DTD、文書型定義) のスキーマと関連づけることを記述するものである。なお、Document Type Definition (DTD、文書型定義)は、XMLで使うことができる<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwAbQ">スキーマ言語</a>の一つである。文書型宣言は、その文書が特定のスキーマに準拠していることを宣言する。</p>

<p id="mwAbU">XML文書では文書型宣言を記述してもよいし、記述しなくてもよい。DTDをスキーマ言語として妥当性検証を行うことを想定しているのであれば、文書型宣言の記述は必須となるであろう。DTDで妥当性検証を行わない場合でも、後述する<a rel="mw:WikiLink" href="#実体参照" class="mw-selflink-fragment" id="mwAbY">実体参照</a>などを文書中で使うのであれば、文書型宣言において文書中で使う実体を宣言することができる。</p>

<p id="mwAbc">文書型宣言は、その文書が特定のスキーマに準拠していること （妥当なXML文書であること） を、保証しているわけではない。文書型宣言に記されたスキーマに準拠しているかどうかを判断するには、検証XMLプロセサでその文書を検証する必要がある。</p>

<p id="mwAbg">文書型宣言の一般的な構文は次のとおりである。</p>

<!-- source lang="xml" -->
<pre id="mwAbk">&lt;!DOCTYPE ルート要素名 [SYSTEM もしくは PUBLIC 公開識別子] 外部サブセット参照 [
 <span typeof="mw:Nowiki" id="mwAbo">&lt;!-- 随意に内部サブセットを記述する --&gt;</span>
]&gt;</pre>
<!-- /source -->

<p id="mwAbs">ここで<b id="mwAbw">外部サブセット</b>とは、そのXML文書のDTDを構成する （要素の型の宣言、後述する実体の宣言などの） 宣言群のうち、別ファイルに記述された宣言群のことである。また<b id="mwAb0">内部サブセット</b>とは、そのXML文書のDTDを構成する宣言群のうち、文書型宣言内に直接記述された宣言群のことである<sup class="mw-ref reference" id="cite_ref-7" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-7" id="mwAb4"><span class="mw-reflink-text" id="mwAb8"><span class="cite-bracket" id="mwAcA">[</span>3<span class="cite-bracket" id="mwAcE">]</span></span></a></sup>。</p>

<p id="mwAcI"><a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwAcM">XHTML</a> 1.0 Strict に準拠したXML文書での文書型宣言は、次のとおりである。</p>

<!--
XHTML 1.1 のDTDは、かなりDTDの読み書きに熟達した方でなければ、解読することが難しいので、XHTML 1.0 Strict の文書型宣言を例示として採ります。
-->
<!-- source lang="xml" -->
<pre id="mwAcQ">&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
     "<a rel="mw:ExtLink nofollow" href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" class="external free" id="mwAcU">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</a>"&gt;</pre>
<!-- /source -->

<p id="mwAcY">XML文書においては、ルート要素がその文書の最初の要素である （例えば、XHTMLではルート要素は <code id="mwAcc">html</code> である）。<code id="mwAcg">SYSTEM</code> キーワードと <code id="mwAck">PUBLIC</code> キーワードは、その文書型 （文書の構造） の種類を指定する。一般に広く知られていないDTDを使う場合は、<code id="mwAco">SYSTEM</code> キーワードを使う。一般に広く知られているDTDを使う場合 （XHTMLなど） は、<code id="mwAcs">PUBLIC</code> キーワードを使う。</p>

<ul id="mwAcw"><li id="mwAc0"><code id="mwAc4">SYSTEM</code> キーワードを使う際は、その後に続けて、その文書が準拠するDTDのファイルの<a rel="mw:WikiLink" href="Uniform_Resource_Identifier" title="Uniform Resource Identifier" id="mwAc8">URI</a>を、外部サブセット参照として記述する。</li>
<li id="mwAdA"><code id="mwAdE">PUBLIC</code> キーワードを使う際は、その後に続けて、その文書が準拠するDTDの公開識別子 (public identifier) を指定しなければならない （例えば XHTML 1.0 の公開識別子は、"-//W3C//DTD XHTML 1.0 Strict//EN" である）。公開識別子を記述した後に続けて、SYSTEM キーワードを使う場合と同様に、その文書が準拠するDTDのファイルのURIを、外部サブセット参照として記述する。</li></ul>

<p id="mwAdI">内部サブセットは必要に応じて記述する。
内部サブセットとして、DTDの一部分もしくはDTDの全体を記述することができる。
なお、内部サブセットとしてDTDの全体を記述する場合は、<code id="mwAdM">SYSTEM</code>キーワード・<code id="mwAdQ">PUBLIC</code>キーワード・外部サブセット参照は、いずれも記述しない。</p>

</section><section data-mw-section-id="14" id="mwAdU" aria-labelledby="実体参照"><div class="mw-heading mw-heading3"><h3 id="実体参照"><span id=".E5.AE.9F.E4.BD.93.E5.8F.82.E7.85.A7" typeof="mw:FallbackId"></span>実体参照</h3></div>
<p id="mwAdY"><b id="mwAdc">実体参照</b> (entity reference) は、実体を表現するプレースホルダである。</p>

<p id="mwAdg">XMLにおける<b id="mwAdk"><a rel="mw:WikiLink" href="SGML%E5%AE%9F%E4%BD%93" title="SGML実体" id="mwAdo">実体</a></b> (entity) とは、<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwAds">SGML</a>における実体と同じように、名前の付けられたデータの本体である。具体的には、ファイルもしくは置換文字列のように、何らかの形でXML文書の一部となるデータを格納しているもののことである<sup class="mw-ref reference" id="cite_ref-8" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-8" id="mwAdw"><span class="mw-reflink-text" id="mwAd0"><span class="cite-bracket" id="mwAd4">[</span>4<span class="cite-bracket" id="mwAd8">]</span></span></a></sup>。置換文字列を使う事例としては、次のような場合がある。</p>
<ul id="mwAeA"><li id="mwAeE">キーボードから簡単には入力できない文字をXML文書中に表現したい場合。</li>
<li id="mwAeI">決まった単語の並びがXML文書中に何度も出現する場合。</li></ul>

<p id="mwAeM">実体参照の構成は、まず最初に<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%B3%E3%83%91%E3%82%B5%E3%83%B3%E3%83%89" title="アンパサンド" id="mwAeQ">アンパサンド</a> ("<code id="mwAeU"><span typeof="mw:Entity" id="mwAeY">&amp;</span></code>") があり、その後に実体の名前が続き、<a rel="mw:WikiLink" href="%E3%82%BB%E3%83%9F%E3%82%B3%E3%83%AD%E3%83%B3" title="セミコロン" id="mwAec">セミコロン</a> ("<code id="mwAeg">;</code>") で終わる。</p>

<p id="mwAek">XMLには、事前宣言された実体として次の表に示す5つの実体がある。</p>

<table class="wikitable" id="mwAeo">
<tbody id="mwAes"><tr id="mwAew">
<th id="mwAe0">実体参照</th><th id="mwAe4">実体</th><th id="mwAe8">実体の説明</th></tr>
<tr id="mwAfA">
<td id="mwAfE"><code id="mwAfI"><span typeof="mw:Entity" id="mwAfM">&amp;</span>amp;</code></td><td id="mwAfQ"><span typeof="mw:Entity" id="mwAfU">&amp;</span></td><td id="mwAfY"><a rel="mw:WikiLink" href="%E3%82%A2%E3%83%B3%E3%83%91%E3%82%B5%E3%83%B3%E3%83%89" title="アンパサンド" id="mwAfc">アンパサンド</a> (ampersand)</td></tr>
<tr id="mwAfg">
<td id="mwAfk"><code id="mwAfo"><span typeof="mw:Entity" id="mwAfs">&amp;</span>lt;</code></td><td id="mwAfw"><span typeof="mw:Entity" id="mwAf0">&lt;</span></td><td id="mwAf4">小なり (less than)</td></tr>
<tr id="mwAf8">
<td id="mwAgA"><code id="mwAgE"><span typeof="mw:Entity" id="mwAgI">&amp;</span>gt;</code></td><td id="mwAgM"><span typeof="mw:Entity" id="mwAgQ">&gt;</span></td><td id="mwAgU">大なり (greater than)</td></tr>
<tr id="mwAgY">
<td id="mwAgc"><code id="mwAgg"><span typeof="mw:Entity" id="mwAgk">&amp;</span>apos;</code></td><td id="mwAgo">'</td><td id="mwAgs"><a rel="mw:WikiLink" href="%E3%82%A2%E3%83%9D%E3%82%B9%E3%83%88%E3%83%AD%E3%83%95%E3%82%A3" title="アポストロフィ" class="mw-redirect" id="mwAgw">アポストロフィ</a> (apostrophe)</td></tr>
<tr id="mwAg0">
<td id="mwAg4"><code id="mwAg8"><span typeof="mw:Entity" id="mwAhA">&amp;</span>quot;</code></td><td id="mwAhE">"</td><td id="mwAhI">クォーテーションマーク (quotation mark)</td></tr>
</tbody></table>

<p id="mwAhM">「AT<span typeof="mw:Entity" id="mwAhQ">&amp;</span>T」の名前で<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%B3%E3%83%91%E3%82%B5%E3%83%B3%E3%83%89" title="アンパサンド" id="mwAhU">アンパサンド</a>を表現するために、事前宣言されたXMLの実体を使う例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAhY"><pre id="mwAhc"><span id="mwAhg"></span><span class="nt" id="mwAhk">&lt;会社名称&gt;</span>AT<span class="ni" id="mwAho">&amp;amp;</span>T<span class="nt" id="mwAhs">&lt;/会社名称&gt;</span>
</pre></div>

<p id="mwAhw">事前宣言された実体以外の実体を宣言する必要がある場合、XML文書の Document Type Definition （DTD、文書型定義） の内部で宣言する。</p>

<p id="mwAh0">XML文書の内部に定義されたDTDを使って、置換文字列としての実体を宣言して、実体参照を使う例を次に示す。宣言された実体は、一つの文字であっても良いし、テキストの断片であっても良いし、他の実体への参照を含むテキストであっても良い。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAh4"><pre id="mwAh8"><span id="mwAiA"></span><span class="cp" id="mwAiE">&lt;?xml version='1.0' encoding='UTF-8'?&gt;</span>
<span class="cp" id="mwAiI">&lt;!DOCTYPE 例 [</span>
<span class="cp" id="mwAiM">    &lt;!ENTITY copy "©"&gt;</span>
<span class="w" id="mwAiQ">    </span><span class="cp" id="mwAiU">&lt;!ENTITY copyright-notice "Copyright © 2007 平成新報社"&gt;</span>
]&gt;
<span class="nt" id="mwAiY">&lt;例&gt;</span>
<span class="w" id="mwAic">    </span><span class="ni" id="mwAig">&amp;copyright-notice;</span>
<span class="nt" id="mwAik">&lt;/例&gt;</span>
</pre></div>

<p id="mwAio">XMLに準拠した<a rel="mw:WikiLink" href="%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6" title="ブラウザ" id="mwAis">ブラウザ</a>を使うと、先のXML文書は次のように表示される。</p>

<pre id="mwAiw">     Copyright © 2007 平成新報社</pre>

<p id="mwAi0">ファイルの実体を参照するXML文書の例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAi4"><pre id="mwAi8"><span id="mwAjA"></span><span class="cp" id="mwAjE">&lt;?xml version='1.0' encoding='UTF-8'?&gt;</span>
<span class="cp" id="mwAjI">&lt;!DOCTYPE 文章 [</span>
<span class="cp" id="mwAjM">    &lt;!ENTITY tsutsui-yasutaka SYSTEM "another-file.xml"&gt;</span>
]&gt;
<span class="nt" id="mwAjQ">&lt;文章&gt;</span>
<span class="w" id="mwAjU"> </span><span class="nt" id="mwAjY">&lt;文&gt;</span>星新一はSF作家である。<span class="nt" id="mwAjc">&lt;/文&gt;</span>
<span class="w" id="mwAjg"> </span><span class="nt" id="mwAjk">&lt;文&gt;</span>小松左京はSF作家である。<span class="nt" id="mwAjo">&lt;/文&gt;</span>
<span class="w" id="mwAjs"> </span><span class="ni" id="mwAjw">&amp;tsutsui-yasutaka;</span>
<span class="nt" id="mwAj0">&lt;/文章&gt;</span>
</pre></div>

<p id="mwAj4">なお、別ファイル <code id="mwAj8">another-file.xml</code> には次の内容が記されていることとする。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAkA"><pre id="mwAkE"><span id="mwAkI"></span><span class="w" id="mwAkM"> </span><span class="nt" id="mwAkQ">&lt;文&gt;</span>筒井康隆はSF作家である。<span class="nt" id="mwAkU">&lt;/文&gt;</span>
</pre></div>

<p id="mwAkY">XMLに準拠したブラウザでこのXML文書を表示すると、次のようになる。</p>

<pre id="mwAkc">星新一はSF作家である。小松左京はSF作家である。筒井康隆はSF作家である。</pre>

</section><section data-mw-section-id="15" id="mwAkg" aria-labelledby="文字参照"><div class="mw-heading mw-heading3"><h3 id="文字参照"><span id=".E6.96.87.E5.AD.97.E5.8F.82.E7.85.A7" typeof="mw:FallbackId"></span>文字参照</h3></div>
<p id="mwAkk"><b id="mwAko">文字参照</b> (character reference) は、文字をXML文書内でコード番号を指定して記述する記法である。文字参照は、実体参照と似ているが、実体参照では名前を使うのに対し、文字参照ではその部分で始めに "<code id="mwAks">#</code>" 文字を記述し続けて数字を記述する。</p>

<p id="mwAkw">文字参照で使う数字は、<a rel="mw:WikiLink" href="%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%87%E5%AD%97%E9%9B%86%E5%90%88" title="符号化文字集合" class="mw-redirect" id="mwAk0">符号化文字集合</a>の国際規格である <a rel="mw:WikiLink" href="ISO/IEC_10646" title="ISO/IEC 10646" id="mwAk4">ISO/IEC 10646</a> (および<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwAk8">Unicode</a>) のコード番号である。文字参照で使うことができる数字は、十進数であるか "<code id="mwAlA">x</code>" を前につけた十六進数である。文字参照は、実体参照とは異なり、事前宣言されているわけでもなく、XML文書のDTD内部で宣言されているわけでもない。文字参照は、簡単には符号化できない文字を表現するために使われることが多い。例えば、<a rel="mw:WikiLink" href="%E3%83%A8%E3%83%BC%E3%83%AD%E3%83%83%E3%83%91" title="ヨーロッパ" id="mwAlE">欧州</a>のコンピュータ上で作成するXML文書で<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%A9%E3%83%93%E3%82%A2%E8%AA%9E" title="アラビア語" id="mwAlI">アラビア語</a>の文字を使う場合などである。「AT<span typeof="mw:Entity" id="mwAlM">&amp;</span>T」の例の内のアンパサンドは、この場合に似ているともいえる。十進数の38と十六進数の26は、共に ISO/IEC 10646 の "<span typeof="mw:Entity" id="mwAlQ">&amp;</span>" 文字のコード番号である。つまり「AT<span typeof="mw:Entity" id="mwAlU">&amp;</span>T」はXML文書では次のように記述することができる。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAlY"><pre id="mwAlc"><span id="mwAlg"></span><span class="nt" id="mwAlk">&lt;会社名称&gt;</span>AT<span class="ni" id="mwAlo">&amp;#38;</span>T<span class="nt" id="mwAls">&lt;/会社名称&gt;</span>
<span class="nt" id="mwAlw">&lt;会社名称&gt;</span>AT<span class="ni" id="mwAl0">&amp;#x26;</span>T<span class="nt" id="mwAl4">&lt;/会社名称&gt;</span>
</pre></div>

<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAl8">→「<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E5%8F%82%E7%85%A7" title="文字参照">文字参照</a>」も参照</div>

</section><section data-mw-section-id="16" id="mwAmA" aria-labelledby="処理命令"><div class="mw-heading mw-heading3"><h3 id="処理命令"><span id=".E5.87.A6.E7.90.86.E5.91.BD.E4.BB.A4" typeof="mw:FallbackId"></span>処理命令</h3></div>
<p id="mwAmE"><b id="mwAmI">処理命令</b> (processing instruction) は、XML文書の構成要素であり、XML文書を扱う<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="ソフトウェア" id="mwAmM">ソフトウェア</a>に対する何らかの処理を行う命令を、記述する内容が、処理命令である。</p>

<p id="mwAmQ">次に処理命令の構文を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAmU"><pre id="mwAmY"><span id="mwAmc"></span><span class="cp" id="mwAmg">&lt;?処理命令ターゲット 処理内容?&gt;</span>
</pre></div>

<p id="mwAmk">処理命令は<span typeof="mw:DisplaySpace" id="mwAmo">&nbsp;</span>?&gt; の文字列を除き任意の処理内容を記述することができる。処理命令には、処理内容として擬似属性 (pseudo attribute) を記述することがある。擬似属性は、記述のしかたが属性名と属性値のペアに似ている。しかしXMLプロセサは擬似属性を、属性として解釈せず、処理命令の処理内容として解釈する。</p>

<p id="mwAms">擬似属性を使った処理命令の例を次に示す。
これはXML文書に<a rel="mw:WikiLink" href="Cascading_Style_Sheets" title="Cascading Style Sheets" id="mwAmw">カスケーディングスタイルシート</a> (CSS) と関連づけるという処理命令である。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwAm0"><pre id="mwAm4"><span id="mwAm8"></span><span class="cp" id="mwAnA">&lt;?xml-stylesheet type="text/css" href="monobook.css"?&gt;</span>
</pre></div>
<!--
XML宣言は処理命令と同じような記述をするが、XML宣言は処理命令'''ではない'''。
-->

<p id="mwAnE">あるXML文書内に記述された特定の処理命令について、その処理命令をプログラマーが意図したとおりの処理を実行させるためには、そのXML文書を処理するアプリケーションソフトウェア側がその処理命令に対応する必要がある。</p>

</section><section data-mw-section-id="17" id="mwAnI" aria-labelledby="CDATAセクション"><div class="mw-heading mw-heading3"><h3 id="CDATAセクション"><span id="CDATA.E3.82.BB.E3.82.AF.E3.82.B7.E3.83.A7.E3.83.B3" typeof="mw:FallbackId"></span>CDATAセクション</h3></div>
<p id="mwAnM">XML文書 （およびSGML文書） において<b id="mwAnQ">CDATAセクション</b>とは、文字列データのみで構成されておりマークアップされたデータは含まれていないと、XMLプロセサが解釈するようマークされた、要素の内容を構成する文字列データの一部である。CDATAセクションは、文字列データを表現するための単なる代替構文である。
CDATAセクションとして宣言された文字列データと、"<code id="mwAnU"><span typeof="mw:Entity" id="mwAnY">&lt;</span></code>" と "<code id="mwAnc"><span typeof="mw:Entity" id="mwAng">&amp;</span></code>" を "<code id="mwAnk"><span typeof="mw:Entity" id="mwAno">&amp;</span>lt;</code>" と "<code id="mwAns"><span typeof="mw:Entity" id="mwAnw">&amp;</span>amp;</code>" で表現する通常の構文で記述した文字列データとの間に、意味的な違いはない。</p>

<section data-mw-section-id="18" id="mwAn0" aria-labelledby="CDATAセクションの構文と解釈"><div class="mw-heading mw-heading4"><h4 id="CDATAセクションの構文と解釈"><span id="CDATA.E3.82.BB.E3.82.AF.E3.82.B7.E3.83.A7.E3.83.B3.E3.81.AE.E6.A7.8B.E6.96.87.E3.81.A8.E8.A7.A3.E9.87.88" typeof="mw:FallbackId"></span>CDATAセクションの構文と解釈</h4></div>
<p id="mwAn4">CDATAセクションは次の記述で始まる。</p>

<pre id="mwAn8"><code id="mwAoA"><span typeof="mw:Entity" id="mwAoE">&lt;</span>!<span typeof="mw:Nowiki" id="mwAoI">[CDATA[</span></code></pre>

<p id="mwAoM">そしてCDATAセクションの内容が続き、次の記述が最初に出現したところでCDATAセクションは終わる。</p>

<pre id="mwAoQ"><code id="mwAoU"><span typeof="mw:Nowiki" id="mwAoY">]]</span><span typeof="mw:Entity" id="mwAoc">&gt;</span></code></pre>

<p id="mwAog">CDATAセクションの内容の文字列は全て文字列データとして解釈され、マークアップや実体参照や文字参照として解釈されることはない。</p>

<p id="mwAok">次の例で「送信者」の開始タグと終了タグはマークアップとして解釈される。</p>

<pre id="mwAoo"><code id="mwAos"><span typeof="mw:Entity" id="mwAow">&lt;</span>送信者<span typeof="mw:Entity" id="mwAo0">&gt;</span>星新一<span typeof="mw:Entity" id="mwAo4">&lt;</span>/送信者<span typeof="mw:Entity" id="mwAo8">&gt;</span></code></pre>

<p id="mwApA">しかし次のように記述した場合は、</p>

<pre id="mwApE"><code id="mwApI"><span typeof="mw:Entity" id="mwApM">&lt;</span>!<span typeof="mw:Nowiki" id="mwApQ">[CDATA[<span typeof="mw:Entity" id="mwApU">&lt;</span>送信者<span typeof="mw:Entity" id="mwApY">&gt;</span>星新一<span typeof="mw:Entity" id="mwApc">&lt;</span>/送信者<span typeof="mw:Entity" id="mwApg">&gt;</span>]]</span><span typeof="mw:Entity" id="mwApk">&gt;</span></code></pre>

<p id="mwApo">次のように記述したものと同等に解釈される。</p>

<pre id="mwAps"><code id="mwApw"><span typeof="mw:Entity" id="mwAp0">&amp;</span>lt;送信者<span typeof="mw:Entity" id="mwAp4">&amp;</span>gt;星新一<span typeof="mw:Entity" id="mwAp8">&amp;</span>lt;/送信者<span typeof="mw:Entity" id="mwAqA">&amp;</span>gt;</code></pre>

<p id="mwAqE">すなわち、「送信者」タグは「星新一」の文字列と同列に位置づけられ、いずれも文字列データとして解釈される。</p>

<p id="mwAqI">文字参照 <code id="mwAqM"><span typeof="mw:Entity" id="mwAqQ">&amp;</span>#x00F0;</code> が要素の内容で出現した場合は、一つの<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwAqU">Unicode</a>文字 <span class="Unicode" typeof="mw:Transclusion" id="mwAqY">00F0</span> ("ð") として解釈される。しかしCDATAセクション内で出現した場合は、8つの文字からなる文字列として解釈される。
すなわち、アンパサンド、#マーク、文字x、数字0、数字0、文字F、数字0、セミコロンの8つの文字からなる文字列として解釈される。</p>
<!--

==== CDATAセクションを使う ====
-->

</section></section><section data-mw-section-id="19" id="mwAqc" aria-labelledby="整形式XML文書を書くために"><div class="mw-heading mw-heading3"><h3 id="整形式XML文書を書くために"><span id=".E6.95.B4.E5.BD.A2.E5.BC.8FXML.E6.96.87.E6.9B.B8.E3.82.92.E6.9B.B8.E3.81.8F.E3.81.9F.E3.82.81.E3.81.AB" typeof="mw:FallbackId"></span>整形式XML文書を書くために</h3></div>
<p id="mwAqg">整形式XML文書は、とりわけ、次に示す規則に適合しなければならない。</p>

<ul id="mwAqk"><li id="mwAqo">空要素ではない要素は開始タグと終了タグの両方によって境界が定められる。</li>
<li id="mwAqs">空要素は空要素タグ （自分自身で開始タグと終了タグの2つの機能を兼ねるタグ） で記述することができる。例えば <code id="mwAqw"><span typeof="mw:Entity" id="mwAq0">&lt;</span>私は空です/&gt;</code> のように記述することができる。この例は <code id="mwAq4"><span typeof="mw:Entity" id="mwAq8">&lt;</span>私は空です<span typeof="mw:Entity" id="mwArA">&gt;</span><span typeof="mw:Entity" id="mwArE">&lt;</span>/私は空です<span typeof="mw:Entity" id="mwArI">&gt;</span></code> と意味的に同等である。</li>
<li id="mwArM">属性値は全てシングルクォート (') かダブルクォート (") のいずれかで括る。シングルクォートで始められた属性値はシングルクォートで終わり、ダブルクォートで始められた属性値はダブルクォートで終わる。</li>
<li id="mwArQ">タグは入れ子の構造をとることができる。ただしタグがオーバーラップしてはならない。ルート要素ではない要素のおのおのは、必ず別の要素に含まれる。</li>
<li id="mwArU">XML文書は宣言された<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F" title="文字符号化方式" id="mwArY">文字符号化方式</a> （<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89" title="文字コード" id="mwArc">文字コード</a>） にしたがって記述される。文字符号化方式は、<!--明示的に宣言しても良いし、-->XML文書が<a rel="mw:WikiLink" href="Hypertext_Transfer_Protocol" title="Hypertext Transfer Protocol" class="mw-redirect" id="mwArg">HTTP</a>を介して転送される場合に "Content-Type" ヘッダをつけるように暗黙的にXML文書の外部で指定しても良いし、XML文書の内部で文書の先頭のXML宣言内で宣言しても良い。このような宣言がない場合、<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwArk">Unicode</a>の文字符号化方式が使われていると仮定される。XML文書の最初の<a rel="mw:WikiLink" href="%E3%83%90%E3%82%A4%E3%83%88_(%E6%83%85%E5%A0%B1)" title="バイト (情報)" id="mwAro">バイト</a>をみて、<a rel="mw:WikiLink" href="UTF-16" title="UTF-16" id="mwArs">UTF-16</a>の<a rel="mw:WikiLink" href="%E3%83%90%E3%82%A4%E3%83%88%E9%A0%86%E3%83%9E%E3%83%BC%E3%82%AF" title="バイト順マーク" id="mwArw">バイト順マーク</a>と合致すればUTF-16であると仮定する。合致しない場合は<a rel="mw:WikiLink" href="UTF-8" title="UTF-8" id="mwAr0">UTF-8</a>であると仮定する。</li></ul>

<p id="mwAr4">要素の名前ではアルファベットの大文字と小文字とが区別される。例えば、次の例は整形式である。</p>

<pre id="mwAr8"><code id="mwAsA"><span typeof="mw:Entity" id="mwAsE">&lt;</span>Abc&gt;</code> ... <code id="mwAsI"><span typeof="mw:Entity" id="mwAsM">&lt;</span>/Abc&gt;</code></pre>

<p id="mwAsQ">しかし次の例は整形式ではない。</p>

<pre id="mwAsU"><code id="mwAsY"><span typeof="mw:Entity" id="mwAsc">&lt;</span>ABC&gt;</code> ... <code id="mwAsg"><span typeof="mw:Entity" id="mwAsk">&lt;</span>/abc&gt;</code></pre>

<p id="mwAso">XML文書のスキーマを設計する際に、XMLの要素の名前を注意深く選択すると、そのスキーマに準拠したXML文書のデータの意味を、第三者に伝えるために有効であろう。XMLの要素の名前を注意深く選択することにより、そのスキーマに準拠したXML文書は、人間にとって読みやすいものとなる。</p>
<!-- while retaining the rigor needed for software parsing. -->

<p id="mwAss">XMLの要素と属性の名前を、体が名を表すように注意深く選択決定することで、人間がXML文書を読む際に、要素と属性の意味を、外部の説明文書を参照することなく、よりよく理解できるようになる利点が生まれる。ただしこのような作業を行うことは、XML文書の冗長性が増えることでもある。</p>

<p id="mwAsw">人によっては、XML文書を書く際の労力が増えることを、好まない場合がある。またファイルサイズも大きくなることになる。ただし<a rel="mw:WikiLink" href="%E5%8F%AF%E9%80%86%E5%9C%A7%E7%B8%AE" title="可逆圧縮" id="mwAs0">圧縮技術</a>をXML文書に適用してファイルサイズを小さくすることは可能である。</p>

<p id="mwAs4">整形式XML文書を正確に書くためには、ここまで述べたことよりずっと多くの規則にしたがう必要がある。例えば、<a rel="mw:WikiLink" href="#XML名前空間" class="mw-selflink-fragment" id="mwAs8">XML名前空間</a>を使うことや、XMLでの「名前」として使うことができる正確な文字集合を使って、XML文書を書くことなどである。とはいえ、ここまで述べた整形式文書に関する概略を理解しておけば、多くのXML文書を読み理解しあるいは多くのXML文書を書くために必要な基礎は、身についたといえる。</p>

</section><section data-mw-section-id="20" id="mwAtA" aria-labelledby="自動的に検査する"><div class="mw-heading mw-heading3"><h3 id="自動的に検査する"><span id=".E8.87.AA.E5.8B.95.E7.9A.84.E3.81.AB.E6.A4.9C.E6.9F.BB.E3.81.99.E3.82.8B" typeof="mw:FallbackId"></span>自動的に検査する</h3></div>
<p id="mwAtE">XML文書の正当性を自動的に検査するための方法を説明する。</p>

<p id="mwAtI">あるXML文書が、整形式XML文書としての条件のみを満たした文書であるか、それとも妥当なXML文書としての条件をも満たした文書であるかを、判別することは、比較的容易である。というのも、整形式XML文書であるための規則と、XMLの妥当性検証のしくみについては、XML文書を扱うツールの<a rel="mw:WikiLink" href="%E7%A7%BB%E6%A4%8D%E6%80%A7" title="移植性" id="mwAtM">移植性</a>を考慮して設計されているからである。つまりこの設計方針は、XML文書を扱うツールであれば、どのようなXML文書でも扱うことができるということである。</p>

<p id="mwAtQ">独立したツールを使い、XML文書の正当性を自動的に検査する例を示す。</p>

<ul id="mwAtU"><li id="mwAtY">XML文書を扱える<a rel="mw:WikiLink" href="%E3%82%A6%E3%82%A7%E3%83%96%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6" title="ウェブブラウザ" id="mwAtc">ウェブブラウザ</a>で、例えば <a rel="mw:WikiLink" href="Mozilla_Firefox" title="Mozilla Firefox" id="mwAtg">Mozilla Firefox</a> や <a rel="mw:WikiLink" href="Internet_Explorer" title="Internet Explorer" id="mwAtk">Internet Explorer</a> などで、XML文書をロードする。</li>
<li id="mwAto">xmlwf のようなツールを使う （XMLプロセサの実装の一つである <a rel="mw:WikiLink" href="Expat" title="Expat" id="mwAts">Expat</a> に通常は同梱されている）。</li>
<li id="mwAtw">何らかの<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="プログラミング言語" id="mwAt0">プログラミング言語</a>を使って文書を構文解析する。例えばプログラミング言語<a rel="mw:WikiLink" href="Ruby" title="Ruby" id="mwAt4">Ruby</a>では次のようになる。</li></ul>
<pre id="mwAt8">irb&gt; require "rexml/document"
irb&gt; include REXML
irb&gt; doc = Document.new(File.new("test.xml")).root</pre>

</section></section><section data-mw-section-id="21" id="mwAuA" aria-labelledby="XML文書の論理的構造と妥当なXML文書"><div class="mw-heading mw-heading2"><h2 id="XML文書の論理的構造と妥当なXML文書"><span id="XML.E6.96.87.E6.9B.B8.E3.81.AE.E8.AB.96.E7.90.86.E7.9A.84.E6.A7.8B.E9.80.A0.E3.81.A8.E5.A6.A5.E5.BD.93.E3.81.AAXML.E6.96.87.E6.9B.B8" typeof="mw:FallbackId"></span>XML文書の論理的構造と妥当なXML文書</h2></div>
<p id="mwAuE">妥当なXML文書について詳しく説明する。</p>

<p id="mwAuI">XMLでは、要素に名前を付けることができ、階層構造をとることができ、<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwAuM">スキーマ言語</a> (Document Type Definition など) により用途に沿うように定義されたスキーマを使うことで要素と属性の意味を公開し説明することができる。XMLのこうした特徴により、目的に応じたXMLに準拠した<a rel="mw:WikiLink" href="%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語" id="mwAuQ">マークアップ言語</a>を創るための、構文的な基礎が成り立っている。</p>

<!--
XMLに準拠して創られたマークアップ言語の一般的な構文は、厳密である。
すなわち、XMLに準拠して創られたマークアップ言語で記述された文書は、XMLの一般的な規則を守らなければならない。
XMLの一般的な規則を守ることで、XML文書を扱う全ての[[ソフトウェア]]が、スキーマに記述された定義情報をかなりの程度理解できることが、最低限保証されるのである。
-->
<p id="mwAuU">スキーマは、制約の集合を記述することにより、XML文書の構文上の規則を単に補足するのみである。スキーマは、多くの場合、要素と属性の名前を限定し、各要素が内容とするものの階層構造を規定し、属性の内容を規定する。例えば、「誕生日」という名前の要素では、「月」という名前の一つの要素と「日」という名前の一つの要素をもつことができ、「月」要素と「日」要素のそれぞれは文字列データのみをもつことができる。</p>

<p id="mwAuY">スキーマに定義された制約には、<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B" title="データ型" id="mwAuc">データ型</a>の割り当てを含むことができる場合がある。
データ型を割り当てることにより、データ型が割り当てられた情報がどのように処理できるかを、規定することができる。
例えば、「月」要素の文字列データは、そのXML文書で採用したスキーマ言語の機能に準拠して、「1」から「12」までの数字のみが妥当であるという形で、定義することができる可能性がある。ここでスキーマ言語の (データ型に関する) 機能とは、おそらく特定の方法で形式にしたがって記述しなければならないということだけでなく、別のデータ型の値であるかのように処理されることを未然に防ぐことを、意味する。</p>

<p id="mwAug">何らかのスキーマに準拠したXML文書は、整形式であるということに加えて、<b id="mwAuk">妥当</b> (valid) であるということが成り立つ。</p>

<p id="mwAuo">XMLのスキーマは、XMLの文書型 (文書の種類、文書の論理的構造) を記述したものである。
多くの場合スキーマは、その文書の構造と内容に関する制約という形で表現される。XMLのスキーマは、XML仕様で規定されている、整形式XML文書としての基本的な制約に加え、それ以上の制約をXML文書に課すことができる。XMLのスキーマ言語は、標準規格のものもプロプライエタリなものも含めて、こうしたスキーマを表現するという目的のもと、数多く存在している。いくつかのスキーマ言語では、スキーマ自身をXML文書として記述する。</p>

<p id="mwAus">スキーマ言語の記述能力はスキーマ言語ごとにさまざまである。例えばスキーマ言語の一つである Document Type Definition (DTD) では、XML文書がとるべき構造の主な規則として、そのDTDに準拠したXML文書で使うことができる要素の名前、要素の内容モデル、要素で指定できる属性の名前、属性の値のデータ型を、記述することができる<sup class="mw-ref reference" id="cite_ref-9" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-9" id="mwAuw"><span class="mw-reflink-text" id="mwAu0"><span class="cite-bracket" id="mwAu4">[</span>5<span class="cite-bracket" id="mwAu8">]</span></span></a></sup>。</p>

<p id="mwAvA">なお、要素の<b id="mwAvE">内容モデル</b>とは、要素の内容に出現可能な要素やデータとその順番、および要素の出現回数を規定したもののことをいう<sup class="mw-ref reference" id="cite_ref-10" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-10" id="mwAvI"><span class="mw-reflink-text" id="mwAvM"><span class="cite-bracket" id="mwAvQ">[</span>6<span class="cite-bracket" id="mwAvU">]</span></span></a></sup>。</p>

<p id="mwAvY"><a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwAvc">Standard Generalized Markup Language</a> (SGML) やXMLなどの汎用的なデータ記述言語が世に出る前は、ソフトウェア設計者は、複数の<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)" title="プログラム (コンピュータ)" id="mwAvg">プログラム</a>の間でデータの受け渡しをするために、自分自身で<a rel="mw:WikiLink" href="%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88" title="ファイルフォーマット" id="mwAvk">ファイルフォーマット</a>を定義するか、ちょっとした<a rel="mw:WikiLink" href="%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E8%A8%80%E8%AA%9E" title="コンピュータ言語" id="mwAvo">コンピュータ言語</a>を定義しなければならなかった。このため受け渡しするデータの詳細な仕様やその他の文書を書かなければならなかったし、文書の書き手を別途に確保しなければならないこともあった。</p>

<p id="mwAvs">XMLが一定の構造をもち厳密な構文解析の規則をもつことで、ソフトウェア設計者は構文解析の作業を標準的な<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="ソフトウェア" id="mwAvw">ソフトウェア</a>ツール (妥当性検証器、バリデータ) に任せることができる。そしてXMLには、用途に特有の言語を開発するための一般的な、<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%A2%E3%83%87%E3%83%AB" title="データモデル" id="mwAv0">データモデル</a>指向の枠組みがある。
このためソフトウェア開発者は、比較的高水準の抽象度において、自分たちが扱うデータの規則の開発に専念するだけでよい。</p>

<p id="mwAv4">XML文書をスキーマに照らして妥当性検証を行うための、十分にテストされたツールが、数多く存在している。XML文書をスキーマに照らして妥当性検証を行うためのツールを、妥当性検証器 (バリデータ) という。妥当性検証器は、スキーマに表現された制約にXML文書が準拠しているかについて、自動的に妥当性検証を行う。
妥当性検証器は、XMLプロセサ (XMLパーサ) に含まれていることもあれば、XMLプロセサとは別に提供されていることもある。</p>

<p id="mwAwA">これまでに述べたスキーマの使い方とは別の使い方も存在する。
例えば、XMLエディタは、XML文書の編集を支援するためにスキーマを使うことができる。こうしたXMLエディタでは、妥当な要素名や妥当な属性名を提示することなどができる。</p>

<section data-mw-section-id="22" id="mwAwE" aria-labelledby="Document_Type_Definition_(DTD、文書型定義)"><div class="mw-heading mw-heading3"><h3 id="Document_Type_Definition_(DTD、文書型定義)"><span id="Document_Type_Definition_.28DTD.E3.80.81.E6.96.87.E6.9B.B8.E5.9E.8B.E5.AE.9A.E7.BE.A9.29" typeof="mw:FallbackId"></span>Document Type Definition (DTD、文書型定義)</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAwI">→詳細は「<a rel="mw:WikiLink" href="Document_Type_Definition" title="Document Type Definition">Document Type Definition</a>」を参照</div>
<p id="mwAwM">XMLのための最も歴史の古いスキーマ言語は Document Type Definition (DTD、文書型定義) である。DTDは、XMLの前身である<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwAwQ">SGML</a>から引き継がれた。DTDは XML 1.0 標準に含められているため、ほとんどあらゆるXMLプロセサがDTDを扱うことができる。しかし2007年現在ではDTDを使うことは限定的な範囲にとどまっているようである。その理由は次のとおりである。</p>

<ul id="mwAwU"><li id="mwAwY">DTDではXMLで新しく開発された機能を使うことができない。特に<a rel="mw:WikiLink" href="#XML名前空間" class="mw-selflink-fragment" id="mwAwc">XML名前空間</a>を扱えないことが厳しい。</li>
<li id="mwAwg">DTDは表現力が乏しい。DTDではいくつかの形式的な視点からXML文書を扱うことができない。</li>
<li id="mwAwk">DTDによるスキーマはXMLではない独自の構文で記述する。この構文は、XMLの前身であるSGMLから引き継いでいるという、経緯がある。XML 1.0 の制定当時はDTD以外のスキーマ言語は存在しなかった。</li></ul>

<p id="mwAwo">DTDは現在も多くの用途で使われている。その理由は、一定の人々にとってはDTDは他の新しいスキーマ言語よりも読みやすく書きやすいと考えられているからである。</p>

<section data-mw-section-id="23" id="mwAws" aria-labelledby="XML_Schema"><div class="mw-heading mw-heading4"><h4 id="XML_Schema">XML Schema</h4></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAww">→詳細は「<a rel="mw:WikiLink" href="XML_Schema" title="XML Schema">XML Schema</a>」を参照</div>
<p id="mwAw0">XML Schema は、<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwAw4">World Wide Web Consortium</a> (W3C) により開発された、DTDの後継となる新しいスキーマ言語である。
非公式には、<b id="mwAw8">XSD</b>と呼ばれることもある。XSDは、XML Schema の<a rel="mw:WikiLink" href="%E3%82%A4%E3%83%B3%E3%82%B9%E3%82%BF%E3%83%B3%E3%82%B9" title="インスタンス" id="mwAxA">インスタンス</a> (スキーマ) を意味する "XML Schema Definition" の<a rel="mw:WikiLink" href="%E9%A0%AD%E5%AD%97%E8%AA%9E" title="頭字語" id="mwAxE">頭字語</a>である。</p>

<p id="mwAxI">XML Schema は、豊富な<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B" title="データ型" id="mwAxM">データ型</a>を扱うことができるスキーマ言語である。XML文書の論理的構造について、DTDより詳細な制約を記述することができる。そしてDTDより詳細な妥当性検証の枠組みのもとで、妥当性検証が行われる。他にも、XMLによるマークアップ言語のスキーマの記述能力において、DTDと比べて非常に高いという長所も備えている。</p>

<p id="mwAxQ">また、XML Schema によるスキーマ自体を、XMLに準拠した形式を使って記述する。XML Schema のスキーマ自体がXMLに準拠することで、スキーマを編集したりスキーマに何らかの処理を行うために、普通のXMLツールを使うことができるようになる。</p>

<p id="mwAxU">ただし、XML Schema の妥当性検証器を実装する作業には、単にXML文書を読むことができる能力よりも、非常に多くの知識と能力を必要とする。</p>

<p id="mwAxY">XML Schema に対しては賛否両論がある。XML Schema に対する批判の一部を示す。</p>

<ul id="mwAxc"><li id="mwAxg">XML Schema の仕様は非常に膨大な分量がある。そのため XML Schema を理解することは難しい。またそのため XML Schema の妥当性検証器を実装することも難しい。</li>
<li id="mwAxk">XML Schema でスキーマを記述する際、XMLに準拠した構文で記述する (記述しなければならない) のは、冗長である。このことが XML Schema のスキーマを理解することやスキーマを記述することを、DTDよりしんどい作業にしてしまっている。</li>
<li id="mwAxo">XML文書の構文解析をした後に行う、XML Schema のスキーマによる妥当性検証は、費用が高くつく可能性がある。特にサイズの大きいXML文書の妥当性検証を行う際には、深刻な問題になる可能性がある。</li>
<li id="mwAxs">XML Schema の<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%A2%E3%83%87%E3%83%AA%E3%83%B3%E3%82%B0" title="データモデリング" id="mwAxw">データモデリング</a>能力は非常に限られている。属性の内容によってその要素の内容モデルを変更することはできない。</li>
<li id="mwAx0">XML Schema における型派生モデルは、非常に限られた能力しかない。特に拡張による派生は、かなり使いにくい。</li>
<li id="mwAx4"><a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9" title="データベース" id="mwAx8">データベース</a>と連携するためのデータ転送機能は、不可解な考え方によって実現されている。nillability (<a rel="mw:WikiLink" href="SQL" title="SQL" id="mwAyA">SQL</a>データベース用語でいう<a rel="mw:WikiLink" href="Null" title="Null" id="mwAyE">NULL</a>に相当する状態をとることが可能であるという特性) は備えているが、出版業界の要件は満たしていない。</li>
<li id="mwAyI">key/keyref/uniqueness の機構は、データ型を考慮していない。</li>
<li id="mwAyM">スキーマ検証後<a rel="mw:WikiLink" href="#XML情報集合" class="mw-selflink-fragment" id="mwAyQ">情報集合</a> (PSVI、Post Schema Validation Infoset) の概念は、標準のXML表現や<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9" title="アプリケーションプログラミングインタフェース" id="mwAyU">アプリケーションプログラミングインタフェース</a> (API) をもたない。このため、妥当性の再検証を行わない場合、ベンダ非依存の考え方に反する (<a rel="mw:WikiLink" href="#情報集合への追加情報" class="mw-selflink-fragment" id="mwAyY">#情報集合への追加情報</a>を参照)。</li></ul>

</section><section data-mw-section-id="24" id="mwAyc" aria-labelledby="RELAX_NG"><div class="mw-heading mw-heading4"><h4 id="RELAX_NG">RELAX NG</h4></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAyg">→詳細は「<a rel="mw:WikiLink" href="RELAX_NG" title="RELAX NG">RELAX NG</a>」を参照</div>
<p id="mwAyk">RELAX NGは人気のあるもう一つの新しいスキーマ言語である。2001年12月に<a rel="mw:WikiLink" href="OASIS_(%E7%B5%84%E7%B9%94)" title="OASIS (組織)" id="mwAyo">OASIS</a> (構造化情報標準促進協会) で仕様が策定された。<a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwAys">ISO</a> (国際標準化機構) にて定められた国際標準でもある。ISOでは、<a rel="mw:WikiLink" href="%E6%96%87%E6%9B%B8%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E5%AE%9A%E7%BE%A9%E8%A8%80%E8%AA%9E" title="文書スキーマ定義言語" id="mwAyw">文書スキーマ定義言語</a> (DSDL) の一部分を構成する仕様として位置づけられている。</p>

<p id="mwAy0">RELAX NGのスキーマの記述方法は、2つの形式がある。XMLに準拠した構文 (<a rel="mw:WikiLink" href="RELAX_NG#XML構文" title="RELAX NG" id="mwAy4">XML構文</a>、xml syntax) と、XMLに準拠しない<a rel="mw:WikiLink" href="RELAX_NG#短縮構文" title="RELAX NG" id="mwAy8">短縮構文</a> (compact syntax) である。短縮構文は、読みやくすることとより書きやすくすることを目指している。ただし、短縮構文で記述されたスキーマをXML構文のスキーマに変換する方法と、その逆の変換を行う方法は、予め定義されているので、<a rel="mw:WikiLink" href="%E3%82%B8%E3%82%A7%E3%83%BC%E3%83%A0%E3%82%BA%E3%83%BB%E3%82%AF%E3%83%A9%E3%83%BC%E3%82%AF_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E6%8A%80%E8%A1%93%E8%80%85)" title="ジェームズ・クラーク (ソフトウェア技術者)" id="mwAzA">ジェームズ・クラーク</a>が開発した <a rel="mw:ExtLink nofollow" href="http://www.thaiopensource.com/relaxng/trang.html" class="external text" id="mwAzE">Trang conversion tool</a> を使えば、標準のXMLツールを使う利便を享受することができる。</p>

<p id="mwAzI">RELAX NGはXML Schemaよりも簡潔なスキーマ定義と簡潔な妥当性検証の枠組みを、備えている。そのためRELAX NGは、XML Schema と比べて、使いやすく、またRELAX NGの妥当性検証器を実装することも容易になっている。</p>

<p id="mwAzM">RELAX NGもまた、<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B" title="データ型" id="mwAzQ">データ型</a>フレームワークプラグインを使う機能を備えている。
RELAX NG でスキーマを記述する人は、例えば、XML文書でXML Schemaのデータ型の定義に適合させたいと考えるかもしれない。
そして RELAX NG では、データ型フレームワークプラグインを使うことにより可能となっている。</p>

</section><section data-mw-section-id="25" id="mwAzU" aria-labelledby="ISO_文書スキーマ定義言語"><div class="mw-heading mw-heading4"><h4 id="ISO_文書スキーマ定義言語"><span id="ISO_.E6.96.87.E6.9B.B8.E3.82.B9.E3.82.AD.E3.83.BC.E3.83.9E.E5.AE.9A.E7.BE.A9.E8.A8.80.E8.AA.9E" typeof="mw:FallbackId"></span>ISO 文書スキーマ定義言語</h4></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAzY">→詳細は「<a rel="mw:WikiLink" href="%E6%96%87%E6%9B%B8%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E5%AE%9A%E7%BE%A9%E8%A8%80%E8%AA%9E" title="文書スキーマ定義言語">文書スキーマ定義言語</a>」を参照</div>
<p id="mwAzc"><a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwAzg">ISO</a> <a rel="mw:WikiLink" href="%E6%96%87%E6%9B%B8%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E5%AE%9A%E7%BE%A9%E8%A8%80%E8%AA%9E" title="文書スキーマ定義言語" id="mwAzk">文書スキーマ定義言語</a> (DSDL; Document Schema Description Languages) 標準は、小規模なスキーマ言語の広範なセットを共に提供する。DSDLを構成する複数の仕様のそれぞれが、特定の問題に対応するために特化されている。DSDLはRELAX NGのXML構文と短縮構文、<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%9E%E3%83%88%E3%83%AD%E3%83%B3" title="スキマトロン" id="mwAzo">スキマトロン</a>、データ型ライブラリ言語、文字レパートリ記述言語、文書スキーマ再命名言語、名前空間に基づく検証委譲言語 (NVDL) を、含んでいる。DSDLスキーマ言語群はXML Schemasを支持するベンダの支援は2007年の時点ではまだ受けていない。DSDLは<a rel="mw:WikiLink" href="%E5%87%BA%E7%89%88" title="出版" id="mwAzs">出版</a>のための機能が欠如していることに対する、出版業界の一定の草の根の反応でもある。</p>

</section></section><section data-mw-section-id="26" id="mwAzw" aria-labelledby="XML文書を検証する過程でXML情報集合を変更することについて"><div class="mw-heading mw-heading3"><h3 id="XML文書を検証する過程でXML情報集合を変更することについて"><span id="XML.E6.96.87.E6.9B.B8.E3.82.92.E6.A4.9C.E8.A8.BC.E3.81.99.E3.82.8B.E9.81.8E.E7.A8.8B.E3.81.A7XML.E6.83.85.E5.A0.B1.E9.9B.86.E5.90.88.E3.82.92.E5.A4.89.E6.9B.B4.E3.81.99.E3.82.8B.E3.81.93.E3.81.A8.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6" typeof="mw:FallbackId"></span>XML文書を検証する過程でXML情報集合を変更することについて</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwAz0">→「<a rel="mw:WikiLink" href="#情報集合への追加情報" class="mw-selflink-fragment">§<span typeof="mw:Entity">&nbsp;</span>情報集合への追加情報</a>」も参照</div>

<p id="mwAz4">いくつかのスキーマ言語では、特定のXML文書の構造を記述する能力に加えて、個々のXML文書をその特定のXML文書構造に適合するように変換する機能も、限定的ながら備えている。</p>

<p id="mwAz8">DTDとXML Schemaはこの変換機能を備えている。
DTDと XML Schema では、XML文書に属性の既定値を与えることができる。RELAX NGとスキマトロンは、意図的にこの機能を外している。
例えば、<a rel="mw:WikiLink" href="#XML情報集合" class="mw-selflink-fragment" id="mwA0A">XML情報集合</a>を正確に扱うことが、RELAX NGとスキマトロンの仕様策定時に変換機能を外した理由の一つである。</p>

</section></section><section data-mw-section-id="27" id="mwA0E" aria-labelledby="XML文書を視覚的に表示する"><div class="mw-heading mw-heading2"><h2 id="XML文書を視覚的に表示する"><span id="XML.E6.96.87.E6.9B.B8.E3.82.92.E8.A6.96.E8.A6.9A.E7.9A.84.E3.81.AB.E8.A1.A8.E7.A4.BA.E3.81.99.E3.82.8B" typeof="mw:FallbackId"></span>XML文書を視覚的に表示する</h2></div>
<p id="mwA0I">XML文書を視覚的に表示するための方法を説明する。</p>

<p id="mwA0M">XML文書は、その文書の内容をどのように視覚的に表示するかという情報を、一切含んでいない。
<a rel="mw:WikiLink" href="Cascading_Style_Sheets" title="Cascading Style Sheets" id="mwA0Q">Cascading Style Sheets</a> (CSS) や <a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language" id="mwA0U">Extensible Stylesheet Language</a> (XSL) のようなXMLのための<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88%E8%A8%80%E8%AA%9E" title="スタイルシート言語" class="mw-redirect" id="mwA0Y">スタイルシート言語</a>を使うのでなければ、ほとんどの<a rel="mw:WikiLink" href="%E3%82%A6%E3%82%A7%E3%83%96%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6" title="ウェブブラウザ" id="mwA0c">ウェブブラウザ</a>は普通のXML文書を生のXMLテキストとして描画する。いくつかのウェブブラウザは「ハンドル」をつけて表示する (例えば、余白に + と - の符号を表示する)。ハンドルを使うことにより、XML文書構造の部分木を、マウスクリックで展開したり折りたたんだりすることができる。</p>

<p id="mwA0g">CSSを使って<a rel="mw:WikiLink" href="%E3%82%A6%E3%82%A7%E3%83%96%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6" title="ウェブブラウザ" id="mwA0k">ウェブブラウザ</a>でXML文書を描画するためには、XML文書は次のような要領で<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88" title="スタイルシート" id="mwA0o">スタイルシート</a>への参照を含めなければならない (XMLの<a rel="mw:WikiLink" href="#処理命令" class="mw-selflink-fragment" id="mwA0s">処理命令</a>を使ってスタイルシートを使って描画する旨を指定している)。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwA0w"><pre id="mwA00"><span id="mwA04"></span><span class="cp" id="mwA08">&lt;?xml-stylesheet type="text/css" href="myStyleSheet.css"?&gt;</span>
</pre></div>

<p id="mwA1A">この方法は、<a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwA1E">HTML</a>文書におけるスタイルシート指定の方法とは異なる。HTML文書では <code id="mwA1I"><span typeof="mw:Entity" id="mwA1M">&lt;</span>link/&gt;</code> 要素を使ってスタイルシートを指定する。</p>

<p id="mwA1Q">XML文書を視覚的に表示するために、<a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language" id="mwA1U">Extensible Stylesheet Language</a>（XSL、拡張可能なスタイルシート言語）を使うこともできる。XSLを使う場合は、XML文書を<a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwA1Y">XHTML</a>/HTML文書の構造に変換するか、もしくはウェブブラウザで視覚的に表示することができる他の文書の構造に変換する。</p>

<p id="mwA1c">クライアント側で<a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations" id="mwA1g">XSL Transformations</a> (XSLT) のスタイルシートを指定するためには、XML文書に次のようにXSLTスタイルシートへの参照を含めることが、必要である（XMLの処理命令を使って実現している）。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwA1k"><pre id="mwA1o"><span id="mwA1s"></span><span class="cp" id="mwA1w">&lt;?xml-stylesheet type="text/xsl" href="myTransform.xslt"?&gt;</span>
</pre></div>

<p id="mwA10">クライアント側のXSLTスタイルシート処理機能は、現在では多くのウェブブラウザが備えている。</p>
<!-- ただし[[Opera]] の 9.0 より前のバージョンではXSLTスタイルシートを扱うことはできない。 -->

<p id="mwA14">別の方法として、このような利用者が常用しているウェブブラウザの能力に依存する方法を採らずに、サーバ側でXSLを使ってXML文書を視覚化可能な形式に変換する方法も、行われている。利用者は、「舞台の裏側で」何が行われているかを、意識する必要はない。実際に目にするものは、よく整形され視覚化された文書だけである。</p>
<!--
詳細はXSLTの項目を参照 [[XSL Transformations#Examples|for an example of server&#x2D;side XSLT in action]]
-->

</section><section data-mw-section-id="28" id="mwA18" aria-labelledby="XMLの拡張"><div class="mw-heading mw-heading2"><h2 id="XMLの拡張"><span id="XML.E3.81.AE.E6.8B.A1.E5.BC.B5" typeof="mw:FallbackId"></span>XMLの拡張</h2></div>
<p id="mwA2A">XMLを拡張する技術を説明する。</p>

<dl id="mwA2E"><dt id="mwA2I"><a rel="mw:WikiLink" href="XML_Path_Language" title="XML Path Language" id="mwA2M">XML Path Language</a> (XPath)</dt>
<dd id="mwA2Q">XML Path Language (XPath) を使うと、XML文書の個々の部分を参照することができるようになる。XPathは、<a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations" id="mwA2U">XSLT</a>、<a rel="mw:WikiLink" href="XSL_Formatting_Objects" title="XSL Formatting Objects" id="mwA2Y">XSL-FO</a>、<a rel="mw:WikiLink" href="XQuery" title="XQuery" id="mwA2c">XQuery</a> などの他の技術に対して、XML文書のデータに対する<a rel="mw:WikiLink" href="%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9" title="ランダムアクセス" id="mwA2g">ランダムアクセス</a>を行う機能を、提供する。XPathで記述された式は、XML文書を構成するXML要素、属性、処理命令、コメントなどの内側の、テキスト、データ、値を参照することができる。XPathの式は、要素の名前と属性の名前にアクセスすることもできる。Xpathは、妥当なXML文書に対しても整形式XML文書に対しても使うことができる。また名前空間が定義されたXML文書に対しても、名前空間が定義されていないXML文書に対しても使うことができる。</dd>
<dt id="mwA2k"><a rel="mw:WikiLink" href="XML_Inclusions" title="XML Inclusions" id="mwA2o">XML Inclusions</a> (XInclude)</dt>
<dd id="mwA2s">XML Inclusions (XInclude) の仕様は、XML文書内に外部ファイルの全内容もしくは外部ファイルの一部の内容を含める機能を、定義している。XML文書においてXIncludeの処理が終了すると、XInclude処理終了後の<a rel="mw:WikiLink" href="#XML情報集合" class="mw-selflink-fragment" id="mwA2w">XML情報集合</a>にはXIncludeの要素はなく、XIncludeの要素の代わりにそこに外部の文書もしくは文書の一部の複製が、最終的な情報集合に含まれている。XIncludeでは、外部文書の一部をXML文書に含める際に、外部文書の複製対象の領域を参照するためにXPathを使っている。</dd>
<dt id="mwA20"><a rel="mw:WikiLink" href="XQuery" title="XQuery" id="mwA24">XQuery</a></dt>
<dd id="mwA28">XQueryは、XMLにおいて、<a rel="mw:WikiLink" href="%E9%96%A2%E4%BF%82%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9" title="関係データベース" id="mwA3A">関係データベース</a>にとっての<a rel="mw:WikiLink" href="SQL" title="SQL" id="mwA3E">SQL</a>や<a rel="mw:WikiLink" href="PL/SQL" title="PL/SQL" id="mwA3I">PL/SQL</a>に相当する、<a rel="mw:WikiLink" href="%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E8%A8%80%E8%AA%9E" title="問い合わせ言語" id="mwA3M">問い合わせ言語</a>としての機能を提供する。XML文書にアクセスし、XML文書を操作（編集）し、その結果をXML文書の形で返す。</dd>
<dt id="mwA3Q"><a rel="mw:WikiLink" href="#XML名前空間" class="mw-selflink-fragment" id="mwA3U">XML名前空間</a> (Namespaces in XML)</dt>
<dd id="mwA3Y">XML名前空間 (Namespaces in XML) を使うことで、同一のXML文書内で異なる複数の<a rel="mw:WikiLink" href="%E8%AA%9E%E5%BD%99" title="語彙" id="mwA3c">ボキャブラリ</a>（スキーマ）に由来する要素と属性を、名前の衝突を発生させることなく、含めることができる。<a rel="mw:WikiLink" href="#XML名前空間" class="mw-selflink-fragment" id="mwA3g">後述</a>する。</dd>
<dt id="mwA3k"><a rel="mw:WikiLink" href="XML%E7%BD%B2%E5%90%8D" title="XML署名" id="mwA3o">XML Signature</a></dt>
<dd id="mwA3s">XML Signature の仕様は、XML文書の内容に対して<a rel="mw:WikiLink" href="%E9%9B%BB%E5%AD%90%E7%BD%B2%E5%90%8D" title="電子署名" id="mwA3w">電子署名</a>を生成するための構文と処理規則を定義する。</dd>
<dt id="mwA30"><a rel="mw:WikiLink" href="XML%E6%9A%97%E5%8F%B7%E5%8C%96" title="XML暗号化" id="mwA34">XML Encryption</a></dt>
<dd id="mwA38">XML Encryption の仕様は、XML文書の内容に対して<a rel="mw:WikiLink" href="%E6%9A%97%E5%8F%B7%E5%8C%96" title="暗号化" class="mw-redirect" id="mwA4A">暗号化</a>を行うための構文と処理規則を定義する。</dd>
<dt id="mwA4E"><a rel="mw:WikiLink" href="XPointer" title="XPointer" id="mwA4I">XML Pointer Language</a> (XPointer)</dt>
<dd id="mwA4M">XML Pointer Language (XPointer) は、XMLに基づいたインターネットメディアのコンポーネントを指し示す体系である。</dd></dl>

<section data-mw-section-id="29" id="mwA4Q" aria-labelledby="MIMEタイプ"><div class="mw-heading mw-heading3"><h3 id="MIMEタイプ"><span id="MIME.E3.82.BF.E3.82.A4.E3.83.97" typeof="mw:FallbackId"></span>MIMEタイプ</h3></div>
<p id="mwA4U">XML文書はさまざまな<a rel="mw:WikiLink" href="%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2%E3%82%BF%E3%82%A4%E3%83%97" title="メディアタイプ" id="mwA4Y">MIMEタイプ</a>で配布することができる。<style data-mw-deduplicate="TemplateStyles:r106577700" typeof="mw:Extension/templatestyles mw:Transclusion" id="mwA4c">
/* start https://ja.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"“""”""‘""’"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./_mw_/Lock-green.svg")right 0.1em center/9px no-repeat;padding-right:1em}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./_mw_/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat;padding-right:1em}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./_mw_/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat;padding-right:1em}.mw-parser-output .cs1-ws-icon.cs1-ws-icon a{background:url("./_mw_/Wikisource-logo.svg")right 0.1em center/auto 1em no-repeat;padding-right:1em}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#bf3c2c)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#bf3c2c)}.mw-parser-output .cs1-maint{display:none;color:var(--color-success,#177860);margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}}


/* end   https://ja.wikipedia.org/ */
</style><a rel="mw:WikiLink" href="RFC_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="RFC (識別子)" class="mw-redirect">RFC</a><span typeof="mw:Entity">&nbsp;</span><a rel="mw:ExtLink nofollow" href="https://datatracker.ietf.org/doc/html/rfc3023" class="external text">3023</a> は、"application/xml" および "text/xml" のMIMEタイプを定義する。
"application/xml" と "text/xml" のMIMEタイプは、そのデータがXML文書の形式をとっているということのみを述べているだけであり、そのXML文書の論理的構造については何も述べていない。
"text/xml" を使うことに対しては、符号化に関する問題が生じる可能性があるとの批判があり、現在では非推奨とされている<sup class="mw-ref reference" id="cite_ref-11" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-11" id="mwA4g"><span class="mw-reflink-text" id="mwA4k"><span class="cite-bracket" id="mwA4o">[</span>7<span class="cite-bracket" id="mwA4s">]</span></span></a></sup>。<span typeof="mw:Nowiki" id="mwA4w">RFC 3023</span> では、加えて、XML文書を "application/" で始まり、"+xml" で終わるMIMEタイプで配布することを勧めている。例えば、<a rel="mw:WikiLink" href="Atom_(%E3%82%A6%E3%82%A7%E3%83%96%E6%A8%99%E6%BA%96)" title="Atom (ウェブ標準)" id="mwA40">Atom</a>のXMLデータに対しては、"application/atom+xml" のMIMEタイプで配布するのである。</p>
<!-- This page discusses further [[XML and MIME]]. -->

</section><section data-mw-section-id="30" id="mwA44" aria-labelledby="XML名前空間"><div class="mw-heading mw-heading3"><h3 id="XML名前空間"><span id="XML.E5.90.8D.E5.89.8D.E7.A9.BA.E9.96.93" typeof="mw:FallbackId"></span>XML名前空間</h3></div>
<p id="mwA48"><b id="mwA5A">XML名前空間</b> (<b id="mwA5E">Namespaces in XML</b>) は、一つXML文書内で、異なる複数の<a rel="mw:WikiLink" href="%E8%AA%9E%E5%BD%99" title="語彙" id="mwA5I">ボキャブラリ</a>（スキーマ）に由来する要素と属性を、名前の衝突を発生させることなく、含めることができるようにするための仕様である。<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwA5M">World Wide Web Consortium</a> (W3C) から、1999年1月14日に Namespaces in XML 1.0 が勧告された。XML文書に異なる複数のボキャブラリに由来する要素と属性を含める場合、ボキャブラリのそれぞれに<a rel="mw:WikiLink" href="%E5%90%8D%E5%89%8D%E7%A9%BA%E9%96%93" title="名前空間" id="mwA5Q">名前空間</a>をわりあてることにより、要素名の衝突と属性名の衝突の問題を、解決することができる。</p>

<p id="mwA5U">一つの名前空間において定義された要素の名前は、一意でなければならない。</p>

<p id="mwA5Y">顧客への参照と注文された商品への参照を含む簡単なXML文書の例を考える。顧客要素と商品要素は、ともに「識別番号」という名前の子要素をもつことがあるだろう。識別番号要素への参照は、顧客要素の子要素の識別番号要素も商品要素の子要素の識別番号要素も同じ要素名をもつので、あいまいである。しかし2つのボキャブラリを区別する2つの名前空間のもとで識別番号要素を使う場合、顧客要素の子要素の識別番号要素と商品要素の子要素の識別番号要素は意味的に明確に異なる2種類の要素となる。</p>

<section data-mw-section-id="31" id="mwA5c" aria-labelledby="名前空間の宣言"><div class="mw-heading mw-heading4"><h4 id="名前空間の宣言"><span id=".E5.90.8D.E5.89.8D.E7.A9.BA.E9.96.93.E3.81.AE.E5.AE.A3.E8.A8.80" typeof="mw:FallbackId"></span>名前空間の宣言</h4></div>
<p id="mwA5g">名前空間は、XMLの予約属性である <code id="mwA5k">xmlns</code> を使って宣言される。<code id="mwA5o">xmlns</code>属性の属性値は<a rel="mw:WikiLink" href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier" id="mwA5s">IRI</a> (Internationalized Resource Identifier) である必要があり、通常は<a rel="mw:WikiLink" href="Uniform_Resource_Identifier" title="Uniform Resource Identifier" id="mwA5w">URI</a> (Uniform Resource Identifier) である。</p>

<p id="mwA50">例を示す。</p>

<pre id="mwA54"><span typeof="mw:Nowiki" id="mwA58">xmlns="http://www.w3.org/1999/xhtml"</span></pre>

<p id="mwA6A">この例の <span typeof="mw:Nowiki" id="mwA6E">"http://www.w3.org/1999/xhtml"</span> を名前空間名という。ここで注意すべきこととしては、名前空間の宣言で記述されたURIは、実際にインターネット上の住所として解釈されるわけではないということである(自由に考えよう、URIほど便利なものが必ずインターネットのアドレスをささなければいけないなどと、誰が決めたのか)。例えば、<a rel="mw:ExtLink nofollow" href="http://www.w3.org/1999/xhtml" class="external text" id="mwA6I">http://www.w3.org/1999/xhtml</a>自体には何のコードもない。このURIの文書では、人間の読者に対して<a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwA6M">XHTML</a>について簡単に説明しているだけである。
(<span typeof="mw:Nowiki" id="mwA6Q">"http://www.w3.org/1999/xhtml"</span> のような) URIを名前空間の識別子として使うことで、（"xhtml" のような）単純な文字列を名前空間名として使うよりも、異なる名前空間が意図せずして同じ名前空間名を使ってしまう危険性を低減する。名前空間の識別子は、ウェブの住所（アドレス）の慣習にしたがう必要はない。</p>

<p id="mwA6U">名前空間の宣言は短い接頭辞を含むことができる。この名前空間接頭辞を使うことで、異なるボキャブラリに由来する要素と属性を識別することができる。</p>

<p id="mwA6Y">名前空間接頭辞を使う例を示す。</p>

<pre id="mwA6c"><span typeof="mw:Nowiki" id="mwA6g">xmlns:xhtml="http://www.w3.org/1999/xhtml"</span></pre>

<p id="mwA6k">XML名前空間を使ったXML文書の例を示す。</p>

<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr" typeof="mw:Extension/syntaxhighlight" id="mwA6o"><pre id="mwA6s"><span id="mwA6w"></span><span class="cp" id="mwA60">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span>
<span class="nt" id="mwA64">&lt;xsl:stylesheet</span><span class="w" id="mwA68"> </span><span class="na" id="mwA7A">xmlns:xsl=</span><span class="s" id="mwA7E">"http://www.w3.org/1999/XSL/Transform"</span><span class="w" id="mwA7I"> </span><span class="na" id="mwA7M">version=</span><span class="s" id="mwA7Q">"1.0"</span><span class="w" id="mwA7U"> </span><span class="na" id="mwA7Y">xmlns=</span><span class="s" id="mwA7c">"http://www.w3.org/1999/xhtml"</span><span class="nt" id="mwA7g">&gt;</span>
<span class="w" id="mwA7k"> </span><span class="nt" id="mwA7o">&lt;xsl:template</span><span class="w" id="mwA7s"> </span><span class="na" id="mwA7w">match=</span><span class="s" id="mwA70">"/社員名簿"</span><span class="nt" id="mwA74">&gt;</span>
<span class="w" id="mwA78">  </span><span class="nt" id="mwA8A">&lt;html&gt;</span>
<span class="w" id="mwA8E">   </span><span class="nt" id="mwA8I">&lt;head&gt;</span>
<span class="w" id="mwA8M">    </span><span class="nt" id="mwA8Q">&lt;title&gt;</span>XML文書をXHTML文書に変換する例<span class="nt" id="mwA8U">&lt;/title&gt;</span>
<span class="w" id="mwA8Y">   </span><span class="nt" id="mwA8c">&lt;/head&gt;</span>
<span class="w" id="mwA8g">   </span><span class="nt" id="mwA8k">&lt;body&gt;</span>
<span class="w" id="mwA8o">    </span><span class="nt" id="mwA8s">&lt;h1&gt;</span>社員名簿<span class="nt" id="mwA8w">&lt;/h1&gt;</span>
<span class="w" id="mwA80">    </span><span class="nt" id="mwA84">&lt;ul&gt;</span><span class="w" id="mwA88"> </span>
<span class="w" id="mwA9A">     </span><span class="nt" id="mwA9E">&lt;xsl:apply-templates</span><span class="w" id="mwA9I"> </span><span class="na" id="mwA9M">select=</span><span class="s" id="mwA9Q">"社員"</span><span class="nt" id="mwA9U">&gt;</span>
<span class="w" id="mwA9Y">      </span><span class="nt" id="mwA9c">&lt;xsl:sort</span><span class="w" id="mwA9g"> </span><span class="na" id="mwA9k">select=</span><span class="s" id="mwA9o">"姓"</span><span class="nt" id="mwA9s">/&gt;</span>
<span class="w" id="mwA9w">     </span><span class="nt" id="mwA90">&lt;/xsl:apply-templates&gt;</span>
<span class="w" id="mwA94">    </span><span class="nt" id="mwA98">&lt;/ul&gt;</span>
<span class="w" id="mwA-A">   </span><span class="nt" id="mwA-E">&lt;/body&gt;</span>
<span class="w" id="mwA-I">  </span><span class="nt" id="mwA-M">&lt;/html&gt;</span><span class="w" id="mwA-Q">        </span>
<span class="w" id="mwA-U"> </span><span class="nt" id="mwA-Y">&lt;/xsl:template&gt;</span>
<span class="w" id="mwA-c"> </span><span class="nt" id="mwA-g">&lt;xsl:template</span><span class="w" id="mwA-k"> </span><span class="na" id="mwA-o">match=</span><span class="s" id="mwA-s">"社員"</span><span class="nt" id="mwA-w">&gt;</span>
<span class="w" id="mwA-0">  </span><span class="nt" id="mwA-4">&lt;li&gt;</span>
<span class="w" id="mwA-8">   </span><span class="nt" id="mwA_A">&lt;xsl:value-of</span><span class="w" id="mwA_E"> </span><span class="na" id="mwA_I">select=</span><span class="s" id="mwA_M">"姓"</span><span class="nt" id="mwA_Q">/&gt;</span><span class="w" id="mwA_U"> </span><span class="nt" id="mwA_Y">&lt;xsl:value-of</span><span class="w" id="mwA_c"> </span><span class="na" id="mwA_g">select=</span><span class="s" id="mwA_k">"名"</span><span class="nt" id="mwA_o">/&gt;</span>
<span class="w" id="mwA_s">  </span><span class="nt" id="mwA_w">&lt;/li&gt;</span><span class="w" id="mwA_0">        </span>
<span class="w" id="mwA_4"> </span><span class="nt" id="mwA_8">&lt;/xsl:template&gt;</span>
<span class="nt" id="mwBAA">&lt;/xsl:stylesheet&gt;</span>
</pre></div>

<p id="mwBAE">このXML文書は、次の2つの名前空間のボキャブラリから構成されている。</p>

<ul id="mwBAI"><li id="mwBAM"><a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations" id="mwBAQ">XSLT</a>のボキャブラリ: xslの名前空間接頭辞をもち、名前空間名は <span typeof="mw:Nowiki" id="mwBAU">"http://www.w3.org/1999/XSL/Transform"</span>。</li>
<li id="mwBAY"><a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwBAc">XHTML</a>のボキャブラリ: 名前空間接頭辞をもたないデフォルトの名前空間であり、名前空間名は <span typeof="mw:Nowiki" id="mwBAg">"http://www.w3.org/1999/xhtml"</span>。</li></ul>

<p id="mwBAk">なおこのXML文書は、あるXML文書をXHTML文書に変換するXSLTスタイルシートである。</p>

<p id="mwBAo">XML名前空間を使う場合、そのXML名前空間のボキャブラリが定義されていることが必要であるわけではない。しかしXML文書でXML名前空間を使う場合に、そのXML名前空間のボキャブラリを定義しておくことは、そのXML名前空間のURIのもとで正しい文書構造を定義しているスキーマに関連づけるために、行われることが多い。</p>

</section></section></section><section data-mw-section-id="32" id="mwBAs" aria-labelledby="XML文書をプログラムで処理する"><div class="mw-heading mw-heading2"><h2 id="XML文書をプログラムで処理する"><span id="XML.E6.96.87.E6.9B.B8.E3.82.92.E3.83.97.E3.83.AD.E3.82.B0.E3.83.A9.E3.83.A0.E3.81.A7.E5.87.A6.E7.90.86.E3.81.99.E3.82.8B" typeof="mw:FallbackId"></span>XML文書をプログラムで処理する</h2></div>
<p id="mwBAw"><a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E" title="プログラマ" id="mwBA0">プログラマ</a>や<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="アプリケーションソフトウェア" id="mwBA4">アプリケーションソフトウェア</a>がXML文書を処理する手段としては、これまで次に示す3つの技法が伝統的に使われてきた。なお、この節の説明で使うAPIとは<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9" title="アプリケーションプログラミングインタフェース" id="mwBA8">アプリケーションプログラミングインタフェース</a>のことをさす。</p>

<ul id="mwBBA"><li id="mwBBE"><a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="プログラミング言語" id="mwBBI">プログラミング言語</a>と <a rel="mw:WikiLink" href="Simple_API_for_XML" title="Simple API for XML" id="mwBBM">SAX</a> API を使う。</li>
<li id="mwBBQ">プログラミング言語と <a rel="mw:WikiLink" href="Document_Object_Model" title="Document Object Model" id="mwBBU">DOM</a> API を使う。</li>
<li id="mwBBY">変換エンジンと<a rel="mw:WikiLink" href="%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)" title="フィルタ (ソフトウェア)" id="mwBBc">フィルタ</a>を使う。</li></ul>

<p id="mwBBg">さらに、近年に開発され使われるようになった、XML文書を処理する技法を示す。</p>

<ul id="mwBBk"><li id="mwBBo">Pull Parsing</li>
<li id="mwBBs">データバインディング</li></ul>
<!-- * Non&#x2D;extractive XML Processing API (VTD&#x2D;XMLなど) -->

<section data-mw-section-id="33" id="mwBBw" aria-labelledby="Simple_API_for_XML_(SAX)"><div class="mw-heading mw-heading3"><h3 id="Simple_API_for_XML_(SAX)"><span id="Simple_API_for_XML_.28SAX.29" typeof="mw:FallbackId"></span>Simple API for XML (SAX)</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwBB0">→詳細は「<a rel="mw:WikiLink" href="Simple_API_for_XML" title="Simple API for XML">Simple API for XML</a>」を参照</div>
<p id="mwBB4">Simple API for XML (SAX) は、<a rel="mw:WikiLink" href="%E5%AD%97%E5%8F%A5%E8%A7%A3%E6%9E%90" title="字句解析" id="mwBB8">字句解析</a>を行い<a rel="mw:WikiLink" href="%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E9%A7%86%E5%8B%95%E5%9E%8B%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0" title="イベント駆動型プログラミング" id="mwBCA">イベント駆動</a>で処理を行う API である。SAXを使うとXML文書は文書の最初から順次読み込まれ、その内容は<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E" title="プログラマ" id="mwBCE">プログラマ</a>が実装したハンドラ<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)" title="オブジェクト (プログラミング)" id="mwBCI">オブジェクト</a>の様々な<a rel="mw:WikiLink" href="%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89_(%E8%A8%88%E7%AE%97%E6%A9%9F%E7%A7%91%E5%AD%A6)" title="メソッド (計算機科学)" id="mwBCM">メソッド</a>への<a rel="mw:WikiLink" href="%E3%82%B3%E3%83%BC%E3%83%AB%E3%83%90%E3%83%83%E3%82%AF_(%E6%83%85%E5%A0%B1%E5%B7%A5%E5%AD%A6)" title="コールバック (情報工学)" id="mwBCQ">コールバック</a>として報告される。SAXを使ったXML文書処理は高速であり、少ないコンピュータ資源を効率的に使って非常にサイズの大きいXML文書を処理することが可能である。</p>

<p id="mwBCU">SAXを使うことに伴う問題は、XML文書に対して<a rel="mw:WikiLink" href="%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9" title="ランダムアクセス" id="mwBCY">ランダムアクセス</a>を行って情報を取り出すことが難しいことである。そのため、SAXを使うに際し、<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E" title="プログラマ" id="mwBCc">プログラマ</a>はXML文書のどの部分が現在処理対象となっているか把握する為の機構を実装しなければならない。</p>

<p id="mwBCg">SAXは、処理対象となるXML文書中のある種類の情報がどの部分に出現するかに依らず、常に同じように処理されると保証できる場合に用いるのが望ましい。</p>

</section><section data-mw-section-id="34" id="mwBCk" aria-labelledby="Document_Object_Model_(DOM)"><div class="mw-heading mw-heading3"><h3 id="Document_Object_Model_(DOM)"><span id="Document_Object_Model_.28DOM.29" typeof="mw:FallbackId"></span>Document Object Model (DOM)</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwBCo">→詳細は「<a rel="mw:WikiLink" href="Document_Object_Model" title="Document Object Model">Document Object Model</a>」を参照</div>
<p id="mwBCs">Document Object Model (DOM) は、<a rel="mw:WikiLink" href="%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9_(%E6%83%85%E5%A0%B1%E6%8A%80%E8%A1%93)" title="インタフェース (情報技術)" id="mwBCw">インタフェース</a>指向の<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%95%E3%82%A7%E3%83%BC%E3%82%B9" title="アプリケーションプログラミングインタフェース" id="mwBC0">API</a>であり、XML文書のおのおのの部分を表現する節<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)" title="オブジェクト (プログラミング)" id="mwBC4">オブジェクト</a>の集まりからなる<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwBC8">木構造</a>であるかのように、XML文書全体に対してナビゲーションを行うことを想定している。DOMでは、XML文書に対して<a rel="mw:WikiLink" href="%E3%83%A9%E3%83%B3%E3%83%80%E3%83%A0%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9" title="ランダムアクセス" id="mwBDA">ランダムアクセス</a>を行って情報を取り出すことが、簡単にできる。</p>

<p id="mwBDE">DOMにおけるXML文書全体に相当する <code id="mwBDI">Document</code> オブジェクトは、XML文書をXMLプロセサが処理することにより生成することもできるし、プログラマがプログラミングすることによって生成することもできる。DOMにおける <code id="mwBDM">Node</code> (節) のさまざまな型の<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B" title="データ型" id="mwBDQ">データ型</a>は、DOM仕様においては抽象的にインタフェースとして定義されている。<code id="mwBDU">Node</code> のデータ型の<a rel="mw:WikiLink" href="%E5%AE%9F%E8%A3%85" title="実装" id="mwBDY">実装</a>は、<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E" title="プログラミング言語" id="mwBDc">プログラミング言語</a>に固有の言語バインディングを提供する。
DOMの実装は、サイズの大きいXML文書を扱う場合はたくさんのメモリを使う。なぜならDOMの実装は、一般的にはXML文書全体からオブジェクトの木構造を構築してメモリにロード（展開）し、その後にDOMを介した処理をできるようにしているからである。</p>

<p id="mwBDg"><a rel="mw:WikiLink" href="Java" title="Java" id="mwBDk">Java</a>では、標準ライブラリを構成するいくつかのパッケージでDOMが実装されており、Javaの<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E" title="プログラマ" id="mwBDo">プログラマ</a>は標準ライブラリのDOMを使うことができる。DOMの仕様は、<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBDs">World Wide Web Consortium</a> (W3C) で策定されているため、DOMで中核をなす <code id="mwBDw">Node</code> や<code id="mwBD0">Document</code> などのインタフェースや、<a rel="mw:WikiLink" href="%E7%9B%B4%E5%88%97%E5%8C%96" title="直列化" class="mw-redirect" id="mwBD4">直列化</a> (出力) などの機能を提供するためのインタフェースはパッケージ <code id="mwBD8">org.w3c.dom.*</code> に収められている。
<!--
パッケージ <code&#x3E;com.sun.org.apache.xml.internal.serialize.*</code&#x3E; は、こうしたインタフェースに対応した直列化 (出力) の機能を実装を含んでいる。
パッケージ <code&#x3E;javax.xml.parsers.*</code&#x3E; は、XML文書をDOMをとおして扱えるようにするために、対象となるXML文書をパースする機能を提供する。
-->
<sup class="mw-ref reference" id="cite_ref-12" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-12" id="mwBEA"><span class="mw-reflink-text" id="mwBEE"><span class="cite-bracket" id="mwBEI">[</span>8<span class="cite-bracket" id="mwBEM">]</span></span></a></sup></p>

</section><section data-mw-section-id="35" id="mwBEQ" aria-labelledby="変換エンジンとフィルタ"><div class="mw-heading mw-heading3"><h3 id="変換エンジンとフィルタ"><span id=".E5.A4.89.E6.8F.9B.E3.82.A8.E3.83.B3.E3.82.B8.E3.83.B3.E3.81.A8.E3.83.95.E3.82.A3.E3.83.AB.E3.82.BF" typeof="mw:FallbackId"></span>変換エンジンとフィルタ</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwBEU">→「<a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language">Extensible Stylesheet Language</a>」も参照</div>

<p id="mwBEY"><a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language" id="mwBEc">Extensible Stylesheet Language</a> (XSL) 技術における<a rel="mw:WikiLink" href="%E3%83%95%E3%82%A3%E3%83%AB%E3%82%BF_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)" title="フィルタ (ソフトウェア)" id="mwBEg">フィルタ</a>は、XML文書に対して、視覚的に出力したり印刷出力できるよう変換処理を行うことができる。</p>

<dl id="mwBEk"><dt id="mwBEo"><a rel="mw:WikiLink" href="XSL_Formatting_Objects" title="XSL Formatting Objects" id="mwBEs">XSL Formatting Objects</a> (XSL-FO)</dt>
<dd id="mwBEw">XSL Formatting Objects (XSL-FO) は、<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBE0">World Wide Web Consortium</a> (W3C) が策定した、XMLに準拠した宣言的なページ整形 (<a rel="mw:WikiLink" href="%E7%B5%84%E7%89%88" title="組版" id="mwBE4">組版</a>) 言語である。XSL-FO処理系を使うと、XSL-FO文書を他の非XML形式 (<a rel="mw:WikiLink" href="Portable_Document_Format" title="Portable Document Format" id="mwBE8">PDF</a>など) に変換出力することができる。</dd>
<dt id="mwBFA"><a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations" id="mwBFE">XSL Transformations</a> (XSLT)</dt>
<dd id="mwBFI">XSL Transformations (XSLT)は、W3Cが策定した、XMLに準拠した宣言的な文書<a rel="mw:WikiLink" href="%E5%A4%89%E6%8F%9B%E8%A8%80%E8%AA%9E" title="変換言語" id="mwBFM">変換言語</a>である。XSLT処理系を使うと、XSLT<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88" title="スタイルシート" id="mwBFQ">スタイルシート</a>を指示書として、XML文書として表現されたあるデータの木構造を、別の木構造に変換することができる。変換後の文書として、XML (例えば、XSL-FO文書やXHTML文書など)、<a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwBFU">HTML</a>、<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AC%E3%83%BC%E3%83%B3%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88" title="プレーンテキスト" id="mwBFY">プレーンテキスト</a>などの形式にすることができる。またXSLT処理系によってはこの他の形式に変換できるものもある。</dd>
<dt id="mwBFc"><a rel="mw:WikiLink" href="XQuery" title="XQuery" id="mwBFg">XQuery</a></dt>
<dd id="mwBFk">XQueryは、W3Cが策定した、XML文書に対する、問い合わせ、構築、変換を行うための、コンピュータ言語 (<a rel="mw:WikiLink" href="%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E8%A8%80%E8%AA%9E" title="問い合わせ言語" id="mwBFo">問い合わせ言語</a>) である。</dd>
<dt id="mwBFs"><a rel="mw:WikiLink" href="XML_Path_Language" title="XML Path Language" id="mwBFw">XML Path Language</a> (XPath)</dt>
<dd id="mwBF0">XML Path Language (XPath) は、W3Cが策定した、XML文書中のデータを取得するための、DOMに似たノードの集まりからなる木構造を<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%A2%E3%83%87%E3%83%AB" title="データモデル" id="mwBF4">データモデル</a>とするパス式言語である。<!--XSL&#x2D;FO、-->XSLTおよびXQueryの技術はXPathを使って実現されている。XPathの実装はまた、便利な<a rel="mw:WikiLink" href="%E9%96%A2%E6%95%B0_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0)" title="関数 (プログラミング)" class="mw-redirect" id="mwBF8">関数</a><a rel="mw:WikiLink" href="%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA" title="ライブラリ" id="mwBGA">ライブラリ</a>を含んでおり使うことができる。</dd></dl>

</section><section data-mw-section-id="36" id="mwBGE" aria-labelledby="Pull_Parsing"><div class="mw-heading mw-heading3"><h3 id="Pull_Parsing">Pull Parsing</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwBGI">→「<a rel="mw:WikiLink" href="Streaming_API_for_XML" title="Streaming API for XML">Streaming API for XML</a>」も参照</div>
<p id="mwBGM">Pull Parsing は、XML文書を、最初から順番に読み込み、<a rel="mw:WikiLink" href="Iterator_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3" title="Iterator パターン" id="mwBGQ">Iterator パターン</a> の<a rel="mw:WikiLink" href="%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)" title="デザインパターン (ソフトウェア)" id="mwBGU">デザインパターン</a>を使って項目 (item) の一連の流れとして扱う、近年に徐々に普及してきた技法である<sup class="mw-ref reference" id="cite_ref-13" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-13" id="mwBGY"><span class="mw-reflink-text" id="mwBGc"><span class="cite-bracket" id="mwBGg">[</span>9<span class="cite-bracket" id="mwBGk">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-14" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-14" id="mwBGo"><span class="mw-reflink-text" id="mwBGs"><span class="cite-bracket" id="mwBGw">[</span>10<span class="cite-bracket" id="mwBG0">]</span></span></a></sup>。
Pull Parsing の技法により、再帰下降パーサを実装することができる。
再帰下降パーサでは、パースを実行するプログラムは、パースの対象となるXML文書の構造と似ている。
そしてパースの中間結果を取得することができる。</p>

<p id="mwBG4">パースの中間結果を、パースを実行する<a rel="mw:WikiLink" href="%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89_(%E8%A8%88%E7%AE%97%E6%A9%9F%E7%A7%91%E5%AD%A6)" title="メソッド (計算機科学)" id="mwBG8">メソッド</a>内の局所変数 (ローカル変数) として使うことができる。
あるいは、低水準のメソッドの引数として渡したり、高水準のメソッドへの戻り値として返すことができる。
Pull Parsing の技法を提供する実装としては次のものがある。</p>
<ul id="mwBHA"><li id="mwBHE"><a rel="mw:WikiLink" href="Streaming_API_for_XML" title="Streaming API for XML" id="mwBHI">Streaming API for XML</a> (StAX) - <a rel="mw:WikiLink" href="Java" title="Java" id="mwBHM">Java</a></li>
<li id="mwBHQ">SimpleXML - <a rel="mw:WikiLink" href="PHP_(%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E)" title="PHP (プログラミング言語)" id="mwBHU">PHP</a></li>
<li id="mwBHY"><code id="mwBHc">System.Xml.XmlReader</code> - <a rel="mw:WikiLink" href=".NET_Framework" title=".NET Framework" id="mwBHg">.NET Framework</a></li></ul>
<p id="mwBHk">例えば、JavaのStAXフレームワークでは、本質的な「<a rel="mw:WikiLink" href="%E3%82%A4%E3%83%86%E3%83%AC%E3%83%BC%E3%82%BF" title="イテレータ" id="mwBHo">反復子</a>」 (イテレータ) を作成して使うことができる。</p>

<p id="mwBHs">Pull Parsing で作成される「反復子」はXML文書中のさまざまな要素、属性、データを順番に訪れる。
「反復子」を使うプログラムは、処理中に現在の項目 (例えば、要素の開始、要素の終了、テキスト) を調べ、その特性 (例えば、要素の<!--ローカル名-->名前、名前空間、属性値、テキスト内容) を調査する。
そして反復子に「次の」項目へ移動するよう指示することもできる。
プログラムは、このようにXML文書を走査するようにして、文書から情報を取り出すことができる。</p>

<p id="mwBHw">Pull Parsing の技法の特筆すべき長所は、XML文書をパースする<!-- SAXや -->DOMの技法と比べて非常に高速であり、メモリ使用が非常に少ないことである。
もう一つの長所は、再帰下降の手法は、パースを実行するプログラム内で、データを型づけされた変数として保持することに適していることである。
SAXでは、例えば、プログラマが自分で処理中の要素の祖先となる要素群を格納する<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%83%83%E3%82%AF" title="スタック" id="mwBH0">スタック</a>内に中間データを保持するコードをプログラミングする必要があることが多い。
これに対し、Pull Parsing の技法を使ってXML文書を処理するプログラムは、SAXを使うプログラムよりも、非常に単純で理解し易く保守が容易になることが多い。</p>
<!--
Pull Parsing の技法の潜在的な課題は、新しい技法でありXMLを扱うプログラマには未だあまりよく知られていないこと (XML以外では、[[プログラミング言語]]の[[コンパイラ]]や[[インタプリタ]]を記述するために使われる非常に一般的な技法であるのだが) と、Pull Parsing の既存の処理系のほとんどは現時点ではまだ、スキーマによるXML文書の妥当性検証のような、高度な処理を行うことができないことである。
-->

</section><section data-mw-section-id="37" id="mwBH4" aria-labelledby="データバインディング"><div class="mw-heading mw-heading3"><h3 id="データバインディング"><span id=".E3.83.87.E3.83.BC.E3.82.BF.E3.83.90.E3.82.A4.E3.83.B3.E3.83.87.E3.82.A3.E3.83.B3.E3.82.B0" typeof="mw:FallbackId"></span>データバインディング</h3></div>
<div class="rellink " style="margin-bottom: 0.5em; padding-left: 2em; font-size: 90%;" role="note" typeof="mw:Transclusion" id="mwBH8">→「<a rel="mw:WikiLink" href="Java_Architecture_for_XML_Binding" title="Java Architecture for XML Binding">Java Architecture for XML Binding</a>」も参照</div>
<p id="mwBIA">XML文書を処理するもう一つのAPIは、XMLデータバインディングであり、XMLデータバインディングを使うと、XML文書を、その文書型に対応した、強く型づけされたプログラミング言語データ構造 (<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)" title="プログラム (コンピュータ)" id="mwBIE">プログラム</a>の<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89" title="ソースコード" id="mwBII">ソースコード</a>) を、生成することができる。インタフェース指向のDOMとは対照的な手法である。データバインディングの実現例を次に示す。</p>

<ul id="mwBIM"><li id="mwBIQ">Relaxer<sup class="mw-ref reference" id="cite_ref-15" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-15" id="mwBIU"><span class="mw-reflink-text" id="mwBIY"><span class="cite-bracket" id="mwBIc">[</span>11<span class="cite-bracket" id="mwBIg">]</span></span></a></sup></li>
<li id="mwBIk"><a rel="mw:WikiLink" href="Java_Architecture_for_XML_Binding" title="Java Architecture for XML Binding" id="mwBIo">Java Architecture for XML Binding</a> (JAXB)<sup class="mw-ref reference" id="cite_ref-16" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-16" id="mwBIs"><span class="mw-reflink-text" id="mwBIw"><span class="cite-bracket" id="mwBI0">[</span>12<span class="cite-bracket" id="mwBI4">]</span></span></a></sup></li></ul>
<!--
* Strathclyde Novel Architecture for Querying XML (SNAQue)<ref&#x3E;http://www.cis.strath.ac.uk/research/snaque/ {{Bare URL inline|date=2026年4月}}</ref&#x3E;
-->
<!--

=== Non&#x2D;extractive XML Processing API ===
Non&#x2D;extractive XML Processing API は、新しく出現しつつある[[XMLパーサ]]のカテゴリである。
最も代表的なものはVTD&#x2D;XMLである。
VTD&#x2D;XMLは、XML文書を木構造として[[オブジェクト指向モデリング]]を行うという手法を放棄し、その代わりに64[[ビット]]の仮想トークン記述子 (Virtual Token Descriptor) を使う。
VTD&#x2D;XMLの仮想トークン記述子は、XML文書を構成する字句 ([[字句|トークン]]) についての、トークンの符号化オフセット、トークンの長さ、トークンの深度、トークンの型の、情報を含む。
VTD&#x2D;XMLの手法を使うと、多くの興味深い機能や拡張機能を使うことができるようになる。
VTD&#x2D;XMLが提供する機能は次のものが含まれる。

* 高い処理性能
* 少ないメモリ消費<ref&#x3E;http://www.javaworld.com/javaworld/jw&#x2D;03&#x2D;2006/jw&#x2D;0327&#x2D;simplify.html {{Bare URL inline|date=2026年4月}}</ref&#x3E;
* ASIC実装<ref&#x3E;http://www.ximpleware.com/wp_SUN.pdf {{Bare URL PDF|date=2026年4月}}</ref&#x3E;
* 漸増的なXML文書の更新
* ネイティブなXMLの索引づけ
-->

</section><section data-mw-section-id="38" id="mwBI8" aria-labelledby="XMLに準拠したアプリケーションソフトウェアとエディタ"><div class="mw-heading mw-heading3"><h3 id="XMLに準拠したアプリケーションソフトウェアとエディタ"><span id="XML.E3.81.AB.E6.BA.96.E6.8B.A0.E3.81.97.E3.81.9F.E3.82.A2.E3.83.97.E3.83.AA.E3.82.B1.E3.83.BC.E3.82.B7.E3.83.A7.E3.83.B3.E3.82.BD.E3.83.95.E3.83.88.E3.82.A6.E3.82.A7.E3.82.A2.E3.81.A8.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF" typeof="mw:FallbackId"></span>XMLに準拠したアプリケーションソフトウェアとエディタ</h3></div>
<p id="mwBJA"><a rel="mw:WikiLink" href="OpenOffice.org" title="OpenOffice.org" id="mwBJE">OpenOffice.org</a>、<a rel="mw:WikiLink" href="AbiWord" title="AbiWord" id="mwBJI">AbiWord</a>、および<a rel="mw:WikiLink" href="Apple" title="Apple" id="mwBJM">Apple</a>の<a rel="mw:WikiLink" href="IWork" title="IWork" id="mwBJQ">iWork</a>などの<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="アプリケーションソフトウェア" id="mwBJU">アプリケーションソフトウェア</a>のネイティブ<a rel="mw:WikiLink" href="%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88" title="ファイルフォーマット" id="mwBJY">ファイルフォーマット</a>は、XMLである。</p>

<p id="mwBJc">従前、<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%95%E3%82%A3%E3%82%B9%E3%82%B9%E3%82%A4%E3%83%BC%E3%83%88" title="オフィススイート" id="mwBJg">オフィススイート</a>には各ソフトの特有の<a rel="mw:WikiLink" href="%E3%83%90%E3%82%A4%E3%83%8A%E3%83%AA" title="バイナリ" id="mwBJk">バイナリ</a>形式として<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF" title="データ" id="mwBJo">データ</a>が保存されていた。しかしながらこれでは互換性が低く、様々な情報を<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9" title="データベース" id="mwBJs">データベース</a>として利用するオフィススイートでは不都合が生じていた。
そのため、データの標準化を進めて互換性を高めるため、各オフィススイートはXML形式でデータを出力する機能や、そもそも標準保存形式をXMLベースとするものが増えてきた。</p>

<p id="mwBJw"><a rel="mw:WikiLink" href="OpenOffice.org" title="OpenOffice.org" id="mwBJ0">OpenOffice.org</a>はXMLベースの保存形式を当初より標準としていた（英語版バージョン1.0は2002年5月1日リリース）。また、OpenOffice.orgに限らず、どのオフィススイートでも利用できる<a rel="mw:WikiLink" href="OpenDocument" title="OpenDocument" id="mwBJ4">OpenDocument</a>形式が<a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwBJ8">国際標準化機構</a>（ISO）によって標準規格として認定されている。</p>

<p id="mwBKA">もう一つのオフィススイート用の保存形式である <a rel="mw:WikiLink" href="Office_Open_XML" title="Office Open XML" id="mwBKE">Office Open XML</a> も、ISOにより標準規格として認定されている。</p>

<p id="mwBKI"><a rel="mw:WikiLink" href="%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%82%BD%E3%83%95%E3%83%88" title="マイクロソフト" id="mwBKM">マイクロソフト</a>の <a rel="mw:WikiLink" href="Microsoft_Office" title="Microsoft Office" id="mwBKQ">Microsoft Office</a> では Microsoft Office XP のバージョンからXML形式への対応を始め、Microsoft Office 2003 で独自の定義の XML Schema がサポートされるに至った。
Microsoft Office 2007 ではデフォルトの保存方式がXMLとなった（Office Open XML）。Microsoft Office 2007 のいくつかの機能では、XMLファイルを利用者が指定したスキーマ (ただしDTDではない) に沿って編集することができるようになっている。
またマイクロソフトは、Microsoft Office 2003 のためのファイルフォーマット互換性キットを公開している。
この互換性キットを使うことにより、以前のバージョンの Microsoft Office で作成された文書をXMLに準拠した新しいフォーマットで保存することができる。</p>

<p id="mwBKU">エディタについては現在、多くのXMLエディタが使えるようになっている。</p>

</section></section><section data-mw-section-id="39" id="mwBKY" aria-labelledby="XML情報集合"><div class="mw-heading mw-heading2"><h2 id="XML情報集合"><span id="XML.E6.83.85.E5.A0.B1.E9.9B.86.E5.90.88" typeof="mw:FallbackId"></span>XML情報集合</h2></div>
<p id="mwBKc"><span class="anchor" id="XMLインフォメーションセット" typeof="mw:Transclusion"></span>
<b id="mwBKg">XMLインフォメーションセット</b>（<a rel="mw:WikiLink" href="%E8%8B%B1%E8%AA%9E" title="英語" typeof="mw:Transclusion" id="mwBKk">英</a><span typeof="mw:Entity">:</span><span> </span><span lang="en" id="mwBKo"><b>XML Information Set</b></span>, <span lang="en" typeof="mw:Transclusion" id="mwBKs"><b>Infoset</b></span>）または<b id="mwBKw">XML情報集合</b><sup class="mw-ref reference" id="cite_ref-17" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-17" id="mwBK0"><span class="mw-reflink-text" id="mwBK4"><span class="cite-bracket" id="mwBK8">[</span>13<span class="cite-bracket" id="mwBLA">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-18" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-18" id="mwBLE"><span class="mw-reflink-text" id="mwBLI"><span class="cite-bracket" id="mwBLM">[</span>14<span class="cite-bracket" id="mwBLQ">]</span></span></a></sup> (<span typeof="mw:Entity" id="mwBLU">—</span>じょうほうしゅうごう) は、XML文書の抽象的な<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%A2%E3%83%87%E3%83%AB" title="データモデル" id="mwBLY">データモデル</a>を「情報項目」 (information item) の集合を使って規定している。
<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBLc">World Wide Web Consortium</a> (W3C) から、2001年10月24日にXML情報集合仕様が勧告された。
XML情報集合の仕様における定義は、整形式XML文書内の情報を参照する必要がある他の仕様において使われることが想定されている。</p>

<p id="mwBLg">一つのXML文書には、そのXML文書が整形式でありかつXML名前空間の制約に準拠している場合、一つのXML情報集合がある。
XML情報集合を構成するためには、そのXML文書が妥当なXML文書であることは、必須要件ではない。</p>

<p id="mwBLk">一つのXML情報集合には、次に示す11種類の情報項目がある。</p>

<ul id="mwBLo"><li id="mwBLs">文書情報項目</li>
<li id="mwBLw">要素情報項目</li>
<li id="mwBL0">属性情報項目</li>
<li id="mwBL4">処理命令情報項目</li>
<li id="mwBL8">展開されなかった実体情報項目</li>
<li id="mwBMA">文字情報項目</li>
<li id="mwBME">コメント情報項目</li>
<li id="mwBMI">文書型宣言情報項目</li>
<li id="mwBMM">解析対象外実体情報項目</li>
<li id="mwBMQ">記法情報項目</li>
<li id="mwBMU">名前空間情報項目</li></ul>

<p id="mwBMY">XML情報集合の Second Edition (第2版) が2004年2月4日に勧告された。</p>

<section data-mw-section-id="40" id="mwBMc" aria-labelledby="情報集合への追加情報"><div class="mw-heading mw-heading3"><h3 id="情報集合への追加情報"><span id=".E6.83.85.E5.A0.B1.E9.9B.86.E5.90.88.E3.81.B8.E3.81.AE.E8.BF.BD.E5.8A.A0.E6.83.85.E5.A0.B1" typeof="mw:FallbackId"></span>情報集合への追加情報</h3></div>
<p id="mwBMg">情報集合への追加情報すなわち情報集合に対する改変は、スキーマによる妥当性検証を行う際に、情報集合を改変することをいう。
例えば、情報集合に属性の既定値 (デフォルト値) を追加することなどがある。情報を追加された情報集合は、スキーマ検証後情報集合あるいはPSVI (post-schema-validation infoset) と呼ばれる<sup class="mw-ref reference" id="cite_ref-19" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-19" id="mwBMk"><span class="mw-reflink-text" id="mwBMo"><span class="cite-bracket" id="mwBMs">[</span>15<span class="cite-bracket" id="mwBMw">]</span></span></a></sup>。</p>

<p id="mwBM0">情報集合への追加情報については、賛否両論がある。
情報集合に情報を追加することに否定的な見解としては、情報集合への追加情報はモジュール性を侵害し相互運用性の面での問題を引き起こす危険があるとする。
なぜなら、同じXML文書を扱う複数のアプリケーションソフトウェアは、受け取る情報が妥当性検証を行うかどうかに依存してしまうからである。
アプリケーションソフトウェアが、妥当性検証を行う場合に受け取る情報と、妥当性検証を行わない場合に受け取る情報が、異なってしまうのである<sup class="mw-ref reference" id="cite_ref-20" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-20" id="mwBM4"><span class="mw-reflink-text" id="mwBM8"><span class="cite-bracket" id="mwBNA">[</span>16<span class="cite-bracket" id="mwBNE">]</span></span></a></sup>。</p>

<p id="mwBNI">XML Schema は、XML情報集合への追加情報を扱うことができる。
RELAX NGは、情報集合への追加情報を扱わない。
RELAX NG では、情報集合への追加情報に否定的な立場をとっている。</p>

</section></section><section data-mw-section-id="41" id="mwBNM" aria-labelledby="歴史"><div class="mw-heading mw-heading2"><h2 id="歴史"><span id=".E6.AD.B4.E5.8F.B2" typeof="mw:FallbackId"></span>歴史</h2></div>
<p id="mwBNQ">デジタルメディアの出版を行ってきた人々は、1980年の後半—<a rel="mw:WikiLink" href="%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88" title="インターネット" id="mwBNU">インターネット</a>が広く使われるようになるより前の時期—には既に、動的に情報を視覚化するための技術として、汎用的な<a rel="mw:WikiLink" href="%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語" id="mwBNY">マークアップ言語</a>である <a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBNc">Standard Generalized Markup Language</a> (SGML) が多くの用途に適していることを、理解していた<sup class="mw-ref reference" id="cite_ref-OED_21-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-OED-21" id="mwBNg"><span class="mw-reflink-text" id="mwBNk"><span class="cite-bracket" id="mwBNo">[</span>17<span class="cite-bracket" id="mwBNs">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-multimedia_22-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-multimedia-22" id="mwBNw"><span class="mw-reflink-text" id="mwBN0"><span class="cite-bracket" id="mwBN4">[</span>18<span class="cite-bracket" id="mwBN8">]</span></span></a></sup>。
SGMLはいくつかの分野で普及していたが、仕様が複雑で<a rel="mw:WikiLink" href="%E5%87%A6%E7%90%86%E7%B3%BB" title="処理系" class="mw-redirect" id="mwBOA">処理系</a>の開発が難しく、またSGML文書の処理が重いという欠点があった。1990年代半ばまでには、SGMLを実際に使っていた一定の人々は、新しく現れた <a rel="mw:WikiLink" href="World_Wide_Web" title="World Wide Web" id="mwBOE">World Wide Web</a> (ウェブ) を経験した。
そうした人々は、ウェブが発展することにより直面するいくつかの問題に対して、SGMLが解決策を提供すると、強く考えるようになった。
Dan Connolly は、自分が1995年に<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBOI">World Wide Web Consortium</a> (W3C) のスタッフになった時に、SGMLをW3Cのアクティビティの一覧に追加した。
このアクティビティの作業は、1996年の中頃に<a rel="mw:WikiLink" href="%E3%82%B5%E3%83%B3%E3%83%BB%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%82%BA" title="サン・マイクロシステムズ" id="mwBOM">サン・マイクロシステムズ</a>のジョン・ボサックが、このアクティビティに関する宣言を起草しアクティビティの共同作業者を募ることで、始まった。
ボサックは、SGMLとウェブの双方を経験していた人々の小さなコミュニティと良好な関係を築いていた。
ボサックは、自分の作業において<a rel="mw:WikiLink" href="%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E3%82%BD%E3%83%95%E3%83%88" title="マイクロソフト" id="mwBOQ">マイクロソフト</a>から支援を受けた。</p>

<p id="mwBOU">XMLの仕様は、11人のメンバーからなるワーキンググループにより編集され<sup class="mw-ref reference" id="cite_ref-23" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-23" id="mwBOY"><span class="mw-reflink-text" id="mwBOc"><span class="cite-bracket" id="mwBOg">[</span>19<span class="cite-bracket" id="mwBOk">]</span></span></a></sup>、だいたい150人から構成される Interest Group のメンバーから支援を受けて作成された。
技術的な論議が Interest Group の<a rel="mw:WikiLink" href="%E3%83%A1%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%83%AA%E3%82%B9%E3%83%88" title="メーリングリスト" id="mwBOo">メーリングリスト</a>で提起され、提起された論議は合意形成により解決された。合意形成ができなかった場合は、ワーキンググループのメンバーの投票による多数により解決された。
このアクティビティで行われた設計上の決定とその根拠の記録は、Michael Sperberg-McQueen が1997年12月4日に編集した<sup class="mw-ref reference" id="cite_ref-24" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-24" id="mwBOs"><span class="mw-reflink-text" id="mwBOw"><span class="cite-bracket" id="mwBO0">[</span>20<span class="cite-bracket" id="mwBO4">]</span></span></a></sup>。
このアクティビティでは<a rel="mw:WikiLink" href="%E3%82%B8%E3%82%A7%E3%83%BC%E3%83%A0%E3%82%BA%E3%83%BB%E3%82%AF%E3%83%A9%E3%83%BC%E3%82%AF_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E6%8A%80%E8%A1%93%E8%80%85)" title="ジェームズ・クラーク (ソフトウェア技術者)" id="mwBO8">ジェームズ・クラーク</a>が技術リーダとして貢献した。
クラークの貢献として特筆されるのは、空要素 "&lt;empty /&gt;" の導入と、この技術の名称 "Extensible Markup Language" (XML) の命名である。
この技術の名称として、他に提案され吟味されたものの一部を次に示す。</p>

<ul id="mwBPA"><li id="mwBPE">MAGMA (Minimal Architecture for Generalized Markup Applications)</li>
<li id="mwBPI">SLIM (Structured Language for Internet Markup)</li>
<li id="mwBPM">MGML (Minimal Generalized Markup Language)</li></ul>

<p id="mwBPQ">XML仕様のワーキンググループではジョン・ボサックが議長を務めた。
このワーキンググループではジェームズ・クラークが技術リーダを務めた。
ワーキンググループの共同エディタは、もともとはティム・ブレイと Michael Sperberg-McQueen であった。
このアクティビティのプロジェクトの途中で、ブレイは<a rel="mw:WikiLink" href="%E3%83%8D%E3%83%83%E3%83%88%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%97%E3%83%BB%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BA" title="ネットスケープ・コミュニケーションズ" class="mw-redirect" id="mwBPU">ネットスケープ・コミュニケーションズ</a>とのコンサルティングの契約を結んだ。
このブレイとネットスケープの契約に対しては、マイクロソフトが強く抗議した。
ブレイは、エディタの役割を一時的に辞することを要請された。
このことに関して、ワーキンググループでは激しい議論が行われた。
この議論は、最終的にはマイクロソフトの Jean Paoli が第3の共同エディタに就くことで解決した。
なおXMLワーキンググループには、日本人としてはただ一人<a rel="mw:WikiLink" href="%E6%9D%91%E7%94%B0%E7%9C%9F" title="村田真" id="mwBPY">村田真</a>がメンバーとして1997年に参加した。</p>

<p id="mwBPc">XMLワーキンググループは、直接会って活動したことは数回しかなかった（最初の会議は1997年8月22日）。
XML仕様の設計は、電子メールと週に一度の電話会議の双方を有機的に活用することにより、成し遂げられた。
XML仕様の設計では、SGMLの欠点を解決すべく文法を簡素化した。
XML仕様における設計上のいくつかの大きな決定は、1996年の7月から11月までの間の12週間の真剣な作業のなかで行われた。
この12週間の作業の後 (1996年11月) に、XMLの最初のワーキングドラフトが公表された<sup class="mw-ref reference" id="cite_ref-25" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-25" id="mwBPg"><span class="mw-reflink-text" id="mwBPk"><span class="cite-bracket" id="mwBPo">[</span>21<span class="cite-bracket" id="mwBPs">]</span></span></a></sup>。
その後も1997年をとおして設計作業は続けられ、XML 1.0 は、<a rel="mw:WikiLink" href="1998%E5%B9%B4" title="1998年" id="mwBPw">1998年</a><a rel="mw:WikiLink" href="2%E6%9C%8810%E6%97%A5" title="2月10日" id="mwBP0">2月10日</a>に<a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBP4">W3C</a>の勧告となった<sup class="mw-ref reference" id="cite_ref-26" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-26" id="mwBP8"><span class="mw-reflink-text" id="mwBQA"><span class="cite-bracket" id="mwBQE">[</span>22<span class="cite-bracket" id="mwBQI">]</span></span></a></sup>。</p>

<p id="mwBQM">XML 1.0 は、ワーキンググループが目標としていた次の目標を達成したと、評価する人々が多い。</p>

<ul id="mwBQQ"><li id="mwBQU"><a rel="mw:WikiLink" href="%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%8D%E3%83%83%E3%83%88" title="インターネット" id="mwBQY">インターネット</a>環境での使いやすさ</li>
<li id="mwBQc">汎用的な用途での使いやすさ</li>
<li id="mwBQg"><a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBQk">SGML</a>との互換性</li>
<li id="mwBQo">XML文書を扱う<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2" title="ソフトウェア" id="mwBQs">ソフトウェア</a>の開発を容易にする機能</li>
<li id="mwBQw">オプショナルな機能の最小化</li>
<li id="mwBQ0">XML文書の読みやすさ</li>
<li id="mwBQ4">形式に即していること (formality)</li>
<li id="mwBQ8">簡潔さ</li>
<li id="mwBRA">XML文書の作成・編集の容易さ</li></ul>

<p id="mwBRE">技術者にとってはXMLはSGMLよりも習得しやすい技術であり、また処理系の開発が容易になったことで低い費用でXML技術を利用できるようになった。
現在ではXMLは広く普及している技術である。</p>

<p id="mwBRI">XMLの前身であるSGMLと同様にXMLでも、いくつかの冗長な構文要素があり、要素記述子の繰り返しを仕様に含んでいる。
文書を短くすることは、XMLワーキンググループでは、XMLの構造において本質的な問題とは見なされなかった。</p>

<section data-mw-section-id="42" id="mwBRM" aria-labelledby="起源"><div class="mw-heading mw-heading3"><h3 id="起源"><span id=".E8.B5.B7.E6.BA.90" typeof="mw:FallbackId"></span>起源</h3></div>
<p id="mwBRQ">XMLは、<a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwBRU">ISO</a>標準 <a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBRY">Standard Generalized Markup Language</a> (SGML) のサブセットである。
XMLのほとんどはSGMLから変更されずに採り入れられている。
XMLがSGMLから採り入れられている技術的な要素には次のものが含まれる。</p>
<ul id="mwBRc"><li id="mwBRg">論理的な構造と物理的な構造を分離する (要素と実体)</li>
<li id="mwBRk">文法に基づいた妥当性検証 (Document Type Definition (DTD、文書型定義))</li>
<li id="mwBRo">データと<a rel="mw:WikiLink" href="%E3%83%A1%E3%82%BF%E3%83%87%E3%83%BC%E3%82%BF" title="メタデータ" id="mwBRs">メタデータ</a>を分離する (要素と属性)</li>
<li id="mwBRw">混合内容 (mixed content、要素の内容として子要素と文字列データが混在する内容モデル)</li>
<li id="mwBR0">表現から処理を分離する (<a rel="mw:WikiLink" href="#処理命令" class="mw-selflink-fragment" id="mwBR4">処理命令</a>; processing instruction)</li>
<li id="mwBR8">山括弧の構文</li></ul>
<p id="mwBSA">XMLがSGMLから採り入れなかった技術要素としては、SGML宣言がある (XMLでは<!--固定の区切り符号セットがあり、-->文書の<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F" title="文字符号化方式" id="mwBSE">文字符号化方式</a>として<a rel="mw:WikiLink" href="UTF-8" title="UTF-8" id="mwBSI">UTF-8</a>と<a rel="mw:WikiLink" href="UTF-16" title="UTF-16" id="mwBSM">UTF-16</a>を採用している)。</p>

<p id="mwBSQ">XMLの他の技術的起源としては、次の3つが挙げられる。</p>
<dl id="mwBSU"><dt id="mwBSY"><a rel="mw:WikiLink" href="Text_Encoding_Initiative" title="Text Encoding Initiative" id="mwBSc">Text Encoding Initiative</a> (TEI)</dt>
<dd id="mwBSg">Text Encoding Initiative (TEI、<a rel="mw:WikiLink/Interwiki" href="https://en.wikipedia.org/wiki/Text%20Encoding%20Initiative" title="en:Text Encoding Initiative" class="extiw external" id="mwBSk">en:Text Encoding Initiative</a>) は、「転送構文」として使うためのSGMLのプロファイルを定義している。</dd>
<dt id="mwBSo"><a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwBSs">HyperText Markup Language</a> (HTML)</dt>
<dd id="mwBSw">HyperText Markup Language (HTML) では、<!--elements were synchronous with their resource-->文書の文字符号化集合はリソースの文字符号化方式と分離されている。<!-- xml:lang 属性があり、--><!--リンクの宣言で必要となることよりもリソースに付属するメタデータに重きをおく[[Hypertext Transfer Protocol|HTTP]]の考え方がある。 --></dd>
<dt id="mwBS0">Extended Reference Concrete Syntax (ERCS)</dt>
<dd id="mwBS4">Extended Reference Concrete Syntax (ERCS) から、XML 1.0 の命名規則が採用された。ERCSは、十六進数の文字参照を導入しており、全ての<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwBS8">Unicode</a>の文字を使うことができるようにするために参照の概念を導入している。</dd></dl>

<p id="mwBTA">XML仕様の設計に関する議論のなかで開発された革新的な考え方には、次のものが含まれる。</p>
<ul id="mwBTE"><li id="mwBTI">XML文書の<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F" title="文字符号化方式" id="mwBTM">文字符号化方式</a> (<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89" title="文字コード" id="mwBTQ">文字コード</a>) の決定の<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0" title="アルゴリズム" id="mwBTU">アルゴリズム</a>と、XML宣言における文字符号化方式の指定</li>
<li id="mwBTY"><a rel="mw:WikiLink" href="#処理命令" class="mw-selflink-fragment" id="mwBTc">処理命令</a>のターゲット</li>
<li id="mwBTg">xml:space 属性</li>
<li id="mwBTk">空要素のタグのための新しい要素終了区切り</li></ul>

</section><section data-mw-section-id="43" id="mwBTo" aria-labelledby="バージョン"><div class="mw-heading mw-heading3"><h3 id="バージョン"><span id=".E3.83.90.E3.83.BC.E3.82.B8.E3.83.A7.E3.83.B3" typeof="mw:FallbackId"></span>バージョン</h3></div>
<p id="mwBTs">2010年1月現在の時点では、XMLには2つのバージョンがある。</p>
<dl id="mwBTw"><dt id="mwBT0">XML 1.0</dt>
<dd id="mwBT4">XML 1.0 が最初に策定されたのは1998年2月10日であった。1998年の策定後、数度の改訂 (修正) を経ている。この数度の改訂については新しいバージョン番号は割り当てられていない。現在の時点では、Fifth Edition（第5版）が最新版である。XML 1.0 Fifth Edition は、2008年11月26日にW3Cから公開された。XML 1.0 は、多くの処理系が実装され、現在においても一般的な用途に対しては採用が勧められるとされている。日本ではJIS X 4159:2005としてJIS規格化されている<sup class="mw-ref reference" id="cite_ref-27" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-27" id="mwBT8"><span class="mw-reflink-text" id="mwBUA"><span class="cite-bracket" id="mwBUE">[</span>23<span class="cite-bracket" id="mwBUI">]</span></span></a></sup>。</dd>
<dt id="mwBUM">XML 1.1</dt>
<dd id="mwBUQ">XML 1.1 が最初に策定されたのは2004年2月4日であり、XML 1.0 Third Edition が公開された日と同じ日であった。現在の時点では、Second Edition (第2版) が最新版である。XML 1.1 Second Edition は、2006年8月16日にW3Cから公開された。XML 1.1 にはいくつかの機能が追加されている。XML 1.1 で追加された機能については議論の対象となっている。XML 1.1 で追加された機能は、XML をいくつかの状況で使い易くすることを目指している<sup class="mw-ref reference" id="cite_ref-28" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-28" id="mwBUU"><span class="mw-reflink-text" id="mwBUY"><span class="cite-bracket" id="mwBUc">[</span>24<span class="cite-bracket" id="mwBUg">]</span></span></a></sup>。XML 1.1 で追加された主な機能は次のとおりである。
<ul id="mwBUk"><li id="mwBUo"><a rel="mw:WikiLink" href="EBCDIC" title="EBCDIC" id="mwBUs">EBCDIC</a> プラットフォームで使われている行終端文字を使えるようにする。</li>
<li id="mwBUw"><a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwBU0">Unicode</a> 2.0 の文字集合に含まれない文字を使えるようにする。</li></ul></dd>
<dd id="mwBU4">XML 1.1 を実装している XML の処理系は、あまり多くない。XML 1.1 は、XML 1.1 特有の機能を必要とする状況においてのみ、採用を勧められるとされている<sup class="mw-ref reference" id="cite_ref-29" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-29" id="mwBU8"><span class="mw-reflink-text" id="mwBVA"><span class="cite-bracket" id="mwBVE">[</span>25<span class="cite-bracket" id="mwBVI">]</span></span></a></sup>。</dd></dl>

<p id="mwBVM">XML 1.0 と XML 1.1 は、要素名と属性名に使うことができる<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E9%9B%86%E5%90%88" title="文字集合" id="mwBVQ">文字集合</a>において異なっている。XML 1.0 では、 Unicode 2.0 で定義された文字集合のみ要素名および属性名として使うことができる。Unicode 2.0 の文字集合には、世界で使われているほとんどの文字が含まれている。しかし Unicode 2.0 の文字集合には Unicode 2.0 より新しいバージョンで追加された文字は含まれていない。こうした Unicode の新しいバージョンで追加された文字としては、<a rel="mw:WikiLink" href="%E3%83%A2%E3%83%B3%E3%82%B4%E3%83%AB%E8%AA%9E" title="モンゴル語" id="mwBVU">モンゴル語</a>、<a rel="mw:WikiLink" href="%E3%82%AF%E3%83%A1%E3%83%BC%E3%83%AB%E8%AA%9E" title="クメール語" id="mwBVY">クメール語</a> (カンボジア語)、<a rel="mw:WikiLink" href="%E3%82%A2%E3%83%A0%E3%83%8F%E3%83%A9%E8%AA%9E" title="アムハラ語" id="mwBVc">アムハラ語</a>、<a rel="mw:WikiLink" href="%E3%83%93%E3%83%AB%E3%83%9E%E8%AA%9E" title="ビルマ語" id="mwBVg">ビルマ語</a>などの文字が、含まれる。</p>

<p id="mwBVk">XML 1.1 においては、ほとんどのUnicode文字をXML文書の文字列データや属性値として使うことができる。また Unicode の現在のバージョンで定義されていない文字でさえ、使うことができる。
XML 1.1 の方式では、いくつかの文字については使うことができないが、その他の全ての文字は使うことができる。
一方で XML 1.0 では、仕様で明示的に規定された文字集合のみを、XML文書の文字列データや属性値として使うことができる。
このため XML 1.0 では、Unicode の新しいバージョンで追加される文字を扱うことはできない。</p>

<p id="mwBVo">XML文書の文字列データや属性値について、XML 1.1 では XML 1.0 より多くの<a rel="mw:WikiLink" href="%E5%88%B6%E5%BE%A1%E6%96%87%E5%AD%97" title="制御文字" id="mwBVs">制御文字</a>を使うことができる。
しかし「堅牢性」の観点から、XML 1.1 で使えるようになった制御文字の多くは、<a rel="mw:WikiLink" href="#文字参照" class="mw-selflink-fragment" id="mwBVw">文字参照</a>としてXML文書内に記述しなければならない。
XML 1.1 で使えるようになった制御文字には、2つの改行コードが含まれる。
この2つの改行コードは、XML 1.1 の処理系では空白記号として扱われる。
制御文字のうちこの空白記号として扱われる制御文字のみが、XML 1.1 で文字参照を使わずに直接にXML文書に記述することができる。</p>

<p id="mwBV0">現在、XML 2.0 に関する議論が行われている<!-- , although it remains to be seen {{vague}} if such will ever come about. -->。
<a rel="mw:ExtLink nofollow" href="http://www.textuality.com/xml/xmlSW.html" class="external text" id="mwBV4">XML-SW</a> (SW は、skunk works <a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AB%E3%83%B3%E3%82%AF%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%B9" title="スカンクワークス" id="mwBV8">スカンクワークス</a>の意味) が、XMLの最初の設計者の一人によって書かれた。
XML-SW には、XML 2.0 はどのようなものかということについての、いくつかの提案を含んでいる。
その内容は次のとおりである。</p>
<ul id="mwBWA"><li id="mwBWE">Document Type Definition (DTD、文書型定義) をXMLの構文から排除する。</li>
<li id="mwBWI"><a rel="mw:WikiLink" href="#XML名前空間" class="mw-selflink-fragment" id="mwBWM">XML名前空間</a>、XML Base および<a rel="mw:WikiLink" href="#XML情報集合" class="mw-selflink-fragment" id="mwBWU">XML情報集合</a> (情報集合) をXML仕様に統合する。</li></ul>
<p id="mwBWY"><a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwBWc">World Wide Web Consortium</a> (W3C) では、XML Binary Characterization (XMLバイナリ表現) のワーキンググループが活動しており、同ワーキンググループでは、XML情報集合をバイナリ形式に符号化するために、<a rel="mw:WikiLink" href="%E3%83%A6%E3%83%BC%E3%82%B9%E3%82%B1%E3%83%BC%E3%82%B9" title="ユースケース" id="mwBWg">ユースケース</a>と特性を調査する予備研究を行っている。
このワーキンググループは、公的な標準を制定することが認可されているわけではない。
XMLは定義上明確に<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AC%E3%83%BC%E3%83%B3%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88" title="プレーンテキスト" id="mwBWk">テキスト</a>に基づいているため、<a rel="mw:WikiLink" href="ITU-T" title="ITU-T" class="mw-redirect" id="mwBWo">ITU-T</a>と<a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwBWs">ISO</a>は、それぞれが定めるバイナリインフォメーションセットに対して、混乱を避けるために <a rel="mw:ExtLink nofollow" href="http://asn1.elibel.tm.fr/xml/finf.htm" class="external text" id="mwBWw">Fast Infoset</a> の名前を使っている (参照: ITU-T Rec. X.891 | ISO/IEC 24824-1)。</p>

</section><section data-mw-section-id="44" id="mwBW0" aria-labelledby="特許の主張"><div class="mw-heading mw-heading3"><h3 id="特許の主張"><span id=".E7.89.B9.E8.A8.B1.E3.81.AE.E4.B8.BB.E5.BC.B5" typeof="mw:FallbackId"></span>特許の主張</h3></div>
<p id="mwBW4">2005年の10月に、Scientigoという小さな企業が、XMLの使用に対して同企業の2つの特許 <a rel="mw:ExtLink nofollow" href="http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=5842213" class="external text" id="mwBW8">U.S. Patent 5,842,213</a> と <a rel="mw:ExtLink nofollow" href="http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=6393426" class="external text" id="mwBXA">U.S. Patent 6,393,426</a> の対象になるという主張を、公的に表明した。
この2つの特許は、「特定の『階層構造ではない』統合されていない中立的な形式での、[データの]モデリングと格納と転送」を対象としている。
特許申請によると、この2つの特許は1997年と1999年に出願された。
Scientigoの最高経営責任者 (CEO) である Doyal Bryant は、この2つの特許を「金銭に換える」という願望を述べたが、同社は「世界を敵にするつもりはない」と言明した。
Bryant は、Scientigoは自社の2つの特許についていくつかの大企業と話し合っていると述べた<sup class="mw-ref reference" id="cite_ref-30" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-30" id="mwBXE"><span class="mw-reflink-text" id="mwBXI"><span class="cite-bracket" id="mwBXM">[</span>26<span class="cite-bracket" id="mwBXQ">]</span></span></a></sup>。</p>

<p id="mwBXU">XMLを使う人々や企業に在籍していない専門家たちは、Scientigoの主張に対して懐疑的で批判的な立場で反応した。
一定の人々は、Scientigoを<a rel="mw:WikiLink" href="%E3%83%91%E3%83%86%E3%83%B3%E3%83%88%E3%83%BB%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB" title="パテント・トロール" id="mwBXY">パテント・トロール</a>であると述べた。
ティム・ブレイは、この2つの特許がXMLを対象とするという主張は「<!--見たところ-->ばかげている」と述べた<sup class="mw-ref reference" id="cite_ref-31" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-31" id="mwBXc"><span class="mw-reflink-text" id="mwBXg"><span class="cite-bracket" id="mwBXk">[</span>27<span class="cite-bracket" id="mwBXo">]</span></span></a></sup>。</p>

<p id="mwBXs">XMLに関係する多くの先行技術が<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBXw">SGML</a>を含めて存在している<!--ため、何人かの法律の専門家はScientigoが同社の2つの特許で訴訟に勝つことは難しいと考えている{{Fact|date=February 2007}}-->。</p>

</section></section><section data-mw-section-id="45" id="mwBX0" aria-labelledby="XMLに対する支持と批判"><div class="mw-heading mw-heading2"><h2 id="XMLに対する支持と批判"><span id="XML.E3.81.AB.E5.AF.BE.E3.81.99.E3.82.8B.E6.94.AF.E6.8C.81.E3.81.A8.E6.89.B9.E5.88.A4" typeof="mw:FallbackId"></span>XMLに対する支持と批判</h2></div>
<!--
########################################
この節を編集する方々に向けての覚え書き:
########################################
XMLに関する議論については、記述し、その詳細を書くとよいでしょう。
ただしXMLに関する議論に、あなた自身がまきこまれないように、注意してください。
事実をもって語らせるように書いてください。
この節の内容を、簡潔にすることを歓迎します。
また参考文献をつけることを歓迎します。
しかし[[Wikipedia:中立的な観点]]と[[Wikipedia:検証可能性]]と[[Wikipedia:独自研究は載せない]]に沿わない編集は、歓迎されないでしょう。
-->

<p id="mwBX4">多くの論者がXMLに対してさまざまな批判を行ってきた。
こうした批判は、XMLの長所と潜在的な欠点に対する言及を含んでいる<sup class="mw-ref reference" id="cite_ref-CriticSeeAlso_32-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-CriticSeeAlso-32" id="mwBX8"><span class="mw-reflink-text" id="mwBYA"><span class="cite-bracket" id="mwBYE">[</span>28<span class="cite-bracket" id="mwBYI">]</span></span></a></sup>。</p>
<!--
{{quotation|XMLは実のところ売春婦にドレスアップしたデータに過ぎない。|デイブ・トーマス<ref&#x3E;Neal Ford, Language Oriented Programming, The Server Side's Java Symposium, 2007</ref&#x3E;}}
-->
<section data-mw-section-id="46" id="mwBYM" aria-labelledby="XMLの長所"><div class="mw-heading mw-heading3"><h3 id="XMLの長所"><span id="XML.E3.81.AE.E9.95.B7.E6.89.80" typeof="mw:FallbackId"></span>XMLの長所</h3></div>
<ul id="mwBYQ"><li id="mwBYU">XMLは<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AC%E3%83%BC%E3%83%B3%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88" title="プレーンテキスト" id="mwBYY">テキスト</a>に基づいた技術である。</li>
<li id="mwBYc">XMLは<a rel="mw:WikiLink" href="Unicode" title="Unicode" id="mwBYg">Unicode</a>の<a rel="mw:WikiLink" href="%E6%96%87%E5%AD%97%E9%9B%86%E5%90%88" title="文字集合" id="mwBYk">文字集合</a>を扱える。Unicodeを採用したことにより、どのような自然言語の書き言葉であってもほとんどの情報を通信の対象にできる。</li>
<li id="mwBYo">XMLは汎用的に<a rel="mw:WikiLink" href="%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E7%A7%91%E5%AD%A6" title="コンピュータ科学" class="mw-redirect" id="mwBYs">コンピュータ科学</a>の<a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0" title="データ構造" id="mwBYw">データ構造</a>を表現できる。例えば、レコード（<a rel="mw:WikiLink" href="%E6%A7%8B%E9%80%A0%E4%BD%93" title="構造体" id="mwBY0">構造体</a>）、<a rel="mw:WikiLink" href="%E3%83%AA%E3%82%B9%E3%83%88_(%E6%8A%BD%E8%B1%A1%E3%83%87%E3%83%BC%E3%82%BF%E5%9E%8B)" title="リスト (抽象データ型)" id="mwBY4">リスト</a>、<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwBY8">木構造</a>などを表現できる。</li>
<li id="mwBZA">XMLの自己文書化という形式は、構造とフィールド名とともに値も記述できる。</li>
<li id="mwBZE">XMLの厳密な構文と<a rel="mw:WikiLink" href="%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90" title="構文解析" id="mwBZI">構文解析</a>の要件があるため、XMLプロセサ (XML<a rel="mw:WikiLink" href="%E6%A7%8B%E6%96%87%E8%A7%A3%E6%9E%90%E5%99%A8" title="構文解析器" id="mwBZM">パーサ</a>) のアルゴリズムは非常に簡潔で効率よく一貫性のあるものとなる。</li>
<li id="mwBZQ">XMLは文書データベースおよび文書処理のための技術として、<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%89%E3%82%A2%E3%83%AD%E3%83%B3" title="スタンドアロン" class="mw-redirect" id="mwBZU">スタンドアロン</a>環境においても<a rel="mw:WikiLink" href="%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF" title="コンピュータネットワーク" id="mwBZY">ネットワーク</a>環境においても、非常によく活用されている。</li>
<li id="mwBZc">XMLは国際標準に基づいている。</li>
<!-- * It can be updated incrementally. -->
<li id="mwBZg">XMLでは、RELAX NG や<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%9E%E3%83%88%E3%83%AD%E3%83%B3" title="スキマトロン" id="mwBZk">スキマトロン</a>のような<a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwBZo">スキーマ言語</a>を使うことで妥当性検証を行える。こうした妥当性検証の機構は次のことを容易にする。
<ul id="mwBZs"><li id="mwBZw">有効な単体テスト</li>
<li id="mwBZ0">有効な防火壁 (ファイアウォール)</li>
<li id="mwBZ4">有効な受け入れテスト</li>
<li id="mwBZ8">契約に基づく有効な仕様</li>
<li id="mwBaA">有効な<a rel="mw:WikiLink" href="%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA" title="ソフトウェア開発" id="mwBaE">ソフトウェア構築</a></li></ul></li>
<li id="mwBaI">XMLの<a rel="mw:WikiLink" href="%E9%9A%8E%E5%B1%A4%E6%A7%8B%E9%80%A0" title="階層構造" id="mwBaM">階層構造</a>は、(全てではないが) ほとんどの種類の文書の表現に向いている。</li>
<li id="mwBaQ">XMLは<a rel="mw:WikiLink" href="%E3%83%97%E3%83%AC%E3%83%BC%E3%83%B3%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88" title="プレーンテキスト" id="mwBaU">プレーンテキスト</a>として表現される。プレーンテキストは、他のプロプライエタリな文書形式と比べて制限が少ない。</li>
<li id="mwBaY">XMLは<a rel="mw:WikiLink" href="%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0)" title="プラットフォーム (コンピューティング)" id="mwBac">プラットフォーム</a>独立である。このため技術の移り変わりによる影響に比較的強い。</li>
<li id="mwBag">XML文書は、スキーマが変更されても、前方互換性と後方互換性を保持することは、比較的容易である。</li>
<li id="mwBak">XMLの前身である<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBao">SGML</a>は、1986年から使われつづけている。そのため大量に蓄積された経験やソフトウェアを活用できる。</li>
<li id="mwBas">整形式XML文書の要素の断片もまた、整形式のXML文書である。</li></ul>

</section><section data-mw-section-id="47" id="mwBaw" aria-labelledby="XMLの短所"><div class="mw-heading mw-heading3"><h3 id="XMLの短所"><span id="XML.E3.81.AE.E7.9F.AD.E6.89.80" typeof="mw:FallbackId"></span>XMLの短所</h3></div>
<ul id="mwBa0"><li id="mwBa4">XML文書の構文は、同じ情報を表すバイナリ表現と比べて、冗長でサイズが大きい<sup class="mw-ref reference" id="cite_ref-Elliotte001_33-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Elliotte001-33" id="mwBa8"><span class="mw-reflink-text" id="mwBbA"><span class="cite-bracket" id="mwBbE">[</span>29<span class="cite-bracket" id="mwBbI">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-ExiEval_34-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-ExiEval-34" id="mwBbM"><span class="mw-reflink-text" id="mwBbQ"><span class="cite-bracket" id="mwBbU">[</span>30<span class="cite-bracket" id="mwBbY">]</span></span></a></sup>。</li>
<li id="mwBbc">XML文書は冗長であり、記憶装置、転送、処理のコストの面で、効率的な運用に悪い影響を与える可能性がある<sup class="mw-ref reference" id="cite_ref-ExiEval_34-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-ExiEval-34" id="mwBbg"><span class="mw-reflink-text" id="mwBbk"><span class="cite-bracket" id="mwBbo">[</span>30<span class="cite-bracket" id="mwBbs">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-Elliotte000_35-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Elliotte000-35" id="mwBbw"><span class="mw-reflink-text" id="mwBb0"><span class="cite-bracket" id="mwBb4">[</span>31<span class="cite-bracket" id="mwBb8">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-However000_36-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-However000-36" data-mw-group="注" id="mwBcA"><span class="mw-reflink-text" id="mwBcE"><span class="cite-bracket" id="mwBcI">[</span>注 5<span class="cite-bracket" id="mwBcM">]</span></span></a></sup>。</li>
<li id="mwBcQ">XML文書の構文は、<!-- 特に人間が読む場合に、 -->他の「テキストに基づく」データ転送形式と比べて冗長である<sup class="mw-ref reference" id="cite_ref-Bierman000_37-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Bierman000-37" id="mwBcU"><span class="mw-reflink-text" id="mwBcY"><span class="cite-bracket" id="mwBcc">[</span>32<span class="cite-bracket" id="mwBcg">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-VerbRebut000_38-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-VerbRebut000-38" id="mwBck"><span class="mw-reflink-text" id="mwBco"><span class="cite-bracket" id="mwBcs">[</span>33<span class="cite-bracket" id="mwBcw">]</span></span></a></sup>。</li>
<li id="mwBc0">XMLはその前身である<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBc4">SGML</a>よりも簡素化されたとはいえ、その処理は決して軽くはなく、インターネット上のプロトコルなど速度と軽さが要求される分野では、採用が見送られることがしばしばある<sup class="mw-ref reference" id="cite_ref-39" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-39" data-mw-group="注" id="mwBc8"><span class="mw-reflink-text" id="mwBdA"><span class="cite-bracket" id="mwBdE">[</span>注 6<span class="cite-bracket" id="mwBdI">]</span></span></a></sup>。</li>
<!--
* 本質的な[[データ型]]を備えていない。XMLは「整数」「文字列」「論理値」「日付」などの種類のデータを考慮していない<ref group="注" name="DataType000"&#x3E;例えば、"3.14159" を7文字の文字列ではなく[[浮動小数点数]]として扱うよう強制する機構はXMLにはない。ただし、XML Schema を使ったXML文書の記述においてはXML処理にデータ型の概念を備えるようになっている。</ref&#x3E;<ref name="Blanken000"&#x3E;
{{cite book
| last = Blanken
| first = Henk M.
| title = Intelligent Search on Xml Data: Applications, Languages, Models, Implementations, and Benchmarks
| publisher = Springer
| year = 2003
| id = 3540407685
}}XMLを使う人が定義したデータ型を認識するシステムを提案する</ref&#x3E;。
-->
<li id="mwBdM">XMLが表現形式として採用している<a rel="mw:WikiLink" href="%E9%9A%8E%E5%B1%A4%E5%9E%8B%E3%83%87%E3%83%BC%E3%82%BF%E3%83%A2%E3%83%87%E3%83%AB" title="階層型データモデル" id="mwBdQ">階層型モデル</a>は、<a rel="mw:WikiLink" href="%E9%96%A2%E4%BF%82%E3%83%A2%E3%83%87%E3%83%AB" title="関係モデル" id="mwBdU">関係モデル</a>や<a rel="mw:WikiLink" href="%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%8C%87%E5%90%91" title="オブジェクト指向" id="mwBdY">オブジェクト指向</a>グラフと比べると制限が大きい<sup class="mw-ref reference" id="cite_ref-TreeLimit000_40-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-TreeLimit000-40" data-mw-group="注" id="mwBdc"><span class="mw-reflink-text" id="mwBdg"><span class="cite-bracket" id="mwBdk">[</span>注 7<span class="cite-bracket" id="mwBdo">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-Lim000_41-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Lim000-41" id="mwBds"><span class="mw-reflink-text" id="mwBdw"><span class="cite-bracket" id="mwBd0">[</span>34<span class="cite-bracket" id="mwBd4">]</span></span></a></sup>。</li>
<li id="mwBd8">オーバーラップする (階層構造ではない) 節 (ノード) の関連を表現するには、余分な努力が必要である<sup class="mw-ref reference" id="cite_ref-Searle000_42-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Searle000-42" id="mwBeA"><span class="mw-reflink-text" id="mwBeE"><span class="cite-bracket" id="mwBeI">[</span>35<span class="cite-bracket" id="mwBeM">]</span></span></a></sup>。</li>
<li id="mwBeQ">XML名前空間を使うことには問題がともなう。名前空間を正しく扱うXMLプロセサを実装することは、難しい作業になる可能性がある<sup class="mw-ref reference" id="cite_ref-Names000_43-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-Names000-43" id="mwBeU"><span class="mw-reflink-text" id="mwBeY"><span class="cite-bracket" id="mwBec">[</span>36<span class="cite-bracket" id="mwBeg">]</span></span></a></sup>。</li>
<li id="mwBek">XMLは、「自己文書化」として表現されることが多い。しかしこの表現では、重大なあいまいさがあることを考慮していない<sup class="mw-ref reference" id="cite_ref-selfdesc000_44-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-selfdesc000-44" id="mwBeo"><span class="mw-reflink-text" id="mwBes"><span class="cite-bracket" id="mwBew">[</span>37<span class="cite-bracket" id="mwBe0">]</span></span></a></sup><sup class="mw-ref reference" id="cite_ref-45" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-45" data-mw-group="注" id="mwBe4"><span class="mw-reflink-text" id="mwBe8"><span class="cite-bracket" id="mwBfA">[</span>注 8<span class="cite-bracket" id="mwBfE">]</span></span></a></sup>。</li>
<li id="mwBfI">XML文書における内容と属性の区別は、一定の人々にとっては不自然に感じられる。XMLのデータ構造の設計を難しくする要因となっている<sup class="mw-ref reference" id="cite_ref-XMLSuck8_46-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-XMLSuck8-46" id="mwBfM"><span class="mw-reflink-text" id="mwBfQ"><span class="cite-bracket" id="mwBfU">[</span>38<span class="cite-bracket" id="mwBfY">]</span></span></a></sup>。</li></ul>

</section></section><section data-mw-section-id="48" id="mwBfc" aria-labelledby="標準化"><div class="mw-heading mw-heading2"><h2 id="標準化"><span id=".E6.A8.99.E6.BA.96.E5.8C.96" typeof="mw:FallbackId"></span>標準化</h2></div>
<p id="mwBfg">先述した<a rel="mw:WikiLink" href="%E5%9B%BD%E9%9A%9B%E6%A8%99%E6%BA%96%E5%8C%96%E6%A9%9F%E6%A7%8B" title="国際標準化機構" id="mwBfk">ISO</a>の標準群のほかに、XML関連では次の文書が発行されている。</p>

<ul id="mwBfo"><li id="mwBfs">ISO/IEC 8825-4:2002 <i id="mwBfw">Information technology -- <a rel="mw:WikiLink" href="Abstract_Syntax_Notation_One" title="Abstract Syntax Notation One" id="mwBf0">ASN.1</a> encoding rules: XML Encoding Rules (XER)</i></li>
<li id="mwBf4">ISO/IEC 8825-5:2004 <i id="mwBf8">Information technology -- ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1</i></li>
<li id="mwBgA">ISO/IEC 9075-14:2006 <i id="mwBgE">Information technology -- <a rel="mw:WikiLink" href="%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E8%A8%80%E8%AA%9E" title="データベース言語" id="mwBgI">Database languages</a> -- <a rel="mw:WikiLink" href="SQL" title="SQL" id="mwBgM">SQL</a> -- Part 14: XML-Related Specifications (SQL/XML)</i></li></ul>

<ul id="mwBgQ"><li id="mwBgU">ISO 10303-28:2007 <i id="mwBgY">Industrial automation systems and integration -- Product data representation and exchange -- Part 28: Implementation methods: XML representations of EXPRESS schemas and data, using XML schemas</i></li>
<li id="mwBgc">ISO/IEC 13250-3:2007 <i id="mwBgg">Information technology -- <a rel="mw:WikiLink" href="%E3%83%88%E3%83%94%E3%83%83%E3%82%AF%E3%83%9E%E3%83%83%E3%83%97" title="トピックマップ" id="mwBgk">Topic Maps</a> -- Part 3: XML syntax</i></li>
<li id="mwBgo">ISO/IEC 13522-5:1997 <i id="mwBgs">Information technology -- Coding of multimedia and hypermedia information -- Part 5: Support for base-level interactive applications</i></li>
<li id="mwBgw">ISO/IEC 13522-8:2001 <i id="mwBg0">Information technology -- Coding of multimedia and hypermedia information -- Part 8: XML notation for ISO/IEC 13522-5</i></li>
<li id="mwBg4">ISO/IEC 18056:2007 <i id="mwBg8">Information technology -- Telecommunications and information exchange between systems -- XML Protocol for Computer Supported Telecommunications Applications (CSTA) Phase III</i></li>
<li id="mwBhA">ISO/IEC 19503:2005 <i id="mwBhE">Information technology -- <a rel="mw:WikiLink" href="XML_Metadata_Interchange" title="XML Metadata Interchange" id="mwBhI">XML Metadata Interchange (XMI)</a></i></li>
<li id="mwBhM">ISO/IEC 19776-1:2005 <i id="mwBhQ">Information technology -- Computer graphics, image processing and environmental data representation -- Extensible 3D (X3D) encodings -- Part 1: Extensible Markup Language (XML) encoding</i></li></ul>

<ul id="mwBhU"><li id="mwBhY">ISO/IEC 22537:2006 <i id="mwBhc">Information technology -- <a rel="mw:WikiLink" href="ECMAScript_for_XML" title="ECMAScript for XML" id="mwBhg">ECMAScript for XML (E4X)</a> specification</i></li>
<li id="mwBhk">ISO 22643:2003 <i id="mwBho">Space data and information transfer systems -- Data entity dictionary specification language (DEDSL) -- XML/DTD Syntax</i></li>
<li id="mwBhs">ISO/IEC 23001-1:2006 <i id="mwBhw">Information technology -- <a rel="mw:WikiLink" href="Moving_Picture_Experts_Group" title="Moving Picture Experts Group" id="mwBh0">MPEG</a> systems technologies -- Part 1: Binary MPEG format for XML</i></li>
<li id="mwBh4">ISO 24531:2007 <i id="mwBh8">Intelligent transport systems -- System architecture, taxonomy and terminology -- Using XML in ITS standards, data registries and data dictionaries</i></li></ul>

</section><section data-mw-section-id="49" id="mwBiA" aria-labelledby="注釈"><div class="mw-heading mw-heading2"><h2 id="注釈"><span id=".E6.B3.A8.E9.87.88" typeof="mw:FallbackId"></span>注釈</h2></div>
<div class="reflist" style=" list-style-type: decimal;" typeof="mw:Transclusion" id="mwBiE">
<ol class="mw-references references" data-mw-group="注" typeof="mw:Extension/references" id="mwBiI"><li id="cite_note-3" data-mw-footnote-number="1"><span class="mw-cite-backlink" id="mwBiM"><a href="#cite_ref-3" data-mw-group="注" rel="mw:referencedBy" id="mwBiQ"><span class="mw-linkback-text" id="mwBiU">↑</span></a></span> <span id="mw-reference-text-cite_note-3" class="mw-reference-text reference-text" data-mw-group="注"><a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect" id="mwBiY">Extensible HyperText Markup Language</a> (XHTML) は、<a rel="mw:WikiLink" href="%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E8%A8%80%E8%AA%9E" title="マークアップ言語" id="mwBic">マークアップ言語</a> <a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language" id="mwBig">HyperText Markup Language</a> (HTML) を簡素化しその一貫性を改良しようという試みである。なお、HTMLは、<a rel="mw:WikiLink" href="Standard_Generalized_Markup_Language" title="Standard Generalized Markup Language" class="mw-redirect" id="mwBik">Standard Generalized Markup Language</a> (SGML) に基づいたマークアップ言語である。</span></li>
<li id="cite_note-4" data-mw-footnote-number="2"><span class="mw-cite-backlink" id="mwBio"><a href="#cite_ref-4" data-mw-group="注" rel="mw:referencedBy" id="mwBis"><span class="mw-linkback-text" id="mwBiw">↑</span></a></span> <span id="mw-reference-text-cite_note-4" class="mw-reference-text reference-text" data-mw-group="注">XMLプロセサを利用する際には、XML文書で用いている文字コードをサポートしたものを選択することになる。</span></li>
<li id="cite_note-5" data-mw-footnote-number="3"><span class="mw-cite-backlink" id="mwBi0"><a href="#cite_ref-5" data-mw-group="注" rel="mw:referencedBy" id="mwBi4"><span class="mw-linkback-text" id="mwBi8">↑</span></a></span> <span id="mw-reference-text-cite_note-5" class="mw-reference-text reference-text" data-mw-group="注">他の方法でXML文書を処理することも可能である</span></li>
<li id="cite_note-6" data-mw-footnote-number="4"><span class="mw-cite-backlink" id="mwBjA"><a href="#cite_ref-6" data-mw-group="注" rel="mw:referencedBy" id="mwBjE"><span class="mw-linkback-text" id="mwBjI">↑</span></a></span> <span id="mw-reference-text-cite_note-6" class="mw-reference-text reference-text" data-mw-group="注">一つの要素の内容として文字列データのみを含むものは、混合内容ではない。また内容のない「空要素」も混合内容ではない。一つの要素の内容がいくつかの子要素だけから構成されるものも、混合内容ではない。</span></li>
<li id="cite_note-However000-36" data-mw-footnote-number="5"><span class="mw-cite-backlink" id="mwBjM"><a href="#cite_ref-However000_36-0" data-mw-group="注" rel="mw:referencedBy" id="mwBjQ"><span class="mw-linkback-text" id="mwBjU">↑</span></a></span> <span id="mw-reference-text-cite_note-However000-36" class="mw-reference-text reference-text" data-mw-group="注">ただし、Binary XML の試みは、XML文書のバイナリ表現を使うことでこうした問題を軽減するべく努力している。例えば、<a rel="mw:WikiLink" href="Java" title="Java" id="mwBjY">Java</a>による Fast Infoset 標準の<a rel="mw:WikiLink" href="%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9%E5%AE%9F%E8%A3%85" title="リファレンス実装" id="mwBjc">リファレンス実装</a>では、構文解析 (パース) の速度は <a rel="mw:WikiLink" href="Apache_Xerces" title="Apache Xerces" id="mwBjg">Apache Xerces</a> Java と比べて10倍速く、Javaによる最も高速なXMLプロセサの一つである<a rel="mw:ExtLink nofollow" href="https://piccolo.sourceforge.net/" class="external text" id="mwBjk">Piccolo driver</a> と比べて4倍速い<a rel="mw:ExtLink nofollow" href="https://fi.dev.java.net/reports/parsing/report.html" class="external autonumber" id="mwBjo"></a>。</span></li>
<li id="cite_note-39" data-mw-footnote-number="6"><span class="mw-cite-backlink" id="mwBjs"><a href="#cite_ref-39" data-mw-group="注" rel="mw:referencedBy" id="mwBjw"><span class="mw-linkback-text" id="mwBj0">↑</span></a></span> <span id="mw-reference-text-cite_note-39" class="mw-reference-text reference-text" data-mw-group="注">XMLの汎用性とそれに伴う重さはしばしば揶揄の対象とされることもある。<a rel="mw:WikiLink" href="Internet_Protocol" title="Internet Protocol" id="mwBj4">IP</a>、<a rel="mw:WikiLink" href="Transmission_Control_Protocol" title="Transmission Control Protocol" id="mwBj8">TCP</a>、<a rel="mw:WikiLink" href="User_Datagram_Protocol" title="User Datagram Protocol" id="mwBkA">UDP</a>をXMLで定義するという<a rel="mw:WikiLink" href="%E3%82%B8%E3%83%A7%E3%83%BC%E3%82%AFRFC" title="ジョークRFC" id="mwBkE">ジョークRFC</a> ( <a rel="mw:WikiLink" href="RFC_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="RFC (識別子)" class="mw-redirect" id="mwBkM">RFC</a><span typeof="mw:Entity" id="mwBkQ">&nbsp;</span><a rel="mw:ExtLink nofollow" href="https://datatracker.ietf.org/doc/html/rfc3252" class="external text" id="mwBkU">3252</a> ) が存在する。</span></li>
<li id="cite_note-TreeLimit000-40" data-mw-footnote-number="7"><span class="mw-cite-backlink" id="mwBkY"><a href="#cite_ref-TreeLimit000_40-0" data-mw-group="注" rel="mw:referencedBy" id="mwBkc"><span class="mw-linkback-text" id="mwBkg">↑</span></a></span> <span id="mw-reference-text-cite_note-TreeLimit000-40" class="mw-reference-text reference-text" data-mw-group="注">階層型モデルは<a rel="mw:WikiLink" href="%E6%9C%A8%E6%A7%8B%E9%80%A0_(%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0)" title="木構造 (データ構造)" id="mwBkk">木構造</a>の固定的な単一の視点による見方しか提供しない。例えば、役者が映画の下位に位置づけられるか、映画が役者の下位に位置づけられるかのいずれかであり、双方の視点を両立することはできない。</span></li>
<li id="cite_note-45" data-mw-footnote-number="8"><span class="mw-cite-backlink" id="mwBko"><a href="#cite_ref-45" data-mw-group="注" rel="mw:referencedBy" id="mwBks"><span class="mw-linkback-text" id="mwBkw">↑</span></a></span> <span id="mw-reference-text-cite_note-45" class="mw-reference-text reference-text" data-mw-group="注">例えば<!--、[[Use–mention distinction]], [[Naming collision]], --><a rel="mw:WikiLink" href="%E5%A4%9A%E7%BE%A9%E8%AA%9E" title="多義語" id="mwBk0">多義語</a>を参照</span></li>
</ol></div>
</section><section data-mw-section-id="50" id="mwBk4" aria-labelledby="出典"><div class="mw-heading mw-heading2"><h2 id="出典"><span id=".E5.87.BA.E5.85.B8" typeof="mw:FallbackId"></span>出典</h2></div>
<div class="reflist" style=" list-style-type: decimal;" typeof="mw:Transclusion" id="mwBk8">
<ol class="mw-references references" typeof="mw:Extension/references" id="mwBlA"><li id="cite_note-1" data-mw-footnote-number="1"><span class="mw-cite-backlink" id="mwBlE"><a href="#cite_ref-1" rel="mw:referencedBy" id="mwBlI"><span class="mw-linkback-text" id="mwBlM">↑</span></a></span> <span id="mw-reference-text-cite_note-1" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="http://lists.xml.org/archives/xml-dev/200802/msg00313.html" class="external text" id="mwBlQ">"XML stands for Extensible Markup Language. The X is for the first syllable of Extensible. eXtensible is a spelling error."</a> - <a rel="mw:ExtLink nofollow" href="https://web.archive.org/web/20100511055637/http://lists.xml.org/archives/xml-dev/200802/msg00313.html" class="external text" id="mwBlU">ウェイバックマシン（2010年5月11日アーカイブ分）</a></span></li>
<li id="cite_note-XmlOriginsGoals-2" data-mw-footnote-number="2"><span class="mw-cite-backlink" id="mwBlY"><a href="#cite_ref-XmlOriginsGoals_2-0" rel="mw:referencedBy" id="mwBlc"><span class="mw-linkback-text" id="mwBlg">↑</span></a></span> <span id="mw-reference-text-cite_note-XmlOriginsGoals-2" class="mw-reference-text reference-text"><cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwBlk">Bray, Tim;<span typeof="mw:Entity" id="mwBlo"> </span>Jean Paoli, C. M. Sperberg-McQueen, Eve Maler, François Yergeau<span typeof="mw:Entity" id="mwBls"> </span>(2006年9月).<span typeof="mw:Entity" id="mwBlw"> </span>“<a rel="mw:ExtLink nofollow" href="http://xml.coverpages.org/xml10-japanese.html" class="external text" id="mwBl0">拡張可能なマーク付け言語 (XML) 1.0</a>”.<span typeof="mw:Entity" id="mwBl4"> </span>  World Wide Web Consortium.<span typeof="mw:Entity" id="mwBl8"> </span>2007年10月6日閲覧。</cite></span></li>
<li id="cite_note-7" data-mw-footnote-number="3"><span class="mw-cite-backlink" id="mwBmA"><a href="#cite_ref-7" rel="mw:referencedBy" id="mwBmE"><span class="mw-linkback-text" id="mwBmI">↑</span></a></span> <span id="mw-reference-text-cite_note-7" class="mw-reference-text reference-text">株式会社日本ユニテック、中山幹敏、奥井康弘、2001年、p.132</span></li>
<li id="cite_note-8" data-mw-footnote-number="4"><span class="mw-cite-backlink" id="mwBmM"><a href="#cite_ref-8" rel="mw:referencedBy" id="mwBmQ"><span class="mw-linkback-text" id="mwBmU">↑</span></a></span> <span id="mw-reference-text-cite_note-8" class="mw-reference-text reference-text">株式会社日本ユニテック、中山幹敏、奥井康弘、2001年、p.139</span></li>
<li id="cite_note-9" data-mw-footnote-number="5"><span class="mw-cite-backlink" id="mwBmY"><a href="#cite_ref-9" rel="mw:referencedBy" id="mwBmc"><span class="mw-linkback-text" id="mwBmg">↑</span></a></span> <span id="mw-reference-text-cite_note-9" class="mw-reference-text reference-text">株式会社日本ユニテック、中山幹敏、奥井康弘、2001年、pp.28-29</span></li>
<li id="cite_note-10" data-mw-footnote-number="6"><span class="mw-cite-backlink" id="mwBmk"><a href="#cite_ref-10" rel="mw:referencedBy" id="mwBmo"><span class="mw-linkback-text" id="mwBms">↑</span></a></span> <span id="mw-reference-text-cite_note-10" class="mw-reference-text reference-text">株式会社日本ユニテック、中山幹敏、奥井康弘、2001年、p.29</span></li>
<li id="cite_note-11" data-mw-footnote-number="7"><span class="mw-cite-backlink" id="mwBmw"><a href="#cite_ref-11" rel="mw:referencedBy" id="mwBm0"><span class="mw-linkback-text" id="mwBm4">↑</span></a></span> <span id="mw-reference-text-cite_note-11" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="http://lists.xml.org/archives/xml-dev/200407/msg00208.html" class="external text" id="mwBm8">xml-dev - Fw: An I-D for text/xml, application/xml, etc</a></span></li>
<li id="cite_note-12" data-mw-footnote-number="8"><span class="mw-cite-backlink" id="mwBnA"><a href="#cite_ref-12" rel="mw:referencedBy" id="mwBnE"><span class="mw-linkback-text" id="mwBnI">↑</span></a></span> <span id="mw-reference-text-cite_note-12" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="http://java.sun.com/javase/ja/6/docs/ja/api/" class="external text" id="mwBnM">JavaプラットフォームAPI仕様</a></span></li>
<li id="cite_note-13" data-mw-footnote-number="9"><span class="mw-cite-backlink" id="mwBnQ"><a href="#cite_ref-13" rel="mw:referencedBy" id="mwBnU"><span class="mw-linkback-text" id="mwBnY">↑</span></a></span> <span id="mw-reference-text-cite_note-13" class="mw-reference-text reference-text"><cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwBnc">Fitzgerald,<span typeof="mw:Entity" id="mwBng"> </span>Michael<span typeof="mw:Entity" id="mwBnk"> </span>(2004).<span typeof="mw:Entity" id="mwBno"> </span><i id="mwBns">Learning XSLT</i>.<span typeof="mw:Entity" id="mwBnw"> </span>Sebastopol, CA:<span typeof="mw:Entity" id="mwBn0"> </span><a rel="mw:WikiLink" href="%E3%82%AA%E3%83%A9%E3%82%A4%E3%83%AA%E3%83%BC%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2" title="オライリーメディア" id="mwBn4">O'Reilly Media</a>.<span typeof="mw:Entity" id="mwBn8"> </span>pp.<span typeof="mw:Entity" id="mwBoA">&nbsp;</span>p.243.<span typeof="mw:Entity" id="mwBoE"> </span><a rel="mw:WikiLink" href="ISBN_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="ISBN (識別子)" class="mw-redirect" id="mwBoM">ISBN</a><span typeof="mw:Entity" id="mwBoQ">&nbsp;</span><bdi id="mwBoY">978-0-596-00327-2</bdi></cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Learning+XSLT&amp;rft.aulast=Fitzgerald&amp;rft.aufirst=Michael&amp;rft.au=Fitzgerald%2C%26%2332%3BMichael&amp;rft.date=2004&amp;rft.pages=pp.%26nbsp%3Bp.243&amp;rft.place=Sebastopol%2C+CA&amp;rft.pub=%5B%5B%E3%82%AA%E3%83%A9%E3%82%A4%E3%83%AA%E3%83%BC%E3%83%A1%E3%83%87%E3%82%A3%E3%82%A2%7CO%27Reilly+Media%5D%5D&amp;rft.isbn=978-0-596-00327-2&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwBoc"><span style="display: none;" id="mwBog"><span typeof="mw:Entity" id="mwBok">&nbsp;</span></span></span></span></li>
<li id="cite_note-14" data-mw-footnote-number="10"><span class="mw-cite-backlink" id="mwBoo"><a href="#cite_ref-14" rel="mw:referencedBy" id="mwBos"><span class="mw-linkback-text" id="mwBow">↑</span></a></span> <span id="mw-reference-text-cite_note-14" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.xml.com/pub/a/2005/07/06/tr.html" class="external text" id="mwBo0">Push, Pull, Next!</a> - Bob DuCharme, XML.com</span></li>
<li id="cite_note-15" data-mw-footnote-number="11"><span class="mw-cite-backlink" id="mwBo4"><a href="#cite_ref-15" rel="mw:referencedBy" id="mwBo8"><span class="mw-linkback-text" id="mwBpA">↑</span></a></span> <span id="mw-reference-text-cite_note-15" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="http://www.asahi-net.or.jp/~DP8T-ASM/java/tools/Relaxer/index_ja.html" class="external free" id="mwBpE">http://www.asahi-net.or.jp/~DP8T-ASM/java/tools/Relaxer/index_ja.html</a> <span typeof="mw:Nowiki" id="mwBpk"></span></span></li>
<li id="cite_note-16" data-mw-footnote-number="12"><span class="mw-cite-backlink" id="mwBpo"><a href="#cite_ref-16" rel="mw:referencedBy" id="mwBps"><span class="mw-linkback-text" id="mwBpw">↑</span></a></span> <span id="mw-reference-text-cite_note-16" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="http://java.sun.com/xml/jaxb/" class="external free" id="mwBp0">http://java.sun.com/xml/jaxb/</a> <span typeof="mw:Nowiki" id="mwBqU"></span></span></li>
<li id="cite_note-17" data-mw-footnote-number="13"><span class="mw-cite-backlink" id="mwBqY"><a href="#cite_ref-17" rel="mw:referencedBy" id="mwBqc"><span class="mw-linkback-text" id="mwBqg">↑</span></a></span> <span id="mw-reference-text-cite_note-17" class="mw-reference-text reference-text"><cite style="font-style:normal" class="citation report" typeof="mw:Transclusion" id="mwBqk">『<a rel="mw:ExtLink nofollow" href="https://dl.ndl.go.jp/view/download/digidepo_3525270_po_metaproj2010.pdf?itemId=info%3Andljp%2Fpid%2F3525270&amp;contentNo=1" class="external text" id="mwBqo">平成22年度 新ICT利活用サービス創出支援事業（電子出版の環境整備）メタデータ情報基盤構築事業）報告書</a>』（PDF）（レポート）インフォコム株式、2011年3月31日、66頁<span style="display:none;" id="mwBqs">。<a rel="mw:ExtLink nofollow" href="https://dl.ndl.go.jp/view/download/digidepo_3525270_po_metaproj2010.pdf?itemId=info%3Andljp%2Fpid%2F3525270&amp;contentNo=1" class="external free" id="mwBqw">https://dl.ndl.go.jp/view/download/digidepo_3525270_po_metaproj2010.pdf?itemId=info%3Andljp%2Fpid%2F3525270&amp;contentNo=1</a></span>。<span class="reference-accessdate" id="mwBq0">2019年8月12日閲覧</span>。</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=%E5%B9%B3%E6%88%9022%E5%B9%B4%E5%BA%A6+%E6%96%B0ICT%E5%88%A9%E6%B4%BB%E7%94%A8%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E5%89%B5%E5%87%BA%E6%94%AF%E6%8F%B4%E4%BA%8B%E6%A5%AD%EF%BC%88%E9%9B%BB%E5%AD%90%E5%87%BA%E7%89%88%E3%81%AE%E7%92%B0%E5%A2%83%E6%95%B4%E5%82%99%EF%BC%89%E3%83%A1%E3%82%BF%E3%83%87%E3%83%BC%E3%82%BF%E6%83%85%E5%A0%B1%E5%9F%BA%E7%9B%A4%E6%A7%8B%E7%AF%89%E4%BA%8B%E6%A5%AD%EF%BC%89%E5%A0%B1%E5%91%8A%E6%9B%B8&amp;rft.date=2011-03-31&amp;rft.pages=66%E9%A0%81&amp;rft.pub=%E3%82%A4%E3%83%B3%E3%83%95%E3%82%A9%E3%82%B3%E3%83%A0%E6%A0%AA%E5%BC%8F&amp;rft_id=https%3A%2F%2Fdl.ndl.go.jp%2Fview%2Fdownload%2Fdigidepo_3525270_po_metaproj2010.pdf%3FitemId%3Dinfo%253Andljp%252Fpid%252F3525270%26contentNo%3D1&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwBq4"><span style="display: none;" id="mwBq8"><span typeof="mw:Entity" id="mwBrA">&nbsp;</span></span></span></span></li>
<li id="cite_note-18" data-mw-footnote-number="14"><span class="mw-cite-backlink" id="mwBrE"><a href="#cite_ref-18" rel="mw:referencedBy" id="mwBrI"><span class="mw-linkback-text" id="mwBrM">↑</span></a></span> <span id="mw-reference-text-cite_note-18" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://webdesk.jsa.or.jp/books/W11M0090/index/?bunsyo_id=JIS%20X%204160:2007" class="external text" id="mwBrQ"><b id="mwBrU">JIS X 4160</b></a>:2007「XMLパス言語」附属書 B</span></li>
<li id="cite_note-19" data-mw-footnote-number="15"><span class="mw-cite-backlink" id="mwBrY"><a href="#cite_ref-19" rel="mw:referencedBy" id="mwBrc"><span class="mw-linkback-text" id="mwBrg">↑</span></a></span> <span id="mw-reference-text-cite_note-19" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/xmlschema11-1/" class="external text" id="mwBrk">XML Schema 1.1 Part 1: Structures</a></span></li>
<li id="cite_note-20" data-mw-footnote-number="16"><span class="mw-cite-backlink" id="mwBro"><a href="#cite_ref-20" rel="mw:referencedBy" id="mwBrs"><span class="mw-linkback-text" id="mwBrw">↑</span></a></span> <span id="mw-reference-text-cite_note-20" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://web.archive.org/web/20020802022531/http://www.imc.org/ietf-xml-use/mail-archive/msg00217.html" class="external text" id="mwBr0"><i id="mwBr4">RELAX NG and W3C XML Schema</i></a>, <a rel="mw:WikiLink" href="%E3%82%B8%E3%82%A7%E3%83%BC%E3%83%A0%E3%82%BA%E3%83%BB%E3%82%AF%E3%83%A9%E3%83%BC%E3%82%AF_(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E6%8A%80%E8%A1%93%E8%80%85)" title="ジェームズ・クラーク (ソフトウェア技術者)" id="mwBr8">James Clark</a>, 4 Jun 2002</span></li>
<li id="cite_note-OED-21" data-mw-footnote-number="17"><span class="mw-cite-backlink" id="mwBsA"><a href="#cite_ref-OED_21-0" rel="mw:referencedBy" id="mwBsE"><span class="mw-linkback-text" id="mwBsI">↑</span></a></span> <span id="mw-reference-text-cite_note-OED-21" class="mw-reference-text reference-text"> <cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwBsM">Bray, Tim<span typeof="mw:Entity" id="mwBsQ"> </span>(2005年2月).<span typeof="mw:Entity" id="mwBsU"> </span>“<a rel="mw:ExtLink nofollow" href="https://dl.acm.org/doi/10.1145/1046931.1046941" class="external text" id="mwBsY">A conversation with Tim Bray: Searching for ways to tame the world’s vast stores of information</a>”.<span typeof="mw:Entity" id="mwBsc"> </span>  Association for Computing Machinery's "Queue site".<span typeof="mw:Entity" id="mwBsg"> </span>2008年5月5日閲覧。</cite></span></li>
<li id="cite_note-multimedia-22" data-mw-footnote-number="18"><span class="mw-cite-backlink" id="mwBsk"><a href="#cite_ref-multimedia_22-0" rel="mw:referencedBy" id="mwBso"><span class="mw-linkback-text" id="mwBss">↑</span></a></span> <span id="mw-reference-text-cite_note-multimedia-22" class="mw-reference-text reference-text"> <cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwBsw">“Publishers, multimedia, and interactivity”.<span typeof="mw:Entity" id="mwBs0"> </span><i id="mwBs4">Interactive multimedia</i>.<span typeof="mw:Entity" id="mwBs8"> </span>Cobb Group.<span typeof="mw:Entity" id="mwBtA"> </span>(1988).<span typeof="mw:Entity" id="mwBtE"> </span><a rel="mw:WikiLink" href="ISBN_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="ISBN (識別子)" class="mw-redirect" id="mwBtM">ISBN</a><span typeof="mw:Entity" id="mwBtQ">&nbsp;</span><bdi id="mwBtY">978-1-55615-124-8</bdi></cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=bookitem&amp;rft.btitle=Publishers%2C+multimedia%2C+and+interactivity&amp;rft.atitle=Interactive+multimedia&amp;rft.date=1988&amp;rft.pub=Cobb+Group&amp;rft.isbn=978-1-55615-124-8&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwBtc"><span style="display: none;" id="mwBtg"><span typeof="mw:Entity" id="mwBtk">&nbsp;</span></span></span></span></li>
<li id="cite_note-23" data-mw-footnote-number="19"><span class="mw-cite-backlink" id="mwBto"><a href="#cite_ref-23" rel="mw:referencedBy" id="mwBts"><span class="mw-linkback-text" id="mwBtw">↑</span></a></span> <span id="mw-reference-text-cite_note-23" class="mw-reference-text reference-text">このワーキンググループはもともとは "Editorial Review Board" と呼ばれていた。このワーキンググループの最初のメンバーとXML仕様の first edition が完成するまでに加わっていた7人のメンバーは、XML 1.0 first edition のW3C勧告の最後に一覧して掲載されている。参照: <a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/1998/REC-xml-19980210#sec-xml-wg" class="external free" id="mwBt0">https://www.w3.org/TR/1998/REC-xml-19980210#sec-xml-wg</a></span></li>
<li id="cite_note-24" data-mw-footnote-number="20"><span class="mw-cite-backlink" id="mwBt4"><a href="#cite_ref-24" rel="mw:referencedBy" id="mwBt8"><span class="mw-linkback-text" id="mwBuA">↑</span></a></span> <span id="mw-reference-text-cite_note-24" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/XML/9712-reports.html" class="external text" id="mwBuE">Reports From the W3C SGML ERB to the SGML WG And from the W3C XML ERB to the XML SIG</a></span></li>
<li id="cite_note-25" data-mw-footnote-number="21"><span class="mw-cite-backlink" id="mwBuI"><a href="#cite_ref-25" rel="mw:referencedBy" id="mwBuM"><span class="mw-linkback-text" id="mwBuQ">↑</span></a></span> <span id="mw-reference-text-cite_note-25" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/WD-xml-961114.html" class="external text" id="mwBuU">Extensible Markup Language (XML) - W3C Working Draft 14-Nov-96</a></span></li>
<li id="cite_note-26" data-mw-footnote-number="22"><span class="mw-cite-backlink" id="mwBuY"><a href="#cite_ref-26" rel="mw:referencedBy" id="mwBuc"><span class="mw-linkback-text" id="mwBug">↑</span></a></span> <span id="mw-reference-text-cite_note-26" class="mw-reference-text reference-text"><cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwBuk">“<a rel="mw:ExtLink nofollow" href="https://internet.watch.impress.co.jp/www/article/980212/xml10.htm" class="external text" id="mwBuo">W3CがXML 1.0を勧告</a>”.<span typeof="mw:Entity" id="mwBus"> </span>  INTERNET Watch<span typeof="mw:Entity" id="mwBuw"> </span>(1998年2月12日).<span typeof="mw:Entity" id="mwBu0"> </span>2012年9月5日閲覧。</cite></span></li>
<li id="cite_note-27" data-mw-footnote-number="23"><span class="mw-cite-backlink" id="mwBu4"><a href="#cite_ref-27" rel="mw:referencedBy" id="mwBu8"><span class="mw-linkback-text" id="mwBvA">↑</span></a></span> <span id="mw-reference-text-cite_note-27" class="mw-reference-text reference-text"><cite style="font-style:normal" class="citation jis" id="CITEREFJISX41592005" typeof="mw:Transclusion"><span class="url" id="mwBvE"><a rel="mw:ExtLink nofollow" href="https://www.jisc.go.jp/app/jis/general/GnrJISNumberNameSearchList?show&amp;jisStdNo=X4159" class="external text" id="mwBvI">JIS<span typeof="mw:Entity" id="mwBvM"> </span>X<span typeof="mw:Entity" id="mwBvQ"> </span>4159</a></span><span typeof="mw:Entity" id="mwBvU">:</span>2005「拡張可能なマーク付け言語(XML)1.0」</cite><span id="mwBvY">（</span><a rel="mw:WikiLink" href="%E6%97%A5%E6%9C%AC%E7%94%A3%E6%A5%AD%E6%A8%99%E6%BA%96%E8%AA%BF%E6%9F%BB%E4%BC%9A" title="日本産業標準調査会" id="mwBvc">日本産業標準調査会</a><span id="mwBvg">、</span><a rel="mw:WikiLink" href="%E7%B5%8C%E6%B8%88%E7%94%A3%E6%A5%AD%E7%9C%81" title="経済産業省" id="mwBvk">経済産業省</a><span id="mwBvo">）</span></span></li>
<li id="cite_note-28" data-mw-footnote-number="24"><span class="mw-cite-backlink" id="mwBvw"><a href="#cite_ref-28" rel="mw:referencedBy" id="mwBv0"><span class="mw-linkback-text" id="mwBv4">↑</span></a></span> <span id="mw-reference-text-cite_note-28" class="mw-reference-text reference-text"><cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwBv8">“<a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/xml11/#sec-xml11" class="external text" id="mwBwA">Extensible Markup Language (XML) 1.1 (Second Edition) - Rationale and list of changes for XML 1.1</a>”.<span typeof="mw:Entity" id="mwBwE"> </span>  W3C.<span typeof="mw:Entity" id="mwBwI"> </span>2006年12月21日閲覧。</cite></span></li>
<li id="cite_note-29" data-mw-footnote-number="25"><span class="mw-cite-backlink" id="mwBwM"><a href="#cite_ref-29" rel="mw:referencedBy" id="mwBwQ"><span class="mw-linkback-text" id="mwBwU">↑</span></a></span> <span id="mw-reference-text-cite_note-29" class="mw-reference-text reference-text"><cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwBwY">Harold,<span typeof="mw:Entity" id="mwBwc"> </span>Elliotte Rusty<span typeof="mw:Entity" id="mwBwg"> </span>(2004).<span typeof="mw:Entity" id="mwBwk"> </span><a rel="mw:ExtLink nofollow" href="http://www.cafeconleche.org/books/effectivexml/" class="external text" id="mwBwo"><i id="mwBws">Effective XML</i></a>.<span typeof="mw:Entity" id="mwBww"> </span>Addison-Wesley.<span typeof="mw:Entity" id="mwBw0"> </span>pp.<span typeof="mw:Entity" id="mwBw4">&nbsp;</span>10-19.<span typeof="mw:Entity" id="mwBw8"> </span><a rel="mw:WikiLink" href="ISBN_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="ISBN (識別子)" class="mw-redirect" id="mwBxE">ISBN</a><span typeof="mw:Entity" id="mwBxI">&nbsp;</span><bdi id="mwBxQ">978-0321150400</bdi><span style="display:none;" id="mwBxU">.<span typeof="mw:Entity" id="mwBxY"> </span><a rel="mw:ExtLink nofollow" href="http://www.cafeconleche.org/books/effectivexml/" class="external free" id="mwBxc">http://www.cafeconleche.org/books/effectivexml/</a></span></cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Effective+XML&amp;rft.aulast=Harold&amp;rft.aufirst=Elliotte+Rusty&amp;rft.au=Harold%2C%26%2332%3BElliotte+Rusty&amp;rft.date=2004&amp;rft.pages=pp.%26nbsp%3B10-19&amp;rft.pub=Addison-Wesley&amp;rft.isbn=978-0321150400&amp;rft_id=http%3A%2F%2Fwww.cafeconleche.org%2Fbooks%2Feffectivexml%2F&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwBxg"><span style="display: none;" id="mwBxk"><span typeof="mw:Entity" id="mwBxo">&nbsp;</span></span></span></span></li>
<li id="cite_note-30" data-mw-footnote-number="26"><span class="mw-cite-backlink" id="mwBxs"><a href="#cite_ref-30" rel="mw:referencedBy" id="mwBxw"><span class="mw-linkback-text" id="mwBx0">↑</span></a></span> <span id="mw-reference-text-cite_note-30" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://archive.is/20120712154124/http://news.com.com/Small+company+makes+big+claims+on+XML+patents/2100-1014_3-5905949.html" class="external text" id="mwBx4">Small company makes big claims on XML patents - CNET News.com</a></span></li>
<li id="cite_note-31" data-mw-footnote-number="27"><span class="mw-cite-backlink" id="mwBx8"><a href="#cite_ref-31" rel="mw:referencedBy" id="mwByA"><span class="mw-linkback-text" id="mwByE">↑</span></a></span> <span id="mw-reference-text-cite_note-31" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.zdnet.com/article/xml-co-inventor-bray-responds-to-patent-assault/" class="external text" id="mwByI">XML co-inventor Bray responds to patent assault | Between the Lines | ZDNet.com</a></span></li>
<li id="cite_note-CriticSeeAlso-32" data-mw-footnote-number="28"><span class="mw-cite-backlink" id="mwByM"><a href="#cite_ref-CriticSeeAlso_32-0" rel="mw:referencedBy" id="mwByQ"><span class="mw-linkback-text" id="mwByU">↑</span></a></span> <span id="mw-reference-text-cite_note-CriticSeeAlso-32" class="mw-reference-text reference-text">例えば、
<a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/NOTE-xml-ql/" class="external text" id="mwByY">XML-QL Proposal discussing XML benefits</a>、
<a rel="mw:ExtLink nofollow" href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=dada27bf-2af0-400d-94c9-5575546f5664" class="external text" id="mwByc">When to use XML</a>、
<a rel="mw:ExtLink nofollow" href="http://c2.com/cgi/wiki?XmlSucks" class="external text" id="mwByg">"XML Sucks" on c2.com</a>、<a rel="mw:ExtLink nofollow" href="https://www.xml.com/pub/a/2001/05/02/champion.html" class="external text" id="mwByk">Daring to Do Less with XML</a></span></li>
<li id="cite_note-Elliotte001-33" data-mw-footnote-number="29"><span class="mw-cite-backlink" id="mwByo"><a href="#cite_ref-Elliotte001_33-0" rel="mw:referencedBy" id="mwBys"><span class="mw-linkback-text" id="mwByw">↑</span></a></span> <span id="mw-reference-text-cite_note-Elliotte001-33" class="mw-reference-text reference-text">
<cite style="font-style:normal" class="citation book" id="Reference-Rusty-2002-a" typeof="mw:Transclusion">Harold,<span typeof="mw:Entity" id="mwBy0"> </span>Elliotte Rusty<span typeof="mw:Entity" id="mwBy4"> </span>(2002).<span typeof="mw:Entity" id="mwBy8"> </span><i id="mwBzA">Processing XML with Java(tm): a guide to SAX, DOM, JDOM, JAXP, and TrAX</i>.<span typeof="mw:Entity" id="mwBzE"> </span>Addison-Wesley.<span typeof="mw:Entity" id="mwBzI"> </span>0201771861</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Processing+XML+with+Java%28tm%29%3A+a+guide+to+SAX%2C+DOM%2C+JDOM%2C+JAXP%2C+and+TrAX&amp;rft.aulast=Harold&amp;rft.aufirst=Elliotte+Rusty&amp;rft.au=Harold%2C%26%2332%3BElliotte+Rusty&amp;rft.date=2002&amp;rft.pub=Addison-Wesley&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwBzM"><span style="display: none;" id="mwBzQ"><span typeof="mw:Entity" id="mwBzU">&nbsp;</span></span></span>XML文書はバイナリと比べて冗長である</span></li>
<li id="cite_note-ExiEval-34" data-mw-footnote-number="30"><span rel="mw:referencedBy" class="mw-cite-backlink" id="mwBzY"><a href="#cite_ref-ExiEval_34-0" id="mwBzc"><span class="mw-linkback-text" id="mwBzg">1</span></a> <a href="#cite_ref-ExiEval_34-1" id="mwBzk"><span class="mw-linkback-text" id="mwBzo">2</span></a></span> <span id="mw-reference-text-cite_note-ExiEval-34" class="mw-reference-text reference-text"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/exi-evaluation/" class="external text" id="mwBzs"><i id="mwBzw">Efficient XML Interchange Evaluation</i></a>, W3C Working Draft, 7 April 2009。W3C は、XML を非テキスト形式（バイナリ）で効率的に表現する方法を別途定義している。</span></li>
<li id="cite_note-Elliotte000-35" data-mw-footnote-number="31"><span class="mw-cite-backlink" id="mwBz0"><a href="#cite_ref-Elliotte000_35-0" rel="mw:referencedBy" id="mwBz4"><span class="mw-linkback-text" id="mwBz8">↑</span></a></span> <span id="mw-reference-text-cite_note-Elliotte000-35" class="mw-reference-text reference-text">
<cite style="font-style:normal" class="citation book" id="Reference-Rusty-2002-b" typeof="mw:Transclusion">Harold,<span typeof="mw:Entity" id="mwB0A"> </span>Elliotte Rusty<span typeof="mw:Entity" id="mwB0E"> </span>(2002).<span typeof="mw:Entity" id="mwB0I"> </span><i id="mwB0M">XML in a Nutshell: A Desktop Quick Reference</i>.<span typeof="mw:Entity" id="mwB0Q"> </span>O'Reilly.<span typeof="mw:Entity" id="mwB0U"> </span>0596002920</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=XML+in+a+Nutshell%3A+A+Desktop+Quick+Reference&amp;rft.aulast=Harold&amp;rft.aufirst=Elliotte+Rusty&amp;rft.au=Harold%2C%26%2332%3BElliotte+Rusty&amp;rft.date=2002&amp;rft.pub=O%27Reilly&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB0Y"><span style="display: none;" id="mwB0c"><span typeof="mw:Entity" id="mwB0g">&nbsp;</span></span></span>XML文書はとても冗長であり、高速であることが必要な大規模なデータベースシステムで情報の探索を行うには効率が悪い。</span></li>
<li id="cite_note-Bierman000-37" data-mw-footnote-number="32"><span class="mw-cite-backlink" id="mwB0k"><a href="#cite_ref-Bierman000_37-0" rel="mw:referencedBy" id="mwB0o"><span class="mw-linkback-text" id="mwB0s">↑</span></a></span> <span id="mw-reference-text-cite_note-Bierman000-37" class="mw-reference-text reference-text">
<cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwB0w">Bierman,<span typeof="mw:Entity" id="mwB00"> </span>Gavin<span typeof="mw:Entity" id="mwB04"> </span>(2005).<span typeof="mw:Entity" id="mwB08"> </span><i id="mwB1A">Database Programming Languages: 10th international symposium, DBPL 2005 Trondheim, Norway</i>.<span typeof="mw:Entity" id="mwB1E"> </span>Springer.<span typeof="mw:Entity" id="mwB1I"> </span>3540309519</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Database+Programming+Languages%3A+10th+international+symposium%2C+DBPL+2005+Trondheim%2C+Norway&amp;rft.aulast=Bierman&amp;rft.aufirst=Gavin&amp;rft.au=Bierman%2C%26%2332%3BGavin&amp;rft.date=2005&amp;rft.pub=Springer&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB1M"><span style="display: none;" id="mwB1Q"><span typeof="mw:Entity" id="mwB1U">&nbsp;</span></span></span>XMLの構文は、いくつかの用途においては、人間が読むにはとても冗長である。人間にとっての読みやすさを改善するために dual syntax を提案する</span></li>
<li id="cite_note-VerbRebut000-38" data-mw-footnote-number="33"><span class="mw-cite-backlink" id="mwB1Y"><a href="#cite_ref-VerbRebut000_38-0" rel="mw:referencedBy" id="mwB1c"><span class="mw-linkback-text" id="mwB1g">↑</span></a></span> <span id="mw-reference-text-cite_note-VerbRebut000-38" class="mw-reference-text reference-text">世間で言われているところによれば、XMLより「冗長性の小さい」多くのテキストフォーマットが、XMLに刺激を受けかつ先行的な業績としてXMLを位置づけ言及している。
例えば次のページを参照: <a rel="mw:ExtLink nofollow" href="http://yaml.org/spec/current.html、" class="external free" id="mwB1k">http://yaml.org/spec/current.html、</a>
<a rel="mw:ExtLink nofollow" href="http://innig.net/software/sweetxml/index.html、" class="external free" id="mwB1o">http://innig.net/software/sweetxml/index.html、</a>
<a rel="mw:ExtLink nofollow" href="http://www.json.org/xml.html" class="external free" id="mwB1s">http://www.json.org/xml.html</a></span></li>
<li id="cite_note-Lim000-41" data-mw-footnote-number="34"><span class="mw-cite-backlink" id="mwB1w"><a href="#cite_ref-Lim000_41-0" rel="mw:referencedBy" id="mwB10"><span class="mw-linkback-text" id="mwB14">↑</span></a></span> <span id="mw-reference-text-cite_note-Lim000-41" class="mw-reference-text reference-text">
<cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwB18">Lim,<span typeof="mw:Entity" id="mwB2A"> </span>Ee-Peng<span typeof="mw:Entity" id="mwB2E"> </span>(2002).<span typeof="mw:Entity" id="mwB2I"> </span><i id="mwB2M">Digital Libraries: People, Knowledge, and Technology</i>.<span typeof="mw:Entity" id="mwB2Q"> </span>Springer.<span typeof="mw:Entity" id="mwB2U"> </span>3540002618</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Digital+Libraries%3A+People%2C+Knowledge%2C+and+Technology&amp;rft.aulast=Lim&amp;rft.aufirst=Ee-Peng&amp;rft.au=Lim%2C%26%2332%3BEe-Peng&amp;rft.date=2002&amp;rft.pub=Springer&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB2Y"><span style="display: none;" id="mwB2c"><span typeof="mw:Entity" id="mwB2g">&nbsp;</span></span></span>固定的な階層構造を採用することに伴ういくつかの制限について議論する。2002年12月にシンガポールで開催された 5th International Conference on Asian Digital Libraries, ICADL 2002 の議事録より。</span></li>
<li id="cite_note-Searle000-42" data-mw-footnote-number="35"><span class="mw-cite-backlink" id="mwB2k"><a href="#cite_ref-Searle000_42-0" rel="mw:referencedBy" id="mwB2o"><span class="mw-linkback-text" id="mwB2s">↑</span></a></span> <span id="mw-reference-text-cite_note-Searle000-42" class="mw-reference-text reference-text"><cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwB2w">Searle,<span typeof="mw:Entity" id="mwB20"> </span>Leroy F.<span typeof="mw:Entity" id="mwB24"> </span>(2004).<span typeof="mw:Entity" id="mwB28"> </span><i id="mwB3A">Voice, text, hypertext: emerging practices in textual studies</i>.<span typeof="mw:Entity" id="mwB3E"> </span>University of Washington Press.<span typeof="mw:Entity" id="mwB3I"> </span>0295983051</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Voice%2C+text%2C+hypertext%3A+emerging+practices+in+textual+studies&amp;rft.aulast=Searle&amp;rft.aufirst=Leroy+F.&amp;rft.au=Searle%2C%26%2332%3BLeroy+F.&amp;rft.date=2004&amp;rft.pub=University+of+Washington+Press&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB3M"><span style="display: none;" id="mwB3Q"><span typeof="mw:Entity" id="mwB3U">&nbsp;</span></span></span>オーバーラップする要素を表現する代替システムを提案する。</span></li>
<li id="cite_note-Names000-43" data-mw-footnote-number="36"><span class="mw-cite-backlink" id="mwB3Y"><a href="#cite_ref-Names000_43-0" rel="mw:referencedBy" id="mwB3c"><span class="mw-linkback-text" id="mwB3g">↑</span></a></span> <span id="mw-reference-text-cite_note-Names000-43" class="mw-reference-text reference-text">例えば次のページを参照: <a rel="mw:ExtLink nofollow" href="http://www-128.ibm.com/developerworks/library/x-abolns.html" class="external free" id="mwB3k">http://www-128.ibm.com/developerworks/library/x-abolns.html</a> </span></li>
<li id="cite_note-selfdesc000-44" data-mw-footnote-number="37"><span class="mw-cite-backlink" id="mwB3o"><a href="#cite_ref-selfdesc000_44-0" rel="mw:referencedBy" id="mwB3s"><span class="mw-linkback-text" id="mwB3w">↑</span></a></span> <span id="mw-reference-text-cite_note-selfdesc000-44" class="mw-reference-text reference-text"><cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwB30">“<a rel="mw:ExtLink nofollow" href="http://workflow.healthbase.info/monographs/XML_myths_Browne.pdf" class="external text" id="mwB34">The Myth of Self-Describing XML</a>”.<span typeof="mw:Entity" id="mwB38"> </span>2007年5月12日閲覧。</cite></span></li>
<li id="cite_note-XMLSuck8-46" data-mw-footnote-number="38"><span class="mw-cite-backlink" id="mwB4A"><a href="#cite_ref-XMLSuck8_46-0" rel="mw:referencedBy" id="mwB4E"><span class="mw-linkback-text" id="mwB4I">↑</span></a></span> <span id="mw-reference-text-cite_note-XMLSuck8-46" class="mw-reference-text reference-text"><cite class="citation web" style="font-style:normal" typeof="mw:Transclusion" id="mwB4M">“<a rel="mw:ExtLink nofollow" href="http://xmlsucks.org/but_you_have_to_use_it_anyway/does-xml-suck.html" class="external text" id="mwB4Q">Does XML Suck?</a>”.<span typeof="mw:Entity" id="mwB4U"> </span>2007年12月15日閲覧。</cite>("8. Complexity: Attributes and Content" を参照)</span></li>
</ol></div>

</section><section data-mw-section-id="51" id="mwB4Y" aria-labelledby="参考文献"><div class="mw-heading mw-heading2"><h2 id="参考文献"><span id=".E5.8F.82.E8.80.83.E6.96.87.E7.8C.AE" typeof="mw:FallbackId"></span>参考文献</h2></div>
<ul id="mwB4c"><li id="mwB4g"><cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwB4k">(株) 日本ユニテック、中山幹敏、奥井康弘 編著『改訂版 標準XML完全解説 (上)』技術評論社、2001年。<a rel="mw:WikiLink" href="ISBN_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="ISBN (識別子)" class="mw-redirect">ISBN</a><span typeof="mw:Entity">&nbsp;</span><bdi>978-4-7741-1186-5</bdi>。</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=%E6%94%B9%E8%A8%82%E7%89%88+%E6%A8%99%E6%BA%96XML%E5%AE%8C%E5%85%A8%E8%A7%A3%E8%AA%AC+%28%E4%B8%8A%29&amp;rft.aulast=%28%E6%A0%AA%29+%E6%97%A5%E6%9C%AC%E3%83%A6%E3%83%8B%E3%83%86%E3%83%83%E3%82%AF%E3%80%81%E4%B8%AD%E5%B1%B1%E5%B9%B9%E6%95%8F%E3%80%81%E5%A5%A5%E4%BA%95%E5%BA%B7%E5%BC%98+%E7%B7%A8%E8%91%97&amp;rft.au=%28%E6%A0%AA%29+%E6%97%A5%E6%9C%AC%E3%83%A6%E3%83%8B%E3%83%86%E3%83%83%E3%82%AF%E3%80%81%E4%B8%AD%E5%B1%B1%E5%B9%B9%E6%95%8F%E3%80%81%E5%A5%A5%E4%BA%95%E5%BA%B7%E5%BC%98+%E7%B7%A8%E8%91%97&amp;rft.date=2001&amp;rft.pub=%E6%8A%80%E8%A1%93%E8%A9%95%E8%AB%96%E7%A4%BE&amp;rft.isbn=978-4-7741-1186-5&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB4o"><span style="display: none;"><span typeof="mw:Entity">&nbsp;</span></span></span></li>
<li id="mwB4s"><cite style="font-style:normal" class="citation book" typeof="mw:Transclusion" id="mwB4w">(株) 日本ユニテック、中山幹敏、奥井康弘 編著『改訂版 標準XML完全解説 (下)』技術評論社、2001年。<a rel="mw:WikiLink" href="ISBN_(%E8%AD%98%E5%88%A5%E5%AD%90)" title="ISBN (識別子)" class="mw-redirect">ISBN</a><span typeof="mw:Entity">&nbsp;</span><bdi>978-4-7741-1302-9</bdi>。</cite><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=%E6%94%B9%E8%A8%82%E7%89%88+%E6%A8%99%E6%BA%96XML%E5%AE%8C%E5%85%A8%E8%A7%A3%E8%AA%AC+%28%E4%B8%8B%29&amp;rft.aulast=%28%E6%A0%AA%29+%E6%97%A5%E6%9C%AC%E3%83%A6%E3%83%8B%E3%83%86%E3%83%83%E3%82%AF%E3%80%81%E4%B8%AD%E5%B1%B1%E5%B9%B9%E6%95%8F%E3%80%81%E5%A5%A5%E4%BA%95%E5%BA%B7%E5%BC%98+%E7%B7%A8%E8%91%97&amp;rft.au=%28%E6%A0%AA%29+%E6%97%A5%E6%9C%AC%E3%83%A6%E3%83%8B%E3%83%86%E3%83%83%E3%82%AF%E3%80%81%E4%B8%AD%E5%B1%B1%E5%B9%B9%E6%95%8F%E3%80%81%E5%A5%A5%E4%BA%95%E5%BA%B7%E5%BC%98+%E7%B7%A8%E8%91%97&amp;rft.date=2001&amp;rft.pub=%E6%8A%80%E8%A1%93%E8%A9%95%E8%AB%96%E7%A4%BE&amp;rft.isbn=978-4-7741-1302-9&amp;rfr_id=info:sid/ja.wikipedia.org:XML" id="mwB40"><span style="display: none;"><span typeof="mw:Entity">&nbsp;</span></span></span></li></ul>

</section><section data-mw-section-id="52" id="mwB44" aria-labelledby="関連項目"><div class="mw-heading mw-heading2"><h2 id="関連項目"><span id=".E9.96.A2.E9.80.A3.E9.A0.85.E7.9B.AE" typeof="mw:FallbackId"></span>関連項目</h2></div>
<section data-mw-section-id="53" id="mwB48" aria-labelledby="XML関係の仕様"><div class="mw-heading mw-heading3"><h3 id="XML関係の仕様"><span id="XML.E9.96.A2.E4.BF.82.E3.81.AE.E4.BB.95.E6.A7.98" typeof="mw:FallbackId"></span>XML関係の仕様</h3></div>
<ul id="mwB5A"><li id="mwB5E"><a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E8%A8%80%E8%AA%9E" title="スキーマ言語" id="mwB5I">スキーマ言語</a>
<ul id="mwB5M"><li id="mwB5Q"><a rel="mw:WikiLink" href="Document_Type_Definition" title="Document Type Definition" id="mwB5U">Document Type Definition</a>(DTD、文書型定義)</li>
<li id="mwB5Y"><a rel="mw:WikiLink" href="XML_Schema" title="XML Schema" id="mwB5c">XML Schema</a></li>
<li id="mwB5g"><a rel="mw:WikiLink" href="Regular_Language_description_for_XML" title="Regular Language description for XML" id="mwB5k">Regular Language description for XML</a> (RELAX)</li>
<li id="mwB5o"><a rel="mw:WikiLink" href="TREX" title="TREX" id="mwB5s">TREX</a></li>
<li id="mwB5w"><a rel="mw:WikiLink" href="%E6%96%87%E6%9B%B8%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9E%E5%AE%9A%E7%BE%A9%E8%A8%80%E8%AA%9E" title="文書スキーマ定義言語" id="mwB50">文書スキーマ定義言語</a> (DSDL: Document Schema Definition Languages)
<ul id="mwB54"><li id="mwB58"><a rel="mw:WikiLink" href="RELAX_NG" title="RELAX NG" id="mwB6A">RELAX NG</a></li>
<li id="mwB6E"><a rel="mw:WikiLink" href="%E3%82%B9%E3%82%AD%E3%83%9E%E3%83%88%E3%83%AD%E3%83%B3" title="スキマトロン" id="mwB6I">スキマトロン</a></li></ul></li></ul></li>
<li id="mwB6M"><a rel="mw:WikiLink" href="%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%82%B7%E3%83%BC%E3%83%88" title="スタイルシート" id="mwB6Q">スタイルシート</a>
<ul id="mwB6U"><li id="mwB6Y"><a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language" id="mwB6c">Extensible Stylesheet Language</a> (XSL)
<ul id="mwB6g"><li id="mwB6k"><a rel="mw:WikiLink" href="XSL_Formatting_Objects" title="XSL Formatting Objects" id="mwB6o">XSL Formatting Objects</a> (XSL-FO)</li>
<li id="mwB6s"><a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations" id="mwB6w">XSL Transformations</a> (XSLT)</li></ul></li>
<li id="mwB60"><a rel="mw:WikiLink" href="Cascading_Style_Sheets" title="Cascading Style Sheets" id="mwB64">Cascading Style Sheets</a> (CSS)</li>
<li id="mwB68"><a rel="mw:WikiLink" href="Document_Style_Semantics_and_Specification_Language" title="Document Style Semantics and Specification Language" id="mwB7A">Document Style Semantics and Specification Language</a> (DSSSL)</li></ul></li>
<li id="mwB7E"><a rel="mw:WikiLink" href="XML_Path_Language" title="XML Path Language" id="mwB7I">XML Path Language</a> (XPath)</li>
<li id="mwB7M"><a rel="mw:WikiLink" href="XLink" title="XLink" id="mwB7Q">XML Linking Language</a> (XLink)</li>
<li id="mwB7U"><a rel="mw:WikiLink" href="XQuery" title="XQuery" id="mwB7Y">XQuery</a></li>
<li id="mwB7c"><a rel="mw:WikiLink" href="Jaql" title="Jaql" id="mwB7g">Jaql</a></li></ul>

</section><section data-mw-section-id="54" id="mwB7k" aria-labelledby="関連する団体"><div class="mw-heading mw-heading3"><h3 id="関連する団体"><span id=".E9.96.A2.E9.80.A3.E3.81.99.E3.82.8B.E5.9B.A3.E4.BD.93" typeof="mw:FallbackId"></span>関連する団体</h3></div>
<ul id="mwB7o"><li id="mwB7s"><a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium" id="mwB7w">World Wide Web Consortium</a> (W3C) - <a rel="mw:WikiLink" href="%E6%A8%99%E6%BA%96%E5%8C%96%E5%9B%A3%E4%BD%93_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%81%A8%E9%80%9A%E4%BF%A1)" title="標準化団体 (コンピュータと通信)" id="mwB70">標準化団体</a>の一つ。</li>
<li id="mwB74"><a rel="mw:WikiLink" href="OASIS_(%E7%B5%84%E7%B9%94)" title="OASIS (組織)" id="mwB78">OASIS</a> - 標準化団体の一つ。</li>
<li id="mwB8A"><a rel="mw:WikiLink" href="Apache_XML" title="Apache XML" id="mwB8E">Apache XML</a> - <a rel="mw:WikiLink" href="Apache%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E8%B2%A1%E5%9B%A3" title="Apacheソフトウェア財団" id="mwB8I">Apacheソフトウェア財団</a>のプロジェクト。</li>
<li id="mwB8M"><a rel="mw:WikiLink" href="Apache_XML_Graphics" title="Apache XML Graphics" id="mwB8Q">Apache XML Graphics</a> - Apacheソフトウェア財団のもう一つのプロジェクト。</li></ul>

</section><section data-mw-section-id="55" id="mwB8U" aria-labelledby="XMLと関連する技術"><div class="mw-heading mw-heading3"><h3 id="XMLと関連する技術"><span id="XML.E3.81.A8.E9.96.A2.E9.80.A3.E3.81.99.E3.82.8B.E6.8A.80.E8.A1.93" typeof="mw:FallbackId"></span>XMLと関連する技術</h3></div>
<ul id="mwB8Y"><li id="mwB8c"><a rel="mw:WikiLink" href="Abstract_Syntax_Notation_One" title="Abstract Syntax Notation One" id="mwB8g">Abstract Syntax Notation One</a> (ASN.1) - 電気通信やコンピュータネットワークでのデータ構造の表現・エンコード・転送・デコードを記述する記法</li>
<li id="mwB8k"><a rel="mw:WikiLink" href="JavaScript_Object_Notation" title="JavaScript Object Notation" class="mw-redirect" id="mwB8o">JavaScript Object Notation</a> (JSON) - JavaScriptにおけるオブジェクトの表記法をベースとした軽量なデータ記述言語</li>
<li id="mwB8s"><a rel="mw:WikiLink" href="YAML" title="YAML" id="mwB8w">YAML</a> - 構造化データやオブジェクトを文字列に直列化（シリアライズ）するためのデータ形式</li>
<li id="mwB80"><a rel="mw:WikiLink" href="Broadcast_Markup_Language" title="Broadcast Markup Language" id="mwB84">Broadcast Markup Language</a> - XMLベースのデータ放送向け記述言語</li></ul>

</section></section><section data-mw-section-id="56" id="mwB88" aria-labelledby="外部リンク"><div class="mw-heading mw-heading2"><h2 id="外部リンク"><span id=".E5.A4.96.E9.83.A8.E3.83.AA.E3.83.B3.E3.82.AF" typeof="mw:FallbackId"></span>外部リンク</h2></div>
<span class="mw-empty-elt" typeof="mw:Transclusion" id="mwB9A"><style data-mw-deduplicate="TemplateStyles:r94202605" typeof="mw:Extension/templatestyles">
/* start https://ja.wikipedia.org/ */


.mw-parser-output .side-box{margin:4px 0;box-sizing:border-box;border:1px solid #aaa;font-size:88%;line-height:1.25em;background-color:#f9f9f9;display:flow-root}.mw-parser-output .side-box-abovebelow,.mw-parser-output .side-box-text{padding:0.25em 0.9em}.mw-parser-output .side-box-image{padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .side-box-imageright{padding:2px 0.9em 2px 0;text-align:center}@media(min-width:500px){.mw-parser-output .side-box-flex{display:flex;align-items:center}.mw-parser-output .side-box-text{flex:1}}@media(min-width:720px){.mw-parser-output .side-box{width:238px}.mw-parser-output .side-box-right{clear:right;float:right;margin-left:1em}.mw-parser-output .side-box-left{margin-right:1em}}


/* end   https://ja.wikipedia.org/ */
</style></span>
<ul id="mwB9I"><li id="mwB9M"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/XML/" class="external text" id="mwB9Q">W3C XML 公式ホームページ</a><span class="tmpl-language-icon" style="font-size:0.95em; font-weight:bold; color:#555" typeof="mw:Transclusion" id="mwB9U">（英語）</span></li>
<li id="mwB9Y"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/REC-xml" class="external text" id="mwB9c">W3C XML 1.0 仕様</a><span class="tmpl-language-icon" style="font-size:0.95em; font-weight:bold; color:#555" typeof="mw:Transclusion" id="mwB9g">（英語）</span></li>
<li id="mwB9k"><a rel="mw:ExtLink nofollow" href="https://www.w3.org/TR/xml11/" class="external text" id="mwB9o">W3C XML 1.1 仕様</a><span class="tmpl-language-icon" style="font-size:0.95em; font-weight:bold; color:#555" typeof="mw:Transclusion" id="mwB9s">（英語）</span></li>
<li id="mwB9w"><a rel="mw:ExtLink nofollow" href="https://validator.w3.org" class="external text" id="mwB90">The W3C Markup Validation Service</a> XML構文チェックサイト <span class="tmpl-language-icon" style="font-size:0.95em; font-weight:bold; color:#555" typeof="mw:Transclusion" id="mwB94">（英語）</span></li></ul>

<div class="navbox" aria-labelledby="W3C標準" style="border-collapse:collapse;padding:3px" typeof="mw:Transclusion" id="mwB98"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="background:transparent;color:inherit;min-width:100%;border-spacing:0px;border-collapse:separate"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div style="float:left;width:6em;text-align:left"></div><div id="W3C標準" style="font-size:110%;margin:0 6em">W3C標準</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%;background-color:#e6e6ff;">製品・標準</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
</div><table class="nowraplinks navbox-subgroup" style="min-width:100%;border-spacing:0px;border-collapse:separate"><tbody><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;"><a rel="mw:WikiLink" href="W3C%E5%8B%A7%E5%91%8A" title="W3C勧告">推奨</a></th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="ActivityPub" title="ActivityPub">ActivityPub</a></li>
<li><a rel="mw:WikiLink" href="Compound_Document_Format" title="Compound Document Format">CDF</a></li>
<li><a rel="mw:WikiLink" href="Cascading_Style_Sheets" title="Cascading Style Sheets">CSS</a></li>
<li><a rel="mw:WikiLink" href="Document_Object_Model" title="Document Object Model">DOM</a></li>
<li><a rel="mw:WikiLink" href="Efficient_XML_Interchange" title="Efficient XML Interchange">EXI</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Geolocation API</span></li>
<li><a rel="mw:WikiLink" href="HyperText_Markup_Language" title="HyperText Markup Language">HTML</a> (<a rel="mw:WikiLink" href="HTML5" title="HTML5">HTML5</a>)</li>
<li><a rel="mw:WikiLink" href="Internationalization_Tag_Set" title="Internationalization Tag Set">ITS</a></li>
<li><a rel="mw:WikiLink" href="Mathematical_Markup_Language" title="Mathematical Markup Language" class="mw-redirect">MathML</a></li>
<li><a rel="mw:WikiLink" href="OWL" title="OWL">OWL</a></li>
<li><a rel="mw:WikiLink" href="P3P" title="P3P" class="mw-redirect">P3P</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">PLS</span></li>
<li><a rel="mw:WikiLink" href="Resource_Description_Framework" title="Resource Description Framework">RDF</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">RDF Schema</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">SISR</span></li>
<li><a rel="mw:WikiLink" href="Synchronized_Multimedia_Integration_Language" title="Synchronized Multimedia Integration Language">SMIL</a></li>
<li><a rel="mw:WikiLink" href="SOAP_(%E3%83%97%E3%83%AD%E3%83%88%E3%82%B3%E3%83%AB)" title="SOAP (プロトコル)">SOAP</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">SRGS</span></li>
<li><a rel="mw:WikiLink" href="Speech_Synthesis_Markup_Language" title="Speech Synthesis Markup Language">SSML</a></li>
<li><a rel="mw:WikiLink" href="Scalable_Vector_Graphics" title="Scalable Vector Graphics">SVG</a></li>
<li><a rel="mw:WikiLink" href="SPARQL" title="SPARQL">SPARQL</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Timed Text</span></li>
<li><a rel="mw:WikiLink" href="VoiceXML" title="VoiceXML">VoiceXML</a></li>
<li><a rel="mw:WikiLink" href="%E3%82%A6%E3%82%A7%E3%83%96%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8" title="ウェブストレージ">ウェブストレージ</a></li>
<li><a rel="mw:WikiLink" href="Web_Services_Description_Language" title="Web Services Description Language">WSDL</a></li>
<li><a rel="mw:WikiLink" href="WebSocket" title="WebSocket">WebSocket</a></li>
<li><a rel="mw:WikiLink" href="XForms" title="XForms">XForms</a></li>
<li><a rel="mw:WikiLink" href="Extensible_HyperText_Markup_Language" title="Extensible HyperText Markup Language" class="mw-redirect">XHTML</a></li>
<li><a rel="mw:WikiLink" href="XML_Inclusions" title="XML Inclusions">XInclude</a></li>
<li><a rel="mw:WikiLink" href="XLink" title="XLink">XLink</a></li>
<li><a rel="mw:WikiLink" href="Extensible_Markup_Language" title="Extensible Markup Language" class="mw-redirect">XML</a></li>
<li><a rel="mw:WikiLink" href="XML%E5%9F%BA%E5%BA%95" title="XML基底">XML基底</a></li>
<li><a rel="mw:WikiLink" href="XML%E6%9A%97%E5%8F%B7%E5%8C%96" title="XML暗号化">XML暗号化</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XML Events</span></li>
<li><a rel="mw:WikiLink" href="Extensible_Markup_Language#XML情報集合" title="Extensible Markup Language" class="mw-redirect">XML情報集合</a></li>
<li><a rel="mw:WikiLink" href="XML%E5%90%8D%E5%89%8D%E7%A9%BA%E9%96%93" title="XML名前空間" class="mw-redirect">XML名前空間</a></li>
<li><a rel="mw:WikiLink" href="XML_Schema" title="XML Schema">XML Schema</a></li>
<li><a rel="mw:WikiLink" href="XML%E7%BD%B2%E5%90%8D" title="XML署名">XML署名</a></li>
<li><a rel="mw:WikiLink" href="XML_Path_Language" title="XML Path Language">XPath</a></li>
<li><a rel="mw:WikiLink" href="XPointer" title="XPointer">XPointer</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XProc</span></li>
<li><a rel="mw:WikiLink" href="XQuery" title="XQuery">XQuery</a></li>
<li><a rel="mw:WikiLink" href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language">XSL</a></li>
<li><a rel="mw:WikiLink" href="XSL_Formatting_Objects" title="XSL Formatting Objects">XSL-FO</a></li>
<li><a rel="mw:WikiLink" href="XSL_Transformations" title="XSL Transformations">XSLT</a></li>
<li><a rel="mw:WikiLink" href="%E6%AD%A3%E6%BA%96XML" title="正準XML" class="mw-redirect">正準XML</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">勧告候補</th><td class="navbox-list navbox-even" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Web Workers</span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">作業草稿</th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">CCXML</span></li>
<li><a rel="mw:WikiLink" href="CURIE" title="CURIE">CURIE</a></li>
<li><a rel="mw:WikiLink" href="Indexed_Database_API" title="Indexed Database API">Indexed Database API</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">InkML</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">RIF</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">SCXML</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">sXBL</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">WICD</span></li>
<li><a rel="mw:WikiLink" href="WebRTC" title="WebRTC">WebRTC</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XFDL</span></li>
<li><a rel="mw:WikiLink" href="XFrames" title="XFrames">XFrames</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XBL</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XHTML+MathML+SVG</span></li>
<li><a rel="mw:WikiLink" href="XMLHttpRequest" title="XMLHttpRequest">XMLHttpRequest</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">覚書</th><td class="navbox-list navbox-even" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="XAdES" title="XAdES">XAdES</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">XHTML+SMIL</span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">方針</th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="Web_Content_Accessibility_Guidelines" title="Web Content Accessibility Guidelines">Web Content Accessibility Guidelines</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">発案</th><td class="navbox-list navbox-even" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">W3C MMI</span></li>
<li><a rel="mw:WikiLink" href="W3C_Markup_Validation_Service" title="W3C Markup Validation Service">W3C MVS</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;padding:0 0.75em;">廃止</th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="Compact_HTML" title="Compact HTML">C-HTML</a></li>
<li><a rel="mw:WikiLink" href="Handheld_Device_Markup_Language" title="Handheld Device Markup Language">HDML</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">JSSS</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">PGML</span></li>
<li><a rel="mw:WikiLink" href="Vector_Markup_Language" title="Vector Markup Language">VML</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Web SQL Database</span></li></ul>
</div></td></tr></tbody></table><div>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;background-color:#e6e6ff;">団体</th><td class="navbox-list navbox-even hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortium</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">World Wide Web Foundation</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">SVG Working Group</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">WebOnt</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">W3C Device Description Working Group</span></li>
<li><a rel="mw:WikiLink" href="Web_Hypertext_Application_Technology_Working_Group" title="Web Hypertext Application Technology Working Group" class="mw-redirect">WHATWG</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;background-color:#e6e6ff;">ソフトウェア</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Agora</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Argo</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Arena</span></li>
<li><a rel="mw:WikiLink" href="Amaya" title="Amaya">Amaya</a></li>
<li><a rel="mw:WikiLink" href="Libwww" title="Libwww">Libwww</a></li>
<li><a rel="mw:WikiLink" href="Line_Mode_Browser" title="Line Mode Browser">Line Mode Browser</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%;background-color:#e6e6ff;">関連会議</th><td class="navbox-list navbox-even hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">IW3C2</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">World Wide Web Conference</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">WWW1</span></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2">
<span typeof="mw:File"><img alt="カテゴリ" src="./_assets_/0c70a452f799bfe840676ee341124611/Folder_Hexagonal_Icon.svg.png" decoding="async" data-file-width="36" data-file-height="31" data-file-type="drawing" height="14" width="16" class="mw-file-element" loading="lazy"></span> Category:W3C勧告</td></tr></tbody></table></div>
<div class="navbox" aria-labelledby="データ交換（英語版）フォーマット" style="border-collapse:collapse;padding:3px" typeof="mw:Transclusion" id="mwB-A"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="background:transparent;color:inherit;min-width:100%;border-spacing:0px;border-collapse:separate"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div style="float:left;width:6em;text-align:left"></div><div id="データ交換（英語版）フォーマット" style="font-size:110%;margin:0 6em"><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">データ交換</span>フォーマット</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a rel="mw:WikiLink" href="%E5%AF%BE%E4%BA%BA%E5%8F%AF%E8%AA%AD%E5%AA%92%E4%BD%93" title="対人可読媒体">対人可読</a>フォーマット</th><td class="navbox-list navbox-odd hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><a rel="mw:WikiLink" href="Atom_(%E3%82%A6%E3%82%A7%E3%83%96%E6%A8%99%E6%BA%96)" title="Atom (ウェブ標準)">Atom</a></li>
<li><a rel="mw:WikiLink" href="Comma-separated_values" title="Comma-separated values" class="mw-redirect">CSV</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">EDIFACT</span></li>
<li><a rel="mw:WikiLink" href="JavaScript_Object_Notation" title="JavaScript Object Notation" class="mw-redirect">JSON</a>
<ul><li><a rel="mw:WikiLink" href="JSON_Web_Encryption" title="JSON Web Encryption">Web Encryption</a></li>
<li><a rel="mw:WikiLink" href="JSON_Web_Token" title="JSON Web Token">Web Token</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Web Signature</span></li></ul></li>
<li><a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3%E3%83%AA%E3%82%B9%E3%83%88" title="プロパティリスト">プロパティリスト</a></li>
<li><a rel="mw:WikiLink" href="Resource_Description_Framework" title="Resource Description Framework">RDF</a></li>
<li><a rel="mw:WikiLink" href="REBOL" title="REBOL">Rebol</a></li>
<li><a rel="mw:WikiLink" href="TOML" title="TOML">TOML</a></li>
<li><a rel="mw:WikiLink" href="XML" class="mw-selflink selflink">XML</a></li>
<li><a rel="mw:WikiLink" href="YAML" title="YAML">YAML</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a rel="mw:WikiLink" href="%E3%83%90%E3%82%A4%E3%83%8A%E3%83%AA" title="バイナリ">バイナリ</a>フォーマット</th><td class="navbox-list navbox-even hlist" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em">
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">AMF</span></li>
<li><a rel="mw:WikiLink" href="Ascii85" title="Ascii85">Ascii85</a></li>
<li><a rel="mw:WikiLink" href="Abstract_Syntax_Notation_One" title="Abstract Syntax Notation One">ASN.1</a>
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">SMI</span></li></ul></li>
<li><a rel="mw:WikiLink" href="Apache_Avro" title="Apache Avro">Avro</a></li>
<li><a rel="mw:WikiLink" href="Base32" title="Base32" class="mw-redirect">Base32</a></li>
<li><a rel="mw:WikiLink" href="Base64" title="Base64">Base64</a></li>
<li><a rel="mw:WikiLink" href="Bencode" title="Bencode">Bencode</a></li>
<li><a rel="mw:WikiLink" href="BSON" title="BSON">BSON</a>
<ul><li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">UBJSON</span></li></ul></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Cap'n Proto</span></li>
<li><a rel="mw:WikiLink" href="CBOR" title="CBOR">CBOR</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">FlatBuffers</span></li>
<li><a rel="mw:WikiLink" href="MessagePack" title="MessagePack">MessagePack</a></li>
<li><a rel="mw:WikiLink" href="%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3%E3%83%AA%E3%82%B9%E3%83%88" title="プロパティリスト">プロパティリスト</a></li>
<li><a rel="mw:WikiLink" href="Protocol_Buffers" title="Protocol Buffers">Protocol Buffers</a></li>
<li><a rel="mw:WikiLink" href="Apache_Thrift" title="Apache Thrift">Thrift</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">Cyphal</span> DSDL</li>
<li><a rel="mw:WikiLink" href="External_Data_Representation" title="External Data Representation">XDR</a></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">uuencode</span></li>
<li><span title="リンク先の項目はまだありません。新規の執筆や他言語版からの翻訳が望まれます。">yEnc</span></li></ul>
</div></td></tr></tbody></table></div>
<div role="navigation" class="navbox authority-control" aria-labelledby="典拠管理データベース_frameless&amp;#124;text-top&amp;#124;10px&amp;#124;alt=ウィキデータを編集&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q2115#identifiers&amp;#124;class=noprint&amp;#124;ウィキデータを編集" style="padding:3px" typeof="mw:Transclusion" id="mwB-E"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="典拠管理データベース_frameless&amp;#124;text-top&amp;#124;10px&amp;#124;alt=ウィキデータを編集&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q2115#identifiers&amp;#124;class=noprint&amp;#124;ウィキデータを編集" style="font-size:110%;margin:0 4em">典拠管理データベース </div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">全般</th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"><ul><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://id.worldcat.org/fast/1181899" class="external text">FAST</a></span></li></ul></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">国立図書館</th><td class="navbox-list navbox-even" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"><ul><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://d-nb.info/gnd/4501553-3" class="external text">ドイツ</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://id.loc.gov/authorities/sh97007825" class="external text">アメリカ</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://catalogue.bnf.fr/ark:/12148/cb131774360" class="external text">フランス</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://data.bnf.fr/ark:/12148/cb131774360" class="external text">BnF data</a></span></li><li><span class="uid"><abbr title="XML (značkovací jazyk)" typeof="mw:ExpandedAttrs"><a rel="mw:ExtLink nofollow" href="https://aleph.nkp.cz/F/?func=find-c&amp;local_base=aut&amp;ccl_term=ica=ph118225&amp;CON_LNG=ENG" class="external text">チェコ</a></abbr></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://datos.bne.es/resource/XX546216" class="external text">スペイン</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://www.nli.org.il/en/authorities/987007549204605171" class="external text">イスラエル</a></span></li></ul></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">その他</th><td class="navbox-list navbox-odd" style="text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px"><div style="padding:0em 0.25em"><ul><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://www.idref.fr/035260521" class="external text">IdRef</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://elmcip.net/node/10267" class="external text">ELMCIP</a></span></li><li><span class="uid"><a rel="mw:ExtLink nofollow" href="https://lux.collections.yale.edu/view/concept/bb258a2e-5050-4bef-93f6-ac24276f1878" class="external text">Yale LUX</a></span></li></ul></div></td></tr></tbody></table></div>
<span typeof="mw:Transclusion" id="mwB-M"></span>










</section></div><!--htdig_noindex--><div><div class="zim-footer">
    This article is issued from <a class="external text" title="Last edited on 2026-05-09" href="https://ja.wikipedia.org/wiki/?title=XML&amp;oldid=109451202">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.ja">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
            </div>
          </main>
        </div>
      </div>
    </div>
     <script src="./_webp_/webpHandler.js"></script>
  

</body></html>