|
Java学习者论坛
--------------validate.HTML------------------------------------------------------------
<html>
<head>
<title>DOM测试xml文档的有效性</title>
<script language="javascript">
function validate()
{
var xmlName=document.getElementById("doc").value;
var xmlDoc=new ActiveXObject("MSXML2.DOMDocument ");
var message="";
if(xmlDoc.readyState==4)
{
xmlDoc.load(xmlName);
message+="XML DOM解析状态"+xmlDoc.readyState+"<br>";
if(xmlDoc.parseError.errorCode==0)
{
message="文档有效性验证通过";
}
else
{
message+="错误代码"+xmlDoc.praseError.errorCode+"<br>";
message+="错误代码"+xmlDoc.praseError.line+"<br>";
message+="错误代码"+xmlDoc.praseError.srcText+"<br>";
message+="错误代码"+xmlDoc.praseError.reason+"<br>";
}
document.getElementById("resul2t").innerHTML=message;
}
}
</script>
</head>
<body>
<input id="doc" type="text" /><br>
<input type="button" value="验证" onclick="validate()"><br>
分析结果如下:<br>
<div id="result"></div>
</body>
</html>
-------------------------contentDtd.xml---------------------------------------------------------------
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE 学生信息
[<!ELEMENT 学生信息 (学生)*>
<!ELEMENT 学生 (姓名,年龄,选课+,学校,((区号?,电话号码)|手机号码))>
<!ATTLIST 学生 编号 ID #REQUIRED>
<!ATTLIST 学生 身份 CDATA #FIXED "学生">
<!ELEMENT 姓名 (#PCDATA)>
<!ATTLIST 姓名 性别 (男|女) #IMPLIED>
<!ELEMENT 年龄 (#PCDATA)>
<!ELEMENT 选课 (#PCDATA)>
<!ELEMENT 区号 (#PCDATA)>
<!ELEMENT 电话号码 (#PCDATA)>
<!ELEMENT 手机号码 (#PCDATA)>
<!ELEMENT 学校 (#PCDATA)>
<!ENTITY school "北京大学">
]>
<学生信息>
<学生 编号="1001">
<姓名>张三 性别="男"</姓名>
<年龄>20</年龄>
<选课>数学</选课>
<选课>语文</选课>
<区号>0991</区号>
<电话号码>456789</电话号码>
<手机号码>1333333333</手机号码>
</学生>
<学生 编号="1002" 身份="学生">
<姓名>李四 性别="女"</姓名>
<年龄>20</年龄>
<选课>数学</选课>
<选课>语文</选课>
<区号>0991</区号>
<电话号码>456789</电话号码>
<手机号码>1333333333</手机号码>
</学生>
</学生信息>
两个文件都在同一目录下,但是输入contentDTd.xml,点验证总是说网页有错误,研究半天好郁闷。
Java学习者论坛欢迎来到Java学习者论坛,转载请注明地址:http://www.javaxxz.com. |
|