標籤:
1、DTD的作用
DTD是XML的型,列出了XML中的元素有哪些、元素間的關係、元素可以有哪些內容,元素的屬性也有哪些。DTD實質說明的是元素間的關係,也就是類之間的關係。是一棵樹狀結構的說明,與XML相似。
DTD的職責只負責對文檔的結構進行規範,真正的驗證工作由應用程式執行。所以XML不是一門處理語言,而是一門描述資料的語言。
DTD的關鍵字是物件導向中的Attribute屬性,是對各種類型的一個說明。
DTD是對要描述的XML所有的關鍵字的一個定義,相當於自訂了關鍵字(XML的元素的標籤結構)
2、DTD的內容:
(1)DTD的引用
DTD可以在XML的內部,必須要有DOCTYPE關鍵字進行引導。在外部則要進行相關的引用,分為系統標識符和公用標識符。採用多種方式來參照DTD。
<!DOCTYPE XXX根項目 SYSTEM “路徑” [內部定義]>
<!DOCTYPE XXX根項目 PUBLIC “FPI的定義”“檔案名稱”>
(2)元素的聲明
元素的內容模型 元素內容、混合內容、空內容、任意內容。
元素內容:子項目、順序、選擇。(,,)(|)
混合內容與元素內容形似。(PCDATA|元素)
空 <!ELEMENT 元素 EMPTY>
任意<!ELEMENT 元素 ANY>
(3)屬性聲明
<!ATTLIST 元素名 屬性名稱 屬性類型 屬性值聲明>
屬性類型:對屬效能夠取的值進行限制。特彆強調,在定義的時候是對屬性的類型限制,但在使用的時候卻不一樣。
ID類型,則屬性在使用的時候必須保證唯一性。
定義一個屬性為IDREF類型,則此屬性在用的時候要參考元素屬性類型為ID的屬性名稱。
標識作用NMTOKEN
枚舉類型的屬性
實體(配合實體的定義使用,實體在屬性中存在的時候)
屬性值的取值方式:可以是預設、固定,必須、隱含。是對屬性是否存在的進行限制。可以理解為屬性的值是多少。
(4)實體引用(在XML中使用這些在DTD中定義的實體)
內建實體(5個標準的)字元實體(字元直接引用&)普通實體(一段內容的替換通常XML引用DTD--DTD引用文字檔無符號 &)參數實體(DTD的定義中進行替換%)
DTD指定了遊戲規則。