Skip to content
This repository has been archived by the owner on Nov 2, 2023. It is now read-only.

Commit

Permalink
Merge branch 'master' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
handrews authored Nov 20, 2019
2 parents d82ea38 + bd5116d commit 9ad03c1
Show file tree
Hide file tree
Showing 70 changed files with 1,813 additions and 15,488 deletions.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@
path = _includes/draft-07
url = https://github.com/json-schema-org/json-schema-spec.git
branch = draft-07
[submodule "_includes/draft/2019-09"]
path = _includes/draft/2019-09
url = https://github.com/json-schema-org/json-schema-spec.git
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ before_script:
- PATH="./node_modules/.bin/:$PATH"
script:
- bundle exec jekyll build
- ajv test -s schema -d "learn/examples/*.json" --valid
- ajv test -s draft-07/schema -d "learn/examples/*.json" --valid
8 changes: 4 additions & 4 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -199,16 +199,16 @@ GEM
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
mercenary (0.3.6)
mini_portile2 (2.3.0)
mini_portile2 (2.4.0)
minima (2.4.1)
jekyll (~> 3.5)
jekyll-feed (~> 0.9)
jekyll-seo-tag (~> 2.1)
minitest (5.11.3)
multipart-post (2.0.0)
net-dns (0.8.0)
nokogiri (1.8.2)
mini_portile2 (~> 2.3.0)
nokogiri (1.10.5)
mini_portile2 (~> 2.4.0)
octokit (4.8.0)
sawyer (~> 0.8.0, >= 0.5.3)
pathutil (0.16.1)
Expand All @@ -221,7 +221,7 @@ GEM
ruby-enum (0.7.2)
i18n
ruby_dep (1.5.0)
rubyzip (1.2.1)
rubyzip (2.0.0)
safe_yaml (1.0.4)
sass (3.5.6)
sass-listen (~> 4.0.0)
Expand Down
48 changes: 48 additions & 0 deletions _data/validator-libraries-modern.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,63 +3,75 @@
implementations:
- name: Json.NET Schema
url: https://www.newtonsoft.com/jsonschema
date-draft:
draft: [7, 6, 4, 3]
license: "AGPL-3.0-only"
- name: Manatee.Json
url: https://github.com/gregsdennis/Manatee.Json
date-draft: [2019-09]
draft: [7, 6, 4]
license: MIT
- name: C
implementations:
- name: WJElement
url: https://github.com/netmail-open/wjelement
date-draft:
draft: [4, 3]
license: LGPL-3.0
notes: "Draft-06+ progress: issue [17](https://github.com/netmail-open/wjelement/issues/17#issuecomment-390899432)"
- name: C++
implementations:
- name: f5-json-schema
url: https://github.com/KayEss/json-schema
date-draft:
draft: [7]
license: Boost Software License 1.0
- name: JSON schema validator for JSON for Modern C++
url: https://github.com/pboettch/json-schema-validator
date-draft:
draft: [7]
license: MIT
- name: Clojure
implementations:
- name: jinx
url: https://github.com/juxt/jinx
date-draft:
draft: [7]
license: MIT
- name: json-schema
url: https://github.com/luposlip/json-schema
date-draft:
draft: [7]
license: Apache License, Version 2.0
- name: Elixir
implementations:
- name: Elixir JSON Schema validator
url: https://github.com/jonasschmidt/ex_json_schema
date-draft:
draft: [4]
notes: "Draft-06+ progress: issue [24](https://github.com/jonasschmidt/ex_json_schema/issues/24); branch [multi-draft-support](https://github.com/jonasschmidt/ex_json_schema/tree/multi-draft-support)"
license: MIT
- name: JsonXema
url: https://github.com/hrzndhrn/json_xema
date-draft:
draft: [7, 6, 4]
license: MIT
- name: Go
implementations:
- name: gojsonschema
url: https://github.com/xeipuuv/gojsonschema
date-draft:
draft: [7, 6, 4]
license: "Apache 2.0"
- name: santhosh-tekuri/jsonschema
url: https://github.com/santhosh-tekuri/jsonschema
notes:
date-draft:
draft: [7, 6, 4]
license: BSD-3-Clause
- name: qri-io/jsonschema
url: https://github.com/qri-io/jsonschema
date-draft:
draft: [7]
license: MIT
notes: includes custom validator support, rich error returns
Expand All @@ -68,88 +80,124 @@
- name: everit-org/json-schema
url: https://github.com/everit-org/json-schema
notes:
date-draft:
draft: [7, 6, 4]
license: Apache License 2.0
- name: Justify
url: https://github.com/leadpony/justify
notes:
date-draft:
draft: [7, 6, 4]
license: Apache License 2.0
- name: networknt/json-schema-validator
url: https://github.com/networknt/json-schema-validator
notes: Support OpenAPI 3.0 with Jackson parser
date-draft:
draft: [7, 6, 4]
license: Apache License 2.0
- name: Kotlin
implementations:
- name: Medeia-validator
url: https://github.com/worldturner/medeia-validator
notes: streaming validator for Kotlin and Java clients; works with Jackson and Gson
date-draft:
draft: [7, 6, 4]
license: Apache License 2.0
- name: JavaScript
implementations:
- name: ajv
url: https://github.com/epoberezkin/ajv
notes: "for Node.js and browsers - supports [custom keywords](https://github.com/epoberezkin/ajv-keywords) and [$data reference](https://github.com/json-schema-org/json-schema-spec/issues/51)"
date-draft:
draft: [7, 6, 4]
license: MIT
- name: djv
url: https://github.com/korzio/djv
notes: "for Node.js and browsers"
date-draft:
draft: [6, 4]
license: MIT
- name: vue-vuelidate-jsonschema
url: https://github.com/mokkabonna/vue-vuelidate-jsonschema
date-draft:
draft: [6]
license: MIT
- name: PHP
implementations:
- name: Opis Json Schema
url: https://github.com/opis/json-schema
notes:
date-draft:
draft: [7, 6]
license: "Apache License 2.0"
- name: Swaggest Json Schema
url: https://github.com/swaggest/php-json-schema
notes:
date-draft:
draft: [7, 6, 4]
license: "MIT"
- name: Python
implementations:
- name: jsonschema
url: https://github.com/Julian/jsonschema
notes:
date-draft:
draft: [7, 6, 4, 3]
license: "MIT"
- name: fastjsonschema
url: https://github.com/horejsek/python-fastjsonschema
notes: Great performance thanks to code generation.
date-draft:
draft: [7, 6, 4]
license: BSD-3-Clause
- name: Ruby
implementations:
- name: JSONSchemer
url: https://github.com/davishmcclurg/json_schemer
notes:
date-draft:
draft: [7, 6, 4]
license: MIT
- name: Objective-C
implementations:
- name: DSJSONSchemaValidation
url: https://github.com/dashevo/JSONSchemaValidation
notes:
date-draft:
draft: [7, 6, 4]
license: MIT
- name: Lua/LuaJIT
implementations:
- name: lua-resty-jsonschema
url: https://github.com/iresty/lua-resty-jsonschema
notes:
date-draft:
draft: [7, 6, 4]
license: MIT
- name: Web (Online)
implementations:
- name: JSON Schema Validator
url: https://www.jsonschemavalidator.net/
date-draft:
draft: [7, 6, 4, 3]
- name: JSON Schema Lint
url: http://jsonschemalint.com/
date-draft:
draft: [7, 6, 4, 3, 2, 1]
- name: ExtendsClass's JSON Schema Validator
url: https://extendsclass.com/json-schema-validator.html
date-draft:
draft: [7]
- name: Command Line
implementations:
- name: ajv-cli
license: MIT
url: 'https://www.npmjs.com/package/ajv-cli'
date-draft:
draft: [7, 6, 4]
- name: Polyglottal JSON Schema Validator
license: MIT
url: 'https://www.npmjs.com/package/pajv'
date-draft:
draft: [6, 4]
notes: can be used with YAML and many other formats besides JSON
5 changes: 0 additions & 5 deletions _data/validator-libraries-obsolete.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,6 @@
url: https://github.com/java-json-tools/json-schema-validator
draft: [4]
license: LGPLv3
- name: json-schema-validator
url: https://github.com/networknt/json-schema-validator
notes:
draft: [4]
license: Apache License 2.0
- name: JavaScript
implementations:
- name: jsonschema
Expand Down
1 change: 1 addition & 0 deletions _includes/draft/2019-09
Submodule 2019-09 added at b47f56
20 changes: 20 additions & 0 deletions _layouts/redirect.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="en-US">
<meta charset="utf-8">
<title>Redirecting&hellip;</title>
<link rel="canonical" href="{{ page.redirect.to }}">
<meta http-equiv="refresh" content="0; url={{ page.redirect.to }}">
<meta name="robots" content="noindex">
<h1>Redirecting&hellip;</h1>
<p>
Several redirections on json-schema.org are special cases:
</p>
<ul>
<li>The unversioned meta-schema URIs should no longer be used.</li>
<li>The vocabularies are represented by their specification text.</li>
<li>The "latest" specification URIs are for convenice of browser
bookmarking only.</li>
</ul>
<a href="{{ page.redirect.to }}">Click here if you are not redirected.</a>
<script>location="{{ page.redirect.to }}"</script>
</html>
1 change: 1 addition & 0 deletions draft-06/json-schema-release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ keyword | change | consequence
`"$id"` | replaces `"id"` | behavior is identical, `$` prefix matches the other two core keywords
`"$ref"` | only allowed where a schema is expected | it is now possible to describe instance properties named `"$ref"`
`"exclusiveMinimum"` and `"exclusiveMaximum"` | changed from a boolean to a number to be consistent with the principle of keyword independence | wherever one of these would be true before, change the value to the corresponding `"minimum"` or `"maximum"` value and remove the `"minimum"`/`"maximum"` keyword
`"type"` | definition of `"integer"` | in draft-04, `"integer"` is listed as a primitive type and defined as "a JSON number without a fraction or exponent part"; in draft-06, `"integer"` is not considered a primitive type and is only defined in the section for keyword `"type"` as "any number with a zero fractional part"; `1.0` is thus not a valid `"integer"` type in draft-04 and earlier, but is a valid `"integer"` type in draft-06 and later; note that both drafts say that integers SHOULD be encoded in JSON without fractional parts

#### Additions and backwards-compatible changes

Expand Down
1 change: 1 addition & 0 deletions draft/2019-09/hyper-schema
Loading

0 comments on commit 9ad03c1

Please sign in to comment.