`
DanielHan
  • 浏览: 54108 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
074641d7-eb86-343f-a745-65a0f693edb5
设计模式
浏览量:7117
社区版块
存档分类
最新评论

DTD(Document Type Definition文档类型定义)

    博客分类:
  • xml
阅读更多
一.DTD分为三类:
1.内部DTD
<?xml version="1.0"?>
<!DOCTYPE 书籍列表 [
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名,作者,价格,简要介绍)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
<!ELEMENT 简要介绍 (#PCDATA)>
]>
<书籍列表>
	<计算机书籍>
		<书名>疯狂XML讲义</书名>
		<作者>李刚</作者>
		<价格>123</价格>
		<简要介绍>XML与Java</简要介绍>
	</计算机书籍>
</书籍列表>


2.外部DTD
book.dtd
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名,作者,价格,简要介绍)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
<!ELEMENT 简要介绍 (#PCDATA)>


<?xml version="1.0"?>
<!DOCTYPE 书籍列表 SYSTEM "book.dtd">
<书籍列表>
	<计算机书籍>
		<书名>疯狂XML讲义</书名>
		<作者>李刚</作者>
		<价格>123</价格>
		<简要介绍>XML与Java</简要介绍>
	</计算机书籍>
</书籍列表>


3.公用DTD
如web.xml中用到的

二.定义元素
<!ELEMENT 元素名 元素类型>


元素类型分类:
  • 任意类型:可以是字符串,可以是包含其他子元素,可以是空元素
  • 字符串类型:可以是字符串,不可以包含其他子元素,不可以是空元素
  • 空元素
  • 包含子元素类型
  • 混合类型


任意类型:
<!ELEMENT 书籍列表 ANY>


字符串类型:
<!ELEMENT 元素名 (#PCDATA)>


空元素:
<!ELEMENT 书籍列表 EMPTY>


包含子元素类型:
有序子元素:
<!ELEMENT 计算机书籍 (书名,作者,价格,简要介绍)>


互斥子元素(只能出现其中之一):
<!ELEMENT 计算机书籍 (书名|作者|价格|简要介绍)>


子元素出现的频率:

    + 表示1次或多次
    * 表示0次或多次
    ? 表示0次或1次

如果不指定,默认为只能且必须出现1次

组合子元素:
DTD允许将多个子元素括起来形成元素组,并可以在元素组后紧跟频率符号

无序子元素:
DTD不提供现成的无序语法,可通过元素组间接实现:
<!ELEMENT 计算机书籍 (书名|作者|价格|简要介绍)+>


三.元素属性
<!ATTLIST 属性所属元素 属性名 属性类型 [元素对属性的约束] [默认值]>


对属性的约束:
1.#REQUIRED 必需的属性
2.#IMPLIED 可有可无的属性
3.#FIXED 该属性的值是固定的,定义时可指定该值。使用元素时,不需要给该属性赋值,XML处理器会自动给元素的属性赋值。

属性类型:


四.定义实体
1.普通实体
<!ENTITY 实体名 "实体值">

在xml文件中用&和;使用实体
现在浏览器对DTD中的实体支持度不够

2.参数实体
仅在DTD中引用的实体成为参数实体
<!ENTITY % 实体名 "实体值">

前两种属于内部实体,外部实体不常用到,故不涉及


  • 大小: 264.5 KB
分享到:
评论

相关推荐

    XML入门教程

    下面是你应该基本要掌握的知识: ...2.几种常见的网站脚本语言:例如javascript 和VBScript 什么是 XML? XML 全称是 EXtensible Markup Language ...XML 使用DTD(Document Type Definition 文档类型定义)来显示这些数据.

    XML中的DTD文档类型定义完全解析

    XML标签的自定义功能非常强大,比如本文将要讲解的DTD(Document Type Definition)就带给人们一种面向对象般的感觉,well,下面就来看一下XML中的DTD文件类型定义完全解析

    计算机xm编程文档类型应用

    文档类型定义--Document Type Definition DTD用来描述XML文档的结构, DTD定义了XML文档中可用的合法元素。 用DTD 指定:可以在文档中存在的元素、元素可以具有的属性、在元素内部元素的层次结构以及元素在整个文档...

    web.xml详解

    定义头和根元素 部署描述符文件就像所有XML文件...这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。 .................

    XML内容验证

    文档类型定义(Document Type Definition) DTD定义了XML文档内容的结构,保证XML以一致的格式存储数据。

    JS操作XML中DTD介绍及使用方法分析

    DTD为英文Document Type Definition,中文意思为“文档类型定义”。DTD肩负着两重任务:一方面它帮助你编写合法的代码,另一方面它让浏览器正确地显示器代码。 一个HTML文档的基本结构可分为两个主要部分: &lt;...

    很经典的XML入门教程

    第四章:文档类型定义 DTD(Document Type Definition) 第五章:在NetScape 和IE 中的XML 第六章:微软的XML 解释器 第七章:XML DOM 第八章:XSL - The Style Sheet Language of XML(XML 的样式表语言) 第九章:...

    JSON与XML优缺点对比分析

    XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。 XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换独立...

    百度地图毕业设计源码-Front-End-interview-questions:整理收集常见前端面试问题及一些知识点

    definition,文档类型定义)是一系列的语法规则,用来定义 XML 或 (X)HTML 的文件类型。浏览器会使用它来判断文档类型, 决定使用何种协议来解析,以及切换浏览器模式。 浏览器模式: 3.1 标准模式、3.2 混杂模式。 ...

    JSON与XML的区别对比及案例应用

    XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。 XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换...

    如何在JS中实现相互转换XML和JSON

    开发中有时候会遇到XML和JSON相互转换,要求在JS中使用,网上找了好多,... XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。 XML是标准通用标记语言 (S

    XML初学入门教程(pdf)

    第一章:在学习XML之前你应该掌握什么 2 第二章:怎么使用XML 3 第三章:XML的语法 4 第四章:文档类型定义 DTD(Document Type Definition) 6 第五章:在NetScape和IE中的XML 8 第六章:微软的XML...

    day023-xml解析笔记和代码.rar

    DTD约束:Document Type Definition文档类型定义 例如: &lt;!ELEMENT contacts (linkman+)&gt; &lt;!ELEMENT linkman (name,email,address,group)&gt; &lt;!ELEMENT name (#PCDATA)&gt; &lt;!ELEMENT email (#...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    DTD是"有效XML文档"的必须文件,我们通过DTD文件来定义文档中元素和标识的规则及相互关系。如何建立一个DTD文件呢?让我们一起来学习: 1.设置元素 元素是XML文档的基本组成部分。你要在DTD中定义一个元素,然后...

    xml入门教程

    DTD(Document Type Definition) •••••••••••••••••••••••••••6 第五章:在NetScape和IE中的XML•••••••••••••••••••••••••••••••••••••••••...

    C++标准库介绍.pdf

    (Document Type DefinitionDTD)方面有很好支持并且在2001年12月增加了支持W3C XMLSchema 基本完整 开放标准 2、XMLBooster[Page] 参考网站WebSite:http://www.xmlbooster.com/  这个库通过产生特制parser办法极大...

Global site tag (gtag.js) - Google Analytics