• 晋中市纪委公开曝光五起违反中央八项规定精神问题——晋中频道 2019-10-15
  • 新疆伊犁:薰衣草香飘万里 “紫色经济”成产业 2019-10-15
  • 《〈人民日报〉创刊70周年纪念邮资信封》发行 2019-10-14
  • 北京公园改造将引入无性别厕所--旅游频道 2019-10-14
  • 网络赌球水很深,球迷们千万不要碰! 赢了钱分分钟取不出来 2019-10-13
  • 蔡名照会见越通社社长阮德利 2019-10-13
  • 主城赏荷地图出炉 快带上相机出发 2019-10-11
  • 端午北京景区接待人数收入双降 未收到一日游投诉 2019-10-11
  • 新房才砌半堵墙 装修公司“跑路”了 2019-10-10
  • 连续不胜!卡帅造恒大最差战绩 他真是球队真命天子? 2019-10-08
  • 市场监管总局抽检518批次粽子 未检出不合格样品 2019-10-07
  • 女性之声——全国妇联 2019-10-05
  • 农民回答风水神,“勤劳的农民玩什么没有富起来”。(原创首发) 2019-10-05
  • 进不了朋友圈,身份认同难。 2019-10-04
  • 天津自贸试验区机场片区:融合联动 特色发展 2019-10-04
  • 湖北体彩30选5走势图:JS操作XML中DTD介绍及使用方法分析

    文章TAG:DTD xml JS
    时间:2019-07-04来源/作者:Yeoman92 编辑:源码库 文章热度:

    双色球基本走势图表图 www.jpkp.net 本文实例讲述了JS操作XML中DTD介绍及使用方法。分享给大家供大家参考,具体如下:

    什么是DTD,为什么需要DTD?

    DTD为英文Document Type Definition,中文意思为“文档类型定义”。DTD肩负着两重任务:一方面它帮助你编写合法的代码,另一方面它让浏览器正确地显示器代码。

    一个HTML文档的基本结构可分为两个主要部分:

    <html>
      <head>
       头部信息
      </head>
      <body>
       可视内容
      </body>
    </html>
    
    

    一个DTD应该放在每一个文档的第一行(包括空白).这样正确地放置,你的DTD才能告诉浏览器的用的是什么标记语言。在通常情况下,如果你编写的是正确代码,并拥有一个合适的DTD,浏览器将会根据W3C的标准显示你的代码。
    良好的xml文档:符合xml的语法规则。
    有效的xml文档:符合xml语法规则的同时还需要符合DTD文档类型定义。
    有效(Valid)的XML文档:
    首先,XML文档是个格式正规的(Well-formed)XML文档;
    其次,需要满足DTD的要求,这样的XML文档称为有效的(Valid)XML文档。
    利用DTD可以对xml文档的各个节点进行约束定义,使开发遵循一套“标准”。
    DTD可以约束xml文档出现的元素,元素名称,元素的先后顺序,属性等。

    DTD文档与XML文档实例的关系

    类与对象;
    数据库表结构与数据记录;

    有了DTD,每个XML文件可以携带一个自身格式的描述。
    有了DTD,不同组织的人可以使用一个通用DTD来交换数据。
    应用程序可以使用一个标准DTD校验从外部世界接收来的XML数据是否有效。
    可以使用DTD校验自己的XML数据。

    元素的定义

    JS,XML,DTD

    DTD中的修饰符号:

    JS,XML,DTD

    这部分符号可以联系正则表达式的符号来记忆。重点内容

    如何生成DTD文档

    DTD文档有三种应用形式:

    1.内部DTD文档

    <!DOCTYPE 根元素[定义内容]>
    
    

    2.外部DTD文档

    <!DOCTYPE 根元素 SYSTEM "DTD文件路径">
    
    

    3.内外部DTD文档结合

    <!DOCTYPE 根元素 SYSTEM "DTD文件路径" [定义内容]>
    
    

    JS,XML,DTD

    内部DTD

    一个内部DTD的例子:
    上半部分是DTD,下面是XML文档,文档要符合DTD。

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE poem [
      <!ELEMENT poem (author, title, content)>
      <!ELEMENT author (#PCDATA)>
      <!ELEMENT title (#PCDATA)>
      <!ELEMENT content (#PCDATA)>
    ]>
    <!--为元素poem定义了三个子元素author title content,
    这三个元素必须要出现并且必须按照这个顺序
    少元素不行,多元素也不行
    -->
    <!--指明author,title,content里面的内容是字符串类型-->
    <poem>
      <author>王维</author>
      <title>鹿柴</title>
      <content>空山不见人,但闻人语声。返景入深林,复照青苔上。</content>
    </poem>
    
    

    上面的文档就是格式良好,并且有效的。

    #PCDATA(Parsed Character Data) ,可解析的字符数据,即字符串。

    上面部分是DTD,在下面编写XML文档时,如果不符合其DTD规范,用XMLSpy做检查的时候,是well-formed的,但是却不是valid的。

    比如根元素写:

    <Students>
    </Students>
    
    

    Validate检查的时候就会报错,根元素和DTD中的poem不符。

    制作DTD约束校验工具

    <!DOCTYPE html>
    <html xmlns="//www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Untitled Document</title>
    <script>
    var doc = new ActiveXObject("Mircosoft.XMLDOM");
    doc.validateOnParse = true;
    doc.async = false;//同步校验
    function jiaoyan(){
      doc.load("./01.xml");//加载被校验的文档
      var rst = document.getElementById("result");
      rst.innerHTML += "错误信息:" + doc.parseError.reason + "<br />";//校验的错误信息
      rst.innerHTML += "错误行数:" + doc.parseError.line + "<br />";//出错代码的行数
      rst.innerHTML += "错误列数:" + doc.parseError.linepos + "<br />";//出错代码的列数
      rst.innerHTML += "错误代码:" + doc.parseError.errorCode + "<br />";//出错代码的编号
    }
    </script>
    </head>
    <body>
    <input type=button value="校验" onclick="jiaoyan()" />
    <div id="result"></div>
    </body>
    </html>
    
    

     

    希望本文所述对大家JavaScript程序设计有所帮助。


    注:相关教程知识阅读请移步到PHP教程频道。
    相关PHP教程
    热门标签

    PHP教程Rss订阅PHP教程搜索

  • 晋中市纪委公开曝光五起违反中央八项规定精神问题——晋中频道 2019-10-15
  • 新疆伊犁:薰衣草香飘万里 “紫色经济”成产业 2019-10-15
  • 《〈人民日报〉创刊70周年纪念邮资信封》发行 2019-10-14
  • 北京公园改造将引入无性别厕所--旅游频道 2019-10-14
  • 网络赌球水很深,球迷们千万不要碰! 赢了钱分分钟取不出来 2019-10-13
  • 蔡名照会见越通社社长阮德利 2019-10-13
  • 主城赏荷地图出炉 快带上相机出发 2019-10-11
  • 端午北京景区接待人数收入双降 未收到一日游投诉 2019-10-11
  • 新房才砌半堵墙 装修公司“跑路”了 2019-10-10
  • 连续不胜!卡帅造恒大最差战绩 他真是球队真命天子? 2019-10-08
  • 市场监管总局抽检518批次粽子 未检出不合格样品 2019-10-07
  • 女性之声——全国妇联 2019-10-05
  • 农民回答风水神,“勤劳的农民玩什么没有富起来”。(原创首发) 2019-10-05
  • 进不了朋友圈,身份认同难。 2019-10-04
  • 天津自贸试验区机场片区:融合联动 特色发展 2019-10-04
  • 彩发发时时彩软件 期特码开奖 飞艇开奖结果 cba啦啦队春光 11选5开奖结果走势图 彩票助赢软件 大热不 168彩 阳泉福彩中奖 河南快三和值走势图带连线 头彩彩票是骗局吗 pc蛋蛋是假的吗 明星九七水果机手机版 彩票2圆网排列五走势图带连线 江苏快3怎么下载安装