标签:一个 选择 描述 其他 类型 require 元素 required 关键字
DTD技术
文档类型定义----Document Type Definition
用来描述XML文档的结构,一个DTD文档包含:
	1、元素的定义规则
	2、元素之间的关系规则
	3、属性的定义规则
使用DTD可以:
每个XML文件可以携带一个自身格式的描述
不同组织的人可以使用一个通用DTD用来交换数据
应用程序可以使用一个标准DTD校验从外部接受的XML数据是否有效
DTD文档的声明以及引用:
内部DTD
<!DOCTYPE 根元素 [定义内容]>
外部DTD文档
<!DOCTYPE 根元素 SYSTEM "DTD文件路径">
内外部DTD文档结合
<!DOCTYPE根元素 SYSTEM "DTD文件路径 [定义内容]>
---------------------------
元素的定义:
<!ELEMENT NAME CONTENT>  
<!关键字 元素名称 元素类型>
元素类型:
	EMPTY ---不能包含子元素和文本,但可以有属性(空元素)
	#PCDATA---可以包含任何字符数据,但是不能在其中包含任何子元素
	纯元素类型---只包含子元素,并且这些子元素外没有文本
	ANY----------可以包含任何在DTD中定义的元素内容
<!ELEMENT 元素名称 EMPTY>
<!ELEMENT 元素名称 (#PCDATA)>
<!ELEMENT 元素名称 (人+,家电*)>
<!ELEMENT 元素名称 ANY> ----将根元素设置为ANY,元素出现的次数和顺序不受限制
			通常一般用在子元素里面
() 给元素分组
  |  在列出的对象中选择一个
  ,  对象按照指定顺序出现
  *  0-多次
  ? 0-1次
  +  1-多次
<!DOCTYPE CCTV-6 [
  <!ELEMENT CCTV-6(电影+)>
  <!ELEMENT 电影(名称,主演+,类型?,片长)>
  <!ELEMENT 名称 (#PCDATA)>
  <!ELEMENT 主演 (#PCDATA)>
  <!ELEMENT 类型 (#PCDATA)>
  <!ELEMENT 片长 (#PCDATA)>
]>
定义属性的语法:
<!ATTLIST 元素名称 属性名称 属性类型 属性特点...>
属性类型——----------------------------------------------
CDATA  ---  <!ATTLIST 元素名称 CDATA #REQUIRED>
	表示属性值可以是任何字符(包括数字和中文)
		<木偶 姓名="Pi Luocao"/>
		<木偶 姓名="匹诺曹"/>
ID----------<!ATTLIST 公司职员 
		编号 ID #REQUIRED
		姓名 CDATA #REQUIRED>
	该属性的取值是唯一的
IDREF/IDREFS----<!ELEMENT 家庭 (人+)>
		<!ELEMENT 人 EMPTY>
		<ATTLIST 人
			relID ID #REQUIRED
			parentID IDREFS #IMPLIED
			name CDATA #REQUIRED	
		>
	IDREF属性的值只向文档中其他地方声明的ID类型的值
	IDREFS,同IDREF,但是可以具有由空格分开的多个引用
Enumerated------<!ATTLIST person
		  婚姻状态 (未婚|结婚|离婚) #IMPLIED>
		<!ATTLIST person 性别(男|女) #REQUIRED>
	预定义一些值,属性的值必须在所在的值范围内
属性特点——
#REQUIRED
#IMPLIED
#FIXED value
Default value
标签:一个 选择 描述 其他 类型 require 元素 required 关键字
原文地址:http://www.cnblogs.com/javaxiaodoufu/p/7524042.html