如何在XML中多次使用父名称?
我在玩弄XML,遇到了一个问题。f、 eks我想对同一个子项中的父项名称重复几次,只是它们包含不同的数据。我将如何在DTD中写入这些内容 我唯一看到的是id属性,但我还没有在DTD中看到它的执行如何在XML中多次使用父名称?,xml,dtd,Xml,Dtd,我在玩弄XML,遇到了一个问题。f、 eks我想对同一个子项中的父项名称重复几次,只是它们包含不同的数据。我将如何在DTD中写入这些内容 我唯一看到的是id属性,但我还没有在DTD中看到它的执行 <class> <parent> <sub> aaa </sub> <sub2> bbb </sub2/> </parent> <parent> <sub>
<class>
<parent>
<sub> aaa </sub>
<sub2> bbb </sub2/>
</parent>
<parent>
<sub> aaa </sub>
<sub2> bbb </sub2>
</parent>
</class> <!-- Added by edit -->
aaa
bbb
aaa
bbb
向元素添加多个子元素的常用方法是在DTD中的元素名称中添加一个尾随的*
。因此,要创建包含多个子项的DTD,必须使用如下文件(class.DTD
):
您可以使用xmllint
检查上述文件的正确性:
xmllint --dtdvalid class.dtd test.xml
如果您希望在XML文件中有多个子元素
sub
或sub2
,则还需要在DTD中的元素名称后面添加一个*
。更具体地说,*
表示零或更多。您还可以使用+
,这意味着一个或多个(至少一个)。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE class SYSTEM "class.dtd">
<class>
<parent>
<sub> aaa </sub>
<sub2> bbb </sub2>
</parent>
<parent>
<sub> aaa </sub>
<sub2> bbb </sub2>
</parent>
</class>
xmllint --dtdvalid class.dtd test.xml