xml1& 2不适合DTD?我发现元素(*:零或更多; +:至少一次;?:可选,最多一次)仍然适合,因为' elm1'和' eml2'分别出现一次。如果没有,我该如何更改DTD?
<?xml version="1.0"?>
<!DOCTYPE root[
<!ELEMENT root (elm1*,elm2+)>
<!ELEMENT elm1 (#PCDATA)>
<!ELEMENT elm2 (#PCDATA)>
]>
XML 1
<root>
<elm1>Blobby</elm1>
</root>
XML 2
<root>
<elm2>Blobby</elm2>
</root>
答案 0 :(得分:2)
我希望“XML 2”能够验证而不是“XML 1”,因为你的根元素声明
<!ELEMENT root (elm1*,elm2+)>
基本上是说“root可能有0个或更多 elm1 子女,并且必须至少有一个或多个 elm2 子女”。
你可能想要这个吗?
<!ELEMENT root (elm1*,elm2*)>