閒聊DTD語法(二)

2021-07-02 04:10:13 字數 1040 閱讀 6657

1.元素

(2)元素約束:子元素的列表,將可以包含的子元素用小括號括起來 

(3)子元素之間可以使用逗號進行分割,表明子元素必須按照順序出現

(4)子元素之間可以使用豎線進行分割,表面子元素出現其中之一

+ 表示一次或多次

* 0次或多次

? 0次或一次

我們也可以使用小括號進行組的操作

2.屬性

attlist 元素名 

屬性名 屬性型別 屬性約束

屬性名2 屬性型別 屬性約束

......>

(1)屬性型別

cdata:表示屬性的值是乙個普通字串

enumerated : 屬性的值是乙個列舉列表中的值

id: 表明屬性的值必須在整個文件中都是唯一的,如果有重複的id則校驗不通過,id 屬性的值只能由字母,下劃線開始,不能使用數字,不能出現空白字元

(2)屬性約束

#required  ---  表明當前屬性是乙個必須存在的屬性,如果這樣的屬性不存在則在校驗時會報錯

#implied --- 表明當前屬性是乙個可選的屬性,可以有也可以沒有

#fixed '固定值'

--- 表明當前屬性具有乙個固定值,這樣的屬性不需要進行賦值,自動就會取這個固定值為值.如果這樣的屬性指定了乙個不是固定值的值則校驗報錯

'預設值'

--- 表明當前屬性具有乙個預設值,如果給了其他的值就用其他值,如果沒有給值則取這個預設值

(3)entity(實體)

entity >,就是對一大段內容的引用,可以簡化**的復用

引用實體:在xml中引用的實體叫做引用實體

entity 實體名稱 「實體內容」 >

&實體名稱;

引數實體:在dtd中引用的實體叫做引數實體

entity

% 實體名稱 "實體內容">

%實體名稱;

DTD 語法快速指南

a b c 和 d 是在下例中代表元素的變數。元素必須有正好乙個a 至少乙個b 由加號表示 零個或多個c 由星號表示 以及零個或乙個d 由問號表示 元素可能有a或b或c之一 元素不包含任何內容 元素可以包含在 dtd 中列出的任何元素 元素可能包含經過語法分析的字元資料或另乙個元素 element2...

DTD約束語法細節

一 dtd約束語法細節 一 元素定義 在dtd文件中使用element宣告乙個xml元素,語法格式如下所示 元素型別可以是元素內容 或型別 如為元素內容 則需要使用 括起來,如 如為元素型別,則直接書寫,dtd規範定義了如下幾種型別 empty 用於定義空元素,例如 any 表示元素內容為任意型別。...

DTD 語法快速指南

a b c 和 d 是在下例中代表元素的變數。元素必須有正好乙個a 至少乙個b 由加號表示 零個或多個c 由星號表示 以及零個或乙個d 由問號表示 元素可能有a或b或c之一 元素不包含任何內容 元素可以包含在 dtd 中列出的任何元素 元素可能包含經過語法分析的字元資料或另乙個元素 element2...