【发布时间】:2014-03-27 08:11:36
【问题描述】:
有没有参考架构将 XML 转换为 JSON 的方法。
假设xsd的一部分如下:
<xs:complexType name="RegionStateResultType">
<xs:sequence>
<xs:element name="RegionOrState" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="RegionOrStateCode" type="xs:string" minOccurs="0" maxOccurs="1"/>
<xs:element name="PinCode" type="xs:integer" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
xml 是:
<RegionOrStateInfo>
<RegionOrState>Tochigi</RegionOrState>
<RegionOrStateCode>09</RegionOrStateCode>
<PinCode>12345</PinCode>
</RegionOrStateInfo>
在使用 XMLtoJSON 转换策略时,如果我们将 RecognizeNumber 设置为 'true' 则生成的 json 为:
{
"RegionOrState": "Tochigi",
"RegionOrStateCode": "09" ,
"PinCode":12345
},
{
"RegionOrState": "Tokushima",
"RegionOrStateCode": 36 ,
"PinCode":12345
}
如果 RecognizeNumber 设置为 'false' 则生成的 json 为:
{
"RegionOrState": "Tochigi",
"RegionOrStateCode": "09" ,
"PinCode": "12345"
},
{
"RegionOrState": "Tokushima",
"RegionOrStateCode": "36" ,
"PinCode": "12345"
}
需要的json是:
{
"RegionOrState": "Tochigi",
"RegionOrStateCode": "09" ,
"PinCode": 12345
},
{
"RegionOrState": "Tokushima",
"RegionOrStateCode": "36" ,
"PinCode": 12345
}
有什么方法可以实现吗?
有没有人使用过 JSONSchema,有没有办法让转换器引用一个模式然后进行翻译?
在 XML 到 JSON 的转换中,我还遇到了单元素数组的一些问题。认为 JSONSchema 可以提供一些帮助
【问题讨论】: