第2章 XML語法4_第1頁
第2章 XML語法4_第2頁
第2章 XML語法4_第3頁
第2章 XML語法4_第4頁
第2章 XML語法4_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1XMLXML及其應用及其應用授課教師授課教師 侯霞侯霞XML及其應用-XML語法-2n教學提示:教學提示:本章講述本章講述XMLXML文檔的常用語法和基本規(guī)則,主文檔的常用語法和基本規(guī)則,主要包括要包括XMLXML基本語法、基本語法、XMLXML文檔的基本組成等文檔的基本組成等. .n教學目標:教學目標:理解理解結(jié)構(gòu)良好結(jié)構(gòu)良好的的XMLXML文檔的概念,文檔的概念,掌握掌握XMLXML的基本語法的基本語法,理解元素、屬性、特殊,理解元素、屬性、特殊字符、注釋、字符、注釋、CDATACDATA、名稱空間的使用方法,、名稱空間的使用方法,了解了解XMLXML的相關技術的相關技術能夠使用能夠使用

2、XMLSPYXMLSPY建立簡單的建立簡單的XMLXML文檔。文檔。 第第2章章 XML的語法的語法XML及其應用-XML語法-3教學內(nèi)容:教學內(nèi)容:2.1 2.1 XMLXML文檔結(jié)構(gòu)文檔結(jié)構(gòu)2.2 XML2.2 XML標記標記 2.3 XML2.3 XML元素元素2.4 XML2.4 XML屬性屬性2.5 2.5 特殊字符和特殊字符和CDATACDATA區(qū)區(qū)2.6 XML2.6 XML命名空間命名空間XML及其應用-XML語法-4例例 1 一個包含圖書信息的文檔一個包含圖書信息的文檔羅莎莉羅莎莉女女18上海市靜安區(qū)新閘路上海市靜安區(qū)新閘路188號號 Example1XML及其應用-XML語

3、法-5XMLXML文檔的結(jié)構(gòu)良好性文檔的結(jié)構(gòu)良好性 XMLXML是語法要求十分嚴格的置標語言是語法要求十分嚴格的置標語言結(jié)構(gòu)良好的結(jié)構(gòu)良好的(Well-formed) XML(Well-formed) XML文檔是文檔是指滿足所有語法限制的指滿足所有語法限制的XMLXML文檔。文檔。有關有關XMLXML的基本語法的基本語法一共有一共有4 4條:條:文件的第一條語句必須是有關版本的聲文件的第一條語句必須是有關版本的聲明明; ;符合標記和屬性的使用規(guī)則符合標記和屬性的使用規(guī)則; ;直接或間接引用的每個實體都結(jié)構(gòu)良好。直接或間接引用的每個實體都結(jié)構(gòu)良好。1)1)特殊字符必須用特殊字符必須用XMLXM

4、L中特定的編碼表示。中特定的編碼表示。XML及其應用-XML語法-62.1 XML的的文檔結(jié)構(gòu)文檔結(jié)構(gòu) XMLXML文檔的組成文檔的組成文檔序言文檔序言文檔主體文檔主體(可選的)尾部(可選的)尾部XML及其應用-XML語法-7文檔序言文檔序言文檔序言:文檔序言:XML文檔頂端的特殊信息文檔頂端的特殊信息q XML聲明及其版本聲明及其版本q 正在使用的文檔類型定義正在使用的文檔類型定義q 特殊文本片段的聲明特殊文本片段的聲明q 文本編碼文本編碼q 傳給傳給XML處理器的指令處理器的指令XML及其應用-XML語法-8文檔頭剖析文檔頭剖析文檔序言文檔序言 !DOCTYPE time-o-gram P

5、UBLIC -/LordsOfTime/DTD TimeOGram 1.8/EN /DTDs/timeogram.dtd XML聲明:描述最通聲明:描述最通用的屬性用的屬性文檔文檔類型類型聲明聲明描述根元素描述根元素指定所使用的指定所使用的DTD特殊特殊聲明聲明內(nèi)部子集的起始符內(nèi)部子集的起始符內(nèi)部子集和內(nèi)部子集和文檔類型說明文檔類型說明的結(jié)束符的結(jié)束符實體聲明實體聲明指定指定DTD的位置的位置XML及其應用-XML語法-9(1)XML聲明聲明 n一個結(jié)構(gòu)良好的一個結(jié)構(gòu)良好的XML文檔必須要文檔必須要包含有關版本的聲明包含有關版本的聲明 n有關版

6、本聲明的信息必須放在整個有關版本聲明的信息必須放在整個XML文檔的第一行文檔的第一行XML及其應用-XML語法-(1)XML聲明聲明XMLXML聲明的格式為聲明的格式為version :版本(必須的屬性):版本(必須的屬性)encoding:編碼集:編碼集standalone:告訴:告訴XML處理器是否有任何其它文處理器是否有任何其它文件需要載入件需要載入XML及其應用-XML語法-(1)XML聲明聲明XMLXML的字符集選擇的字符集選擇 缺省值是缺省值是“UTF-8”“UTF-8”注意:如果使用其它國家的代碼,如拉丁文字,注意:如果使用其它國家的代碼,如拉丁文字,中文、朝鮮文、日文,則必須使

7、用中文、朝鮮文、日文,則必須使用UnicodeUnicode字符字符集來定義集來定義例如:例如:encoding=”UTF-8”encoding=”UTF-8” encoding=”GB2312” encoding=”GB2312”XML及其應用-XML語法-(1)XML聲明聲明standalonestandalone屬性屬性 告訴文檔是否存在一個外部的文檔實體或參數(shù)告訴文檔是否存在一個外部的文檔實體或參數(shù)實體。實體。如果不存在外部的標記聲明,則如果不存在外部的標記聲明,則standalone =“yes”standalone =“yes”。如果可能存在這類外部標記聲明,則如果可能存在這類外部

8、標記聲明,則standalone =“no”-standalone =“no”-默認值默認值XML及其應用-XML語法-(2)處理指令處理指令n處理指令簡稱處理指令簡稱PI,為,為XML解析器提供傳送解析器提供傳送給應用軟件或腳本程序的信息,可指定應給應用軟件或腳本程序的信息,可指定應用軟件處理或顯示文檔的方法。用軟件處理或顯示文檔的方法。n其格式如下:其格式如下: ? ? Processing InstructionsXML及其應用-XML語法-(2)處理指令處理指令nXML版本聲明版本聲明n在樣式表轉(zhuǎn)換中引入了在樣式表轉(zhuǎn)換中引入了CSSCSS文檔對文檔對XMLXML文檔進行轉(zhuǎn)換文檔進行轉(zhuǎn)換

9、n用用XSLXSL對對XMLXML文檔進行格式轉(zhuǎn)換。文檔進行格式轉(zhuǎn)換。XML及其應用-XML語法-15(3)XML文檔中的注釋文檔中的注釋 注釋語句對文檔中其它形式語句進行提注釋語句對文檔中其它形式語句進行提示或說明。示或說明。語法:語法:!- XML及其應用-XML語法-16(3 3) XML文檔中的注釋文檔中的注釋 注釋以灰色顯示,表示一些幫助信息,注釋以灰色顯示,表示一些幫助信息,而不是程序的正式語句。語法解析器將而不是程序的正式語句。語法解析器將完全忽略注釋中的內(nèi)容。完全忽略注釋中的內(nèi)容。注釋注釋不能不能出現(xiàn)在文檔的第一行,文檔的出現(xiàn)在文檔的第一行,文檔的第一行必須是有關版本信息的處理

10、指令。第一行必須是有關版本信息的處理指令。 XML及其應用-XML語法-172.3 XML元素元素 n定義定義XMLXML標記標記XMLXML標記完整的語法標記完整的語法: : “” “” “”止止XMLXML標記提供和描述標記提供和描述XMLXML文件或數(shù)據(jù)包文件或數(shù)據(jù)包(XML(XML實體實體) )的內(nèi)容結(jié)構(gòu)的內(nèi)容結(jié)構(gòu)XMLXML標記名都區(qū)分大小寫標記名都區(qū)分大小寫n標記及其標識的部分即標記及其標識的部分即元素元素XML及其應用-XML語法-18一個備忘錄文檔一個備忘錄文檔Important ReminderImportant Reminder Sarah Sarah Dont forge

11、t to recharge K-9 Dont forget to recharge K-9 twice a daytwice a day. . Also, I think we should have his bearings Also, I think we should have his bearings checked out. checked out. See you soon (or late). I have a date See you soon (or late). I have a date with some Daleks.with some Daleks. The Doc

12、torThe DoctorXML及其應用-XML語法-19一個備忘錄文檔一個備忘錄文檔 time-o-gram pri= SarahSarah ReminderReminder Dont forget to recharge K-9 Dont forget to recharge K-9 twice a daytwice a day Also, I think we should have his Also, I think we should have his bearings checked out. bearings checked out. See you soon (or late)

13、. I have a date See you soon (or late). I have a date with somewith some DaleksDaleks The DoctorThe Doctor XML及其應用-XML語法-202.3 XML元素元素 (1 1)標記的命名規(guī)則)標記的命名規(guī)則 n名稱的開頭必須是字母或名稱的開頭必須是字母或“_ _”;n標記名稱中不能有空格;標記名稱中不能有空格;a)a)名稱的字符串只能包含名稱的字符串只能包含“英文字母英文字母”、“數(shù)字數(shù)字”、“_ _”、“- -”、“. .”等字符。等字符。標記:p非法標記 XML及其應用-XML語法-2.

14、3 XML2.3 XML文檔元素文檔元素(2 2)元素的類型)元素的類型n非空元素非空元素由由“開始標記開始標記”與與“結(jié)束標記結(jié)束標記”組成,之間組成,之間是該標記所標記的內(nèi)容是該標記所標記的內(nèi)容元素的內(nèi)容也稱為元素的數(shù)據(jù),可以是文本元素的內(nèi)容也稱為元素的數(shù)據(jù),可以是文本、也可以是該元素所包含的若干個子元素。、也可以是該元素所包含的若干個子元素。n男男n張山張山 XML及其應用-XML語法-2.3 XML2.3 XML文檔元素文檔元素(2)元素的類型)元素的類型n空元素是指沒有內(nèi)容的元素空元素是指沒有內(nèi)容的元素空標記不需要開始標記和結(jié)束標記空標記不需要開始標記和結(jié)束標記空標記以空標記以 “”

15、 結(jié)束結(jié)束 這種標記有的表示一種格式信息,有的則保這種標記有的表示一種格式信息,有的則保存一些數(shù)據(jù)信息。存一些數(shù)據(jù)信息。nnn元素可以為空元素可以為空XML及其應用-XML語法-232.3 XML2.3 XML文檔元素文檔元素(3 3)標記的使用規(guī)則)標記的使用規(guī)則nXMLXML文檔必須具有根元素且根元素必須唯文檔必須具有根元素且根元素必須唯一一n開始標記和結(jié)束標記需配對使用開始標記和結(jié)束標記需配對使用 n標記不能交錯使用標記不能交錯使用 n空元素的使用空元素的使用n標記對大小寫敏感標記對大小寫敏感XML及其應用-XML語法-24 XML實踐 張三(2 2)標記的使用規(guī)則)標記的使用規(guī)則n標記

16、不能交錯使用標記不能交錯使用 在在XMLXML中的元素之間的嵌套關系中的元素之間的嵌套關系XML及其應用-XML語法-25 和 計算機導論 (2 2)標記的使用規(guī)則)標記的使用規(guī)則n標記對大小寫敏感標記對大小寫敏感 在在XMLXML中相配對的標記大小寫需相同中相配對的標記大小寫需相同。XML及其應用-XML語法-262.4 XML2.4 XML的屬性的屬性 屬性屬性:元素的:元素的開始標記開始標記中的中的“名稱名稱- -值值”對。對。語法:屬性名語法:屬性名=”=”屬性值屬性值” ” / ”/XML及其應用-XML語法-272. 4 XML2. 4 XML的屬性的屬性 n要符合要符合XMLXM

17、L的語法格式,屬性值用引號的語法格式,屬性值用引號( (單引單引號或雙引號號或雙引號) )括起來括起來 n一個元素一個元素不可以不可以擁有相同名稱的兩個屬性,擁有相同名稱的兩個屬性,不同的元素不同的元素可以可以擁有兩個相同名稱的屬性擁有兩個相同名稱的屬性n不但自定義標記中可以有屬性,不但自定義標記中可以有屬性,XMLXML文檔的文檔的處理指令中也可以有屬性處理指令中也可以有屬性 n當屬性中既包含單引號,又包含雙引號時,當屬性中既包含單引號,又包含雙引號時,屬性值中的引號必須用屬性值中的引號必須用實體引用方式實體引用方式來表示來表示 Example2XML及其應用-XML語法-28XMLXML元

18、素元素 vs XML vs XML屬性屬性n在在XMLXML文檔中,屬性和元素之間是沒文檔中,屬性和元素之間是沒有本質(zhì)差別有本質(zhì)差別n在設計元素和元素屬性時,事先應在設計元素和元素屬性時,事先應該仔細考慮。該仔細考慮。 XML及其應用-XML語法-292.5 特殊字符和特殊字符和CDATACDATA標記標記 特殊字符特殊字符CDATACDATA標記標記XML及其應用-XML語法-(1 1)特殊字符的使用)特殊字符的使用 在在XMLXML文檔中有些保留(特殊)字符已被賦予特文檔中有些保留(特殊)字符已被賦予特殊的意義,需使用定義的特殊編碼,如下表殊的意義,需使用定義的特殊編碼,如下表30特殊字符

19、代替符號特殊的原因&代表符號的開頭字符>標記的結(jié)束字符<標記的開始字符"設定屬性的值'設定屬性的值Example3XML及其應用-XML語法-31p p p p 張三p21p1p p張三p21p1p p 找錯XML及其應用-XML語法-32(2 2)CDATACDATA標記標記 CDATACDATA標記的作用是通知標記的作用是通知XMLXML語法解析器,語法解析器,該標記中代碼包括文字和標記都要當作該標記中代碼包括文字和標記都要當作純純文本文本來解析。來解析。界定該段代碼的開始和結(jié)束標記為:界定該段代碼的開始和結(jié)束

20、標記為: !CDATA Example4XML及其應用-XML語法-33(2 2)CDATACDATA標記標記 nCDATACDATA段應該遵守下列規(guī)則:段應該遵守下列規(guī)則:CDATACDATA中不能包含字符串中不能包含字符串“!CDATA”“”“”。CDATACDATA中不能再包含中不能再包含CDATACDATA(即不能嵌套(即不能嵌套)。)。CDATACDATA段可以放置在元素內(nèi)容中字符數(shù)段可以放置在元素內(nèi)容中字符數(shù)據(jù)出現(xiàn)的任何地方。據(jù)出現(xiàn)的任何地方。XML及其應用-XML語法-34342.6 2.6 名稱空間名稱空間 XMLXML是一種元置標語言,允許用戶定義自己的標是一種元置標語言,允

21、許用戶定義自己的標記,因此,很可能產(chǎn)生名字重復的情況。記,因此,很可能產(chǎn)生名字重復的情況。為了解決上述問題,為了解決上述問題,W3CW3C在在19991999年年1 1月頒布了名稱月頒布了名稱空間(空間(NameSpaceNameSpace)標準。標準。 名稱空間的定義:將名稱空間的定義:將XMLXML文檔和文檔和URIURI引用標識引用標識的名稱相結(jié)合,來限定其中的元素和屬性名。的名稱相結(jié)合,來限定其中的元素和屬性名。通過使用通過使用URIURI,解決解決XMLXML文檔中標記重名的問文檔中標記重名的問題,從而確保任何一篇題,從而確保任何一篇XMLXML文檔中使用的名字文檔中使用的名字都是全

22、球范圍內(nèi)獨一無二的。都是全球范圍內(nèi)獨一無二的。 XML及其應用-XML語法-名稱空間的聲明名稱空間的聲明: : 將一個唯一的標識符指將一個唯一的標識符指定到一個定到一個URIURI或其他合法字符串上,使用或其他合法字符串上,使用前面定義的標識符號作為標記的前綴(可前面定義的標識符號作為標記的前綴(可選),表示一類標記的出處。選),表示一類標記的出處。 xmlns:prefix= xmlns:prefix=“URIURI”(1 1)名稱空間的聲明)名稱空間的聲明 XML及其應用-XML語法-3636明確的名稱空間明確的名稱空間: : xmlns xmlns關鍵字與一個命名關鍵字與一個命名空間空間URIURI的的前綴前綴相關聯(lián)相關聯(lián)。 使用該命名空間的所有元素和屬性需要加使用該命名空間的所有元素和屬性需要加預定義的前綴。預定義的前綴。(1 1)名稱空間的聲明)名稱空間的聲明 Example5xmlns:book=http:/ :不需要指定前綴。使用不需要指定前綴。使用默認命名空間的所有元素和屬性不需要加默認命名空間的所有元素和屬性不需要加任何前綴。任何前綴。 (1 1)名稱空間的聲明)名稱空間的聲明 Example6xmlns:=http:/ 名稱空間具有繼承性名稱空間具有繼承性,也就是說,如果不,也就是說,如果不明確聲明子元素的名稱空間,子元素將繼明確聲

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論