美文网首页Web前端之路我爱编程
通过DTD约束,验证xml文件

通过DTD约束,验证xml文件

作者: 李霖神谷 | 来源:发表于2017-08-27 12:05 被阅读148次

“合法”的xml文件必定会符合xml语法规则,同时也要遵守文档类型定义(DTD)的语法规则。
1,什么是约束?
在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束。
2,常见的约束技术:DTD,Schema。
3,约束的作用:通过约束技术我们可以规范xml文档的书写,也可以对xml文档进行校验。
4,DTD文件可以定义在文件内部,在xml文件声明中,它的standalone=“yes”,也可以定义在扩展名为dtd的文件中,再由xml文件引入standalone=“no”
5,默认情况下ie浏览器的约束校验器是被关闭的,所以我们需要使用javascript手动创建解析器对象,打开校验功能,对xml文件进行约束校验。
6,DTD语法
如何在xml文件中引入dtd文件
@1,外部引入
外部引入的dtd文件的保存一定要utf-8格式的,再写<!DOCTYPE 根元素名称 SYSTEM/PUBLIC 文件的位置>
SYSTEM是保存在硬盘中的文件
PUBLIC是在网路公共位置中的文件
@2,内部引入直接在xml文件中写一下dtdt约束就行
相关代码:
xml文件:

<?xml version="1.0" encoding="gbk" ?>
<!DOCTYPE 学校 SYSTEM "jiaoyan.dtd">
<学校>
    <李老师>
        <实验班>战神</实验班>
            <血神>索罗</血神>
        </李老师>
    <李老师>
            <实验班>海贼王</实验班>
                <血神>路飞</血神>
        </李老师>          
            
    </学校>
                
                

DTD文件:

<!ELEMENT 学校(李老师+)>
<!ELEMENT 李老师(实验班,血神)>
<!ELEMENT 实验班(#PCDATA)>
<!ELEMENT 血神(#PCDATA)>

html文件:

<html>
    <head>
        
    </head>
    <body>
        行号等于 <div id="l"></div>
        错误原因  <div id="r"></div>
    </body>
    
</html>
<script>
            var xmldoc=new ActiveXObject("Microsoft.XMLDOM");//利用javascript创建一个浏览器内置的xml解析器
            xmldoc.validateOnParse="true";//打开解析器的dtd校验
            xmldoc.load("xuexiao.xml");
            var line=xmldoc.parseError.line;
            var reason=xmldoc.parseError.reason;
            alert(line);
            alert(reason);
            document.getElementById("l").innerHTML=line;
            document.getElementById("r").innerHTML=reason;
        </script>

相关文章

  • 通过DTD约束,验证xml文件

    “合法”的xml文件必定会符合xml语法规则,同时也要遵守文档类型定义(DTD)的语法规则。1,什么是约束?在XM...

  • XML(二)XML约束

    XML约束 DTD DTD(Document Type Define),dtd文件中描述并规定了元素、属性和其他内...

  • 1.3 Spring源码解析——获取XML的验证模式

     XML文件的验证模式保证了XML文件的正确性,而比较常用的验证模式有两种:DTD和XSD两种。 使用DTD验证模...

  • XML的验证模式DTD与XSD的区别

    xml文件的正确性是由xml的验证模式来保证的,比较常见的验证模式有两种:DTD和XSD。 1.DTD: DTD(...

  • XML约束

    xml约束:规范了xml文件数据内容格式的编写规则 xml约束技术: DTD约束:语法相对简单,功能也相对简单 s...

  • spring源码解析记录2

    XML文件的验证方式有两种:DTD和XSD DTD(Document Type Definition)文档类型定义...

  • XML约束——DTD约束

    约束 XML技术中,可以编写一个文档来约束一个XML的书写规范,约束文档定义了在XML中允许出现的元素名称、属性及...

  • XML类别及解析XML的几种方式

    XML约束文档分为DTD,Schema两种格式 DTD DTD(Document Type Definition)...

  • xml及DTD、schema约束

    layout: posttitle: xml及DTD、schema约束subtitle: 用...

  • XML的DTD约束

    什么是XML的约束:在xml语言书写的时候,我们写一个规范文档,然后让xml文件按照我们的规范进行书写,这个规范就...

网友评论

    本文标题:通过DTD约束,验证xml文件

    本文链接:https://www.haomeiwen.com/subject/zsvmdxtx.html