- Now supports the
default
keyword for each schema node type. - Now supports boolean values for the
additionalProperties
keyword.
- When defining an anonymous type using the
items
keyword, it is now named:anonymous
rather thanitems
in the parsed document.
- Fixed a bug where the parser would throw an unexpected error if the
items
property contained a primitive type.
- Replaces auto-generated schema names like
zero
andone
with:anonymous
making it easier for a consuming project to decide what to do when a subschema does not have an explicit name. (#97) - Replaces stringly-typed
type
properties for several schema types to instead use specific atoms corresponding to the set of valid JSON value type. - Adds better error description for invalid
union
types.
- Support for the generic
description
keyword (#14). - support for the
const
keyword (#21).
- Various bugs related to parsing nested root object (#35).
- Support for parsing the following JSON schema types:
additionalProperties
, andpatternProperties
.
- Replaced the
TypePath
type wih theURI
type when specifying local paths in a JSON schema document.
NOTE: This initial release is a fork of https://github.com/dragonwasrobot/json-schema-to-elm, and so this version contains all existing changes made in that project. As a result, the parser and inspection logic found in this first version reflects which parts of the JSON Schema specification was needed in the original project.
-
Support for parsing the following JSON schema types:
allOf
,anyOf
,array
(keyworditems
when value is a object),enum
,object
, (keywordproperties
),oneOf
,primitive
(keywordtype
except forobject
andarray
),tuple
(keyworditems
when value is a list of objects), andunion
(keywordtype
when value is a list of strings).
-
Parsing of the basic properties of a JSON schema document:
schema
,$id
,$ref
,title
,description
,"definitions"
, andrequired
.
-
Can resolve references, using
$ref
, across different JSON schema files as long as they are parsed together. -
Prints human friendly error messages.