XML,避免重复标记

XML,避免重复标记,xml,duplicates,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> ...

我正在处理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>

页面标题
你好,世界!
地址
……这里排着长队。。。
我如何确保
标记中的条目不重复?我想避免这样的事情,因为它会弄乱我的文档:

<?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>

页面标题
你好,世界!
地址
……这里排着长队。。。
…很长的队伍。。。
地址,这是不允许的,因为还有地址标签!
谢谢

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

或者,您可以使用您选择的语言中的XML解析器,让您的代码跟踪与您相关的约束,例如
testi
address
的出现次数

校正 如果希望消除重复的元素,标准方法是编写XSLT,该XSLT用于解析和转换XML


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

您可以根据DTD或XML模式验证XML。