.NET开发

本类阅读TOP10

·NHibernate快速指南(翻译)
·vs.net 2005中文版下载地址收藏
·【小技巧】一个判断session是否过期的小技巧
·VB/ASP 调用 SQL Server 的存储过程
·?dos下编译.net程序找不到csc.exe文件
·通过Web Services上传和下载文件
·学习笔记(补)《.NET框架程序设计(修订版)》--目录
·VB.NET实现DirectDraw9 (2) 动画
·VB.NET实现DirectDraw9 (1) 托管的DDraw
·建站框架规范书之——文件命名

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
DTD指南(3)-DTD-Elements(元素)[原创]

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

Elements(元素)
在一个DTD中,XML元素是通过DTD的元素声明来声明的。

1. 声明一个元素
使用以下语法来使用DTD的元素声明来声明一个XML元素:
<!ELEMENT element-name category>
或者是
<!ELEMENT element-name (element-content)>

2. 空元素
空元素是通过关键字EMPTY来声明的。
语法格式为:
<!ELEMENT element-name EMPTY>

例:
<!ELEMENT br EMPTY>
在XML文档中使用为
<br />

3. 仅有字符数据的元素
使用(#PCDATA)来声明仅有字符数据的元素
语法格式为:
<!ELEMENT element-name (#PCDATA)>
例:
<!ELEMENT from (#PCDATA)>

4. 含有任意内容的元素
含有任意内容的元素是通过关键字ANY来声明的。
所谓任意内容是指能够包含任何结合的可被解析的数据。
语法格式为:
<!ELEMENT element-name ANY>
例:
<!ELEMENT note ANY>

5. 含有子元素的元素
如果包含一个或多个子元素的元素,它将通过含有括号的子元素名称来进行定义
语法格式为:
<!ELEMENT element-name
 (child-element-name)>
或者
<!ELEMENT element-name
 (child-element-name,child-element-name,.....)>

当子元素按照一定恰当分解的顺序进行声明时,那他们在文档中也必须以相同的顺序出现
在全声明中,子元素必须被全部声明,当然他们也可以有自己的子元素。

例:
以下是含有子元素的note元素的全声明
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to      (#PCDATA)>
<!ELEMENT from    (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body    (#PCDATA)>

6. 相同的元素只出现一次的声明
语法格式为:
<!ELEMENT element-name (child-name)>
例:
<!ELEMENT note (message)>
上述例子是指子元素message必须出现一次,并且在被包含的note元素里只出现一次。

7. 相同的元素至少出现一次的声明
语法格式为:
<!ELEMENT element-name (child-name+)>
例:
<!ELEMENT note (message+)>
例中的+是指子元素message必须在被包含的note元素里出现一次或者多次。

8. 相同的元素不出现或者多次出现的声明
语法格式为:
<!ELEMENT element-name (child-name*)>
例:
<!ELEMENT note (message*)>
例中的*是指子元素message能够在被包含的note元素里不出现或者出现多次。

9. 相同的元素不出现或者出现一次的声明
语法格式为:
<!ELEMENT element-name (child-name?)>
例:
<!ELEMENT note (message?)>
例中的?是指子元素message能够在被包含的note元素里不出现或者出现一次。

10. "或"的声明
例:
<!ELEMENT note (to,from,header,(message|body))>
上例是指note元素必须包含一个to元素,一个from元素,一个header元素,
以及一个message元素或body元素

11. 混合内容的声明
例:
<!ELEMENT note (#PCDATA|to|from|header|message)*>




相关文章

相关软件