【XML】——DTD
阿新 • • 發佈:2018-12-05
DTD的定義與用途
DTD是Document Type Definition的縮寫
- 定義XML檔案的結構
- 為XML檔案提供語法與規則
- 內容既可以定義在XML檔案中,也可以定義在XML檔案之外
- 使用XML進行資料交換的行業或組織可定義自己的DTD
- DTD對於XML是可選的內容
為了正確交換資料,XML檔案需要確定的結構。
外部DTD
- 每個XML文件單獨定義的DTD可推廣為一個系統內共享的公用DTD
- 關鍵字SYSTEM用於引用一個作者或組織所編寫的眾多XML文件中通用的DTD
- 另一種外部DTD,一個由權威機構制定的,提供給特定行業或公眾使用的DTD。關鍵字是PUCBLIC。
XML檔案構成
所有的XML檔案,均由以模組構成:
- 元素
- 屬性
- 實體
- PCDATA
- CDATA
DTD——元素
- 在DTD中,元素宣告使用下面的語法:
<!ELEMENT 元素名稱 類別>
或者
<!ELEMENT 元素名稱(元素內容)>
栗子:
<!ELEMENT 書名(#PCDATA)>
<!ELEMENT 計算機書籍(書名,價格,簡要介紹)>
-
空元素通過關鍵詞EMPTY進行宣告:
<!ELEMENT 元素名稱 EMPTY>
栗子:
DTD中:
<!ELEMENT br EMPTY>
XML中:
<br />
-
表示帶有任何內容的元素
<!ELEMENT 元素名稱 ANY>
栗子:
DTD中:
<!ELEMENT student ANY>
XML中:
<student>劉偉</student>
或者
<student><name>劉偉</name></student>
(1)子元素要求順序:
(2)子元素不要求順序
(3)重複元素的栗子
(4)成組元素
屬性
- 在DTD中,屬性通過ATTLIST來進行宣告
- 語法:
<!ATTLIST 元素名稱 屬性名稱 屬性型別 預設值>
栗子:
DTD檔案中:
<!ATTLIST payment type CDATA "cash">
XML檔案中:
<payment type="cash"/>
- 屬性的型別:
- 屬性的預設值:
DTD的結構
DTD中定義元素
DTD中定義元素的屬性