資料庫開發(20)XML

笨蛋糕發表於2014-02-25

1、XML——可擴充套件標記語言,用來表示資料。當一個應用程式必須與另一個應用程式進行通訊或是從一些其他的應用程式中整合資訊時,XML作為一種資料格式特別有用。

2、在電子文件處理中,標記語言就是對文件的哪部分是內容、哪部分是標記以及標記含義的形式化描述。

標籤是成對使用的,如<title >Database System Concepts </ title>

和HTML不同,XML沒有指定的標籤集,每個應用可以選擇自己需要的標籤集。這項特性是XML主要用於資料表示和交換而HTML主要用於文件格式化的關鍵所在。

3、標籤的存在使得訊息是自描述的。其次,文件的格式不嚴格。再次,XML允許巢狀結構。

4、XML資料結構:

XML文件中基本的結構是元素,一個元素就是一對互相匹配的開始和結束標籤,以及它們之間出現的所有文字。XML文件中必須有一個獨立的根元素來包含文件裡的所有其他元素。

如果文字在某元素的開始標籤和結束標籤之間出現,那麼稱該文字出現在該元素的上下文中。如果每個開始標籤都在同一個父元素的上下文中有唯一的結束標籤與之匹配,那麼該標籤就是正確巢狀的。

5、屬性是字串,不包含標記。屬性在給定標籤中只可以出現一次,不像子元素那樣可以重複。屬性是隱式的、不出現在列印或顯示文件中的文字。

6、名字空間:

就是在每個標籤或屬性的前面加上通用資源識別符號(比如網址)。一份文件可以有不止一個名字空間,它們宣告為根元素的一部分。

7、預設情況下,XML文件可以不需要任何相關模式而被建立。

文件型別定義:DTD是XML文件的一個可選部分。

其主要目的是對文件中出現的資訊進行約束和型別限定。每個宣告都以一個元素的子元素的正規表示式形式出現。每個元素所允許的屬性也在DTD中宣告。與子元素不同,屬性沒有順序之分。屬性必須有一個型別宣告和一個預設宣告。型別為ID的屬性提供該元素的唯一識別符號。一個元素最多隻有一個屬性允許為ID型別。

8、以DTD作為模式機制的侷限性:

1)單個文字元素和屬性不能進一步限定型別。

2)很難用DTD機制來指定子元素的無序集合。

3)ID和IDREF中缺乏型別限定。

9、XML樹模型:

一份XML文件被建模為一棵樹,其結點對應於元素和屬性。元素的文字內容可以建模為該元素的文字子結點。路徑表示式的結果是一個結點的集合。路徑表示式是從左到右執行計算的,任意時刻路徑的結果由文件中某些結點的一個有序集合構成。

10、XML資料儲存:

一種方式是將其以文件形式儲存在檔案系統中。另一種是構建專用的資料庫來儲存XML資料。第三種是把XML資料轉換為關係表示,並將其儲存到關聯式資料庫中。

1)儲存為字串:

小的XML文件可以儲存為關聯式資料庫元組中的字串值。解決方案是把不同型別的元素儲存在不同的關係中,並將一些關鍵元素的值儲存為關係的屬性以便索引。

2)樹表示法:

XML資料中每個元素和屬性都被賦予一個唯一識別符號。

11、關聯式資料庫中的資料必須被髮布(即轉換為XML格式)以匯出給其他應用。匯入的資料必須被分解,即從XML轉換回規範化關係形式並儲存在關聯式資料庫中。將XML資料分解為關係表示的對映也必須被定義。

12、基於XML的表示現在已被廣泛用作儲存文件、電子表單資料以及作為辦公應用軟體包的一部分的包其他資料。XML還用於表示必須在一個應用的不同部分之間進行交換且具有複雜結構的資料。

Web服務使用以XML作為編碼引數和結果的機制,提供遠端過程呼叫介面。



相關文章