A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© zzj123 黑马粉丝团   /  2017-6-13 10:56  /  711 人查看  /  0 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

1 定义元素的语法
使用ELEMENT声明元素:<!ELEMENT 元素名 内容类型或内容>
例如:<!ELEMENT name (#PCDATA)>
表示name元素的内容为文本数据

2 元素类型
元素类型可以是ANY或EMPTY
<!ELEMENT stu ANY>:表示stu元素的内容可以是任意元素,也可以是文本数据,也可以是文本数据+子元素,反正就是任意。
<!ELEMENT stu EMPTY>:表示stu不能有任何内容,即空元素。例如:<stu/>。

3 元素内容
元素内容可以是文本数据,也可以是子元素
<!ELEMENT stu (#PCDATA)>表示stu元素内容为文本,例如:<stu>hello</stu>
  <!ELEMENT stu (name)>表示stu元素内容为name子元素,例如<stu><name></name><stu>,但要注意,如果<name>元素没有声明,那么就会出错。

4 子元素出现次数
可以使用“?”、“*”、“+”来指定子元素的出现次数
<!ELEMENT stu (name?)>表示stu元素可以有0~1个name子元素,即name子元素可有可无。
<!ELEMENT stu(name*)>表示stu元素可以有0~n个name子元素;
<!ELEMENT stu(name+)>表示stu元素可以有1~n个name子元素。

5 多个子元素
  <!ELEMENT stu (name,age,sex)>表示stu必须有三个子元素,分别是name、age、sex,并且子元素出现的顺序也要与声明的顺序一致。

6 枚举子元素
  <!ELEMENT stu (name | age | sex)表示stu只有一个子元素,可以是name、age、sex中的任意一个。

7 复合声明1
<!ELEMENT stu (name | age | sex)?>表示stu元素可以有0~1个(name | age | sex),而(name | age | sex)表示name、age、sex其中的一个。
<stu></stu>
<stu><name/></stu>
<stu><age/></stu>
<stu><sex/></stu>

8 复合声明2
  <!ELEMENT stu (name | age | sex)*>表示stu元素可以有0~n个(name | age | sex),而(name | age | sex)表示name、age、sex其中的一个。
<stu></stu>
<stu><name/><name/></stu>
<stu><name/><age/><age/></stu>
<stu><name/><age/><name/><sex/><sex/></stu>

9 复合声明3
<!ELEMENT stu (name | age | sex)+>表示stu元素可以有1~n个(name | age | sex),而(name | age | sex)表示name、age、sex其中的一个。
<stu><age/></stu>
<stu><name/><name/></stu>
<stu><name/><age/><age/></stu>
<stu><name/><age/><name/><sex/><sex/></stu>

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马