在我的xml中:
<mother>
<name>mary</name>
<child>
<name>Ali</name>
</child>
</mother>
所以我的dtd:
<!ELEMENT mother (name,child)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT child (name)>
<!ELEMENT name(#PCDATA)>
当我尝试运行DTD时,它说我的名字已经被声明了。那么我应该如何改变以解决这个问题?
答案 0 :(得分:1)
您不需要第二个name
声明。这三个声明:
<!ELEMENT mother (name,child)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT child (name)>
足以验证您的文件。您的DTD“说”:
<mother>
元素必须包含序列 一个 <name>
,然后一个 {{1} } <child>
元素可以包含已解析的字符数据(任何文本,包括任何内容,但没有标记)<name>
元素必须包含一个 <child>