<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> 【<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML名前空間</anchor>】 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間接頭辞</anchor>つきの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性名</anchor>を持つ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor> ⇔ <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前空間名</anchor>を持つ属性 ⇔ 特定の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素型</anchor>に属さない属性 ⇔ 大域属性 ⇔ Global attribute。</p><section><h1>概要</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end>
たとえば、 <samp class="XML">&lt;e attr=&quot;val&quot;/&gt;</samp> の <samp>attr</samp> 属性は、接頭辞を持っていません。この属性は要素型区画に属しています。これは大域属性ではありません。</p><p>一方で、 <samp class="XML">&lt;e ns:attr=&quot;val&quot;/&gt;</samp>
では、 <samp class="XML">attr</samp> 属性は、
接頭辞 <samp class="XML">ns</samp> で表される名前空間に属しています。こちらを大域属性といいます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> 名前空間に属しているのに<em>大域</em>属性とは変に思えるかもしれませんが、そうではありません。
大域属性ではない場合、
<samp class="XML">&lt;e attr=&quot;val&quot;/&gt;</samp> と
<samp class="XML">&lt;f attr=&quot;val&quot;/&gt;</samp> の <samp>attr</samp> 属性は、どちらも同じ属性のように思えますが、 <weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">(少なくても XML 名前空間の水準では)</weak> 別の要素型に属する別の属性です。一方で、大域属性である場合には、
<samp class="XML">&lt;e ns:attr=&quot;val&quot;/&gt;</samp> と
<samp class="XML">&lt;f ns:attr=&quot;val&quot;/&gt;</samp> の
<samp>attr</samp> 属性は、どちらも同じ名前空間に属するので、同じ属性です。
このように、大域属性は、要素型を超えて使うことができます。これが大域属性の大域たる所以です。
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end>
XML 名前空間を初めて知った人が一番よくはまるのが、 <samp class="XML"><anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="ns:e attr=&quot;val&quot;/">ns:e attr=&quot;val&quot;/</anchor-external></samp>
と <samp class="XML"><anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="ns:e ns:attr=&quot;val&quot;/">ns:e ns:attr=&quot;val&quot;/</anchor-external></samp>
の違いです。</p><p>前者は大域属性ではありませんが、後者は大域属性です。
大域属性は名前空間に属しますが、非大域属性は要素型毎の区画に属します。
前者の <samp>attr</samp> 属性は<q>名前空間 <var>ns</var> の要素型 <samp>e</samp> の属性 <samp>attr</samp></q> であるのに対し、後者の <samp>attr</samp> 属性は<q>名前空間 <var>ns</var> の属性 <samp>attr</samp></q> であり、意味が異なるのです。</p></section><section><h1>用語</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end>
ところで、 XML Names 1.0 の仕様書には「global attribute」という語が何度も出てくるのに対し、 XML Names 1.1 の仕様書には一度も出てきません。他の語に置換えられたのではなく、こういう概念自体が出てきません。 (実態は変わっていないにもかかわらず。)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> なお、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML5</anchor> では「<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">大域属性</anchor>」は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML名前空間</anchor>のすべての<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>に共通の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor>のことを指しており、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML名前空間</anchor>における用語とは意味が異なります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> この <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">wiki</anchor> の解説文では、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML m12n</anchor> における<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">共通属性</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">大域属性</anchor>と呼んでいることがあります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML名前空間</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">大域属性<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">大域属性 (XML)</title></anchor>は、
現在の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">超大域属性</anchor>の一種ともいえます。</p></section><section><h1>一覧</h1><figure class="short list"><figcaption><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> 主要な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">大域属性<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">大域属性 (XML)</title></anchor> </figcaption><ul><li><code>xml:<var>*</var></code></li><li><code>xmlns:<var>*</var></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XLink</anchor></li><li><code>xsi:schemaLocation</code></li><li><code>xsi:noNamespaceSchemaLocation</code></li><li><code>xsi:type</code></li><li><code>xsi:nil</code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SOAP</anchor>/<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WS-<var xmlns="http://www.w3.org/1999/xhtml">*</var></anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XHTML m12n大域属性<title xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">HTML名前空間</title></anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML Events</anchor></li><li><code>xsl:version</code></li><li><code>xsl:exclude-result-prefixes</code></li><li><code>xsl:extension-element-prefixes</code></li><li><code>xbl:attr</code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">RDF/XML</anchor></li><li><code>svg:transform</code></li><li><code>hlink:definition</code></li><li><code>gml:id</code></li><li><code>thr:<var>*</var></code></li><li><code>its:<var>*</var></code></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ARIA</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OpenDocument</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OOXML</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TTML</anchor></li></ul></figure></section></body></html>