javaDTD语法
-
- 文档声明
一共有3种书写dtd文档的方式
- 内部DTD,在XML文档内部嵌入DTD,只对当前XML有效。
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE beans [
... //具体的语法
]>
<beans>
</beans>
- 外部DTD—本地DTD,DTD文档在本地系统上,公司内部自己项目使用。
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE beans SYSTEM "bean.dtd">
包含了4部分内容
a.!DOCTYPE:是dtd约束文档的固定格式
b.beans:约束xml文档中的根元素想要使用dtd约束就必须叫beans
c.SYSTEM:系统,当前使用的dtd约束文档来源于本地的操作系统
d."bean.dtd":dtd约束文档所在的位置,和xml在同一个文件夹下可以直接使用名字
<beans>
</beans>
- 外部DTD—公共DTD,DTD文档在网络上,一般都由框架提供。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
</beans>
一共包含了5部分内容:
- !DOCTYPE:dtd约束文档声明的固定格式
- Beans:根源元素的名称
- PUBLIC:公共,dtd约束文档来源于互联网
- "-//SPRING//DTD BEAN 2.0//EN":dtd约束文档的名称,一般由框架提供
- "http://www.springframework.org/dtd/spring-beans-2.0.dtd">:dtd约束文档在互联网上的位置
- 元素声明
作用:约束xml文档中的元素如何编写
定义元素语法:<!ELEMENT 元素名 元素描述>
!ELEMENT:固定格式
元素名:自定义
元素描述包括:符号和数据类型
常见符号:
?:代表元素只能出现0次或者1次
+:代表元素至少出现1次 1次或者多次
*(?和+): 代表元素可以出现任意次 0次,1次,多次
():一组元素 (a,b)* aabaabbbb (a|b)* abab
|:选择关系 在多个中选择一个 张三|李四
,:顺序关系 a,b,c 元素书写顺序只能先写a,在写b,最后写c
常见类型:#PCDATA 表示内容是文本,不能是子标签
- 实例
-
- 属性声明
作用:在约束文档中规定xml文档中的属性如何编写
属性的语法:(attribute)
<!ATTLIST 元素名
属性名 属性类型 约束
属性名 属性类型 约束
...
>
!ATTLIST:属性声明的固定写法
元素名:属性必须是给元素添加,所有必须先确定元素名
属性名:自定义
属性类型:ID、CDATA…
ID : ID类型的属性用来标识元素的唯一性(不能重复,必须有,只能以字母开头)
CDATA:文本类型,字符串
约束:
#REQUIRED:说明属性是必须的;required
#IMPLIED:说明属性是可选的;implied
- 实例