Latest web development tutorials

XLink 和XPointer 語法

XLink 語法

在HTML 中,我們知道<a> 元素可定義超級鏈接。 不過XML 不是這樣工作的。 在XML 文檔中,您可以使用任何你需要的名稱- 因此對於瀏覽器來說是無法預知在XML 文檔中可調用何種超級鏈接元素。

在XML 文檔中定義超級鏈接的方法是在元素上放置可用作超級鏈接的標記。

下面是在XML 文檔中使用XLink 來創建鏈接的簡單實例:

<?xml version="1.0"?>

<homepages xmlns:xlink="http://www.w3.org/1999/xlink">

<homepage xlink:type="simple"
xlink:href="http://www.w3schools.com">Visit W3Schools</homepage>

<homepage xlink:type="simple"
xlink:href="http://www.w3.org">Visit W3C</homepage>

</homepages>

為了訪問XLink 的屬性和特性,我們必須在文檔的頂端聲明XLink 命名空間。

XLink 的命名空間是:"http://www.w3.org/1999/xlink"。

<homepage> 元素中的xlink:type 和xlink:href 屬性定義了來自XLink 命名空間的type 和href 屬性。

xlink:type="simple" 可創建一個簡單的兩端鏈接(意思是"從這裡到哪裡")。 稍後我們會研究多端鏈接(多方向)。


XPointer 語法

在HTML 中,我們可創建一個既指向某個HTML 頁面又指向HTML 頁面內某個書籤的超級鏈接(使用#)。

有時,可指向更多具體的內容會更有好處。 舉例,我們需要指向某個特定的列表的第三個項目,或者指向第五段的第二行。 通過XPointer 是很容易做到的。

假如超級鏈接指向某個XML 文檔,我們可以在xlink:href 屬性中把XPointer 部分添加到URL 後面,這樣就可以導航(通過XPath 表達式)到文檔中某個具體的位置了。

舉例,在下面的例子中,我們通過唯一的id "rock" 使用XPointer 指向某個列表中的第五個項目。

href="http://www.example.com/cdlist.xml#id('rock').child(5,item)"