这引起了我的注意,所以我有一个 XML 文档,其中有一个名为 family 的节点
<family>
<parents>
<name>Bob</name>
<init>R</init>
<surname>Johnson</surename>
</parents>
<kids>
<name>Lucy</name>
<surname>Johnson</surname>
</kids>
</family>
初始是可选的,所以我为此创建了 DTD,它最终看起来像
<!ELEMENT parent (name, initial?, surname)>
<!ELEMENT kid (name, initial?, surname)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT initial (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT initial (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
但我不断收到此错误有效性错误:重新定义元素名称^ /tmp/tmp.dtd:26:有效性错误:重新定义元素初始^ /tmp/tmp.dtd:27:有效性错误:重新定义元素姓氏^
即使我将 DTD 更改为这样。
<!ELEMENT parent (name, initial?, surname)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT initial (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
<!ELEMENT kid (name, initial?, surname)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT initial (#PCDATA)>
<!ELEMENT surname (#PCDATA)>
同样的错误..这实际上是我使用 xml 的第二天,从我读过的教程中,我似乎看不出我做错了什么..