黑马程序员技术交流社区

标题: 关于用dtd来约束xml文档的问题!急!! [打印本页]

作者: 赵太云    时间: 2013-3-17 08:43
标题: 关于用dtd来约束xml文档的问题!急!!
MyEclipse8.5       中写dtd文档对xml约束,xml写错,怎么没有错误提示?

dtd文档:
<?xml version="1.0" encoding="UTF-8"?><!ELEMENT b book(+)>
<!ELEMENT book (#PCDATA)>



xml文档:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE books SYSTEM "books.dtd">
<b>
</b>


注:dtd文档和xml文档都放在同一目录下,就是没有出错的提示!!

请问如何配置MyEclipse8.5才能看到了出错提示啊!!谢谢了!!!

作者: 许庭洲    时间: 2013-3-25 06:39
值得学习ing!
作者: 改变世界    时间: 2013-8-14 20:52
lIE5以上浏览器内置了XML解析工具:Microsort.XMLDOM,开发人员可以编写javascript代码,利用这个解析工具装载xml文件,并对xml文件进行dtd验证。
l创建xml文档解析器对象
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");

l开启xml校验
xmldoc.validateOnParse = "true";

l装载xml文档
xmldoc.load("book.xml");

l获取错误信息
xmldoc.parseError.reason;  

xmldoc.parseError.line




<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function initXml(){
var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.validateOnParse = "true";
/**********修改成自己的xml文件*****************/
xmldoc.load("book.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>
<body onload="initXml();">
</body>
</html>

  

作者: 改变世界    时间: 2013-8-14 21:10
xml 只允许有一个根元素.
修改了你的xml文件
dtd文档:

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT books (book+)>
<!ELEMENT book (#PCDATA)>

对应的xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE books SYSTEM "C:\java\xml.dtd">
<books>
        <book/>
</books>





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2