我从2小时前就一直在看我的代码,但是我仍然不知道我在哪里做错了一个错误,基本上,我在同一个文件中有一个dtd和一个xml,当我到xml验证器时,总是会看到标题上的错误。
这里是代码
<?xml version = "1.0"?>
<!DOCTYPE addressbook [
<!ELEMENT addressbook (person*)>
<!ELEMENT person (familyname,firstname,city?,telephone+)>
<!ELEMENT familyname (#PCDATA)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT city (#PCDATA)>
<!ELEMENT telephone (#PCDATA)>
<!ATTLIST person id CDATA #REQUIRED>
<!ATTLIST telephone type CDATA #IMPLIED>
]>
<addressbook>
<person id="p01">
<familyname>De Niro</familyname>
<firstname>Roberto</firstname>
<city>Los Angeles</city>
<telephone type="mobile">123456</telephone>
</person>
<person id="p02">
<familyname>Bale</familyname>
<firstname>Gareth</firstname>
<city>Madrid</city>
<telephone>987654</telephone>
</person>
<person id="p03">
<familyname>Jobs</familyname>
<firstname>Steve</firstname>
<city>Palo Alto</city>
</person>
<person id="p04">
<familyname>Fry</familyname>
<firstname>Stephen</firstname>
<telephone type="landline">132867</telephone>
<telephone type="mobile">725282</telephone>
</person>
</addressbook>发布于 2017-02-01 11:45:42
您的第三个<person>元素没有电话号码:
<person id="p03">
<familyname>Jobs</familyname>
<firstname>Steve</firstname>
<city>Palo Alto</city>
</person>但是,DTD需要一个或多个电话号码:
<!ELEMENT person (familyname,firstname,city?,telephone+)>您需要向该<person>元素添加电话号码,或者更改内容模型以允许电话号码为零或更多:
<!ELEMENT person (familyname,firstname,city?,telephone*)>https://stackoverflow.com/questions/41977613
复制相似问题