XML Linking Language、またはXLinkは、 XMLマークアップ言語であり、XMLドキュメント内の内部リンクと外部リンクを作成し、それらのリンクにメタデータを関連付ける方法を提供するW3C仕様です。 [ 1 ]
XLink 1.1 は W3C 勧告[ 2 ]であり、同じく W3C 勧告であった XLink 1.0 の後継バージョンです。[ 3 ] [ 4 ]
XLinkは、他のXML名前空間の要素に追加できる属性セットを定義します。XLinkは、XML文書で使用するための2種類のハイパーリンクを提供します。単純リンクは、 HTMLリンクと同様に、2つのリソースのみを接続します。拡張リンクは、任意の数のリソースをリンクできます。
シンプルなリンクは、URIを介してある要素から別の要素への一方向のハイパーリンクを作成します。例:
<?xml version="1.0"?> <document xmlns= "http://example.org/xmlns/2002/document" xmlns:xlink= "http://www.w3.org/1999/xlink" > <heading id= "someHeading" > Some Document </heading> <para>ヘッダーへのリンクは<anchor xlink:type= "simple" xlink :href= "#someHeading" > </anchor>です。</para> <para>これは、現在のページの idが" someHeading "の要素を指すアンカーです。</para> </document>拡張リンクを使用すると、リモートまたはローカルの複数のリソースを複数のアークで接続できます。アークとは、2つのリソース間のリンクの起点、終点、および動作に関する情報です。起点と終点のリソースはラベルによって定義されます。1つ以上のアークを使用することで、拡張リンクは複数のリソース間で特定の接続セットを実現できます。
例えば、拡張リンク内のすべてのリソースにラベルAが付けられている場合、そのリンク内のアークは、すべてのリソース間の接続を形成します。from="A", to="A"
拡張リンクは、リンク先の要素と同じ文書内に含まれている必要はありません。これにより、リソースを編集することなく、メタデータやその他の補足情報をリソースに関連付けることが可能になります。
XLinkは、リンクの種類やアーク内の各リソースの役割に関するより詳細な情報もサポートしています。
Scalable Vector Graphicsのハイパーテキスト リンクは、現在では単純な XLink として定義できます。[ 5 ] SVG 1.2 の作業草案では、拡張 XLink の使用も提案されています。[ 6 ] SVG 2仕様では、XLink は非推奨となり、名前空間のない同等の属性が推奨されています。[ 7 ]
XML名前空間を記述するために使用されるXHTML Basicの拡張機能であるリソースディレクトリ記述言語は、シンプルなXLinkを使用します。[ 8 ]
拡張可能なビジネス報告言語(XBRL)は、 2001年にXBRL 2.0仕様が公開されて以来、単純なXLinkと拡張されたXLinkを使用しています。 [ 9 ]大規模なXBRLタクソノミーのほとんどは、広範なリンクベースを含んでいます。2009年現在、XBRLはおそらく本番システムにおけるXLinkの最も広範な使用例です。
ファイル集約を記述するために米国議会図書館がサポートおよび維持しているメタデータ符号化および伝送標準は、ファイルの場所を指すために単純な XLink を使用し、外部ファイル間の関係を記述するリンクベースも使用します (ただし、これらは属性を NMTOKEN ではなく IDREF 型に制限します) 。[ 10 ] [ 11 ]tofrom
地理マークアップ言語( GML)は、参照を実装するためにシンプルなXLinkを使用します。特に、GMLはxlink:hrefを使用して地理空間情報のグラフモデルをサポートします。GMLのグラフモデルは、GMLの初期バージョンが基づいていたRDFと基本的に同じです。GML仕様では、XLinkのセマンティクスがrdf:resource(RDF/XML構文)と基本的に同じになるように制約されています。つまり、参照先を論理的にインラインで配置しても、データは有効です。
Mozilla Firefox はバージョン 1.5 以降、シンプルな XLink をサポートしていますが、 SVGおよびMathMLドキュメントのみです。他の XML ドキュメントではサポートされていません。[ 12 ]xlink:href、、xlink:showおよび属性のみxlink:targetがxlink:titleサポートされています。[ 13 ]