[7] XLink では、要素型というのは、
xlink:type
属性によって識別される、
XLink としての要素の種類のことを指しています。
[32] xlink:type
属性は、
XLink の要素型を指定します。
この属性は (XLink 的に意味を持たせたい要素には)
必須です。
仕様書: <http://www.w3.org/TR/xlink/#link-types>
[33] 属性値:
arc
extended
locator
none
resource
simple
title
[34] XLink 仕様書の DTD 例では、 xlink:type (none|simple) #REQUIRED のように、列挙型で定義されています。 このような場合、 xlink:type=" simple " のように、属性値表記内の実際の値の前後に空白を挿入できます。
しかし、 DTD を読まない時のことを考えると、こんなことはしないほうがよいでしょう。
[35] XLink 1.0 では xlink:type
は必須ですが、 XLink 1.1
では省略可能で、既定値は simple
となっています。ただし実際には XLink 1.0
時代から省略して用いられることが多く、 1.1 はこれを追認するものでした。
[36] XLink 1.0 時代のものでも、 DTD や XML Schema の既定値としてのみ
xlink:type
を記述することがよくありました。その場合、 妥当性検証を行わない
XML処理器を使った場合や、 PSVI を使わない場合には、 xlink:type
が設定されないことになってしまいます。
[37] 例えば SVG 1.0 や SVG 1.1 は XLink 1.0 に基づいていましたが、 xlink:type
属性は DTD にあるのみで、実際の文書には記述しないことがよくありました。
[38] また GML の XML Schema データ型である gml:PointPropertyType
では xlink:type
属性の既定値が用いられており、それを用いたスキーマを使った、
例えば国土数値情報の XML ファイルでは xlink:href
属性だけしか使われていません。