webapi-parser
webapi-parser copied to clipboard
Translating JSON "OneOf" to RAML DataTypes
I'm trying to translate the following JSON schema to a RAML datatype using the provided tutorial. But it seems to fail parsing on the JSON "OneOf" keyword. Is this not yet supported?
Input JSON:
{
"$schema" : "http://json-schema.org/draft-04/schema#",
"title" : "Product",
"type" : "object",
"oneOf" : [ {
"$ref" : "#/definitions/PromotionalProduct_-1109912719"
}, {
"$ref" : "#/definitions/DefaultProduct_-1835798300"
} ],
"id" : "#/definitions/Product_-1110706969"
}
output RAML:
Product_-1110706969:
displayName: Product
type: object
(amf-xone):
- PromotionalProduct_-1109912719
- DefaultProduct_-1835798300
Hi @HugaertsDries.
What do you expect anyOf
to be converted to?
I'm not certain it's possible to represent anyOf
using RAML 1.0, because
given data must be valid against exactly one of the given subschemas
and I can't recall a way to express that behaviour in RAML (do you @jstoiko?)
You might want to use oneOf
which is a Union Type in RAML 1.0, but there's an issue with it: https://github.com/aml-org/amf/issues/565
@postatum thanks for the reply!
I was only looking into representing oneOf
. So I have not yet looked into the use case of anyOf
.
But I'll keep a close eye on the issue you provided.