DTD简介 DTD本身是可选的 XML文档可以只是一个正规的文档 还有其他可以用来保证XML文档有效性的技术: Schema XML-Data DTD的内容和特征: 对数据结构进行描述和确认 将这些数据结构传送给其他应用程序和人员 n限制元素内容 ■限制属性类型和值提供默认值 对可置换内容-实体( ntity)进行描述和定义 可以有条件节
DTD简介 DTD本身是可 的选 XML文档可以只是一个正规的文档 还有其他可以用来保证XML文档有效性的技术: Schema XML-Data …… DTD的内容和特征: 对数据结构进行描述和确认 将这些数据结构传送给其他应用程序和人员 限制元素内容 限制属性类型和值,提供默认值 对可置换内容--实体(Entity)进行描述和定义 可以有条件节
DTD简介 DTD结构 n一个文档只尼与一个DTD相关联但是一个DTD可以 分成两部分:内部子集和外部子集 内部子集被包含于XML文档中 ■外部子集可以存放在以dd为后缀名的独立文件中 n当内部子集和外部子集存在声明冲突时,内部子集的 声明覆盖外部子集的声明 外部子集和内部子集的选择: 般情况尽量使用外部子集便于修改和复用 下面情况下使用内部子集 为了使用已经存在但不能完全满足我们需要的DTD,通过修 改和扩充该外部DTD 在DTD开发过程中进行测试
DTD简介 DTD结构: 一个文档只能与一个DTD相关联,但是一个DTD可以 分成两部分:内部子集和外部子集 内部子集被包含于XML文档中 外部子集可以存放在以dtd为后缀名的独立文件中 当内部子集和外部子集存在声明冲突时,内部子集的 声明覆盖外部子集的声明 外部子集和内部子集的选择: 一般情况尽量使用外部子集,便于修改和复用 下面情况下使用内部子集: 为了使用已经存在但不能完全满足我们需要的DTD,通过修 改和扩充该外部DTD 在DTD开发过程中进行测试
DTD简介 个简例 greeting. xml <?xml version=1.0?> KGREETING> He11。Ⅺ! </GREETING> a greeting. dtd: <! ELEMENT GREETING (#PCDATA)>
DTD简介 一个简例 greeting xml greeting.xml: <?xml version="1.0"?> <GREETING> Hello XML! </GREETING> greeting.dtd: <!ELEMENT GREETING (#PCDATA)>
DTD简介 n有效的文档( use greeting. dtd) <GREETING>various random text but no markup</GREETING> 无效的文档 <GREETING><sometag>random text</sometag> <someEmpty Tag/></GrEETING>
DTD简介 有效的文档 (use greeting.dtd) use greeting.dtd) <GREETING>various random text but no markup</GREETING> 无效的文档 <GREETING><sometag>random te t</sometag> <GREETING><sometag>random text</sometag> <someEmptyTag/></GREETING>
文档类型声明 ■文档类型声明( Document Type Declaration)将 XML文档与DTD关联起来 文档类型声明出现在文档的 prolog中,在XML声明 之后以及根元素之前 文档类型声明包含或者指向一个DTD,但在DTD中 不能再包含文档类型声明 语法: <!DOCTYPE doc_elem [SYSTEMPUBLIC] [identifier location [internal subset> doc elem:XML文档的根元素
文档类型声明 文档类型声明(Document Type Declaration) (Document Type Declaration)将 XML文档与DTD关联起来 文档类型声明出现在文档的 文档类型声明出现在文档的prolog中,在XML声明 之后以及根元素之前 文档类型声明包含或者指向一个DTD,但在DTD中 不能再包含文档类型声明 语法: <!DOCTYPE doc_elem [SYSTEM|PUBLIC] [identifier] [location] [internal subset]> doc elem XML doc _ elem: XML文档的根元素