我正在将XML从一个系统转移到另一个系统并仅修改几个值。
但是在比较输入和输出时,我可以看到属性的值也已自动更改。
我收到以下带有属性的元素:
<element coding_line="5508>000000000000102608903458255+ 010851630>"/>
但是当我检查输出时,它会自动更改为:
<element coding_line="5508>000000000000102608903458255+ 010851630>"/>
似乎我的系统(WSO2)确实取消了>
到>
的转义。
我的问题现在是 - 这个属性的内容在语义上是否仍然相同?
因为我无权更改此值。当我在oXygen中打开文件时,它似乎仍然是一个有效的XML。
XML比较:
答案 0 :(得分:1)
我的问题现在是 - 这个属性的内容在语义上是否仍然相同?
是的,XML属性值中存在文字>
字符符合规范。
因此,在解析时,这两个XML样本代表相同的文档:
<xml attr=">" />
和
<xml attr=">" />
这个事实,还有很多其他事情,比如
因为正常(即纯文本导向)DIFF工具在比较XML文件时无效。
特别针对XML制作了diff工具。例如,Microsoft拥有XML Diff and Patch GUI Tool,diffxml或xmldiff Python package和XMLunit Java package。