XLink используется для создания гиперссылок в XML-документах.
|
Поддержка браузеров XLink
Там нет поддержки браузера для XLink в XML-документах. Тем не менее, все основные браузеры поддерживают XLinks в SVG .
XLink Синтаксис
В HTML, то <a> элемент определяет гиперссылку. Тем не менее, это не то, как это работает в XML. В XML-документах, вы можете использовать любые имена элемент, который вы хотите, - поэтому невозможно для браузеров, чтобы предсказать, что ссылка элементы будут вызываться в XML-документах.
Ниже приведен простой пример того, как использовать XLink для создания ссылок в документе 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>
Чтобы получить доступ к XLink функций, которые мы должны объявить пространство имен XLink. Пространство имен XLink является: "http://www.w3.org/1999/xlink" .
XLink: тип и xlink:href атрибуты в <homepage> элементы приходят из пространства имен XLink.
XLink: тип = "простой" создает простой "HTML-like" ссылку (означает "нажмите здесь , чтобы пойти туда").
xlink:href атрибут указывает URL для установления связи.
XLink Пример
Следующий документ XML содержит 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>
Объяснение примера:
- Пространство имен XLink объявляется в верхней части документа (xmlns:xlink="http://www.w3.org/1999/xlink")
- XLink: тип = "простой" создает простой "HTML-like" ссылка
- xlink:href атрибут указывает URL , чтобы связать (в данном случае - изображение)
- XLink: показать = "новый" указывает, что ссылка должна открываться в новом окне
XLink - Идем дальше
В приведенном выше примере мы продемонстрировали простые XLinks. XLink становится более интересным, когда доступ к удаленным местоположения в качестве ресурсов, а не отдельных страниц.
Если мы устанавливаем значение xlink:show атрибут к "embed" , связанный ресурс должен быть обработан инлайн в пределах страницы. Если вы считаете, что это может быть другой XML-документ, который вы могли бы, например, построить иерархию XML-документов.
Кроме того, можно указать , когда должен появиться ресурс, с xlink:actuate в xlink:actuate атрибута.
XLink Атрибут Reference
Атрибут | Стоимость | Описание |
---|---|---|
xlink:actuate | onLoad onRequest other none | Определяет, когда связанный ресурс для чтения и показано:
|
xlink:href | URL | Задает URL-адрес для ссылки на |
xlink:show | embed new replace other none | Определяет, где открыть ссылку. По умолчанию это "replace" |
xlink:type | simple extended locator arc resource title none | Указывает тип ссылки |
XPointer
|
Поддержка браузеров XPointer
Там нет поддержки браузера для XPointer. Но XPointer используется в других языках XML.
XPointer Пример
В этом примере мы будем использовать XPointer в сочетании с XLink, чтобы указать на определенную часть другого документа.
Мы начнем с рассмотрения документа целевой XML (документ, который мы ссылаетесь):
<?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>
Обратите внимание, что документ XML выше использует атрибуты ИД каждого элемента!
Таким образом, вместо ссылки на весь документ (as with XLink) , XPointer позволяет связать с конкретными частями документа. Для того, чтобы поставить ссылку на определенную часть страницы, добавьте знак номера (#) и выражение XPointer после URL в xlink:href атрибута, как это: XLink: HREF = "http://dog.com/dogbreeds.xml #xpointer (ID ( 'Ротвейлер')) ". Выражение относится к элементу в целевом документе, со значением идентификатора "Rottweiler" .
XPointer также позволяет сокращенную способ ссылки на элемент с идентификатором. Вы можете использовать значение идентификатора непосредственно, как это: XLink: HREF = "http://dog.com/dogbreeds.xml#Rottweiler".
Следующий документ XML содержит ссылки на дополнительную информацию о породе собак для каждого из моих собак:
<?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>