xml约束技术之dtd的详解

1.DTD官方教程

##2.xml约束技术:
dtd约束:语法相对简单,功能也相对简单。先出现
schema约束:语法相对复杂,功能也相对强大。采用和xml语法类似的编写方式,schema约束出现就是为了替换dtd约束。

3.DTD简介:

  文档类型定义(DTD)可定义合法的XML文档构建模块。它使用一系列合法的元素来定义文档的结构。DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。

3.1导入DTD的方式:

1.内部导入:

#导入方式:nbsp;root-element [element-declarations]>#实例:nbsp;note []>ToveJaniReminderDon't forget me this weekend

登录后复制

(第二行)定义此文档是 note(根标签) 类型的文档。
(第三行)定义 note 元素有四个元素(标签):"to、from、heading,、body"
(第四行)定义 to 元素为 "#PCDATA" 类型
(第五行)定义 frome 元素为 "#PCDATA" 类型
(第六行)定义 heading 元素为 "#PCDATA" 类型

(第七行)定义 body 元素为 "#PCDATA" 类型

外部导入方式:
  本地文件:

#导入方式: nbsp;note SYSTEM "note.dtd">#note.dtd文件内容:

登录后复制

  公共的外部导入:一般项目采用公共外部导入,比如ssh的xml文件基本上就是采用了这种方式

#导入方式: nbsp;根元素 PUBLIC "http://rlovep.com/peace.dtd">#如hibernate.cfg.xml:nbsp;hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

登录后复制

3.2DTD语法:

  1.约束标签
 语法:

   或 

登录后复制 类别:
空标签: EMPTY。 表示元素一定是空元素.例如::
普通字符串: (#PCDATA)。表示元素的内容一定是普通字符串(不能含有子标签)。例如:

任何内容: ANY。表示元素的内容可以是任意内容(包括子标签) 例如:

 元素内容:

顺序问题:: 按顺序出现子标签 次数问题:标签  :  必须且只出现1次。标签+ : 至少出现1次标签*  : 0或n次。标签? : 0 或1次。声明"非.../既..."类型的内容

登录后复制

 2.约束属性:
 语法:

登录后复制

 属性类型:

CDATA :表示普通字符串(en1|en2|..): 表示一定是任选其中的一个值ID:表示在一个xml文档中该属性值必须唯一。值不能以数字开头

登录后复制

 默认值:

#REQUIRED 属性值是必需的#IMPLIED   属性不是必需的#FIXED value 属性不是必须的,但属性值是固定的

登录后复制

3.3测试如下,请细看注释:

nbsp;note []>ToveJaniReminderDon't forget me this weekend

登录后复制

以上就是xml约束技术之dtd的详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2418881.html

(0)
上一篇 2025年3月3日 02:29:55
下一篇 2025年2月22日 18:07:23

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论