/
302.txt
71 lines (58 loc) · 3.56 KB
/
302.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
[1] 【[[XML名前空間]]】 [[名前空間接頭辞]]つきの[[属性名]]を持つ[[属性]] ⇔ [[名前空間名]]を持つ属性 ⇔ 特定の[[要素型]]に属さない属性 ⇔ 大域属性 ⇔ Global attribute。
* 概要
[2]
たとえば、 [SAMP(XML)[<e attr="val"/>]] の [SAMP[attr]] 属性は、接頭辞を持っていません。この属性は要素型区画に属しています。これは大域属性ではありません。
一方で、 [SAMP(XML)[<e ns:attr="val"/>]]
では、 [SAMP(XML)[attr]] 属性は、
接頭辞 [SAMP(XML)[ns]] で表される名前空間に属しています。こちらを大域属性といいます。
[3] 名前空間に属しているのに''大域''属性とは変に思えるかもしれませんが、そうではありません。
大域属性ではない場合、
[SAMP(XML)[<e attr="val"/>]] と
[SAMP(XML)[<f attr="val"/>]] の [SAMP[attr]] 属性は、どちらも同じ属性のように思えますが、 [WEAK[(少なくても XML 名前空間の水準では)]] 別の要素型に属する別の属性です。一方で、大域属性である場合には、
[SAMP(XML)[<e ns:attr="val"/>]] と
[SAMP(XML)[<f ns:attr="val"/>]] の
[SAMP[attr]] 属性は、どちらも同じ名前空間に属するので、同じ属性です。
このように、大域属性は、要素型を超えて使うことができます。これが大域属性の大域たる所以です。
([[名無しさん]])
[4]
XML 名前空間を初めて知った人が一番よくはまるのが、 [SAMP(XML)[<ns:e attr="val"/>]]
と [SAMP(XML)[<ns:e ns:attr="val"/>]]
の違いです。
前者は大域属性ではありませんが、後者は大域属性です。
大域属性は名前空間に属しますが、非大域属性は要素型毎の区画に属します。
前者の [SAMP[attr]] 属性は[Q[名前空間 [VAR[ns]] の要素型 [SAMP[e]] の属性 [SAMP[attr]]]] であるのに対し、後者の [SAMP[attr]] 属性は[Q[名前空間 [VAR[ns]] の属性 [SAMP[attr]]]] であり、意味が異なるのです。
* 用語
[5]
ところで、 XML Names 1.0 の仕様書には「global attribute」という語が何度も出てくるのに対し、 XML Names 1.1 の仕様書には一度も出てきません。他の語に置換えられたのではなく、こういう概念自体が出てきません。 (実態は変わっていないにもかかわらず。)
[6] なお、 [[HTML5]] では「[[大域属性]]」は [[HTML名前空間]]のすべての[[要素]]に共通の[[属性]]のことを指しており、
[[XML名前空間]]における用語とは意味が異なります。
[7] この [[wiki]] の解説文では、 [[XHTML m12n]] における[[共通属性]]を[[大域属性]]と呼んでいることがあります。
[8] [[XML名前空間]]の[[大域属性][大域属性 (XML)]]は、
現在の[[超大域属性]]の一種ともいえます。
* 一覧
[FIG(short list)[ [9] 主要な[[大域属性][大域属性 (XML)]]
- [CODE[xml:[VAR[*]]]]
- [CODE[xmlns:[VAR[*]]]]
- [[XLink]]
- [CODE[xsi:schemaLocation]]
- [CODE[xsi:noNamespaceSchemaLocation]]
- [CODE[xsi:type]]
- [CODE[xsi:nil]]
- [[SOAP]]/[[WS-[VAR[*]]]]
- [[XHTML m12n大域属性][HTML名前空間]]
- [[XML Events]]
- [CODE[xsl:version]]
- [CODE[xsl:exclude-result-prefixes]]
- [CODE[xsl:extension-element-prefixes]]
- [CODE[xbl:attr]]
- [[RDF/XML]]
- [CODE[svg:transform]]
- [CODE[hlink:definition]]
- [CODE[gml:id]]
- [CODE[thr:[VAR[*]]]]
- [CODE[its:[VAR[*]]]]
- [[ARIA]]
- [[OpenDocument]]
- [[OOXML]]
- [[TTML]]
]FIG]