XML Linking Language, or XLink, is an
XML
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
markup language
A markup language is a Encoding, text-encoding system which specifies the structure and formatting of a document and potentially the relationships among its parts. Markup can control the display of a document or enrich its content to facilitate au ...
and
W3C
The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working together in ...
specification that provides methods for creating internal and external links within XML documents, and associating metadata with those links.
The XLink specification
XLink 1.1 is a W3C recommendation
and the successor of XLink 1.0, which was also a W3C recommendation.
Linking with XLink
XLink defines a set of
attributes that may be added to elements of other
XML namespaces
XML namespaces are used for providing uniquely named elements and attributes in an XML document. They are defined in a W3C recommendation. An XML instance may contain element or attribute names from more than one XML vocabulary. If each vocabulary ...
. XLink provides two kinds of hyperlinking for use in XML documents. Simple links connect only two resources, similar to
HTML
Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets ( ...
links. Extended links can link an arbitrary number of resources.
Simple links
A simple link creates a unidirectional
hyperlink
In computing, a hyperlink, or simply a link, is a digital reference providing direct access to Data (computing), data by a user (computing), user's point and click, clicking or touchscreen, tapping. A hyperlink points to a whole document or to ...
from one element to another via a
URI. Example:
Some Document
Here is a link to the header.
It is an anchor that points to the element with the id "someHeading" on the current page.
Extended links
Extended links allow multiple resources, either remote or local, to be connected by multiple arcs. An arc is information about the origin, destination and behavior of a link between two resources. The origin and destination resources are defined by labels. By using one or more arcs, an extended link can achieve specific sets of connections between multiple resources.
For example, if all resources in an extended link were given the label
A, then an arc within that link declaring
from="A", to="A"
would form connections between all resources.
Extended links do not need to be contained in the same document as the elements they link to. This makes it possible to associate metadata or other supplementary information with resources without editing those resources.
XLink also supports richer information about link types and the roles of each resource in an arc.
Support for XLink
Within other specifications
SVG
Hypertext links in
Scalable Vector Graphics
Scalable Vector Graphics (SVG) is an XML-based vector graphics format for defining two-dimensional graphics, having support for interactivity and animation. The SVG specification is an open standard developed by the World Wide Web Consortium sin ...
can currently be defined as simple XLinks. The
working draft of SVG 1.2 proposes using extended XLinks as well. In the SVG 2 specification, XLink was deprecated in favor of non-namespaced equivalent attributes.
RDDL
The
Resource Directory Description Language, an extension to
XHTML Basic that is used to describe
XML Namespaces
XML namespaces are used for providing uniquely named elements and attributes in an XML document. They are defined in a W3C recommendation. An XML instance may contain element or attribute names from more than one XML vocabulary. If each vocabulary ...
, uses simple XLinks.
XBRL
The
eXtensible Business Reporting Language has used simple and extended XLinks since the XBRL 2.0 specification was published in 2001. 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
The Metadata Encoding and Transmission Standard (METS) is a metadata standards, metadata standard for encoding descriptive, administrative, and structural metadata regarding objects within a digital library, expressed using the XML schema langu ...
, supported and maintained by the
Library of Congress
The Library of Congress (LOC) is a research library in Washington, D.C., serving as the library and research service for the United States Congress and the ''de facto'' national library of the United States. It also administers Copyright law o ...
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).
GML
Geography Markup Language
The Geography Markup Language (GML) is the XML grammar defined by the Open Geospatial Consortium (OGC) to express geographical features. GML serves as a modeling language for geographic systems as well as an open interchange format for geographic ...
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
Mozilla Firefox, or simply Firefox, is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary, the Mozilla Corporation. It uses the Gecko rendering engine to display web pages, which implements curren ...
has supported simple XLinks since version 1.5, but only for
SVG and
MathML
Mathematical Markup Language (MathML) is a pair of mathematical markup languages, an application of XML for describing mathematical notations and capturing both its structure and content. Its aim is to natively integrate mathematical formulae ...
documents. It is unsupported in other XML documents. Only the
xlink:href
,
xlink:show
,
xlink:target
and
xlink:title
attributes are supported.
Prince
Prince
A prince is a male ruler (ranked below a king, grand prince, and grand duke) or a male member of a monarch's or former monarch's family. ''Prince'' is also a title of nobility (often highest), often hereditary, in some European states. The ...
supports simple XLinks.
References
External links
W3C RecommendationW3C Recommendation (version 1.0)Demo of XLinksfor
Mozilla
Mozilla is a free software community founded in 1998 by members of Netscape. The Mozilla community uses, develops, publishes and supports Mozilla products, thereby promoting free software and open standards. The community is supported institution ...
browsers
{{DEFAULTSORT:Xlink
Markup languages
XML-based standards
World Wide Web Consortium standards
Hypertext