日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

XML简介及举例

發布時間:2023/11/27 生活经验 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XML简介及举例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

可擴展標記語言(eXtensibleMarkup Language,簡稱XML),是一種標記語言。標記指計算機所能理解的信息符號,通過此種標記,計算機之間可以處理包含各種信息的文章等。如何定義這些標記,既可以選擇國際通用的標記語言,比如HTML,也可以使用像XML這樣由相關人士自由決定的標記語言,這就是語言的可擴展性。

XML被設計用來傳輸和存儲數據。HTML被設計用來顯示數據。

用途:XML設計用來傳送及攜帶數據信息,不用來表現或展示數據,HTML語言則用來表現數據,所以XML用途的焦點是它說明數據是什么,以及攜帶數據信息。(1)、豐富文件:自定義描述并使其更豐富:屬于文件為主的XML技術應用;標記是用來定義一份資料應該如何呈現;(2)、元數據:描述其它文件或網絡資訊;屬于資料為主的XML技術應用;標記是用來說明一份資料的意義;(3)、配置文檔:描述軟件設置的參數。

結構:每個XML文檔都由XML序言開始,告訴解析器或瀏覽器這個文件應該按照XML規則進行解析。之后就是XML的根元素。任何XML文檔都只能有一個跟元素。根元素里面,可以有子元素,子元素里面可以有子子元素,以此類推。根元素是由文檔類型定義(DTD)或XML剛要定義的。XML文件的第二行并不一定要包含文檔元素,如果有注釋或者其他內容,文檔元素可以遲些出現。

1、XML簡介:XML指可擴展標記語言。XML是一種標記語言,很類似HTML。XML的設計宗旨是傳輸數據,而非顯示數據。XML標簽沒有被預定義,你需要自行定義標簽。XML被設計為具有自我描述性。XML是W3C的推薦標準。

???????? XML與HTML的主要差異:(1)、XML不是HTML的替代;(2)、XML和HTML為不同的目的而設計;(3)、XML被設計為傳輸和存儲數據,其焦點是數據的內容;(4)、HTML被設計用來顯示數據,其焦點是數據的外觀;(5)、HTML旨在顯示信息,而XML旨在傳輸信息。

???????? 沒有任何行為的XML。

XML僅僅是純文本。

通過XML你可以發明自己的標簽。在HTML中使用的標簽是預定義的,HTML文檔只使用在HTML標準中定義過的標簽。XML允許創作者定義自己的標簽和自己的文檔結構。

XML不是對HTML的替代,XML是對HTML的補充。XML是獨立于軟件和硬件的信息傳輸工具。

2、XML用途:XML應用與web開發的許多方面,常用于簡化數據的存儲和共享。

???????? XML把數據從HTML分離:如果你需要在HTML文檔中顯示動態數據,那么每當數據改變時將花費大量的時間來編輯HTML。通過XML,數據能夠存儲在獨立的XML文件中,這樣你就可以專注于使用HTML進行布局和顯示,并確保修改底層數據不再需要對HTML進行任何的改變。通過使用幾行JavaScript,你就可以讀取一個外部XML文件,然后更新HTML中的數據內容。

???????? XML簡化數據共享:XML數據以純文本格式進行存儲,因此提供了一種獨立于軟件和硬件的數據存儲方法。這讓創建不同應用程序可以共享的數據變得更加容易。

???????? XML簡化數據傳輸:通過XML,可以在不兼容的系統之間輕松地交換數據。

???????? XML簡化平臺的變更:XML數據以文本格式存儲,這使得XML在不損失數據的情況下,更容易擴展或升級到新的操作系統、新應用程序和新的瀏覽器。

???????? XML使你的數據更有用:不同的應用程序都能夠訪問你的數據,不僅僅在HTML頁中,也可以從XML數據源中進行訪問。通過XML,你的數據可供各種閱讀設備使用。

???????? XML用于創建新的Internet語言:很多新的Internet語言是通過XML創建的。

3、XML數結構:XML文檔形成了一種樹結構,它從“根部”開始,然后擴展到“枝葉”。

???????? XML使用簡單的具有自我描述性的語法

???????? XML文檔形成一種樹結構:XML文檔必須包含根元素。該元素是所有其他元素的父元素。XML文檔中的元素形成了一顆文檔數。這棵樹從根部開始,并擴展到數的底端。所有元素均可擁有子元素。父、子以及同胞等術語用于描述元素之間的關系。父元素擁有子元素。相同層級上的子元素成為同胞(兄弟或姐妹)。所有元素均可擁有文本內容和屬性(類似HTML中)。

4、XML語法:XML的語法規則很簡單,且很有邏輯。

???????? 所有XML元素都須有關閉標簽。在XML中,省略關閉標簽是非法的。所有元素都必須有關閉標簽。在HTML,經常會看到沒有關閉標簽的元素。

???????? XML聲明沒有關閉標簽。這不是錯誤。聲明不屬于XML本身的組成部分。它不是XML元素,也不需要關閉標簽。

???????? XML標簽對大小寫敏感。XML元素使用XML標簽進行定義。必須使用相同的大小寫來編寫打開標簽和關閉標簽。打開標簽和關閉標簽通常被稱為開始標簽和結束標簽。

???????? XML必須正確地嵌套。在HTML中,常會看到沒有正確嵌套的元素。在XML中,所有元素都必須彼此正確地嵌套。

???????? XML文檔必須有根元素。XML文檔必須有一個元素是所有其他元素的父元素,該元素稱為根元素。

???????? XML的屬性值須加引號。與HTML類似,XML也可擁有屬性(名稱/值的對)。在XML中,XML的屬性值須加引號。

???????? 實體引用:在XML中,一些字符擁有特殊的意義。如果你把字符”<”放在XML元素中,會發生錯誤,這是因為解析器會把它當作新元素的開始。為了避免這個錯誤,請用實體引用來代替”<”字符。

???????? 在XML中,有5個預定義的實體引用:&lt;(<),&gt;(>), &amp;(&), &apos;(‘), &quot;(“).在XML中,只有字符”<”和”&”確實是非法的。大于號是合法的。但是用實體引用來代替它是一個好習慣。

???????? XML中的注釋:在XML中編寫注釋的語法與HTML中的語法相似

???????? 在XML中,空格會被保留:HTML會把多個連續的空格字符裁減(合并)為一個。在XML中,文檔中的空格不會被刪節。

???????? XML以LF存儲換行。

5、XML元素:XML文檔包含XML元素。

???????? XML元素指的是從(且包括)開始標簽直到(且包括)結束標簽的部分。元素可包含其它元素、文本或者兩者的混合物。元素也可以擁有屬性。

???????? XML命名規則:XML元素必須遵循以下命名規則:(1)、名稱可以含字母、數字以及其它的字符;(2)、名稱不能以數字或者標點符號開始;(3)、名稱不能以字符”xml”(或者XML、Xml)開始;(4)、名稱不能包含空格??墒褂萌魏蚊Q,沒有保留的字詞。

???????? 最佳命名習慣:(1)、使名稱具有描述性,使用下劃線的名稱也很不錯;(2)、名稱應當比較簡短;(3)、避免”-”、”.”、”:”字符。XML文檔經常有一個對應的數據庫,其中的字段會對應XML文檔中的元素。有一個實用的經驗,即使用數據庫的名稱規則來命名XML文檔中的元素。

???????? 非英語的字母也是合法的XML元素名,不過需要留意軟件開發商不支持這些字符時可能出現的問題。

???????? XML元素是可擴展的。XML元素是可擴展,以攜帶更多的信息。XML的優勢之一,就是可以經常在不中斷應用程序的情況下進行擴展。

6、XML屬性XML元素可以在開始標簽中包含屬性,類似HTML。屬性提供關于元素的額外(附加)信息。

???????? 在HTML中(以及在XML中),屬性提供有關元素的額外信息。屬性通常提供不屬于數據組成部分的信息。

???????? XML屬性必須加引號。屬性值必須被引號包圍,不過單引號和雙引號均可使用。如果屬性值本身包含雙引號,那么有必要使用單引號包圍它,或者可以使用實體引用。

???????? XML元素vs.屬性:沒有什么規矩可以告訴我們什么時候該使用屬性,而什么時候該使用子元素。在HTML中,屬性用起來很便利,但是在XML中,你應該盡量避免使用屬性。如果信息感覺起來很像數據,那么請石永剛子元素吧。

???????? 使用屬性而引起的一些問題:(1)、屬性無法包含多重的值(元素可以);(2)、屬性無法描述樹結構(元素可以);(3)、屬性不易擴展;(4)、屬性難以閱讀和維護。請盡量使用元素來描述數據。而僅僅使用屬性來提供與數據無關的信息。

???????? 針對元數據的XML屬性:有時候會向元素分配ID引用。這些ID索引可用于標識XML元素,它其作用的方式與HTML中ID屬性是一樣的。

???????? 元數據(有關數據的數據)應當存儲為屬性,而數據本身應當存儲為元素。

7、XML驗證:擁有正確語法的XML被稱為“形式良好”的XML。通過DTD驗證的XML是“合法”的XML。

???????? “形式良好”或“結構良好”的XML文檔擁有正確的語法。

???????? 驗證XML文檔:合法的XML文檔是“形式良好”的XML文檔,同樣遵守文檔類型定義(DTD)的語法規則。

???????? DTD的作用是定義XML文檔的結構。它使用一系列合法的元素來定義文檔結構。

???????? XMLSchema:W3C支持一種基于XML的DTD代替者,它名為XML Schema。

8、XML驗證器:XML錯誤會終止你的程序。

???????? XML文檔中的錯誤會終止你的XML程序。W3C的XML規范聲明,如果XML文檔存在錯誤,那么程序就不應當繼續處理這個文檔。

???????? 如果使用HTML,創建包含大量錯誤的文檔是有可能的。其中一個主要的原因是HTML瀏覽器相當臃腫,兼容性也很差,并且它們有自己的方式來確定當發現錯誤時文檔應該顯示為什么樣子。使用XML時,這種情況不應當存在。

9、XML瀏覽器支持:幾乎所有的主流瀏覽器均支持XML和XSLT。

10、查看XML文件:在所有現代瀏覽器中,均能夠查看原始的XML文件。

???????? XML文檔不會攜帶有關如何顯示數據的信息。由于XML標簽由XML文檔的作者”發明”,瀏覽器無法確定像<table>這樣的一個標簽究竟描述一個HTML表格還是一個餐桌。在沒有任何有關如何顯示數據的信息的情況下,大多數的瀏覽器都會僅僅把XML文檔顯示為源代碼。

11、使用CSS顯示XML:通過使用CSS,可為XML文檔添加顯示信息。

???????? 使用CSS來格式化XML文檔是有可能的。

???????? 使用CSS格式化XML不是常用的方法,更不能代表XML文檔樣式化的未來。W3C推薦使用XSLT。

12、使用XSLT顯示XML:通過使用XSLT,你可以向XML文檔添加顯示信息。

???????? XSLT(eXtensibleStylesheet Language Transformations)遠比CSS更加完善。

???????? 使用XSLT的方法之一是在瀏覽器顯示XML文件之前,先把它轉換為HTML。

???????? 在服務器上通過XSLT轉換XML。在使用XSLT來轉換XML時,不同的瀏覽器可能會產生不同結果。為了減少這種問題,可以在服務器上進行XSLT轉換。

13、XMLHttpRequest對象:XMLHttpRequest對象用于在后臺與服務器交換數據。

???????? XMLHtttpRequest對象是開發者的夢想,因為你能夠:(1)、在不重新加載頁面的情況下更新網頁;(2)、在頁面已加載后從服務器請求數據;(3)、在頁面已加載后從服務器接收數據;(4)、咋后臺向服務器發送數據。

???????? 所有現代的瀏覽器都支持XMLHttpRequest對象。

???????? 所有現代瀏覽器都內建了XMLHttpRequest對象。通過一行簡單的JavaScript代碼,就可以創建XMLHttpRequest對象:xmlhttp =new XMLHttpRequest();

???????? XML/ASP:你也可以把XML文檔打開并發送到服務器上的ASP頁面,分析此請求,然后傳回結果。

???????? 任何W3C推薦標準均未規定XMLHttpRequest對象。

14、XML解析器:所有現代瀏覽器都內建了供讀取和操作XML的XML解析器。解析器吧XML轉換為XML DOM對象----可通過JavaScript操作的對象。

???????? 解析器把XML載入內存,然后把它轉換為可通過JavaScript訪問的XML DOM對象。

???????? 跨域訪問:出于安全方面的原因,現代的瀏覽器不允許跨域的訪問。這意味著,網頁以及它試圖加載的XML文件,都必須位于相同的服務器上。

15、XMLDOM:DOM(Document Object Model,文檔對象模型)定義了訪問和操作文檔的標準方法。DOM把XML文檔作為樹結構來查看。能夠通過DOM樹來訪問所有元素??梢孕薷幕騽h除它們的內容,并創建新元素。元素,它們的文本,以及它們的屬性,都被認為是節點。

???????? HTMLDOM(HTML Document Object Model)定義了訪問和操作HTML文檔的標準方法。可以通過HTML DOM訪問所有HTML元素。

???????? InternetExplorer使用loadXML()方法來解析XML字符串,而其它瀏覽器使用DOMParser對象。

16、XMLto HTML:在HTML中顯示XML數據。

17、XML命名空間(XML Namespaces):XML命名空間提供避免元素命名沖突的方法。

???????? 在XML中,元素名稱是由開發者定義的,當兩個不同的文檔使用相同的元素名時,就會發生命名沖突。

???????? XMLNamespace(xmlns)屬性:XML命名空間屬性被放置于元素的開始標簽之中,并使用以下語法:xmlns:namespace-prefix=”namespaceURI”

???????? 當命名空間被定義在元素的開始標簽中時,所有帶有相同前綴的子元素都會與同一個命名空間相關聯。用于表示命名空間的地址不會被解析器用于查找信息。其唯一的作用是賦予命名空間一個唯一的名稱。不過,很多公司常常會作為指針來使用命名空間指向實際存在的網頁,這個網頁包含關于命名空間的信息。

???????? 統一資源標識符(UniformResource Identifier(URI)):統一資源標識符是一串可以標識因特網資源的字符。最常見的URI是用來標示因特網域名地址的統一資源定位器(URL).另一個不那么常用的URI是統一資源命名(URN)。

???????? 默認的命名空間:為元素定義默認的命名空間可以讓我們省去在所有的子元素中使用前綴的工作,語法:xmlns=”namespaceURI”

18、XMLCDATA:所有XML文檔中的文本均會被解析器解析。只有CDATA區段(CDATA section)中的文本會被解析器忽略。

???????? PCDATA值的是被解析的字符數據(ParsedCharacter Data)。XML解析器通常會解析XML文檔中的所有的文本。當某個XML元素被解析時,其標簽之間的文本也會被解析。解析器之所以這么做是因為XML元素可包含其它元素。

???????? 轉義字符:非法的XML字符必須被替換為實體引用(entityreference)。

???????? CDATA指的是不應由XML解析器進行解析的文本數據(Unparsed Character Data)。CDATA部分中的所有內容都會被解析器忽略。CDATA部分由”<![CDATA[”開始,由”]]>”結束。CDATA部分不能包含字符串”]]>”,也不允許嵌套的CDATA部分。標記CDATA部分結尾的”]]>”不能包含空格或折行。

19、XML編碼:XML文檔可以包含非ASCII字符,比如法語。為了避免錯誤,需要規定XML編碼,或者將XML文檔存為Unicode。

???????? 編碼屬性應當被指定為文檔被保存時所使用的編碼。避免錯誤的建議是:(1)、使用支持編碼的編輯器;(2)、確定編輯器使用的編碼;(3)、在你的XML文檔中使用相同的編碼屬性。

20、服務器上的XML:XML文件是類似HTML文件的純文本文件。能夠通過標準的web服務器輕松地存儲和生成XML。

???????? XML文件在Internet服務器上進行存儲的方式與HTML文件完全相同。

???????? 通過ASP生成XML:XML可在不安裝任何XML軟件的情況下載服務器端生成。

???????? 通過PHP生成XML。

???????? 從數據庫獲取XML:XML可在不安裝任何XML軟件的情況下從數據庫生成。

???????? 在服務器上通過XSLT轉換XML。

???????? 通過ASP把XML保存為文件。

示例:

<?xml version="1.0" encoding="UTF-8"?>
<!-- 每個XML文檔都由XML序言開始,告訴解析器或瀏覽器這個文件應該按照XML規則進行解析 --><!-- XML test -->
<!-- XML文檔必須有一個元素是所有其他元素的父元素,該元素稱為根元素 -->
<!-- 任何XML文檔都只能有一個跟元素。根元素里面,可以有子元素,子元素里面可以有子子元素,以此類推 -->
<NOTE><!1--  查看XML文件 -->
<!-- XML標簽沒有被預定義,你需要自行定義標簽。XML被設計為具有自我描述性 -->
<breakfast_menu><food><name>Belgian Waffles</name><price>$5.95</price><description>two of our famous Belgian Waffles with plenty of real maple syrup</description><calories>650</calories></food><food><name>Strawberry Belgian Waffles</name><price>$7.95</price><description>light Belgian waffles covered with strawberries and whipped cream</description><calories>900</calories></food>
</breakfast_menu><!-- 通過使用CSS,可為XML文檔添加顯示信息 -->
<!-- XML和CSS --><!-- 使用XSLT的方法之一是在瀏覽器顯示XML文件之前,先把它轉換為HTML -->
<!-- XML和XSLT --><!-- 通過JavaScript來解析XML --><!-- XML to HTML --><!-- XMLHttpRequest對象用于在后臺與服務器交換數據 -->
<!-- 使用 XMLHttpRequest 對象 --><!-- 使用命名空間:XML命名空間提供避免元素命名沖突的方法,針對多個文檔 -->
<Blog xmlns="http://blog.csdn.net/fengbingchun"><Category><Android>8</Andorid><OpenCV>70</Andorid></Category>
</Blog><!-- XML CDATA -->
<!-- CDATA指的是不應由XML解析器進行解析的文本數據 -->
<fun>
<![CDATA[
funciton Add(a, b)
{return a + b;
}
]]>
</fun></NOTE>

以上內容摘自:http://www.w3school.com.cn/xml/index.asp?

總結

以上是生活随笔為你收集整理的XML简介及举例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

歡迎分享!

轉載請說明來源于"生活随笔",并保留原作者的名字。

本文地址:XML简介及举例