麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > XML > 正文

XML入門教程:XML名稱空間-XML/XSLT

2024-09-05 20:55:29
字體:
來源:轉載
供稿:網友

XML名稱空間表示XML名稱的使用范圍,因為XML可自定義元素標簽,所以有不同XML應用間XML名稱重名的機會是很大的。如果沒有一種方法來區分不應用的名稱,就會造成混亂。XML名稱空間就是為了解決這個問題而設計的。通過XML名稱空間,我們可以區分來自不同的XML應用的具有相
XML名稱空間表示XML名稱的使用范圍,因為XML可自定義元素標簽,所以有不同XML應用間XML名稱重名的機會是很大的。如果沒有一種方法來區分不應用的名稱,就會造成混亂。XML名稱空間就是為了解決這個問題而設計的。通過XML名稱空間,我們可以區分來自不同的XML應用的具有相同名稱的元素和屬性。可以將來自單一XML應用的相關元素和屬性集合在一起,方便軟件識別和處理。
名稱空間由前綴和本地部分組成,中間用冒號分隔。前綴標識元素或屬性的所在名稱空間,本地部分標識名稱空間中的某個元素或屬性。整個名稱也稱為限定名稱(qualified name)。前綴可以用除XML(大小寫任意組合)三個字母外的任何合法的XML名稱字符組成。每個限定名稱中的前綴都必須與唯一的一個URI關聯。帶有相同URI關聯的前綴的名稱屬于同一名稱空間。
<rdf:RDF xmlns:rdf="http://www.w3.org/TR/REC-rdf-syntax#"> <rdf:Description about="http://www.example.com/test.xml"> <title>example</title> <author>linuxsir</author> ... </rdf:Description></rdf:RDF>
上例rdf:RDF元素的xmlns:rdf屬性將前綴rdf綁定到名稱空間http://www.w3.org/TR/REC-rdf-syntax#。屬性xmlns:rdf為rdf:RDF元素及其子元素聲明了前綴rdf。RDF處理器將把rdf:RDF和rdf:Description作為RDF元素,因為兩個元素都具有與RDF規范定義的某個URI相綁定的前綴。處理器不會認為title,author等元素為RDF元素,因為它沒有綁定到相同URI的rdf前綴。本文由武林網(http://www.companysz.com)整理發布!轉載請注明出處,謝謝!
前綴一般在使用該前綴的最上層元素中定義。在下層元素中也可定義不同的前綴:
<rdf:RDF xmlns:rdf="http://www.w3.org/TR/REC-rdf-syntax#"> <rdf:Description xmlns:dc="http://www.w3.org/dc/" about="http://www.example.com/test.xml"> <dc:title>example</dc:title> <dc:author>linuxsir</dc:author> ... </rdf:Description></rdf:RDF>
不帶前綴的屬性,如about,不屬于任何的名稱空間。如xlink:type和xlink:href屬性屬于xlink名稱空間,當然,前提是你要先把xlink綁定到一個URI。URI不必須是一定存在的http鏈接,它只是一種表示的方法,以區分不同的名稱空間。
通過將無前綴的xmlns屬性附加到根元素中,可以指定不帶前綴的元素及所有不帶前綴的子元素屬于某個名稱空間。
<svg xmlns="http://www.w3.org/2000/svg"> <ellipse rx="110" ry="130" /> <rect x="4cm" y="1cm" /></svg>
這里,雖然所有元素都沒有前綴,但它都同屬一個名稱空間。但屬性屬不同名稱空間,因為默認名稱空間只應用于元素。默認名稱空間在子元素中也用相同的方法重新設置。
如果名稱空間只用來識別來自某種XML應用的元素和屬性,而不是用來區分具有相同名稱的不同元素,則可在DTD的元素中定義一個固定的xmlns屬性,而不需要文檔中定義。定義方法如下:
<!ATTLIST svg xmlns CDATA #FIXED "http://www.w3.org/svg/">
在定義DTD時,需要使用名稱空間前綴的在定義時也要把前綴寫到DTD定義里,如:
<!ELEMENT xlink:name (#PCDATA)>
使用參數實體引用來定義名稱空間前綴可方便DTD文檔的維護,如:本文由武林網(http://www.companysz.com)整理發布!轉載請注明出處,謝謝!
<!ENTITY % prefix "xlink"><!ENTITY % colon ":">
接著,利用該參數實體名稱定義更多的參數實體引用,如:
<!ENTITY % xlink-title "%prefix;%colon;title"><!ENTITY % xlink-author "%prefix;%colon;author">
這樣,如果需更改前綴,只需修改一個地方就可以了,不用整篇文檔修改。
<!ELEMENT %xlink-title; (#PCDATA)><!ELEMENT %xlink-author; (#PCDATA)> 不能在ATTLIST和ELEMENT聲明中直接使用%prefix;和%colon;,因為在另一個實體的外部使用這些參數實體時,XML解析器會在實體替換文本的兩邊添加額外的空格。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产亚洲精品久久午夜玫瑰园 | 精品在线免费播放 | 国产精品久久久久av | 国产精品视频二区不卡 | 香蕉成人在线观看 | 久久久久久久久久久久网站 | 国产成人在线网站 | 91成人午夜性a一级毛片 | 久久精品视频在线 | 黄色成人短视频 | 羞羞视频一区二区 | 久久久精品综合 | 成人性视频欧美一区二区三区 | 久久国产精品久久久久久久久久 | 欧美一区二区三区免费观看 | 99riav国产在线观看 | 国产精品自在线拍 | 中国hd高清xxxxvideo | 中文黄色一级片 | 免费观看一级 | 亚洲第一精品在线 | 久草成人在线 | 免费啪啪| 亚洲精品午夜在线 | 精品国产一区二区三区在线观看 | 久久久www成人免费精品 | 精品一区二区久久久久久久网精 | 亚洲最新色 | 亚洲二区免费 | 久久久久女人精品毛片九一 | 九九精品在线播放 | 久久不雅视频 | 日本精品婷婷久久爽一下 | wwwxxx视频| 欧美雌雄另类xxxxx | 日韩黄色三级视频 | 欧美一级淫片免费视频黄 | 日本在线观看一区二区 | 欧美爱爱视频免费看 | 欧美性生活久久 | 成人毛片100免费观看 |