1 / 29

第 2 章 XML 基本語法

第 2 章 XML 基本語法. XML 基本語法 - 您的第一份 XML 文件. 以下為描述兩本書籍資料的 XML 文件。. XML 基本語法 - 您的第一份 XML 文件. 將 XML 文件內容鍵入 Notepad 後的畫面如下:. XML 基本語法 - 您的第一份 XML 文件. 欲瀏覽 XML 檔時,只要使用 Microsoft 的 Internet Explorer 開啟,即可檢視 XML 檔的內容,畫面將如下所示。. XML 基本語法 - 您的第一份 XML 文件. 整份 XML 文件的結構可以分為以下兩個部份:

quilla
Télécharger la présentation

第 2 章 XML 基本語法

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第 2 章 XML基本語法

  2. XML基本語法 - 您的第一份XML文件 • 以下為描述兩本書籍資料的XML文件。

  3. XML基本語法 - 您的第一份XML文件 • 將XML文件內容鍵入Notepad後的畫面如下:

  4. XML基本語法 - 您的第一份XML文件 • 欲瀏覽XML檔時,只要使用Microsoft的Internet Explorer開啟,即可檢視XML檔的內容,畫面將如下所示。

  5. XML基本語法 - 您的第一份XML文件 • 整份XML文件的結構可以分為以下兩個部份: • 文件前言(Prolog) • 文件元素(Document Element)

  6. XML基本語法 - 文件前言 • XML文件的前言(prolog)包含了以下兩個部份。 • 文件宣告 • 文件類型宣告 • 以下為完整的XML文件宣告語法: <?xml version="版本" encoding="編碼方式" standalone='是否為獨立文件'?> • 文件類型宣告的原文Document Type Declaration,簡稱為DTD,它用於定義XML文件的文法規則,可用於檢查XML文件是否正確。

  7. XML基本語法 - 文件前言 • 文件元素(Document Element)為整份XML文件的主要內容,由於文件元素是XML文件所有元素的最上層元素,亦稱為根元素(Root Element。 • 一份XML文件必須擁有一個文件元素。在Book.xml中,以<booklist>標籤所包含的部份,為該份文件的文件元素。

  8. XML基本語法 - 文件前言 • Book.xml所表達的樹狀結構如下圖所示。

  9. XML基本語法 - 元素的建立 • 每個元素都必須利用開始標籤與結束標籤標記元素。 • 開始標籤的建立方式,為利用『<』與『>』符號,加上元素名稱所形成,如下所示。 <元素名稱> • 結束標籤的建立方式,則利用『</』與『>』,加上元素名稱所形成,如下所示。 </元素名稱> • 完整元素的建立語法如下: <元素名稱>元素內容</元素名稱> • 以下為Book.xml中,儲存書籍作者資料的author元素。 006<author>位元文化(郭尚君)</author>

  10. XML基本語法 - 元素的建立 • 若該元素具備屬性時,則在開始標籤上利用以下語法建立屬性。 <元素名稱 屬性="屬性值" 屬性="屬性值" …> • 屬性值必須使用『“』符號標示。若擁有不止一個屬性時,請用空格分隔。以下為Book.xml內book元素的sale屬性。 004 <book sale="N">

  11. XML基本語法 - 元素的建立 • 其實也可以為Book.xml中price元素加入unit屬性,說明價格所使用的貨幣單位。 <price unit="NT">650</price> • 當然也可以將貨幣單位的屬性,也建立為book元素下的一個子元素,但這樣並不好,原因如下: • 貨幣單位與價格擁有較為密切的關係。 • 若其他程式在讀取出price元素後,還要再到book元素裡讀取unit元素,才能取得所使用的幣別,這似乎也讓人覺得不太合情理。

  12. XML基本語法 - 元素的建立 • 命名XML文件的元素名稱與屬性名稱時,必須符合XML的命名規則,此規則稱之為XML名稱(XML name),命名規則如下: • 可使用A至Z、a至z的英文字母,以及0至9的數字。 • 可使用非英文的字母、數字或表意文字,如:Ψ、α…等。 • 可使用底線(_)、連字符號(-)、句號(.)三種標點符號,其他如:引號(”)、錢號($)、分號(;)…等符號,則不可使用。 • 不可包含空格(space)、回歸字元(carriage return)、換行字元(line feed)或不斷行空白(non-breaking space)。 • 名稱的開頭可使用字母、表意文字或底線,但不可使用數字、連字符號(-)或句號(.)。 • 名稱的長度沒有限制。

  13. XML基本語法 - 元素的建立 • 命名XML文件的元素名稱與屬性名稱時,必須符合XML的命名規則,此規則稱之為XML名稱(XML name),命名規則如下: • 可使用A至Z、a至z的英文字母,以及0至9的數字。 • 可使用非英文的字母、數字或表意文字,如:Ψ、α…等。 • 可使用底線(_)、連字符號(-)、句號(.)三種標點符號,其他如:引號(”)、錢號($)、分號(;)…等符號,則不可使用。 • 不可包含空格(space)、回歸字元(carriage return)、換行字元(line feed)或不斷行空白(non-breaking space)。 • 名稱的開頭可使用字母、表意文字或底線,但不可使用數字、連字符號(-)或句號(.)。 • 名稱的長度沒有限制。

  14. XML基本語法 - 元素的建立 • 當某個元素中,包含其他元素時,則可利用下面的語法建立元素。 <元素名稱> <元素名稱>元素內容</元素名稱> <元素名稱>元素內容</元素名稱> …… </元素名稱> • 以下為Book.xml內表達書籍資料的元素,該元素包含書籍標題(title)、作者(author)與價格(price)三個元素。

  15. XML基本語法 - 元素的建立 • 在XML中,對於這些沒有資料的元素,稱之為空元素。建立空元素時,不需要結束標籤,只需要將開始標籤的最後改以『/>』結尾,語法如下: <元素名稱/> 或 <元素名稱 屬性="屬性值" …/> • 除了英文以外,您亦可運用任何語言命名元素,以下將以中文命名作者標籤。 <作者>位元文化(郭尚君)</作者>

  16. XML基本語法 –元素的建立 • 在XML文件中,欲加入註解時語法如下: <!--註解文字--> • 大小寫有別:在XML中,請注意!在建立標籤名稱與屬性名稱時,英文字母的大寫與小寫是有分別的,所以<author>與<Author>將被視為兩種標籤。 • 實體參考 :XML運用幾個特定的符號建立標籤,如:<、>、/。若在元素內容中使用這些符號時,將被XML剖析器誤認為元素的標籤。若欲在元素內容中顯示這些符號必須利用實體參考(Entity Reference)代替。下表為XML中,用於代表各符號的實體參考。

  17. XML基本語法 - 元素的建立 • XML文件內若有不希望剖析器解析的資料時,可利用CDATA區塊標示這些資料,標示語法如下: <![CDATA[ 資料 ]]> • 在預設情況下,XML剖析器會將元素標籤以外的所有空白,一個字不動地,傳遞給下游程式處理。 • XML標準的xml:space屬性,用於定義元素如何處理元素值所包含空白字元,語法如下: <開始標籤 xml:space=(default|preserve)> 元素內容</開始標籤> • 此屬性的預設值為preserve。將xml:space屬性設定為default時,代表此元素將接受應用程式預設的空白處理方法,若設為preserve,代表應用程式應該保留所有空白。

  18. XML基本語法 - 元素的建立 • 文件的編碼 • XML文件為了能夠世界通用,當XML文件未指定編碼方式時,將預設使用Unicode(統一字碼)編碼。 • 繁/簡體中文所使用的Big5與GB2321編碼,並不是預設使用的編碼。當以繁/簡體中文建立XML文件時,必須指定所使用的編碼方式。 • 處理指令(Processing Instructions,簡稱PI): • 不是XML文件內的資料,而是用於傳遞資料給下游應用程式的元素。 • 當XML剖析器讀取至處理指令時,將原封不動地傳遞給下游應用程式。 • XML文件宣告就是一種處理指令,將告訴XML剖析器,此文件為XML文件。處理指令元素的語法如下: <?名稱 參數1=資料 參數2=資料 …?>

  19. XML基本語法 - XML文件的規則 • 一份XML文件必須遵循的兩大原則,它們是 • 符合規格(well-formed) • 可驗證(valid ) • XML文件的規格要求 • 必須於文件開頭宣告XML文件 • 文件中必須有一個唯一的文件元素 • 每個元素必須有結尾 • 標籤間不可交錯 • 所有屬性值都必須使用引號 • 可使用的實體參照

  20. XML基本語法 - 名稱空間(Namespaces) • XML以名稱空間(Namespaces)的觀念,解決元素名稱重複的問題。 • 名稱空間標準並未包含在XML標準內,而是定義在『Namespaces in XML』標準中,您可至http://www.w3.org/TR/REC-xml-names/瀏覽該份標準。 • 以下語法運用名稱空間做為元素名稱的『前置詞』(Prefix,本書習慣上稱之為字頭),定義出獨一無二的元素標籤。 <名稱空間:元素名稱>…</名稱空間:元素名稱>

  21. XML基本語法 - 名稱空間(Namespaces) • 什麼是URI:URI是一個Internet的標準,泛指以字串標示出的網路資源。 • 建立名稱空間時,將運用URI中的兩種網路資源定位方法 – URL與URN,說明如下: • URL – 全文為Uniform Resource Locator,譯為統一資源定位碼,也就是目前常見的網址,如:http://www.bitc.com.tw。與URI不同處,在於URL將更進一步標示出此網路資源所使用的通訊協定,如:http、ftp…等。 • URN – 全文為Uniform Resource Name,譯為統一資源命名碼,泛指存在較久,並有機構負責維護的資源,例如:一本書在全球通用的ISBN編碼。

  22. XML基本語法 - 名稱空間(Namespaces) • XML文件的前言宣告名稱空間的語法如下: <?xml:namespace ns="URI字串" prefix="前置詞"?> • 以下將宣告以位元文化網址(http://www.bitc.com.tw)做為名稱空間,並以bitc為前置詞。 <?xml:namespace ns="http://www.bitc.com.tw" prefix="bitc"?>

  23. XML基本語法 - 名稱空間(Namespaces) • 若名稱空間僅使用於某個元素內時,可以將名稱空間宣告於該元素的標籤中,語法如下: <前置詞:元素名稱 xmlns:前置詞="URI字串"> • 以下將宣告customlist將以位元文化網址(http://www.bitc.com.tw)做為名稱空間,並以bitc為前置詞。 <bitc:customlist xmlns:bitc="http://www.bitc.com.tw">

  24. XML基本語法 - 名稱空間(Namespaces) • 完成名稱空間的宣告後,運用名稱空間建立元素標籤的語法如下: <前置詞:元素名稱>…</前置詞:元素名稱> • 以下敘述將運用bitc前置詞所代表的名稱空間,建立phone元素標籤。 <bitc:phone>08-7526621</bitc:phone> • 除了元素名稱可使用名稱空間外,元素的屬性也可以使用名稱空間,以下敘述內company元素的level(等級)屬性將使用bitc為名稱空間。 <company bitc:level="3">位元文化</company>

  25. XML基本語法 - 名稱空間(Namespaces) • 當在XML文件中,宣告一個名稱空間時,則該文件所包含的元素,將預設使用此名稱空間。 • 以下XML文件宣告以http://www.bitc.com.tw/customlist為名稱空間。

  26. XML基本語法 - 名稱空間(Namespaces) • 若名稱空間宣告於元素時,則該元素內的子元素將預設使用該名稱空間。 • 以下XML文件將設定customlist元素使用http://www.bitc.com.tw/customlist為名稱空間。

  27. XML基本語法 - 名稱空間(Namespaces) • 以上兩個範例若有元素欲使用別的名稱空間時,只要在該元素中再宣告名稱空間即可。 • 以下XML文件內,phone元素(第6行)的名稱空間,將使用http://www.bitc.com.tw/phone。

  28. XML基本語法 - 名稱空間(Namespaces) • 明確宣告:相對於預設宣告,當每個元素都利用前置詞,明確指出該元素名稱所使用的名稱空間時,稱之為明確宣告,範例2-1所採用的就是明確宣告。

  29. XML基本語法 - 名稱空間(Namespaces) • 若在一份XML文件或者元素中,欲使用數個名稱空間時,只需要利用2-3-4節所介紹的方法,宣告數個名稱空間即可。 • 以下程式碼改寫範例2-1,宣告XML文件使用cl與cm兩個名稱空間。

More Related