XLink

{{short description|Method for linking XML documents together}}

{{Redirect|XLL}}

{{Other uses|Xlink (disambiguation)}}

XML Linking Language, or XLink, is an XML markup language and W3C specification that provides methods for creating internal and external links within XML documents, and associating metadata with those links.{{citation |url=http://www.w3.org/TR/NOTE-xlink-req/ |title=XML XLink Requirements |publisher=W3C |date=1999-02-24 |last=DeRose |first=Steven J.}}

The XLink specification

XLink 1.1 is a W3C recommendation{{citation |url=http://www.w3.org/TR/xlink11/ |publisher=W3C |title=XML Linking Language (XLink) Version 1.1 |date=May 6, 2010}} and the successor of XLink 1.0, which was also a W3C recommendation.{{citation |url=http://www.w3.org/TR/xlink/ |publisher=W3C |title=XML Linking Language (XLink) Version 1.0 |date=June 8, 2006}}{{cite web|url=http://www.dblab.ntua.gr/~bikakis/XML%20and%20Semantic%20Web%20W3C%20Standards%20Timeline-History.pdf |title=XML and Semantic Web W3C Standards Timeline

}}

Linking with XLink

XLink defines a set of attributes that may be added to elements of other XML namespaces. XLink provides two kinds of hyperlinking for use in XML documents. Simple links connect only two resources, similar to HTML links. Extended links can link an arbitrary number of resources.

Support for XLink

=Within other specifications=

==SVG==

Hypertext links in Scalable Vector Graphics can currently be defined as simple XLinks.{{citation |url=http://www.w3.org/TR/SVG11/linking.html#hyperlinking-mod |publisher=W3C |title=Scalable Vector Graphics (SVG) 1.1 Specification: Linking |date=June 8, 2006}} The working draft of SVG 1.2 proposes using extended XLinks as well.{{citation |url=http://www.w3.org/TR/2004/WD-SVG12-20041027/extendedlinks.html |publisher=W3C |title=Extended Links (SVG 1.2) |date=June 8, 2006}} In the SVG 2 specification, XLink was deprecated in favor of non-namespaced equivalent attributes.{{Cite web|url=https://www.w3.org/TR/SVG2/linking.html#XLinkRefAttrs|title=Linking — SVG 2|website=www.w3.org|access-date=2016-09-18}}

==RDDL==

The Resource Directory Description Language, an extension to XHTML Basic that is used to describe XML Namespaces, uses simple XLinks.{{citation |url=http://www.rddl.org/#attributes |title=Resource Directory Description Language (RDDL) |first1=Jonathan |last1=Borden |first2=Tim |last2=Bray |date=2002-02-18 |publisher=The Open Healthcare Group, Antarcti.ca Systems}}

==XBRL==

The eXtensible Business Reporting Language has used simple and extended XLinks since the XBRL 2.0 specification was published in 2001.{{citation |url=http://www.xbrl.org/Specification/XBRL-2.1/REC-2003-12-31/XBRL-2.1-REC-2003-12-31+corrected-errata-2013-02-20.html#_3.5 |title=Extensible Business Reporting Language (XBRL) 2.1 - XLink in XBRL |publisher=XBRL International Inc.}} Most large XBRL taxonomies contain extensive linkbases. As of 2009, XBRL is probably the most extensive use of XLink in production systems.

==METS==

The Metadata Encoding and Transmission Standard, supported and maintained by the Library of Congress for describing file aggregations, uses simple XLinks in pointing to file locations as well as linkbases which describe relationships among external files (though these restrict to and from attributes to type IDREF instead of NMTOKEN).{{citation |url=https://www.loc.gov/standards/mets/METSOverview.v2.html |title=METS: An Overview & Tutorial |publisher=Library of Congress}}{{citation |url=https://www.loc.gov/standards/mets/METS%20Documentation%20final%20070930%20msw.pdf |title=Metadata Encoding and Transmission Standard: Primer and Reference Manual |publisher=Library of Congress |date=September 2007 |pages=133}}

==GML==

Geography Markup Language uses simple XLinks to implement referencing. In particular, GML uses xlink:href to support a graph model for geospatial information. GML's graph model is essentially the same as RDF, on which early versions of GML were based. The GML specification constrains the semantics of XLinks to be essentially the same as rdf:resource (from the RDF/XML syntax) i.e. the referent can logically be placed in-line and the data is still valid.

=Implementations=

==Mozilla Firefox==

Mozilla Firefox has supported simple XLinks since version 1.5, but only for SVG and MathML documents. It is unsupported in other XML documents.{{citation |url=https://developer.mozilla.org/en/XLink |title=XLink - MDC |publisher=Mozilla |access-date=2010-02-19 |archive-date=2012-04-06 |archive-url=https://web.archive.org/web/20120406120631/https://developer.mozilla.org/en/XLink |url-status=dead }} Only the xlink:href, xlink:show, xlink:target and xlink:title attributes are supported.{{citation |url=https://developer.mozilla.org/en/SVG_in_Firefox |title=SVG in Firefox |publisher=Mozilla |access-date=2010-02-19 |archive-date=2008-08-29 |archive-url=https://web.archive.org/web/20080829121506/http://developer.mozilla.org/en/SVG_in_Firefox |url-status=dead }}

==Prince==

Prince supports simple XLinks.{{citation |url=http://www.princexml.com/doc/7.0/xml-input/ |title=Prince: XML Input |publisher=YesLogic}}

References

{{Reflist|30em}}