类型:
EMPTY :空元素
ANY:任何内容,可以为空
PCDATA:文本(不能使用特殊符号&< >)(解析,&)、CDATA;
CDATA:把内容当做字符来显示;
(子元素列表):逗号分隔,严格按照声明顺序来使用相应的子元素;
(子元素?):表示该元素可以出现0-1次
(子元素+):表示该元素可以出现0-无数次 <!ELEMENT root (test+)>
(子元素*):表示该元素可以出现1-无数次
(子元素1|子元素2):表示可以出现子元素1或者子元素2其中一个;
(子元素1,(子元素2,子元素3)?):
()表示分组,该组出现0-1次 先后顺序严格按照声明;
例如:
<!ELEMENT root (test+)>
<!ELEMENT root (test,(name,age))*>
<test></test>
<name></name>
<age></age>
<name></name>
<age></age>
CDATA:表示值为字符,表示未赋值时自动给定的值;
(en1 en2….):枚举类型,表示
例如:type (text|radio|submit|checkbox) #REQUIRED
ID:表示值为唯一ID
IDREF:参照已存在(其他)ID;
IDREFS:值为一个或多个参照已存在(其他)ID;
多个参数中间用“空格”为分隔符,不能使用逗号
NMTOKEN:值为合法的XML名称;
NMTOKENS:由空格分隔开的多个XML名称;
ENTITY:在DTD中声明实体名;
ENTITES:在DTD声明用空格分隔的实体名;
NOTATION:在DTD声明中的注释;
例如:<!ATTLIST test3
name CDATA "gao"
type (text|radio|submit|checkbox) #REQUIRED
alt (text|radio|submit|checkbox) #IMPLIED
value CDATA #FIXED “abc”
id ID #IMPLIED
classname IDEFS #IMPLIED
>
默认值:
①#REQUIRED:表示该元素必须有该属性值;
<img src=””>
②#IMPLIED:表示该属性值可有可无;
<img src=”” alt=””>
③#FIXED:表示该属性值有固定值;
例如:name CDATA #FIXED "gao"
④#Default:默认值
XML标记命名规则
1)标记必须以英文字母或下划线“_”作为开头,如果在XML声明中把
encoding属性值设置为“GB2312”,那么也可以使用中文开头;
2)XML标记不区分大小写;
3)标记名不可以XML三个字母为开头(不论大小写);
4)除了开始字符外,其他字符必须是英文、数字、下划线、连接线和
点“.“;
例如:
合法:
<abc> 、<_xy>、<书号>、<Hell-OK>等;
不合法:
<123a>、<-hello>、<书 号>、<XML123>、<ra%>等;