一、定義標記:
1、規定子標記的標記:
2、限制只有文字資料的標記:
3、有混合內容的標記:
其中最外層括號外的「*」必不可少
4、empty和any:
以上定義乙個空標記,或只含空字元的非空標記
以上定義乙個沒有任何約束的標記
二、dtd的完整性:
不允許無窮巢狀:如果某個標記可以出現某個子標記,那麼該子標記不能再被定義成它的父標記;xml檔案中的每個標記都必須在dtd中有相應的元素進行約束。
三、標記的屬性的定義:
屬性名稱1 屬性型別1 預設值情況1
屬性名稱2 屬性型別2 預設值情況2
屬性名稱3 屬性型別3 預設值情況3
對於xml檔案中出現的每個標記的每個屬性,都必須進行如上的定義
1、預設值情況總結:
"字串" ——標記必須有該屬性,且有預設值
#implied——標記可以沒有該屬性,沒有預設值
#required——標記必須有該屬性,沒有預設值
#fixed "字串"——標記可以沒有該屬性,但一旦有,屬性值就固定不變
2、屬性型別總結:
cdata:
即character data,是不能含有「<」、「>」、「|」、「'」、「"」的字串,如果想使用這些符號,應使用字元引用和實體引用。
enumerated:
它不是關鍵字,是指型別定義的格式,表示該屬性只能取列舉出來的值,如:
nmtoken:
屬性值可由字母、數字、「_」、「.」、「-」組成,不能有空格。
nmtokens:
同上,但可以有空格。
id:屬性值可由字母、數字、「_」、「.」、「-」組成,具有專有性,即不允許其它同類屬性與自己有相同的值。其「預設值情況」只能是「#required」和「#implied」。
idref:
該屬性值只能取某個標記中id型別的屬性的屬性值。用於通過標記的屬性值來判斷標記之間的關係。
idrefs:
同上,但可以有空格來分割多個值。
文件型別定義DTD
xml系列 文件型別定義dtd 一,什麼是dtd?1,xml是一種元標記語言,是描敘語言的語言,定義標記的語法結構,從而生成新標記。而dtd則是為新標記建立文件並進行規範說明。也就是說xml定義標記的語法結構是通過dtd來定義,並指定文件結構的規範,而xml文件來使用標記。2,自描述資料的規範。二,...
DTD 文件型別定義
dtd是xml檔案的驗證機制,屬於xml檔案的組成部分。dtd在xml檔案中所犯扮演的角色就是定義xml檔案的元素結構 元素標記和屬性。一旦定義好dtd,就可以使用xml解析器對編寫好的xml文件進行dtd檢查,以判斷xml文件內容是否為有效的xml文件內容。dtd可以在xml文件中直接寫入,也可以...
DTD文件型別定義
2.屬性定義語法 dtd對元素屬性的約束 3.特殊符號轉義 1.dtd的全稱為 document type definition 文件型別定義,即xml的一種約束 2.xml extensible mark up language 可擴充套件標記語言 3.xml兩種約束方式 dtd和schema 1...