学习目标:
能够熟练的使用dtd编写格式良好的xml文件
学习内容:
1、 xml的介绍
2、 xml约束介绍
3、 dtd约束的写法
学习产出:
-
什么是XML?
- XML指可扩展标记语音 (EXtensible Mar kup Language)
- 从名字来让学生联想到另一门语音: HTML
- 从HTML的类比介绍: XML在早期的主要功能也是传输数据
- 观察案例代码,大概读出其中的数据
-
XML的约束介绍
-
XML的规则:
- 有且只有一个根元素
- XML标签大小写正确区分
- 正确使用元素标签
- 正确嵌套标签
- 使用了合法的标签名
- 定义有效的属性,且属性一定放到引号中
-
-
XML的约束技术
- 提问:是不是在XML中什么标签都能定义?
- 以wed.xml为例,定义了其他标签会引起错误
- 引出今天的主题:给xml添加限制(约束)
- 可以使用两种技术完成:
- DTD:文档类型定义(Document Type Def inition)
用来约束XML文档,保证XML文档正确性和数据的有效性
- Schema:xsd-XML Schema Document
是用来代替DTD约束的新方式,功能上比DTD更强大
- DTD:文档类型定义(Document Type Def inition)
- 提问:是不是在XML中什么标签都能定义?
-
DTD定义约束
- 在XML加入DTD声明
- 限制当前xml中能出现的标签
- 语法:<!ELEMET element-name (type)>
- !ELEMET与元素类型必须大写
- element-name: 标签(元素)的名字(books,book...)
-
元素类型:
- 混合元素:当前元素中有其他元素
- 文本元素:标签中间放的是文本 (#PCDATA)
- 空元素:标签中间没有任何内容
- EMPTY
- 符号
- * 任意次
- + 一次或以上
- ? 一次或0次
- | 或者
-
属性
- 属性类型:
- ID 取值必须唯一
- CDATA 字符串(包括数字和中文)
- IDREF 指向文档中其他地方声明的ID类型的值
- 属性特征:
- #REQUIRED 必须具备的属性(不能为空)
- #IMPLIED 元素的实例中可以忽略该属性(可以有也可以没有)
- 写法:
- 注意不要直接放数字,可以使用a1,a2
- 这里需要限制sex为男女,所以直接使用(男|女)
- 最后加上的 '男' 是默认值
- 属性类型: