【发布时间】:2012-12-23 20:06:16
【问题描述】:
我是 XML 新手。我很困惑 DTD 文档如何验证 XML 文档。以下是我的代码,如果我错了,请纠正我。
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE note
[
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>Tove</to>
<rom>Jani</rom> // Here i've miss-spelled the tag <from> but still not getting error
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
我知道 DTD 用于验证 XML 数据。有一个元素名称<form>。我刚刚将<form> 的拼写更改为<rom>,但在我的浏览器中仍然没有收到任何错误消息。我被困在这一点上。
【问题讨论】:
-
我认为大多数浏览器并不是为了验证 XML,而是为了尽可能好地呈现标记。我建议使用外部工具进行验证。例如,我刚刚发现xmlvalidation.com 派上用场。
-
如果有人想以 XML 的形式发送和接收数据,那么最好的方法是什么。如何使用 DTD 验证数据
-
我不知道您所说的发送/接收到底是什么意思,但显然您需要根据服务器端的 DTD 验证 XML 文件(如果涉及服务器)。下面是一个使用 Java 的 XML 验证示例:XML Validation.
-
DTD 没有像以前那样频繁使用。大多数情况下,我们使用 XML Schema (XSD) 来验证 XML。