4.1. JSON
In Xdefinition, you can describe the JSON data model in the "xd:json"
element. The name of the model is in the "name" attribute. The model is
described as text in JSON format. The Xscript for the data values is
written in place of the corresponding data value. The Xscript for maps
and arrays is written as the value of "%script".
JSON data:
{ "cities" : [
{ "from": ["Brussels",
{"to": "London", "distance": 322},
{"to": "Paris", "distance": 265}
]
},
{ "from": ["London",
{"to": "Brussels", "distance": 322},
{"to": "Paris", "distance": 344}
]
}
]
}
The Xdefinition will be:
<xd:def xmlns:xd="http://www.xdef.org/xdef/4.2" name="Test" root="Distancies" >
<xd:json name="test">
{ "cities" : [
{ %script = "occurs 1..*;",
"from": [ "string();",
{ %script = "occurs 1..*;",
"to": "jstring();", "distance": "int();"
}
]
}
]
}
</xd:json>
</xd:def>
You can try it
HERE