Xml學(xué)習(xí)筆記(一)基礎(chǔ)篇_Xml教程
推薦:Xml學(xué)習(xí)筆記(二)Javascript篇Preface:本文是W3CSchools上《XML指南》Javascript篇的學(xué)習(xí)筆記。其中大部分內(nèi)容是對指南的翻譯總結(jié)。由于原文的例子更詳盡生動,如果各位想閱讀原文可以到這個網(wǎng)址http://www.w3schools.com/xml/default.asp。 同時,W3CSchools提供了測試,大家可以測測自
Preface:本文是W3CSchools上《XML指南》基礎(chǔ)篇的學(xué)習(xí)筆記。其中大部分內(nèi)容是對指南的翻譯總結(jié)。由于原文的例子更詳盡生動,如果各位想閱讀原文可以到這個網(wǎng)址http://www.w3schools.com/xml/default.asp。 同時,W3CSchools提供了測試,大家可以測測自己對XML的理解程度。
一、什么是XML?
Extensible Markup Language 可擴(kuò)展標(biāo)記語言。它具有如下的優(yōu)點和特征:- 和HTML一樣是一種標(biāo)記語言。
- 但XML是設(shè)計用于承載數(shù)據(jù)而非像HTML那樣是用于展示的。
- 你可以定義自己的tag(標(biāo)簽)。
- XML是自描述的。
- XML是W3C標(biāo)準(zhǔn)。
二、XML應(yīng)用
由于以上介紹的XML特性,目前XML被應(yīng)用于以下的方面。但至于具體如何應(yīng)用。那可要下回分解了。- 將數(shù)據(jù)從HTML分離出來。這樣就可以使展現(xiàn)(Display)和數(shù)據(jù)(Data)分離。文檔更清晰和便于維護(hù)。只需使用數(shù)行的JavaScript,就可以將數(shù)據(jù)從XML添加到HTML中。
- 作為數(shù)據(jù)共享、數(shù)據(jù)交互。純文本格式(plain text format)使XML可以方便的存儲及被各種應(yīng)用讀取。同時XML的可擴(kuò)展性使其可以很好的承載數(shù)據(jù)隨時作擴(kuò)展。XML與平臺無關(guān)(設(shè)備、操作系統(tǒng)、數(shù)據(jù)庫)與應(yīng)用無關(guān),因此非常適合作數(shù)據(jù)交互。
- 作為HTML最新版的XHTML
- 描述WebService的WSDL
- 為手持設(shè)備設(shè)計的標(biāo)記語言WAP和WML
- 作為新聞種子的RSS 多媒體描述語言SMIL
三、XML樹和XML語法
首先看一個XML文件:<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
第一行是一句定義聲明說明這是一個XML文件。每個XML文件以樹結(jié)構(gòu)進(jìn)行組織。每個標(biāo)記稱為一個元素(Element)。而第一個元素又稱為根(root),它是所有其它元素的祖先。每個元素都可以有多個子元素(Child)。
針對以上的XML文件用下圖來說明XML樹的組織。

關(guān)于XML文件的編寫要遵循以下的語法規(guī)則:
- 每個XML Element都要有一個閉合標(biāo)記。(可以是自閉合的)
- 大小寫敏感。
- Element要正確地嵌套。
- 包含有一個根元素(root element)
- 所有屬性(Attribute)的值必須用雙引號括住。
- 注釋是這樣寫的“<!-- 這是注釋 --> ”(不包括雙引號)。
- 空格保留。
四、XML元素(Element)和屬性(Attribute)
通過上一節(jié)已經(jīng)對Element和Attribute有感性的認(rèn)識了。首先深入了解一下Element:- 什么是元素?XML元素是從開始標(biāo)記到結(jié)束標(biāo)記之間的所有東西。(包括標(biāo)記本身)一個元素包括其它的元素,或者文本內(nèi)容,或者屬性。
- 元素命名規(guī)則 可以包含字母、數(shù)字和其它符號 不能以數(shù)字或標(biāo)點符號開頭 不能以xml或XML、Xml等等的單詞開頭 名稱不能包含有空格。
- 元素是可擴(kuò)展的 可以擴(kuò)展元素以攜帶更多的信息。
- 屬性通常用來提供非數(shù)據(jù)的信息。注意一定要用雙引號括住屬性的內(nèi)容。如果內(nèi)容包含有雙引號那么應(yīng)該用"來代替。<,>代替“<”和“>”。
- 元素和屬性的使用 并沒有規(guī)定什么數(shù)據(jù)應(yīng)該放在屬性中,什么數(shù)據(jù)放在元素中。但是以下是一些比較。 屬性不能包含多值,但元素可以。 屬性不能包含樹結(jié)構(gòu),但元素可以。 屬性很難被擴(kuò)展。 ID一類的數(shù)據(jù)比較適合使用屬性來保存。
五、XML校驗
我們把遵循語法規(guī)則的XML稱為“格式良好的XML”(WellFormantXML) 而能通過結(jié)構(gòu)校驗的XML稱為“有效的XML”(ValidXML)。首先有效的XML肯定是格式良好的XML,同時要遵循XML結(jié)構(gòu)定義規(guī)則。目前定義一個XML文件的結(jié)構(gòu)規(guī)則的方法有兩種:使用DTD文件或Schema。- DTD(DocumentTypeDefinition)是用于定義XML結(jié)構(gòu)的文件,以dtd為后綴。 一般我們會在XML中聲明這個外部的DTD。如:<!DOCTYPE note SYSTEM "Note.dtd"> 關(guān)于DTD的詳細(xì)使用不在此文介紹。
- XML Schema。XML Schema是另一種定義XML結(jié)構(gòu)的方法。在后綴為xsd的文件中定義。
六、展示XML
如果你熟悉CSS,那么可以使用CSS對每個標(biāo)記編寫樣式。然后再XML文件中添加如下的聲明<? xml-stylesheet type="text/css" href="cd_catolog.css" ?> 但是W3C的標(biāo)準(zhǔn)是使用XSLT。
XSLT是標(biāo)準(zhǔn)的XML樣式語言。保存在xsl為后綴的文件中。使用XSLT可以將XML轉(zhuǎn)換成和HTML一樣的可以展示的文檔。同樣是在XML中增加如下聲明 <? xml-stylesheet type="text/xsl" href="simple.xsl" ?>
分享:XML學(xué)習(xí)筆記(三)進(jìn)階篇Preface:本文是W3CSchools上《XML指南》進(jìn)階篇的學(xué)習(xí)筆記。其中大部分內(nèi)容是對指南的翻譯總結(jié)。由于原文的例子更詳盡生動,如果各位想閱讀原文可以到這個網(wǎng)址http://www.w3schools.com/xml/default.asp。 同時,W3CSchools提供了測試,大家可以測測自己對XM
- xml創(chuàng)建節(jié)點(根節(jié)點、子節(jié)點)
- WML開發(fā)教程之 WAP網(wǎng)站服務(wù)器配置方法
- WMLScript的語法基礎(chǔ)
- 收集的WML Script標(biāo)準(zhǔn)函數(shù)庫
- WML教程之文本框控件Input
- 無線標(biāo)記語言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)
- xml文件的結(jié)構(gòu)解讀
- 關(guān)于XSL - XSL教程
- 選擇模式 - XSL教程 - 2
- XPath入門 - XSL教程 - 3
- 匹配模式 - XSL教程 - 4
- 測試模式 - XSL教程 - 5
- 相關(guān)鏈接:
- 教程說明:
Xml教程-Xml學(xué)習(xí)筆記(一)基礎(chǔ)篇
。