微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

XML与DTD

DTD是对XML结构的描述,XML的书写方式必须遵循DTD描述的规则

Entity.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE EntityModel SYstem "Entity.dtd">
<EntityModel>
	<includes>
		<file name="" />
	</includes>
	<Entity name="Role" label="角色" description="角色">
		<Field name="RoleName" type="String" label="角色名称" notnull="no" description="角色名称"/>
		<Field name="RoleID" type="Integer" label="角色编号" notnull="no" description="角色编号"/>
	</Entity>
</EntityModel>

Entity.dtd
<pre name="code" class="html"><?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT EntityModel (includes?,Entity*)>		//? 表示出现0次或一次;*表示0次或多次
<!ATTLIST EntityModel
	name  CDATA #IMPLIED	//表示name是非必需的
	>
<!ELEMENT includes (file+)>	 //file+ 表示file至少出现一次
<!ELEMENT file EMPTY>	//EMPTY表示可以以<file />形式出现
<!ATTLIST file		//ATTLIST描述file的属性相关信息
	name CDATA #required   //name是必须的属性
	>
<!ELEMENT Entity (Field|Ref)*>  //节点Entity的子节点只能出现Field或Ref属性
<!ATTLIST Entity
	name CDATA #required
	label CDATA #IMPLIED
	description CDATA #IMPLIED
	>

<!ELEMENT Field EMPTY>
<!ATTLIST Field 
	name CDATA #required 
	type CDATA #required
	label CDATA #required
	description CDATA #IMPLIED
	notnull CDATA #IMPLIED
	>
<!ATTLIST Ref
	entity CDATA #required
	>

参考文章
http://blog.csdn.net/xiazdong/article/details/7270593

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。