最新のWeb開発のチュートリアル
 

XML XLinkおよびXPointerの


XLinkのは、XML文書内のハイパーリンクを作成するために使用されます。


XPathの
  • XLinkのは、XML文書内のハイパーリンクを作成するために使用され
  • XML文書内の任意の要素はリンクとして振る舞うことができます
  • XLinkのでは、リンクがリンクされたファイル外で定義することができます
  • XLinkのはW3C勧告であります

XLinkのブラウザのサポート

XML文書内のXLinkには、ブラウザのサポートはありません。 しかし、すべての主要なブラウザはサポートしてSVGになXLinkを


XLinkの構文

HTMLでは、 <a>要素は、ハイパーリンクを定義します。 しかし、これはXMLでどのように動作するかはありません。 ブラウザがXML文書に呼び出されるものをリンク要素を予測するために、したがって、それは不可能です - XMLドキュメントでは、あなたが好きな要素名を使用することができます。

以下は、XML文書内のリンクを作成するためのXLinkを使用する方法の簡単な例を示します。

<?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の - さらに行きます

例では、単純なXLinkを実証している上に。 資源として遠隔地へのアクセス時にXLinkのではなく、スタンドアロンのページで、より多くの興味深いなっています。

我々はの値に設定した場合xlink:showに属性を"embed" 、リンクされたリソースは、ページ内にインラインで処理されるべきです。 あなたは、これは別のXML文書であり得ることを考慮するときには、例えば、XML文書の階層構造を構築することができます。

リソースが表示されるときにもして、指定することができますxlink:actuate属性を。


XLinkの属性参照

属性 説明
xlink:actuateonLoad
onRequest
other
none
リンクされたリソースが読み込まれ、表示されたときに定義します。
  • onLoad - リソースがロードされたときにドキュメントをロード示されるべきです
  • onRequestメソッド - リンクをクリックする前に、リソースの読み取りまたは表示されません
xlink:href URL リンク先のURLを指定します。
xlink:showembed
new
replace
other
none
ここでリンクを開く方法を指定します。 デフォルトは"replace"
xlink:typesimple
extended
locator
arc
resource
title
none
リンクのタイプを指定します。

XPointerの

XPathの
  • XPointerのリンクは、XML文書の特定の部分を指すことができます
  • XPointerのは、XML文書内を移動するためにXPath式を使用しています
  • XPointerがW3C勧告です

XPointerのブラウザのサポート

XPointerのためのブラウザのサポートはありません。 しかしのXPointerは、他のXML言語で使用されています。


XPointerの例

この例では、別の文書の特定の部分を指すためのXLinkと組み合わせてのXPointerを使用します。

我々は、ターゲット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ドキュメントは、上記の各要素にid属性を使用することに注意してください!

だから、代わりにドキュメント全体にリンクする(as with XLink) 、XPointerのは、ドキュメントの特定の部分にリンクすることができます。 ページの特定の部分にリンクするには、番号記号を追加(#)と内のURLの後のXPointer式xlink:href属性、このような:のxlink:hrefの= "http://dog.com/dogbreeds.xml #xpointer(ID( 'ロットワイラー')) "。 式はのid値で、ターゲット文書内の要素を指し、 "Rottweiler"

XPointerがまたidを持つ要素にリンクするための簡単な方法を可能にします。 xlink:hrefの= "http://dog.com/dogbreeds.xml#Rottweiler"あなたはこのように、直接IDの値を使用することができます。

次の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>