简体   繁体   English

使用外部DTD验证XML

[英]Validating XML with external DTD

Given below are my note.xml and Note.dtd files. 以下是我的note.xml和Note.dtd文件。 I am validating a XML file with external DTD using XMLStarlet from Cygwin. 我正在使用Cygwin的XMLStarlet使用外部DTD验证XML文件。 When I give the command 当我发出命令时

xml val --dtd Note.dtd note.xml

I get 我懂了

cannot parse DTD file 无法解析DTD文件

Can someone help me to rectify this? 有人可以帮我纠正这个问题吗?

note.xml 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 Note.dtd

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

Cygwin的命令

Change 更改

<!ELEMENT (#PCDATA)>

to

<!ELEMENT to (#PCDATA)>

and your XML will be valid against your DTD 并且您的XML将对您的DTD有效

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM