XLink este utilizat pentru a crea hyperlink-uri în documente XML.
|
XLink Suport pentru browser
Nu există nici un suport pentru browser-ul XLink în documentele XML. Cu toate acestea, toate browserele majore suporta XLinks în SVG .
XLink Sintaxa
In HTML, The <a> elementul definește un hyperlink. Cu toate acestea, acest lucru nu este modul în care funcționează în XML. În documentele XML, puteți utiliza orice nume de elemente pe care doriți - prin urmare, este imposibil pentru browsere pentru a prezice ce elemente link-ul va fi numit în documentele XML.
Mai jos este un exemplu simplu de modul de utilizare a XLink pentru a crea link-uri într-un document XML:
<?xml version="1.0" encoding="UTF-8"?>
<homepages xmlns:xlink="http://www.w3.org/1999/xlink">
<homepage xlink:type="simple"
xlink:href="http://www.w3ii.com">Visit w3ii</homepage>
<homepage xlink:type="simple"
xlink:href="http://www.w3.org">Visit W3C</homepage>
</homepages>
Pentru a avea acces la funcțiile XLINK trebuie să declare spațiul de nume XLink. XLink spațiul de nume este: "http://www.w3.org/1999/xlink" .
Xlink: Tipul și xlink:href atribute în <homepage> elemente provin din spațiul de nume XLink.
Xlink: type = "simplu" creează un simplu "HTML-like" link - ul (înseamnă "click aici pentru a merge acolo").
xlink:href atribut specifica URL - ul pentru a lega.
XLink Exemplu
Următorul document XML conține caracteristici Xlink:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore xmlns:xlink="http://www.w3.org/1999/xlink">
<book title="Harry Potter">
<description
xlink:type="simple"
xlink:href="/images/HPotter.gif"
xlink:show="new">
As his fifth year at Hogwarts School of Witchcraft and
Wizardry approaches, 15-year-old Harry Potter is.......
</description>
</book>
<book title="XQuery Kick Start">
<description
xlink:type="simple"
xlink:href="/images/XQuery.gif"
xlink:show="new">
XQuery Kick Start delivers a concise introduction
to the XQuery standard.......
</description>
</book>
</bookstore>
Exemplu explicat:
- XLink spațiul de nume este declarat la partea de sus a documentului (xmlns:xlink="http://www.w3.org/1999/xlink")
- Xlink: type = "simplu" creează un simplu "HTML-like" link -
- xlink:href atribut specifica adresa URL a link - ul (în acest caz - o imagine)
- Xlink: Show = „nouă“ specifică faptul că link-ul ar trebui să deschidă într-o fereastră nouă
XLink - Mergeți mai departe
In exemplul de mai sus am demonstrat XLinks simple. XLink devine mai interesant atunci când accesați locații la distanță ca resurse, în loc de pagini independente.
Dacă am stabilit valoarea xlink:show atribuie "embed" , resursa legată ar trebui să fie prelucrate în linie în cadrul paginii. Atunci când consideră că acest lucru ar putea fi un alt document XML ai putea, de exemplu, să construiască o ierarhie a documentelor XML.
Puteți specifica , de asemenea , când doriți să apară resursa, cu xlink:actuate atribut.
XLink Referința atributului
Atribut | Valoare | Descriere |
---|---|---|
xlink:actuate | onLoad onRequest other none | Definește atunci când resursa legată este citit și prezentat:
|
xlink:href | URL | Specifică adresa URL a link-ul |
xlink:show | embed new replace other none | Specifică în cazul în care pentru a deschide link-ul. Implicit este "replace" |
xlink:type | simple extended locator arc resource title none | Specifică tipul de link- |
XPointer
|
XPointer Suport pentru browser
Nu există nici un suport pentru browser-ul XPointer. Dar XPointer este folosit în alte limbi XML.
XPointer Exemplu
În acest exemplu, vom folosi XPointer în colaborare cu XLink pentru a indica o anumită parte dintr-un alt document.
Vom începe prin a uita la documentul XML țintă (documentul suntem conectarea la):
<?xml version="1.0" encoding="UTF-8"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
<picture url="http://dog.com/rottweiler.gif" />
<history>The Rottweiler's ancestors were probably Roman
drover dogs.....</history>
<temperament>Confident, bold, alert and imposing, the Rottweiler
is a popular choice for its ability to protect....</temperament>
</dog>
<dog breed="FCRetriever" id="FCRetriever">
<picture url="http://dog.com/fcretriever.gif" />
<history>One of the earliest uses of retrieving dogs was to
help fishermen retrieve fish from the water....</history>
<temperament>The flat-coated retriever is a sweet, exuberant,
lively dog that loves to play and retrieve....</temperament>
</dog>
</dogbreeds>
Rețineți că documentul XML folosește mai sus atribute id pe fiecare element!
Deci, în loc de a lega la întregul document (as with XLink) și (as with XLink) , XPointer vă permite să conectați la anumite părți ale documentului. Pentru a lega la o anumită parte a unei pagini, adăugați un semn de număr (#) și o expresie XPointer după URL - ul din xlink:href atribut, ca aceasta: xlink: href = "http://dog.com/dogbreeds.xml # xpointer(id('Rottweiler') )“. Expresia se referă la elementul din documentul țintă, cu valoarea id a "Rottweiler" .
XPointer permite, de asemenea, o metodă de prescurtare pentru conectarea la un element cu un id. Puteți utiliza valoarea id-ul direct, ca aceasta: xlink: href = „http://dog.com/dogbreeds.xml#Rottweiler“.
Următorul document XML conține link-uri către mai multe informații din rasa de câine pentru fiecare dintre câinii mei:
<?xml version="1.0" encoding="UTF-8"?>
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
<mydog>
<description>
Anton is my favorite dog. He has won a lot of.....
</description>
<fact xlink:type="simple" xlink:href="http://dog.com/dogbreeds.xml#Rottweiler">
Fact about Rottweiler
</fact>
</mydog>
<mydog>
<description>
Pluto is the sweetest dog on earth......
</description>
<fact xlink:type="simple" xlink:href="http://dog.com/dogbreeds.xml#FCRetriever">
Fact about flat-coated Retriever
</fact>
</mydog>
</mydogs>