Restrictions
Fonctionnalités non supportées
- Les objets qui mélangent properties (propriétés) et additionalProperties (propriétésSupplémentaires) ne sont pas supportés. Consultez l'exemple suivant :
schemas: Coord: type: object properties: latitude: type: number longitude: type: number additionalProperties: type: number
- Le mot-clé multipleOf (multipleDe) est ignoré comme contrainte sur une propriété. Consultez l'exemple suivant :
schema: type: array items: type: integer multipleOf: 2
Talend Data Mapper ignore la restriction.
- Les valeurs par défaut dans properties (propriétés) sont ignorées, comme illustré dans le schéma suivant :
schema: type: object properties: a: type: string default: Hello
La valeur Hello ne sera pas importée comme la valeur par défaut de l'élément A.
- Le mot-clé nullable est ignoré dans le schéma, comme illustré dans l'exemple suivant :
schema: type: array items: type: string nullable: true
L'attribut nullable n'est pas importé.
- Les objets avec des propriétés ne sont pas supportés. Dans l'OpenAPI, le mot-clé additionalProperties (propriétésSupplémentaires) peut être utilisé avec une valeur booléenne. La sémantique est alors différente d'une map de clés ou de paires de valeurs, et indique que n'importe quelle propriété supplémentaire est acceptée.Talend Data Mapper n'a pas le concept d'une structure open (ouverte) lorsque des éléments additionnels peuvent apparaître durant l'exécution (schéma dynamique). D'une façon similaire, les propriétés définies comme tel sont ignoré :
"PutResourceAttributesResult": { "properties": {}, "type": "object" }, "headers" : { }
- Les spécifications OpenAPI 3.0 décrivent un extension mechanism (mécanisme d'extension) (uniquement en anglais) qui n'est pas supporté dans Talend Data Mapper.
- Le mot-clé not, comme illustré dans l'exemple de code suivant, n'est pas supporté dans Talend Data Mapper :
PetByAge: type: object properties: age: type: integer nickname: not: type: integer required: - age
Problème connu
Le support pour OpenAPI 3.0 inclut des constructions basées sur le schéma JSON AnyOf et OneOf, qui sont traduits en des éléments Choix par Talend Data Mapper. Lorsque ces éléments Choix sont des éléments enfant (pas des éléments de niveau supérieur), les Lecteurs et Rédacteurs Talend Data Mapper, JSON inclus, supportent les éléments correctement. Cependant, lorsque de tels éléments Choix sont des éléments de niveau supérieur ou racine d'une Structure, les Lecteurs et Rédacteurs Talend Data Mapper, JSON inclus, résultent en un échec de parsing ou d'écriture de données.