XML,避免重复标签

时间:2020-04-28 14:06:08

标签: xml duplicates

我正在处理XML,但过去几乎没有使用过它们。 给定这样的XML:

<?xml version="1.0" encoding="UTF-8" ?>
<testi>
    <page_title>Page Title</page_title>
    <hello_world>Hello World!</hello_world>
    <address>Address</address>
    ...long lines here...
</testi>

我如何确定<testi>标记内的条目没有重复?我想避免这样的事情,因为它会弄乱我的文档:

<?xml version="1.0" encoding="UTF-8" ?>
<testi>
    <page_title>Page Title</page_title>
    <hello_world>Hello World!</hello_world>
    <address>Address</address>
    ...long lines here...
    ...very long lines...
    <address>Address again, this should not be permitted because there is yet address tag!</address>
</testi>

谢谢

1 个答案:

答案 0 :(得分:1)

检测

通常,您要声明性地指定使用标准架构语言(例如XSD)在testi中可能出现的元素。然后,您可以使用验证解析器来报告是否有任何给定的XML文档符合XSD中的约束。

或者,您可以选择语言来使用XML解析器,并使代码跟踪对您而言重要的约束,例如addresstesti的出现次数。

更正

如果您希望消除重复的元素,则标准方法是编写XSLT,它旨在解析和转换XML。

或者,您可以选择语言来使用XML解析器的较低级API,并让代码过滤不需要的address元素。

相关问题