006_02XML约束之DTD

  XML技术中,可以编写一个文档来约束一个XML的书写规范,这个文档称之为约束。

常用的约束技术:

  XML DTD

  XDR

  SOX

  XML Schema

DTD快速入门:

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

  

DTD文档的语法主要涉及以下内容的定义:

  定义元素

    在DTD文档中使用ELEMENT关键字来声明一个XML元素。

    语法:<!ELEMENT 元素名称 使用规则>

      使用规则:

        (#PCDATA):指示元素的主体内容只能是普通的文本.(Parsed Character Data)

        EMPTY:用于指示元素的主体为空。比如<br/>

        ANY:用于指示元素的主体内容为任意类型。

        (子元素):指示元素中包含的子元素

          定义子元素及描述它们的关系:

            如果子元素用逗号分开,说明必须按照声明顺序去编写XML文档。

               如: <!ELEMENT FILE (TITLE,AUTHOR,EMAIL)

            如果子元素用“|”分开,说明任选其一。

              如:<!ELEMENT FILE (TITLE|AUTHOR|EMAIL)

            用+、*、?来表示元素出现的次数

              如果元素后面没有+*?:表示必须且只能出现一次

              +:表示至少出现一次,一次或多次

              *:表示可有可无,零次、一次或多次

              ?:表示可以有也可以无,有的话只能有一次。零次或一次

                如: <!ELEMENT MYFILE ((TITLE*, AUTHOR?, EMAIL)* | COMMENT)>

  定义属性

    在DTD文档中使用ATTLIST关键字来为一个元素声明属性。

    语法:<!ATTLIST 元素名 属性名1 属性值类型 设置说明 属性名2 属性值类型 设置说明 … >

      属性值类型:

        CDATA:表示属性的取值为普通的文本字符串

        ENUMERATED (DTD没有此关键字):表示枚举,只能从枚举列表中任选其一,如(鸡肉|牛肉|猪肉|鱼肉)

        ID:表示属性的取值不能重复

      设置说明

        #REQUIRED:表示该属性必须出现

        #IMPLIED:表示该属性可有可无

        #FIXED:表示属性的取值为一个固定值。语法:#FIXED "固定值"

        直接值:表示属性的取值为该默认值

    定义实体

      定义实体就是为一段内容指定一个名称,使用时通过这个名称就可以引用其所代表的内容。

      在DTD文档中使用ENTITY关键字来声明一个实体。

      实体可分为:引用实体和参数实体,两者的语法不同

      引用实体

        概念:在DTD中定义,在XML中使用

        语法:<!ENTITY 实体名称 “实体内容”>

        引用方式(注意是在XML中使用):&实体名称;

      参数实体

        概念:在DTD中定义,在DTD中使用

        语法:<!ENTITY % 实体名称 “实体内容”>

        引用方式(注意是在DTD中使用):%实体名称;

时间: 2024-10-12 12:46:47

006_02XML约束之DTD的相关文章

Schema约束与DTD约束

现将Schema约束与DTD约束实现的一个实例截图出来: 1.DTD 1.1 DTD文件 1.2 DTD实现 2.Schema 2.1 Schema约束 2.2 Schema实现

XML——XML文件约束之DTD详解

1.XML文件约束与DTD的简单介绍 我们编写文档来约束一个XML文档的书写规范,这称之为XML约束. 常用的约束技术有: XML DTD XML Schema DTD的基本概念: document type definition 文档类型定义 DTD文件一般和XML文件配合使用,主要是为了约束XML文件. XML文件引入DTD文件,这样XML可以自定义标签,但又受到DTD文件的约束.比如上一节使用XML描述一个班级的信息,如果我们给每一个学生定义一个<面积>标签,语法上也是没有错误的,但是不

【代码笔记】XML深入学习:DTD约束与DTD语法(1)

2015-12-27 文件名    student.xml 1 <?xml version="1.0" encoding="GB2312" standalone="no"?> 2 <!--大家好,我是注释--> 3 <!--2015.12.27--> 4 <!DOCTYPE students SYSTEM "student.dtd"> 5 <!--这里没写盘符,及表示当前目

XML 约束 (DTD和 schema)

book.DTD 如下: <?xml version="1.0" encoding="UTF-8" ?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.atguigu.com/bookSchema" elementFormDefault="qualified"> <ele

XML的约束技术DTD语法

引用本地DTD约束 <!DOCTYPE 文档根节点 SYSTEM "dtd文件">如: <!DOCTYPE 书架 SYSTEM "book.dtd"><书架> <书> </书> <书> </书> </书架> 引用公共的文件时 <!DOCTYPE 文档根节点 PUBLIC "DTD名称" “DTD文件的URL”>如: <!DOCTYPE

xml约束之dtd

XML约束技术: DTD约束:语法相对简单,功能也相对简单. Schema约束:语法相对复杂,功能也相对强大.(名称空间) DTD约束 导入dtd方式: 内部导入 <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMEN

xml约束之---DTD

 xml约束  ---- DTD 什么是XML约束: 在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束. 为什么需要XML约束? 常用的约束技术 XML DTD XML Schema DTD(Document TypeDefinition),全称为文档类型定义. 文件清单:book.xml <?xml version="1.0" ?> <!DOCTYPE 书架 SYSTEM"book.dtd"> <书架

无废话XML--XML约束(DTD)

基本术语     一.序言Prolog:包括XML声明(XML Declaration)和文档类型声明(Document Type Declaration). 二.良构(well-formed 规范的):符合W3C定义的XML文档. 为什么XML需要验证?    对XML文件施加额外的约束,以便交流.举个例子:要是我和你在交互一份数据,那么按照我的主管意识我可能会这样子定义,按照你的主观意识你可能会那样子定义,那么我们之间要怎么交互数据呢?没有一个提前规定号的约定来规范我们如何写XML,那么就连

【代码笔记】XML深入学习:DTD约束与DTD语法(2)

DTD语法之定义实体(了解即可) 实体分为一般实体和参数实体. 定义实体:定义变量 引用实体:使用变量 一般实体:定义实体在DTD中,实体引用在xml中. 参数实体:定义实体在DTD中,实体引用在DTD中(内部DTD不可行). 定义一般实体: <!ENTITY 实体名 “实体值”>引用一般实体: 举例:  <!ENTITY  大美女 “李冰”> <student 学号=”ID_1001” 姓名=”王五” friend=”ID_1002” school=”&itcast