Accéder au contenu principal Passer au contenu complémentaire

Support des schémas JSON

Cette section liste le niveau de support des éléments de schéma JSON. Pour plus d'informations concernant le support d'éléments de schémas JSON, consultez https://json-schema.org/specification.html (en anglais).

Entièrement supporté·es

  • Types simples : null, boolean, object, array, number, integer et string.
  • Types mixes : "type": ["string", "null"] par exemple.
  • Types définis : $defs et $definitions
  • allOf et oneOf
  • items et prefixItems
  • maxLength et minLength
  • maxItems et minItems
  • required
  • Formats : date-time, date et time

Supporté avec limitations

Élément Limitation
Références : $id, $anchor et $ref Les références externes aux schémas JSON utilisant $ref fonctionnent avec les fichiers de protocole et les protocoles HTTP/HTTPS uniquement. Pour HTTP, il n'y a pas de provisioning pour les paramètres de proxy ou de sécurité. Il est recommandé d'utiliser des schémas JSON composés où toutes les références se situent au sein du même document et ne sont pas des références externes.
anyOf

anyOf est traité comme oneOf, s'il y a plusieurs alternatives et comme allOf dans les autres cas.

Schémas récursifs

Les schémas récursifs sont supportés, cependant, ils peuvent avoir un impact sur les performances des structures Talend Data Mapper s'ils sont trop utilisés. Vous pouvez définir des schémas récursifs à exclure, dans Window > Preferences > Mapping > Representations. Pour plus d'informations, consultez Préférences des représentations.

patternProperties Les patternProperties sont traduites en groupe de maps de paires clé/valeur. C'est le cas uniquement s'il n'y a aucune propriété pour le même objet, sinon les patternProperties sont ignorées. Les valeurs d'expression régulières dans patternProperties sont ignorées.
enum et const Les valeurs de enum et const doivent être des types primitifs. Dans les enum, les valeurs mixes ne sont pas supportées. Toutes les valeurs doivent avoir le même type.

Non supporté

  • not
  • if, then et else
  • dependentSchemas et dependentRequired
  • Les extensions (mots-clés non définis dans les spécifications) et $vocabulary
  • $dynamicRef et $dynamicAnchor
  • $vocabulary
  • contient
  • additionalProperties : la valeur est toujours false
  • propertyNames
  • unevaluatedItems et unevaluatedProperties
  • Formatage de sortie
  • multipleOf
  • maximum et minimum
  • exclusiveMaximum et exclusiveMinimum
  • pattern
  • uniqueItems, maxContains et minContains
  • maxProperties et minProperties
  • readOnly, writeOnly et examples

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.