DTD验证

Internet Explorer 5.0 可根据某个 DTD 来验证您的 XML。

通过 XML 解析器进行验证
当您试图打开某个 XML 文档时,XML 解析器有可能会产生错误。通过访问 parseError 对象,就可以取回引起错误的确切代码、文本甚至所在的行。

例如:首先在xml中写出一部分代码。

—————————-1.xml————————————–

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE note SYSTEM "11.dtd">
<note>
    <to> Linda </to>
    <from> John </from>
    <heading> Reminder </heading>
    <body> Don't forget the appointment! </body>
    <ps> I Miss You ! </ps>
</note>

然后写出DTD给出的规范

————————————11.dtd——————————–

  <!ELEMENT note (to,from,heading,body)>
  <!ELEMENT to      (#PCDATA)>
  <!ELEMENT from    (#PCDATA)>
  <!ELEMENT heading (#PCDATA)>
  <!ELEMENT body    (#PCDATA)>

最后利用XML解析器进行验证

———————-parseError.html————————————-

<!DOCTYPE>
<html>
<meta charset="UTF-8">
<head>
<!--编写一个简单的解析工具,去解析xml dtd是否配套-->
<script language="javascript"> <!-- var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="false"; xmlDoc.validateOnParse="true";//开启校验 xmlDoc.load("1.xml");//指定校验哪个xml文件 document.write("<br>Error Code: "); document.write(xmlDoc.parseError.errorCode); document.write("<br>Error Reason: "); document.write(xmlDoc.parseError.reason); document.write("<br>Error Line: "); document.write(xmlDoc.parseError.line); //--> </script>
</head>
</html>

用IE浏览器验证时,会发现有错误。如下图:
DTD验证_第1张图片

会发现,1.xml中的第8行出现错误。因为第8行的标签,没有在DTD中规范。
当删除掉第8行后,就会显示下图:
DTD验证_第2张图片

你可能感兴趣的:(xml,internet,explorer)