Dilib, module Istex, commande JsonToSxml
De Wicri Outils
Module Istex |
Cette commande, disponible à partir de la version V0.5.81, permet de convertir des données en format JavaScript Object Notation (JSON) en flux Sxml.
Conventions utilisées
Dans la conversion JsonToSxml, les conventions suivantes sont appliquées :
- Un document XML nommé « json » est créé.
- Une déclaration d'espace de nom « json » est ajoutée dans la racine du document (à partir de la version V0.6.13).
- Les éléments de liste JSON sont balisés par « json:item ».
- De même les chaînes non étiquetées sont balisées par « json:string ».
Utilisation
- exemple introductif
La hiérarchie Dilib contient quelques exemples test sous $DILIB_IMPORT/Istex/Test.
Ainsi, sur le fichier :
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitem": [
{ "value": "New",
"onclick": "CreateNewDoc()"
},
{ "value": "Open",
"onclick": "OpenDoc()"
},
{ "value": "Close",
"onclick": "CloseDoc()"
}
]
}
}
}
La commande :
JsonToSxml < $DILIB_IMPORT/Istex/Test/jsonTest1.txt | SxmlIndent
produit :
<json xmlns:json="http://ticri.univ-lorraine.fr/wicri-meta.fr/index.php/JSON">
<menu>
<id>file</id>
<value>File</value>
<popup>
<menuitem>
<json:item>
<value>New</value>
<onclick>CreateNewDoc()</onclick>
</json:item>
<json:item>
<value>Open</value>
<onclick>OpenDoc()</onclick>
</json:item>
<json:item>
<value>Close</value>
<onclick>CloseDoc()</onclick>
</json:item>
</menuitem>
</popup>
</menu>
</json>
- Avec l'API Istex
Avec utilissation de cURL et SxmlIndent pour visualiser la page d'entrée pour un document via l'api ISTEX.
curl https://api.istex.fr/document/B9F555DBF3A8A5EB874D3352D400B490495C8E5B 2> /dev/null \
| JsonToSxml | SxmlIndent | more
Réalisation
Pour sa réalisation cette commande utilise l'interface JsonTools (voir Istex/JsonToSxml.c).