150 likes | 287 Views
Xlink (XML Linking Language). XML Linking Language (XLink), which allows elements to be inserted into XML documents in order to create and describe links between resources. 前言 :. 如果在這個世界上每部電腦中的每個資料塊都能夠被識別、定址 及連結,那將是多麼令人振奮的事呢? Xink 就是說明如何在網際網 路上做到這點的規格文件。. HTML 的連結
E N D
Xlink(XML Linking Language) • XML Linking Language (XLink), which allows elements to be inserted into XML documents in order to create and describe links between resources.
前言: • 如果在這個世界上每部電腦中的每個資料塊都能夠被識別、定址 及連結,那將是多麼令人振奮的事呢?Xink就是說明如何在網際網 路上做到這點的規格文件。
HTML的連結 由於WWW的風行,大部分的人都熟悉超文字連結的基本觀念,亦即 是“一個連結具有兩個端點及一個方向,兩個端點我們通常稱為 Anchor。這個連結可以從一個起點連到任何一個網路資源的目標點 ,這些連結可能是一張圖片,一卷影片,一段聲音,一個程式,一 篇HTML的文件,或其中的元素等等”。 假如你常使用瀏覽器,你一定會知道,當你在連結上按滑鼠的右 鍵時,就會出現一個選單,而其中一個選擇是“在新視窗開啟”。 在HTML中,對於這些連結都是用一個「Anchor」的標誌所做成。 假如你常使用瀏覽器,你一定會知道,當你在連結上按滑鼠的右 鍵時,就會出現一個選單,而其中一個選擇是“在新視窗開啟”。 在HTML中,對於這些連結都是用一個「Anchor」的標誌所做成。
如果你是撰寫HTML的高手,你一定知道在head標誌裡有個特別的 標誌叫做link,它提供了多種的連結功能:比方像是連結到樣式表 (新的瀏覽器會提供使用者多一點選擇,讓其自行選擇使用哪一個 樣式表),或是連結到有音樂的地方(當下載完畢後可自動地播放 ),抑或是連結到另一個網頁(可使瀏覽器預先載入該網頁,以省 去等待的時間)等。 以上所描述的都是連結的功能,事實上,有很多其他的超文字連 結功能是HTML沒有辦法做到的,即使如早期(1960年末至1970年初 期)的超文字連結系統所提供的連結功能,HTML亦沒辦法做到。然 而,HTML之所以會成功,是因為它使用最簡單的方式去使用超連結 ,而且使用者並不需要特別的編輯器(Editor)便可製作網頁。
多用途的連結! (Xlink) 有時當我們看到「連結」時,我們發現其實它看起並不像是連結 ,但事實上,為什麼呢?許多的事物包括電子化地址、識別字、位 址或是查詢等,都可以有連結這個動作。當你想到兩個資料間有“relationship”、“role”、“pointer”或是“has a”等關聯性 時,在XML(eXtensible Markup Language)中我們可以用「連結」 的方法來加以標示。
在HTML4.0規格中,所定義的超文字連結標準,並不是就是連結的所有特性,所以在這裡我們將對連結做更清 楚的定義: 1.一個連結可以有一個、二個甚至是很多個ends,而每一個end都 可以是指標,事實上連結本身可以很明確地指定是外部( externally)連結,因而連接到每一個end。 2.一個連結並不需一定要有方向,但它也可以有很多或是沒有方 向,除此之外,連結的方向不需要一定得從“context”到 “part”才行。 3.連結的end可以是某一範圍,不一定是要連結到整個resource或 某一地方。 4.連結點的表現方式乃視連結資料的角色而定,「擷取」和「取 代」只是可能性的行為之一。是故,使用者設定連結為擷取資 料並取代畫面只是連結功能的表現之一。
XML連結對我們有什麼用呢?簡言之,像是資料模型化、資料交換 、超文字連結或是任何不同關係的資料型態上,都可以派上用場。 XLinks有一重要功能就是建立「topic maps」,這是一種依據 metadata連結到種種不同網路資源的方式。Topic maps允許不同的 資料有外在的註解(External Annotation)。因此,我們可以說 Topic maps是有結構性的metadata,而依據各特性關聯主題,可以 連結到不同的網路資源
XLinks XLink定義了幾種常用的連結型態:Simple、Extended、Group和 Document。 • 1.Simple的用法比較接近在HTML內a標誌的用法。(超鏈結語法) 例如: <a href="http://www.nctu.edu.tw">學校</a> • 2.Extended的用法包含arc和locator的元素,並允許各種種類的擴充連結。 • 3.Group和document的用法,是讓群組連結到一些特別的文件。
Let us take an HTML link: <a href="http://www.ascc.net/xml" title="Chinese XML Now! home page" /> To convert this to an XLink only requires two attributes: <a href="http://www.ascc.net/xml" title="Chinese XML Now! home page" xmlns:xlink="http://www.w3.org/XML/XLink/0.9" xlink:type="simple" /> The same link can be expressed using xml:simple as the element type name: <xlink:simple href="http://www.ascc.net/xml" title="Chinese XML Now! home page" xmlns:xlink="http://www.w3.org/XML/XLink/0.9" />
Simple Xlinks(續) The strange-looking xmlns:xlink attribute is an example of a namespace declaration. Namespaces are a way to allow better management of names in documents where element types have been defined by different sources. You can expect to see a lot of this in HTML in the future.)
<office version="1"> <phone id="phone1" >2789 9380 </phone> <phone id="phone2" >2782 6432 </phone> <person id="Rick" >Rick J. </person> <person id="Stella" >Stella S. </person> <person id="Eva" >Ivy Y. </person> <xlink:extended title="All phone numbers of people in our office" role="phone_number_of" xmlns:xlink="http://www.w3.org/XML/XLink/0.9" > <xlink:arc from="Rick" to="Phone1" /> <xlink:arc from="Eva" to="Phone1" /> <xlink:arc from="Eva" to="Phone2" /> <xlink:arc from="Stella" to="Phone2" /> </xlink:extended> </office>
<office version="2" xmlns:xlink="http://www.w3.org/XML/XLink/0.9" > <phone id="phone1" >2789 9380 </phone > <phone id="phone2" >2782 6432 </phone > <person id="Rick" >Rick J. </person> <person id="Stella" >Stella S. </person> <person id="Eva" >Ivy Y. </person> <xlink:extended title="Phone numbers for Rick" role="contact_number" > <xlink:locator href="?xptr=id(Rick)" role="contact" /> <xlink:locator href="?xptr=id(Phone1)" role="number" /> </xlink:extended> <xlink:extended title="Phone numbers for Ivy" role="contact_number" > <xlink:locator href="?xptr=id(Eva)" role="contact" /> <xlink:locator href="?xptr=id(Phone1)" role="number" /> <xlink:locator href="?xptr=id(Phone2)" role="number" /> </xlink:extended> <xlink:extended title="Phone numbers for Stella" role="contact_number" > <xlink:locator href="?xptr=id(Stella)" role="contact" /> <xlink:locator href="?xptr=id(Phone2)" role="number" /> </xlink:extended> </office>
在locator的定義中包含兩個原性:href和role。href屬性包含 URL,role屬性則包含了如何去使用連結的關鍵字。 XLink擴展了URIs的使用,其中actuate和show對於XLink來說是非 常重要的屬性,原因如下: 1.actuate的屬性可以說明Link是自動地或人工地(user-command) 追蹤。 2.show的屬性說明另一端的連結是需要顯示一個新(new)的視窗 ,或是取代(replace)成目前的視窗,或是需要剖析的(若該 連結連結到XML文件)。