DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML基礎 >> XML與其相關技術(1)
XML與其相關技術(1)
編輯:XML基礎     

 

XML有很多相關的技術,將這些技術結合起來,才能充分發揮XML的強大功能。這些技術包括:Xlink與Xpointer(設置XML的超鏈接)、DOM(Document Object Model:文件對象模型,存取、操作文件的內容)、Namespaces(解決不同元素有相同名稱的問題)、XHTML(下一代的HTML)等。

■Xlink與Xpointer

在XML的規范中,我們看到它並沒有規定有關文件鏈接的問題。為了使XML文件也能夠有類似HTML文件超鏈接的功能,W3C制定了Xlink和Xpionter兩種規范,其中Xlink是規定XML文件之間的鏈接規范(和HTML中的外鏈接相似),Xpointer是規定XML文件中不同位置之間的鏈接規范(類似HTML中的內鏈接)。

1.Xlink:Xlink所設定的鏈接分為Simple Link和Extended Link。其中,Simple Link的鏈接功能和HTML的超鏈接基本上一樣,而Extended Link則超出了HTML超鏈接的功能,它鏈接的對象可以一次設定多個,由多個標記來共同制定該鏈接。

在XML文件中使用Xlink元素的時候,必須要在DTD中聲明這個元素。完整的聲明樣本如下(本樣本聲明了一個名為simple的Simple Link 類型的Xlink元素):

〈!ELEMENT simple ANY〉

〈!ATTLIST simple

xml:link CDATA #FIXED"simple"

href CDATA #REQUIRED

role CDATA #IMPLIED

title CDATA #IMPLIED

inline (true|false) "true"

content-role CDATA #IMPLIED

content-title CDATA #IMPLIED

show (embed|replace|new) #IMPLIED

actuate (auto|user) #IMPLIED

behavior CDATA #IMPLIED〉  


可以看到,Xlink元素有多種屬性,通過對這些屬性賦值,可以編制出多種多樣的鏈接方式。下面我們對這些屬性作些解釋。

編輯推薦閱讀
● CSS與XSL簡述


Xml:link:指明鏈接類型是Simple Link還是Extended Link。

href:用來設定鏈接的地址,與HTML中A標記中的href屬性一樣。

role:敘述該鏈接功能,提供給應用程序讀取。

title:敘述該鏈接功能,提供給用戶讀取,與HTML中A標記的alt屬性相似。

inline:有“true”和“false”兩種取值,聲明建立的鏈接是否以嵌入方式鏈接,缺省為“true”。

content-role和content-title:和role、title類似,但它們敘述的是指向的內容,而不是鏈接的內容。

show:有三種取值,replace表示將鏈接的內容取代當前的內容,new表示將鏈接的內容在一個新的窗口打開,embed表示將鏈接的內容加入到當前的內容中。

actuate:設置該鏈接是如何被激活。auto表示XML文件被解讀後,鏈接自動被激活。而user表示,該鏈接必須被用戶手動激活,也就是用戶必須要用鼠標點擊一下該鏈接。

behavior:設置該鏈接被激活後,將自動引發一些動作,可用一些指令來設置鏈接激活後應用程序要作的事情。

當我們在DTD中聲明Xlink元素後,就可以在XML文件中使用這個元素。例如:

〈simple href="http://www.cbinews.com/xml.htm" title="這是一篇介紹XML的文章"

role="XML article" content-role="good" cont-title="first" show="new" actuate="user"

behavior="goto zero"/〉  


另外一種Xlink鏈接方式是Extended Link,它的特點是可以一次設定多個鏈接對象。同樣,在使用Extended Link類型的Xlink元素前必須在DTD中聲明這個元素。聲明方式和Simple Link類型的Xlink元素類似,不同之處有兩點,第一,聲明xml:link屬性時,語句變為:xml:link CDATA #FIXED “extended”;第二,沒有任何href屬性和任何目標描述,聲明Extended Link類型的Xlink元素,必須包括一套包含href定位的子元素。即在聲明了Extended Link類型的Xlink元素之後,還必須聲明一個xml:link屬性值為locator的子元素。例如:

〈!ELEMENT aaa ANY〉

〈!ATTLIST aaa

xml:link CDATA #FIXED "extended"

inline (true|false) "true"

content-role CDATA #IMPLIED

content-title CDATA #IMPLIED〉

〈!ELEMENT bbb ANY〉

〈!ATTLIST bbb

xml:link CDATA #FIXED "locator"

role CDATA #IMPLIED

href CDATA #REAUIRED

title CDATA #IMPLIED

show (embed|replace|new) "replace"

actuate (auto|user) "user"

behavior CDATA #IMPLIED

〉  


這樣,我們就可以在XML文件中使用定義過的Extended Link的Xlink元素。如:

〈aaa〉文章資料

〈bbb href="http://www.cbinews.com/XML1.htm title="XML入門"/〉

〈bbb href="

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