XML多个根标记错误

XML多个根标记错误,xml,Xml,我有这个表单的xml文件。由于多个根错误,它无法工作 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <message val="new" val2 = "1" val3 ="new"> Value </message> <?xml version="1.0" encoding="UTF-8"? standalone="yes"?> <message val="new" val2

我有这个表单的xml文件。由于多个根错误,它无法工作

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<message val="new" val2 = "1" val3 ="new"> Value </message>
<?xml version="1.0" encoding="UTF-8"? standalone="yes"?>
<message val="new" val2 = "1" val3 ="new"> Value </message>

    ...

价值
价值
...

有没有办法在修复xml的同时维护这种结构?或者更具体地说:最简单的修复方法是什么?

我建议您将消息节点放在根节点中,如“messages”,然后删除额外的xml声明

像这样:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messages>
   <message val="new" val2 = "1" val3 ="new"> Value </message>
   <message val="new" val2 = "1" val3 ="new"> Value </message>
</messages>

价值
价值

具有多个声明且没有根节点的XML不是格式良好的XML,永远无法验证为XML文件或使用任何使用XML的组件进行处理。

不,XML文档不可能有多个根元素。此外,XML文档不可能像您的示例那样具有多个XML声明

修复文档的最简单方法是

  • 删除所有XML声明(
    )而不是
  • 将所有其他元素包装在单个根元素中

  • 如果您不进行这些更正,您的XML就不是——事实上,它甚至根本不是XML——并且您将无法使用任何XML库或工具来处理它。

    建议:在引用防止数据成为XML的问题时,使用格式良好的而不是有效的,而不是防止XML遵守XSD的问题。有关更多详细信息,请参阅。感谢您的建议,我已更新了回复。:)