XML数据的底层结构之DTD(理论部分)

1.文档类型定义DTD(Document Type Definition)是XML结构文件的一种定义方式;
2.DTD定义了可用在文档中的元素,属性,和实体,以及它们之间的相互关系;
3.DTD在建立XML文档中的作用
说说建立一个XML文档的主要步骤:
(1).命名相关的信息项,把其映射为相应的元素或属性.
(2).确定XML文档的层次结构,即各元素之间的嵌套关系
(3).根据层次结构构造DTD;
(4).根据DTD编写相应的XML文档
 
4.DTD的语法:
<1>.元素定义
      (1).元素声明
         形式:  <!ELEMENT name content >
         说明:其中name为XML标记的名字,content 为EMPTY,ANY,描述子元素的顺序和重复次数的内容 模型
      (2).元素内容的类型
       a). EMPTY 类型   :只有属性没有字符数据或子元素
       b). ANY 类型       : 包含DTD定义的所有其他元素或已编译的字符数据
       c). #PCDATA 类型:不包含其他子元素而只包含字符数据的元素
       d). 子元素类型     :包含一系列的子元素,子元素的内容模型用于指定某个元素可以包含哪些子元素,其结构有两种:序列和选择
       e).混合类型         :既包含子元素又包含已编译的字符数据
      (3).元素出现次数的指示符
      "?"    元素可以出现0次或者1次;
      “*”    元素可以不出现,或者出现一次或多次
      "+"   元素必须出现至少一次,或者可以说出现一到多次
<2>.属性定义
      (1).属性声明
       语法: <! ATTLIST Element_name Attribute_name Type Default_value >
       说明:ATTLIST 用于定义元素所具有的属性,
        Element_name 是元素名;
        Attribute_name 是该元素所具有的属性;
        Type 是属性的类型
         Default_value 是属性的默认值
       (2).属性的类型
       a).   CDATA 类型:  此属性的值只能是文本类型
       b).   枚举属性类型: 指定的文本串列表中的某个文本串;
       c).   ID属性类型:   用于标识文档中的元素;
       d).   IDREF /IDREFS 类型: 用于引用同一文档中的另一元素的ID属性
       e).   NMTOKEN/NMTOKENS 属性类型: 必需为一个有效的XML名称;
       f).    ENTITY 和ENTITYS 属性类型: 用来引用文档中的不可解析的外部实体;
       g).   NOTATION 类型
              用于把属性值和DTD中的<! NOTATION>声明关联起来
        (3).属性的默认值
       a).   REQUIRED : 表示这个元素在使用时必须具有该属性;
       b).   IMPLIED :    该属性不是必须使用的;
       c).   FIXED   :     在相应的XML文档中可以不用明确的指定该属性的值,如果明确指定属性值,则必须是定义时给出的默认值
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章