XML中的外部引用DTD

XML中的外部引用DTD,xml,dtd,xml-validation,Xml,Dtd,Xml Validation,test.xml: <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE email SYSTEM "test.dtd"> <email> <von>test@test.com</von> <zu>xxx@example.com</zu> <titel>Hello</titel> <text>Dear John....;-).<

test.xml:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE email SYSTEM "test.dtd">
<email>
<von>test@test.com</von>
<zu>xxx@example.com</zu>
<titel>Hello</titel>
<text>Dear John....;-).</text>
<prior type="schnell"/>
</email>

test@test.com
xxx@example.com
你好
亲爱的约翰……;-)。
test.dtd:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE email [
<!ELEMENT email (von,zu,titel,text,prior)>
<!ELEMENT von (#PCDATA)>
<!ELEMENT zu (#PCDATA)>
<!ELEMENT titel (#PCDATA)>
<!ELEMENT text (#PCDATA)>
<!ATTLIST prior type CDATA #REQUIRED >
]>

]>
test.dtd中的错误代码

文档类型声明包含或指向的标记声明必须格式良好。[2]


请帮忙

您有重复的DOCTYPE声明。如果要引用外部DTD:

test.xml

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE email SYSTEM "test.dtd">
<email>
<von>test@test.com</von>
<zu>xxx@example.com</zu>
<titel>Hello</titel>
<text>Dear John....;-).</text>
<prior type="schnell"/>
</email>

test@test.com
xxx@example.com
你好
亲爱的约翰……;-)。
测试.dtd

<!ELEMENT email (von,zu,titel,text,prior)>
<!ELEMENT von (#PCDATA)>
<!ELEMENT zu (#PCDATA)>
<!ELEMENT titel (#PCDATA)>
<!ELEMENT text (#PCDATA)>
<!ELEMENT prior EMPTY>
<!ATTLIST prior type CDATA #REQUIRED >

如果希望DTD作为XML文件(内部子集)的一部分:


]>
test@test.com
xxx@example.com
你好
亲爱的约翰……;-)。
注意:您的
先前的
元素也缺少元素声明。

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE email [
<!ELEMENT email (von,zu,titel,text,prior)>
<!ELEMENT von (#PCDATA)>
<!ELEMENT zu (#PCDATA)>
<!ELEMENT titel (#PCDATA)>
<!ELEMENT text (#PCDATA)>
<!ELEMENT prior EMPTY>
<!ATTLIST prior type CDATA #REQUIRED >
]>
<email>
<von>test@test.com</von>
<zu>xxx@example.com</zu>
<titel>Hello</titel>
<text>Dear John....;-).</text>
<prior type="schnell"/>
</email>