XML Linking Language , o XLink , es un lenguaje de marcado XML y una especificación W3C que proporciona métodos para crear enlaces internos y externos dentro de documentos XML y asociar metadatos con esos enlaces. [1]
XLink 1.1 es una recomendación del W3C [2] y el sucesor de XLink 1.0, que también fue una recomendación del W3C. [3] [4]
XLink define un conjunto de atributos que pueden agregarse a elementos de otros espacios de nombres XML . XLink proporciona dos tipos de hipervínculos para usar en documentos XML. Los enlaces simples conectan sólo dos recursos, similares a los enlaces HTML . Los enlaces extendidos pueden vincular una cantidad arbitraria de recursos.
Un enlace simple crea un hipervínculo unidireccional de un elemento a otro a través de un URI . Ejemplo:
<?xml versión="1.0"?> <documento xmlns= "http://example.org/xmlns/2002/document" xmlns:xlink= "http://www.w3.org/1999/xlink" > < header id= "someHeading" > Algún documento </heading> <para> Aquí está <anchor xlink:type= "simple" xlink:href= "#someHeading" > un enlace </anchor> al encabezado . </para> <para> Es un ancla que apunta al elemento con el id " someHeading" en la página actual . </para> </document>
Los enlaces extendidos permiten que múltiples recursos, ya sean remotos o locales, estén conectados mediante múltiples arcos. Un arco es información sobre el origen, destino y comportamiento de un vínculo entre dos recursos. Los recursos de origen y destino están definidos por etiquetas. Al utilizar uno o más arcos, un enlace extendido puede lograr conjuntos específicos de conexiones entre múltiples recursos.
Por ejemplo, si todos los recursos en un enlace extendido recibieran la etiqueta A , entonces un arco dentro de esa declaración de enlace formaría conexiones entre todos los recursos.from="A", to="A"
No es necesario que los enlaces extendidos estén contenidos en el mismo documento que los elementos a los que enlazan. Esto hace posible asociar metadatos u otra información complementaria con recursos sin editar esos recursos.
XLink también admite información más completa sobre los tipos de enlaces y las funciones de cada recurso en un arco.
Los enlaces de hipertexto en gráficos vectoriales escalables actualmente se pueden definir como XLinks simples. [5] El borrador de trabajo de SVG 1.2 propone utilizar también XLinks extendidos. [6] En la especificación SVG 2, XLink quedó obsoleto en favor de atributos equivalentes sin espacios de nombres. [7]
El lenguaje de descripción de directorios de recursos , una extensión de XHTML básico que se utiliza para describir espacios de nombres XML , utiliza enlaces X simples. [8]
El eXtensible Business Reporting Language ha utilizado XLinks simples y extendidos desde que se publicó la especificación XBRL 2.0 en 2001. [9] La mayoría de las taxonomías XBRL grandes contienen extensas bases de enlaces. A partir de 2009, XBRL es probablemente el uso más extendido de XLink en sistemas de producción.
El Estándar de transmisión y codificación de metadatos , respaldado y mantenido por la Biblioteca del Congreso para describir agregaciones de archivos, utiliza XLinks simples para señalar ubicaciones de archivos, así como bases de enlaces que describen relaciones entre archivos externos (aunque estos restringen to
y from
atribuyen el tipo IDREF en lugar de NMTOKEN). ). [10] [11]
Geography Markup Language utiliza XLinks simples para implementar referencias. En particular, GML utiliza xlink:href para soportar un modelo gráfico para información geoespacial. El modelo gráfico de GML es esencialmente el mismo que el de RDF , en el que se basaron las primeras versiones de GML. La especificación GML restringe la semántica de XLinks para que sea esencialmente la misma que rdf:resource (de la sintaxis RDF/XML), es decir, el referente se puede colocar lógicamente en línea y los datos siguen siendo válidos.
Mozilla Firefox ha soportado XLinks simples desde la versión 1.5, pero sólo para documentos SVG y MathML . No es compatible con otros documentos XML. [12] Solo se admiten los atributos , xlink:href
y xlink:show
. [13]xlink:target
xlink:title
Prince admite XLinks simples. [14]