This repository was archived by the owner on Nov 2, 2023. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 213
WIP go at WIP Release Notes #276
Merged
Merged
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
--- | ||
title: JSON Schema Draft-07 Release Notes | ||
layout: page | ||
--- | ||
|
||
There are a few non-breaking changes with keywords being deprecated and slates | ||
for removal, and a few newer keywords based on community feedback. Internally | ||
there has been a lot of restructuring through a new concept called vocabularies, | ||
but on the whole things are mostly the same. | ||
|
||
* TOC | ||
{:toc} | ||
|
||
- Update to RFC 8359 for JSON specification | ||
- Add the concept of formal vocabularies, and how they can be recognized through meta-schemas | ||
- Formalized annotation collection | ||
- Moved applicator keywords from the Validation specification as their own vocabulary | ||
- Define "$ref" behavior in terms of the assertion, applicator, and annotation model | ||
- Note undefined behavior for "$ref" targets involving unknown keywords | ||
- Additional guidance on initial base URIs beyond network retrieval | ||
- Allow "schema" media type parameter for "application/schema+json" | ||
|
||
### Keywords | ||
|
||
* Eight brand new keywords were added | ||
* One keyword was renamed | ||
* One keyword was split in half | ||
* One keyword in Core changed behavior | ||
* One keyword in Hyper-Schema changed behavior | ||
|
||
keyword | change | notes | ||
---- | ---- | ---- | ||
[`"definitions"`](json-schema-core.html#rfc.section.TODO) | **renamed** | use new "$defs" core keyword | ||
[`"unevaluatedProperties" and "unevaluatedItems"`](json-schema-core.html#rfc.section.TODO) | **added** | | ||
[`"$ref"`](json-schema-core.html#rfc.section.TODO) | **changed** | can now have siblings (keywords next to it) | ||
[`"$defs"`](json-schema-core.html#rfc.section.10.TODO) | **added** | moved over to core from validation | ||
`"dependencies"` | **removed** | use "dependentRequired" or "dependentSchemas" | ||
[`"dependentRequired"`](json-schema-core.html#rfc.section.10.TODO) | **added** | added to core schema | ||
[`"dependentSchemas"`](json-schema-core.html#rfc.section.10.TODO) | **added** | added to core schema | ||
[`"minContains" and "maxContains"`](json-schema-validation.html#rfc.section.TODO) | added | | ||
[`"contentSchema"`](json-schema-validation.html#rfc.section.TODO) | added | allows applying a schema to a string-encoded document | ||
[`"deprecated"`](json-schema-validation.html#rfc.section.TODO) | added | | ||
[`"rel"`](json-schema-hyperschema.html#rfc.section.TODO) | **changed** | Can now be an array of values instead of just a string | ||
|
||
### Formats | ||
|
||
Two formats were added. | ||
|
||
format | change | notes | ||
---- | ---- | ---- | ||
[`"uuid"`](json-schema-validation.html#rfc.section.7.3.5) | added | A string instance is valid against this attribute if it is a valid string representation of a UUID, according to RFC4122 | ||
[`"duration"`](json-schema-validation.html#rfc.section.7.3.5) | added | The duration format is from the ISO 8601 ABNF as given in Appendix A of RFC 3339 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that this was renamed from
dependencies
in the moveThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could you maybe throw some changes on top of this? I'm implementing every bit of feedback I understand but this one is escaping me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@philsturgeon because I wrote it wrong! I meant "renamed from
definitions
", notdependencies
🤦♂There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@philsturgeon I don't understand how people add suggestions as diffs- if there's a button for it I don't see it.
Just change **removed** to **renamed** and 'use new "$defs" keyword` to 'use renamed "$defs" keyword'
But really this is the least significant thing so I might just approve/merge as is and we can tweak this later.