Примеры XPointer

Давайте изучим основы синтаксиса XPointer на примере.

Примеры XPointer

В этом примере мы покажем, как использовать XPointer и XLink для указания на конкретную часть другого документа.

Мы начнем с изучения целевого XML-документа (то есть того документа, к которому мы будем обращаться).

Цель XML-документ

Цель XML-документа名为 "dogbreeds.xml", он перечисляет несколько различных пород собак:

<?xml version="1.0" encoding="ISO-8859-1"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
  <picture url="http://dog.com/rottweiler.gif" />
  <history>
  Предки Rottweiler, возможно, были римскими...
  вожатые собаки.....
  </history>
  <temperament>
  Конфиденциальный, смелый, бдительный и внушительный, Rottweiler...
  является популярным выбором благодаря своей способности защищать...
  </temperament>
</dog>
<dog breed="FCRetriever" id="FCRetriever">
  <picture url="http://dog.com/fcretriever.gif" />
  <history>
  Одним из первых применений собачьих retriever было...
  помогать рыбакам вылавливать рыбу из воды...
  </history>
  <temperament>
  Platcoated retriever - сладкий, жизнерадостный...
  бодрый пес, который любит играть и приносить...
  </temperament>
</dog>
</dogbreeds>

В вашем браузере откройте файл "dogbreeds.xml"

Примечание:В приведенном выше XML документе для каждого элемента, к которому нужно установить ссылку, используется атрибут id!

Документ с гиперссылками XML

XPointer позволяет не только связывать к целому документу (при использовании XLink), но и к определенной части документа. Если нужно связать к определенной части страницы, добавьте символ "#" и выражение XPointer в конце URL в атрибуте xlink:href.

Экспрессия:#xpointer(id("Rottweiler")) можно ссылаться на элемент с идентификатором "Rottweiler" в целевом документе.

Таким образом, атрибут xlink:href будет выглядеть так:xlink:href="http://dog.com/dogbreeds.xml#xpointer(id('Rottweiler'))"

Однако, когда используется ссылка с помощью id на某个 элемент, XPointer позволяет использовать краткую форму. Вы можете напрямую использовать значение id, как это:xlink:href="http://dog.com/dogbreeds.xml#Rottweiler"

Ниже приведен XML-документ, который можно использовать для ссылки на информацию о породе каждого собаки, которая ссылается на XLink и XPointer:

<?xml version="1.0" encoding="ISO-8859-1"?>
<mydogs xmlns:xlink="http://www.w3.org/1999/xlink">
<mydog xlink:type="simple"
  xlink:href="http://dog.com/dogbreeds.xml#Rottweiler">
  <description xlink:type="simple"
  xlink:href="http://myweb.com/mydogs/anton.gif">
  Anton - моя любимая собака. Он выиграл много.....
  </description>
</mydog>
<mydog xlink:type="simple"
  xlink:href="http://dog.com/dogbreeds.xml#FCRetriever">
  <description xlink:type="simple"
  xlink:href="http://myweb.com/mydogs/pluto.gif">
  Pluto - сладчайшая собака на земле......
  </description>
</mydog>
</mydogs>