Closed arisone closed 4 years ago
La même erreur potentielle est présente sur toutes les propriétés de type tableau présentes dans les schémas json (par exemple la propriété "concessionnaires").
Merci beaucoup pour votre retour.
Les deux notations ne sont-elles pas équivalentes en terme de fonctionnalité ? Dit autrement, quels bénéfices y a t-il à adopter une notation d'objet simple, au-delà de rendre l'homogénéité de l'array plus explicite visuellement ?
Hi Colin, they're not the same when you use some tools to generate pojo from json schema or other tools to validate a json against its json schema. If the schema declares that accepts an array with heterogeneous elements I can put everything inside it instead of the expected element. Moreover I think it is desirable that the json schema and the xsd schema declare exactly the same structure otherwise it could be a bit confusing.
NOTE: I'm using this tool jsonschema2pojo
Done in 77af719. Does it work for you?
Thanks for the pointers.
Ah, still have to fix it for other arrays.
Please check here: https://github.com/etalab/format-commande-publique/blob/develop/marches.json
La propriété "items" des tableaux "titulaires" et "modifications" est définie avec la notation fournie pour les tableaux hétérogènes, alors que dans le schéma xsd il semble que les éléments doivent être homogènes.
Valeur actuelle:
"titulaires": { ... "type": "array", ... "items": [ { "$ref": "#/definitions/Titulaire" } ] }, "modifications": { ... "type": "array", "items": [ { "$ref": "#/definitions/Modification" } ] }
Valeur attendue:
"titulaires": { ... "type": "array", ... "items": { "$ref": "#/definitions/Titulaire" } }, "modifications": { ... "type": "array", "items": { "$ref": "#/definitions/Modification" } }