大文件的XML验证即使有错误也会通过

问题描述 投票:0回答:1

我正在努力处理我的大xml文件(28000行)。这个xml有时会有一些重复的结束标记

eg: <question>what can i do?</question>>

所有xml验证器在线都没有找到像这样的大文件的错误,并给我传递代码。

我尝试了w3c xml验证器,它也不起作用(link)

我的xml是由一些非常古老的遗留代码自动生成的,没有人会解决这个问题所以我正在寻找一些验证器在线或软件为我做这些,而无需在记事本中寻找标签。

任何人都知道我应该如何处理这个问题?我错过了什么吗?任何建议?

谢谢

xml validation visual-studio-code w3c-validation
1个回答
1
投票

额外的'>'实际上是有效的xml,并被视为字符数据(请参阅https://www.w3.org/TR/xml/#syntax),这就是它通过验证的原因。

如果你知道xml的确切结构,你可以尝试为它定义一个xml模式并用它进行验证,例如:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified">
  <xs:element name="root">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="question" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

将触发验证错误:

<root>
    <question>what can i do?</question>>
</root>
© www.soinside.com 2019 - 2024. All rights reserved.