XML自己定义检查器语法+约束(1)

每次使用它检查xml文件时,仅仅需改动xmldoc.load("xml文件名称");中的文件名称,然后将该文件放在浏览器中执行就可以。

依据浏览器弹出的对话框进行推断自己写的xml是否满足dtd约束

说明:

1.正确的xml文件:语法上没有错

  有效的xml文件:语法上没有错,而且也满足dtd约束。

2.这个仅仅能用IE浏览器去測试,用火狐浏览器測试无效。


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
  <head>
    <title>一叶扁舟</title>
  </head>
  <body>
<script type="text/javascript">
//创建IE内置解析器
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
//开启xml校验
xmldoc.validateOnParse="true";
//载入须要检查的XML文件
xmldoc.load("arg_entity.xml");
//正确
if(xmldoc.parseError.reason.length==0){
window.alert("有效的XML文件(语法正确+DTD约束");
//出错
}else{
window.alert(xmldoc.parseError.reason);
}
</script>
  </body>

</html>



自己写的xml文件:(class.xml)

<?xml version="1.0" encoding ="UTF-8"?>
<!DOCTYPE person SYSTEM "class.dtd">
<!-- 用dtd-描写叙述一个学生的信息 -->
<person>
<student>
<name>一叶扁舟</name>
<age>23|</age>
<sex>男</sex>
</student>
<student>
<name>无悔</name>
<age>20</age>
<sex>男</sex>
</student>
</person>


定义的dtd约束文件:(class.dtd)

<?xml version="1.0" encoding="UTF-8"?>


<!ELEMENT person (student+)>
<!ELEMENT student (name,age,sex)>
<!ELEMENT name  (#PCDATA)>
<!ELEMENT age (#PCDATA)>
<!ELEMENT sex (#PCDATA)>



效果截图:

XML自己定义检查器语法+约束(1)


你可能感兴趣的:(xml)