2010-11-11 333 views
0

我看到从源XML转换回XML的解析的JSON对象在打印出来时没有返回等效的XML归档。其他人看到这个相同的吗?org.json.XML.toString()更改XML元素的顺序

我有一个XML文档,我可以使用org.json.XML.java轻松解析为一个json对象。仅用于测试目的,我使用新解析的JSONObject并使用org.json.XML.toString()将其反转回XML并查看以上结果。

任何帮助表示赞赏。

+0

xml之前和之后的xml否则其他一切都是猜测 – 2010-11-11 23:40:54

回答

0

根据规范XML属性可以以任何顺序,并且按照规范,在PEER元素上没有强制实施的顺序。如果你不相信我,可以搜索更多关于这方面的文章,我已经在这里发布了很多关于这个问题的文章。

<root a="a" b="b" c="c"> 
    <a/> 
    <b/> 
    <c/> 
</root> 

是一样有效,

<root c="c" a="a" b="b"> 
    <c/> 
    <a/> 
    <b/> 
</root> 

按照规范

现在专用解析器可能期望在某些一个顺序的元素,XHTML是这方面的一个例子,并且是确定,因为它是应用程序特定的。但是,以特定顺序期望属性在任何时候都是错误的。你不发表一个例子,所以我们不知道你指的是什么,但是无论哪种方式,规范是非常松散的,因为在没有对等元素顺序。

+0

定义一个DTD,它指定元素的顺序。这种变化就变得非法。 – 2010-11-18 14:39:18

+0

感谢您的回复。 – mzvertigo 2010-12-11 01:23:17