JSONx
Posted by Bruce Tsai
04/26/2016
JSONx是 IBM 推出的一種 XML 文件格式,目的非常有趣,和 JXON 剛好相反,是用 XML 文件來表示 JSON 文件的資料。在 REST 當道的系統設計下,並不是所有的系統都能處理 JSON 格式的資料,因此 JSONx 的主要目的(個人推測)是讓部份以 XML 資料為主的系統能夠在處理 JSON 格式資料時有一個轉換的方式。相同名稱的 libaray 還有 Erlang 的 jsonx,是處理 JSON 的 library 之一。
JSONx conversion example
{
"name":"John Smith",
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": 10021,
},
"phoneNumbers": [
"212 555-1111",
"212 555-2222"
],
"additionalInfo": null,
"remote": false,
"height": 62.4,
"ficoScore": " > 640"
}
<?xml version="1.0" encoding="UTF-8"?>
<json:object xsi:schemaLocation="http://www.datapower.com/schemas/json jsonx.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx">
<json:string name="name">John Smith</json:string>
<json:object name="address">
<json:string name="streetAddress">21 2nd Street</json:string>
<json:string name="city">New York</json:string>
<json:string name="state">NY</json:string>
<json:number name="postalCode">10021</json:number>
</json:object>
<json:array name="phoneNumbers">
<json:string>212 555-1111</json:string>
<json:string>212 555-2222</json:string>
</json:array>
<json:null name="additionalInfo" />
<json:boolean name="remote">false</json:boolean>
<json:number name="height">62.4</json:number>
<json:string name="ficoScore"> > 640</json:string>
</json:object>