This document will lay out everything that is supported and limitations with the reader. Features that dont have support will gain support with new patches. Currently we ONLY support schema version of draft 7.
Annotations are not included for generation
additionalProperties
KeywordThis keyword will always evaluate to false so no random additional properties will be generated by the reader and only the specified properties in the "properties" object will get generated.
required
KeywordThis keyword is supported. Fields marked as "required" but not mentioned in "properties" will produce a "const" tree node.
patternProperties
Keyword"patternProperties" keyword is ignored. This feature will be supported with regular expression in later patch
propertyNames
KeywordThis keyword is ignored, and will use the keys specified by the "properties" keyword instead even if it does not comply with the "propertyNames" regex pattern. If nothing is in "properties" then an empty object is returned, This feature is considered for future patches
"pattern" keyword is therefore also ignored for this patch
minProperties
& maxProperties
KeywordThis keyword is not fully supported, the generated object count will be based on Math.floor((min + max) / 2). range generation will be supported in future patches
dependencies
KeywordThis keyword is ignored because all the fields specified in "properties" keyword will be used in the generator so this keyword has no effect,
items
& contains
KeywordFor array types if items/contains keyword is not defined then an empty array will always be returned. No random element will be generated.
If contains and items attribute are specified at the same time, contains will be ignored as list has higher precedent over contains. This usually shouldnt happen as only one of the attribute should appear along, however if they do appear together they must have the same type otherwise no Json format will return true.
uniqueItems
Keywordkeyword is ignored in current patch and will be added in later patches
additionalItems
KeywordThe "additionalItems" property will always evalute to false similar to additionalProperties
maxLength
& minLength
KeywordThis keyword is supported for normal strings. But does not yet have support for pattern.
format
Keywordidn formats - are not supported as only English is currently supported. The feature will be added in when locale is added to the software.
uri formats - Any uri format is replaced with URL as uri data is not supported, this will change if uri is a supported data type.
iri format - international version of uri, same as uri will get support if uri data type is supported
pattern
Keyword"pattern" keyword is supported
ref
KeywordThis is supported. (file uri and external url are both supported). We currently dont support circular references
This is supported
Any media keywords are not supported at the moment and will gain support in later patches.
allOf
, anyOf
, oneOf
, not
KeywordsallOf , anyOf , oneOf keywords are now supported. oneOf currently behaves exactly like anyOf but we will do our best to have it work correctly in future patches.
if
, else
Conditional schemas will have support in later patches