XML中DTD的属性及应用.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.DTD的声明方式分为内部声明与外部声明 内部声明的格式是 !DOCTYPE?根元素?[ !ELEMENT?根元素?(元素1,元素2) !ELEMENT?元素1?(#PCDATA) !ELEMENT?元素2?(#PCDATA) ] 外部声明的格式分两种,对应的关键字为SYSTEM与PUBLIC !DOCTYPE?根元素?SYSTEM?外部DTD文件 !--?这里的外部DTD文件,若不指明 绝对路径,则必须是和xml文件在同一目录,否则无效?--? PUBLIC声明的DTD文件通常是一个由权威机构制订的,提供给特定行业或公众使用的DTD。 !DOCTYPE?根元素?PUBLIC?外部DTD的标示名?外部DTD文件路径 2.元素类型声明 !ELEMENT?元素名?元素内容描述 ?DTD中使用的元素内容类型有:EMPTY、ANY、Mixed、Elements EMPTY是指元素不能有任何的内容,但可以有属性: !--?DTD声明部分?--? !ELEMENT?元素1?EMPTY !ATTLIST?元素1?性别?(男|女)?男? !--?XML文件部分?-- 元素1?性别=女?/? !--?这里若是以元素1/元素1的形式出现,即使里面没有任何数据,也会产生错误?-- ?ANY说明元素可以有任何类型的子元素,也可以是纯文本,还可以为空 !ELEMENT?元素2?ANY? ?这里需要特别注意的是,虽然用ANY定义的元素可以包含其它元素,但必须遵循XML文件的有效的原则,即XML文件规定文件中所使用的任何元素都必须在DTD中给出定义 看下面这段非法的文件: ? ?xml?version=1.0?encoding=gb2312? !DOCTYPE?图书信息?[ !ELEMENT?图书信息?ANY ] 图书信息 书名新概念英语/书名 /图书信息 编译器会提示这样一条错误信息 This file is not valid: Element 书名 has not been declared. 就是提示书名这个元素没有经过定义,要纠正这个错误,只要在DTD定义部分加入定义语句!ELEMENT 书名 (#PCDATA)就可以了 Mixed允许混合内容使得字符数据和其他元素能在元素内共存,它并不是以关键字的形式存在的 !ELEMENT?元素3?(#PCDATA|子元素1|子元素2) ? ?xml?version=1.0?encoding=gb2312? !DOCTYPE?图书信息?[ !ELEMENT?图书信息?(#PCDATA|书名|价格)* !ELEMENT?书名?(#PCDATA) !ELEMENT?价格?(#PCDATA) ] 图书信息 今日新到图书: 书名 XML实用教程 /书名 价格 ¥26.00 /价格 /图书信息 Elements规定特定子元素必须按规则与顺序出现,子元素后可以用各种元字符来说明出现的次数 !ELEMENT 元素4 (子元素1,子元素2,子元素3) 可能出现的元字符: 元字符 含义 + 出现1次或多次 * 出现0次或多次 ? 出现0次或1次 无符号 只能出现1次 下面的例子中,IT求职的各项子元素必须按顺序和元字符说明的次数来出现 ?xml?version=1.0?encoding=gb2312? !DOCTYPE?IT求职?[ !ELEMENT?IT求职?(招聘信息)+ !ELEMENT?招聘信息?(公司名,招聘职位+,公司网站?,联系方式*) !ELEMENT?公司名?(#PCDATA) !ELEMENT?招聘职位?(#PCDATA) !ELEMENT?公司网站?(#PCDATA) !ELEMENT?联系方式?(#PCDATA) ] IT求职 招聘信息 公司名中兴通讯/公司名 !--这里招聘职位出现了2次-- 招聘职位1.Java高级工程师/招聘职位 招聘职位2.C++高级工程师/招聘职位 !--这里公司网站出现了1次-- 公司网站//公司网站 !--这里联系方式出现了2次-- 联系方式地址:深圳市南山区高新技术产业园科技南路中兴通讯大厦/联系方式 联系方式电话:0755联系方式 /招聘信息 招聘信息 公司名 阿里巴巴 /公司名 !--这里招聘职位出现了1次-- 招聘职位软件测试工程师/招聘职位 !--没有出现公司网站-- !--没有出现联系方式-- /招聘信息 /IT求职 3.定义有效的元素属性 在DTD中定义属性时,我们采用下面的格式: !ATTLIST 元素名 属性名 (属性值 属性类型 缺省值)* 例如: !ATTLIST 作者 姓名 CDATA #REQUIRED 性别 (男|女) 男 联系方式 CDATA #IMPLIED

文档评论(0)

hzhplyvb8 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档