XML中的有效DTD

时间:2016-12-06 20:10:54

标签: xml dtd xml-dtd

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>

1 个答案:

答案 0 :(得分:2)

我希望“XML 2”能够验证而不是“XML 1”,因为你的根元素声明

  <!ELEMENT root (elm1*,elm2+)>

基本上是说“root可能有0个或更多 elm1 子女,并且必须至少有一个或多个 elm2 子女”。

你可能想要这个吗?

<!ELEMENT root (elm1*,elm2*)>