XLink ist eine attributbasierteSyntax zur Definition vonLinks inXML-Dokumenten. Ein XLink kann eine Verbindung von einem Punkt A zu einem Punkt B sein (ähnlich dem ausHTML bekannten Hyperlink-Element<a>). Sie können jedoch auch Dokumente in zwei Richtungen verbinden (das heißt von A nach B und ebenso zurück). Des Weiteren können XLink auch Verbindungen repräsentieren, die multidirektional sind (unterschiedliche Wege zwischen beliebig vielen XML-Dokumenten). Die Dokumente, auf welche ein XLink zeigt, müssen keine XML-Dokumente sein.
XLink ist eine Empfehlung desWorld Wide Web Consortiums. Trotz zögerlicher Implementierung betrachtet das W3C XLink weiterhin als denzukünftigen Standard für Hyperlinks im WWW und gibt ihm ausdrücklich den Vorzug gegenüber anderen Verfahren wie insbesondereHLink.
XLinks werden in XML-Elemente mit beliebigen Elementnamen eingebaut, indem den Elementen bestimmte XML-Attribute des XML-Namensraumshttp://www.w3.org/1999/xlink hinzugefügt werden (für gewöhnlich an das Präfixxlink gebunden).
Einfache XLinks können in einem beliebigen Element stehen und werden durch folgende Attribute beschrieben:
xlink:type="simple" erklärt.xlink:href="Verweis", wobeiVerweis durch einenUniform Resource Identifier zu ersetzen ist, der definitionsgemäß auch einenXPointer-Ausdruck für dokumentinterne Verweise enthalten darf.Optional sind die Attribute:
xlink:title, das einen benutzerfreundlichen Titel des Verweises enthält. Alle Typen von XLink-attributierten Elementen dürfen einxlink:title-Attribut tragen, auch die unten genannten erweiterten Typen.xlink:show, das festlegt, wie der Verweis angezeigt werden soll, und das die Wertenew, replace, embed, other, none annehmen kann.xlink:actuate, das festlegt, wann der Verweis verfolgt werden soll, und das die WerteonLoad, onRequest, other, none annehmen kann.xlink:role, das die Bedeutung der Links zueinander beschreibt. Es enthält einen URI, das die entfernte Ressource kommentiert oder erklärt.xlink:arcrole, ist von der Semantik identisch mitxlink:role, beschreibt jedoch Bogenelemente, die keinxlink:role-Attribut aufnehmen können. Es enthält einen absoluten URI, der auf eine Beschreibung der Ressource verweist. Diese Ressource kennzeichnet die Beziehung, die der Bogen beschreibt.Erweiterte XLinks bieten Möglichkeiten für bi- und multidirektionale Verweise sowie Verweise auf Verweise. Anders als bei den einfachen XLinks sind hierfür mehrere Elemente nötig:
xlink:type="extended" bildet quasi den Rahmen des erweiterten XLinks. Es darf außer einemxlink:title das o. g. Attributxlink:role tragen.Die Funktionalität des so deklarierten komplexen XLinks wird in Unterelementen festgelegt, die wieder beliebig benannt werden können und die mit folgenden Attributen zu XLink-Bestandteilen werden:
xlink:type="locator" attribuierte Elemente müssen als weiteres Attributxlink:href="URI" enthalten, wobeiURI durch einenUniform Resource Identifier zu ersetzen ist. Sinnvollerweise gibt man auch ein Attributxlink:label an und damit einen Namen der den erklärten URI repräsentiert.xlink:type="resource" fügt Ressourcen ein, die innerhalb des Dokumentes referenziert werden können. Damit diese Ressourcen überhaupt von anderen Links angesprochen werden können, ist die Angabe einesxlink:label-Attributes nötig.Man hat bis hierhin noch keine eigentlichen Verweise, sondern dokumentinterne und -externe URIs, die jeweils durch ein Label repräsentiert werden. Diese setzt man nun mit (einem) weiteren Unterelement(en) des Elements mitxlink:type="extended" zueinander in Beziehung:
xlink:type="arc" attribuiertes Element enthält sinnvollerweise folgende Attribute:xlink:from="..." undxlink:to="...", wobei die zuvor definierten Label verwendet werden. Optional sind die bereits erläuterten Attributexlink:title, xlink:show, xlink:actuate, xlink:arcrole<element1xmlns:xlink="http://www.w3.org/1999/xlink"xlink:type="simple"xlink:href="http://www.w3.org/">W3C</element1>
<element2xmlns:xlink="http://www.w3.org/1999/xlink"xlink:href="user.xml"xlink:type="simple"xlink:role="http://www.example.com/list/userlist.xml"xlink:title="User List">CurrentListofUsers</element2>
<mehrfachlinkxmlns:xlink="http://www.w3.org/1999/xlink"xlink:type="extended"><startxlink:type="resource"xlink:label="start"xlink:title="Hier klicken"/><zielxlink:type="locator"xlink:href="http://en.wikipedia.org"xlink:label="wikipedia"/><zielxlink:type="locator"xlink:href="http://de.wikipedia.org"xlink:label="wikipedia"/><pfadxlink:type="arc"xlink:from="start"xlink:to="wikipedia"/></mehrfachlink>
Es folgt eine Übersicht der Unterstützung für die W3C XLink-Empfehlung durch verschiedene Anwendungen.
Mozilla Firefox hat begrenzte Unterstützung für simple XLinks. (Stand 20. September 2009)[1]
xlink:show="embed" Attribut funktionieren nicht.Weitere Browser wieInternet Explorer,Opera undGoogle Chrome werden derzeit noch nicht unterstützt. (Stand 20. September 2009)[1]