【郑州校区】DTD的细节
1.1.1 语法细节在DTD文档中使用ELEMENT关键字来声明一个XML元素。 • 语法:<!ELEMENT 元素名称 使用规则> 使用规则: • (#PCDATA):指示元素的主体内容只能是普通的文本.(Parsed Character Data) • EMPTY:用于指示元素的主体为空。比如<br/> • ANY:用于指示元素的主体内容为任意类型。 • (子元素):指示元素中包含的子元素 • 定义子元素及描述它们的关系: – 如果子元素用逗号分开,说明必须按照声明顺序去编写XML文档。 • 如: <!ELEMENT FILE (TITLE,AUTHOR,EMAIL) – 如果子元素用"|"分开,说明任选其一。 • 如:<!ELEMENT FILE (TITLE|AUTHOR|EMAIL) – 用+、*、?来表示元素出现的次数 • 如果元素后面没有+*?:表示必须且只能出现一次 • +:表示至少出现一次,一次或多次 • *:表示可有可无,零次、一次或多次 • ?:表示可以有也可以无,有的话只能有一次。零次或一次 1.1.2 定义属性• 在DTD文档中使用ATTLIST关键字来为一个元素声明属性。 • 语法: <!ATTLIST 元素名 属性名1 属性值类型 设置说明 属性名2 属性值类型 设置说明 … > • 属性值类型: – CDATA:表示属性的取值为普通的文本字符串 – ENUMERATED (DTD没有此关键字):表示枚举,只能从枚举列表中任选其一,如(鸡肉|牛肉|猪肉|鱼肉) – ID:表示属性的取值不能重复 • 设置说明 – #REQUIRED:表示该属性必须出现 – #IMPLIED:表示该属性可有可无 – #FIXED:表示属性的取值为一个固定值。语法:#FIXED "固定值" 直接值:表示属性的取值为该默认值 1.1.3 实例代码1[AppleScript] 纯文本查看 复制代码 <!ATTLIST 商品
类别 CDATA #REQUIRED
颜色 CDATA #IMPLIED
>
<?xml version = "1.0" encoding="GB2312" standalone="yes"?>
<商品 类别="服装"颜色="黄色" /> 1.1.4 实例代码2[AppleScript] 纯文本查看 复制代码 <?xml version = "1.0" encoding="GB2312" standalone="yes"?>
<!DOCTYPE 购物篮 [
<!ELEMENT 购物篮 (肉+)>
<!ELEMENT 肉 EMPTY>
<!ATTLIST 肉 品种 ( 鸡肉 | 牛肉 | 猪肉 | 鱼肉 ) "鸡肉">
]>
<购物篮>
<肉 品种="鱼肉"/>
<肉 品种="牛肉"/>
<肉/>
</购物篮> 传智播客·黑马程序员郑州校区地址 河南省郑州市 高新区长椿路11号大学科技园(西区)东门8号楼三层
|