XPointer Örneği

Bir örnek üzerinden temel XPointer gramerlerini öğrenelim.

XPointer Örneği

Bu örnekte, XPointer'ı kullanarak ve XLink ile bir başka belgenin belirli bir bölümüne işaret etmeyi nasıl yapacağınızı göstereceğiz.

Hedef XML belgesini inceleyerek başlayacağız (yani bağlanacağımız belge).

Hedef XML belgesi

Hedef XML belgesi "dogbreeds.xml" olarak adlandırılır ve bazı farklı köpek türlerini içerir:

<?xml version="1.0" encoding="ISO-8859-1"?>
<dogbreeds>
<dog breed="Rottweiler" id="Rottweiler">
  <picture url="http://dog.com/rottweiler.gif" />
  <history>
  Rottweiler'ın ataları muhtemelen Roma...
  itler...
  </history>
  <temperament>
  Güvenli, cesur, uyanık ve etkileyici, Rottweiler
  koruma yeteneği ile popüler bir seçimdir...
  </temperament>
</dog>
<dog breed="FCRetriever" id="FCRetriever">
  <picture url="http://dog.com/fcretriever.gif" />
  <history>
  Avcılık köpeklerinin en erken kullanımlarından biri,
  balıkçıların suyun içindeki balıkları geri getirmelerine yardımcı olan...
  </history>
  <temperament>
  Düz kepenkli av köpeği tatlı, neşeli bir köpektir,
  oynamayı ve aramayı seven canlı bir köpek...
  </temperament>
</dog>
</dogbreeds>

Tarayıcınızda "dogbreeds.xml" dosyasını açın

Not:Yukarıdaki XML belgesi, bağlantı kurmamız gereken her elementte id özelliği kullanmıştır!

XML Bağlantılı Belge

Sadece tüm belgeye bağlantı kurabilme yeteneğine sahip değil (XLink kullanıldığında), XPointer, belgenin belirli bir bölüme bağlantı kurmanıza da izin verir. Belgenin belirli bir bölümüne bağlantı kurmak istiyorsanız, xlink:href özelliğindeki URL'nin ardından bir tire (#) ve bir XPointer ifadesi ekleyin.

İfade:#xpointer(id("Rottweiler")) Hedef belgedeki "Rottweiler" id değeri olan öğeye atıfta bulunabilir.

Bu şekilde, xlink:href özelliği şu şekilde olacaktır:xlink:href="http://dog.com/dogbreeds.xml#xpointer(id('Rottweiler'))"

Ancak, bir öğeye id ile bağlantı kurarken, XPointer, kısaltılmış formu kullanmayı mümkün kılar. Doğrudan id'nin değerini kullanabilirsiniz, örneğin:xlink:href="http://dog.com/dogbreeds.xml#Rottweiler"

Aşağıdaki XML belgesi, her köpeğin tür bilgilerini XLink ve XPointer ile atıfta bulunarak referans edebilir:

<?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 benim en sevdiğim köpektir. Bir çok..... kazandı...
  </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, dünyanın en tatlı köpeğidir......
  </description>
</mydog>
</mydogs>