使用外部DTD验证XML

时间:2016-07-31 11:30:04

标签: xml dtd xml-validation xmlstarlet xml-dtd

以下是我的note.xml和Note.dtd文件。我正在使用Cygwin的XMLStarlet验证带有外部DTD的XML文件。当我发出命令时

xml val --dtd Note.dtd note.xml

我得到了

  

无法解析DTD文件

有人可以帮我纠正这个问题吗?

note.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

Note.dtd

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

Command from Cygwin

1 个答案:

答案 0 :(得分:2)

更改

<!ELEMENT (#PCDATA)>

<!ELEMENT to (#PCDATA)>

并且您的XML对您的DTD有效