-
Notifications
You must be signed in to change notification settings - Fork 62
Open
Description
Your implementation of the $data
keyword results in invalid schemas (they fail validation against the meta-schema).
For example
{
"type": "integer",
"minimum": { "$data": "/minValue" }
}
violates that the value in minimum
is supposed to be a number.
Please consider implementing my data
vocabulary instead. It is fully compliant with drafts 6 and later. It's also more powerful in that it can reference data from the instance, from the schema, and from other external sources.
Edit I thought that it might be good to include what this would look like with data
.
{
"type": "integer",
"data": {
"minimum": "/minValue"
}
}
This schema does pass meta-schema validation.
To reference other data sources, use:
- plain JSON Pointers to reference instance data (as shown above)
- URI-encoded JSON Pointers as fragment-only URIs to reference schema data (e.g.
#/minValue
, like what you might see in$ref
) - full URIs, optionally with JSON Pointer fragments to reference other external data (e.g.
https://example.com/data#/my/pointer
)
Metadata
Metadata
Assignees
Labels
No labels