DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML基礎 >> 第16章 XLink
第16章 XLink
編輯:XML基礎     

XML教程

 

XLL(可擴展的鏈接語言,eXtensible Linking Language)分為兩部分:XLink和XPointer。XLink(即XML鏈接語言,XML Linking Language)定義一文檔如何與另一文檔的鏈接。XPointer(即XML指針語言,XML Pointer Language)定義文檔的各部分如何尋址。XLink指向URI(實際為URL),以指定特定的資源。此URL可能包含XPointer部分,更明確地標識目標資源或文檔所期望的部分或節。本章探討XLink,下一章將探討XPointer。

本章的主要內容如下:

* XLink與HTML鏈接的對比

* 簡單鏈接

* 擴展鏈接

* 外聯鏈接

* 擴展鏈接組

* 如何重新命名XLink特性

16.1 XLink與HTML鏈接的對比

Web征服已經建立起來的Gopher協議的一個主要原因是:在文檔中可嵌入超文本鏈接。這些鏈接可以嵌入影像或讓用戶從一文檔內部跳轉到另一文檔或同一文檔的另一部分。在某種程度內,XML可轉變成其他格式以便於浏覽,HTML用於鏈接的句法與XML文檔中使用的句法是一樣的。使用XSL,可將各自的句法轉變成HTML句法,就像第14章的幾個例子中所看到的那樣。

但是,HTML鏈接具有局限性。首先,URL通常只限於指向單一文檔。如果比這種要求更為詳細如鏈接於一文檔中第17段的第三句,就需要手工在目標文件中插入命名的定位符(錨)。如果對鏈接的文檔沒有寫訪問權,是不會做到這一點的。

而且,HTML鏈接不保留文檔之間的歷史或關系內容。盡管浏覽器可以跟蹤浏覽的一系列文檔的路徑,但這種跟蹤是很不可靠的。從HTML內部,沒有任何方法知道讀者是從哪裡來的。鏈接純粹是單方向的。用來鏈接的文檔知道它正與誰進行鏈接,但反過來則不行。

XLL可獲得文檔間的更強有力的鏈接。它是專為XML文檔設計的,但有些部分也可以與HTML文檔一起使用。XLL可以實現使用HTML的基於URL超文本鏈接和定位可獲得的任何功能。但是,除此之外,它還支持多方位的鏈接,即以多個方向同時進行鏈接。任何元素都可以成為一個鏈接,而不僅僅是A元素。甚至不需要將鏈接保存在與鏈接文檔相同的文件中。此外,XPointer部分(將在下一章討論)允許對XML文檔中的任意位置進行鏈接。這些功能使XLL不僅更適合於新的用途,而且還適合於只使用HTML要花很大氣力才能達到的功能,如交叉引用、腳注、尾注、互連數據等等。

請讀者注意,直到編寫此書時(1999年春天),XLL仍處於重大的開發和修改階段。盡管正在逐漸成形,但在讀者閱讀本書時可能會或多或少地發生變化。

此外,到目前為止,還沒有任何一個多用途的應用程序能支持任意的XLink。這是因為XLink的適用性要比HTML鏈接廣得多。XLink不僅僅用於超文本的連接,還可用於在文檔中嵌入影像。可被任何一個需要在文檔和文檔的局部之間建立連接的常用應用程序用於任何目的。因此,甚至當XLink在浏覽器中得以完整執行時,也許並非總是單擊可跳轉到另一頁的藍色下劃線文本。可以是那樣,但也可以根據需要決定藍色的下劃線文本的多寡。

16.2 簡單鏈接

在HTML中,鏈接是用<A>標記來定義的。但就像XML使用描述元素的標記更靈活一樣,使用引用外部資源的標記也更為靈活。在XML中,幾乎任何標記都可以是一個鏈接。包括鏈接的元素稱作鏈接元素(linking element)。

鏈接元素是由值為simple或extended的xlink:form特性來標識的。而且,每個鏈接元素包含一個值為鏈接資源的URI的href特性。例如,下面是三個鏈接元素:

<FOOTNOTE xlink:form="simple" href="footnote7.xml">7</FOOTNOTE>

<COMPOSER xlink:form="simple" inline="true"

href="http://www.users.interport.net/~beand/">

Beth Anderson

</COMPOSFR>

<IMAGE xlink:form="simple" href="logo.gif"/>

注意,此元素具有描述它們所包含內容的語義名稱,而不是這些元素如何表現。這些元素使鏈接的信息包含在標記的特性中。

這三個例子是簡單的XLink。簡單的XLink類似於標准的HTML鏈接,並在更復雜(以及功能強大)的擴展鏈接之前很可能為應用程

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved