DTD 用于指定:可以在文檔中存在的元素、那些元素可以具有的屬性、在元素內(nèi)部元素的層次結(jié)構(gòu)以及元素在整個(gè)文檔中出現(xiàn)的順序。
語(yǔ)法:
A、B、C 和 D 是在下例中代表元素的變量。
元素必須有正好一個(gè) A
、至少一個(gè) B
(由加號(hào)表示)、零個(gè)或多個(gè) C
(由星號(hào)表示)以及零個(gè)或一個(gè) D
(由問(wèn)號(hào)表示):
<!ELEMENT element (A, B+, C*, D?)>
|
元素可能有 A
或 B
或 C
之一:
<!ELEMENT element (A | B | C)>
|
元素不包含任何內(nèi)容:
元素可以包含在 DTD 中列出的任何元素:
元素可能包含經(jīng)過(guò)語(yǔ)法分析的字符數(shù)據(jù)或另一個(gè)元素( element2
)。星號(hào)(*)表示混合內(nèi)容模型 — 其中元素可以包含不同類型的屬性。
<!ELEMENT element (#PCDATA|element2)*>
|
下例將文本 "entity reference" 插到文檔中它出現(xiàn)的任何地方:
<!ENTITY element "entity reference">
|
可以看到在 XML 文檔中該實(shí)體引用元素如下:
下例表明其元素是一個(gè)包含三個(gè)屬性的空標(biāo)記:屬性 1( att1
)是一個(gè)可選屬性,屬性 2( att2
)是帶有固定值 "A"
的屬性,屬性 3( att3
)是必需的文本屬性。
<!ELEMENT element EMPTY>
<!ATTLIST element
att1 ID #IMPLIED
att2 CDATA #FIXED "A"
att3 CDATA #REQUIRED>
|
可以看到在 XML 文檔中使用的這個(gè)元素如下:
<element att2="A" att3="MustHave"/>
|
屬性 CDATA
表示包括的信息應(yīng)該是文本。 ID
屬性表明必須填入唯一的標(biāo)識(shí)。每個(gè)元素只能有一個(gè) ID
屬性。另外, CDATA
表示 att2
和 att3
可能包含任何字符串。
posted on 2009-06-18 18:22
創(chuàng)建更好的解決方案 閱讀(1125)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
軟件設(shè)計(jì)