You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 2, 2023. It is now read-only.
*[WIP: hyper-schema-output.json](/work-in-progress/WIP-hyper-schema-output.json) (format used by the proposed hyper-schema test suite, and used in examples in the specification)
46
-
47
-
48
-
## Providing Feedback and Tracking Progress in GitHub
49
-
50
-
* The active sources are on the
51
-
["master" branch of json-schema-org/json-schema-spec](https://github.com/json-schema-org/json-schema-spec)
52
-
* The [draft-07 milestone](https://github.com/json-schema-org/json-schema-spec/milestone/5)
53
-
tracks all issues and PRs for this draft
54
-
* Check the [open PRs](https://github.com/json-schema-org/json-schema-spec/pulls)
55
-
to see what is already being changed from other feedback
56
-
*[file an issue](https://github.com/json-schema-org/json-schema-spec/issues/new?milestone=draft-07)
57
-
or [join the mailing list](https://groups.google.com/forum/#!forum/json-schema) to submit feedback
58
-
59
-
## Summary of Changes
60
-
61
-
The primary focus of this draft has been JSON Hyper-Schema, which has been given a top-to-bottom
62
-
rewrite in addition to numerous new features. As part of this, we have (with the original
63
-
author's permission), revived the Relative JSON Pointer proposal to be submitted alongside
64
-
of hyper-schema.
65
-
66
-
In the course of that rewrite, several concepts that apply across all JSON Schema specifications
67
-
became more clear, so in addition to new keywords in both Core and Validation, some of the
68
-
introductory and other text has been reworked to fit into the new conceptual model.
69
-
70
-
We are **particularly interested** in feedback on whether the wording and concepts is an
71
-
improvement in terms of how easy it is to understand and learn the specifications.
72
-
73
-
Note that _all drafts have Changelog appendicies_, for a concise list of notable changes.
74
-
75
-
### Changes to Concepts
76
-
77
-
These are properly explained in the documents as noted. They are listed here to
78
-
highlight their importance: If you read the drafts and do not understand these
79
-
concepts, please file an issue or let us know on the mailing list.
80
-
81
-
*_applicability_ (defined in the validation spec)
82
-
*_assertions_ (defined in the validation spec, also mentioned in core)
83
-
*`true` and `false` as trivial assertions (explained in core)
84
-
*_annotations_ (defined in the validation spec)
85
-
*_generic user agent_ (defined in hyper-schema)
86
-
*_client application_ and _client input_ (defined in hyper-schema)
87
-
88
-
### Changes to Specification Boundaries
89
-
90
-
The `readOnly` and `media` keywords, previously in Hyper-Schema, are often used (or people
91
-
ask about using them) outside of Hyper-Schema. As a result, they have been moved to the
92
-
validation spec:
93
-
94
-
*`readOnly` is now a metadata keyword in the validation spec
95
-
*`media` and its `type` and `binaryEncoding` keywords get their own validation spec section as `contentMediaType` and `contentEncoding`
96
-
97
-
Hyper-schema now solely describes the Link Description Object (LDO), plus the two keywords
98
-
(`base` and `links`) necessary to connect the LDO to schemas.
99
-
100
-
### Changes to the Core Specification
101
-
102
-
*`application/schema-instance+json` optional instance media type
103
-
* Proposed "schema" link relation type in place of using "profile"
104
-
* Added `$comment` (also added to Hyper-Schema's LDO)
105
-
* Better wording around `$id` and fragments
106
-
* Note the challenges of extending meta-schemas more clearly
107
-
108
-
### Changes to the Validation Specification
109
-
110
-
Only `if`/`then`/`else` is a mandatory new implementation requirement. Everything else
111
-
is either an annotation (no defined requirements) or gives implementations the option
112
-
to **not** implement validation (format and content keywords).
113
-
114
-
* Added `if`, `then`, and `else`
115
-
* Note: imperative vs declarative [exhaustively discussed](https://github.com/json-schema-org/json-schema-spec/issues/180)
116
-
* Note: we [may remove the schema form of `dependencies`](https://github.com/json-schema-org/json-schema-spec/issues/442)
117
-
* Added many new formats, clarified the "json-pointer" format
118
-
* Added `writeOnly` alongside `readOnly` (moved from Hyper-Schema)
119
-
* Moved the hyper-schema `media` object to the `content*` keywords in validation
120
-
121
-
### Changes to the Hyper-Schema specification
122
-
123
-
124
-
Basically everything is different. It's probably best to just read it top to bottom
125
-
and pretend you've never heard of it before.
126
-
127
-
* Added overview explaining the general purpose and scope
128
-
* Aligned LDO with how links are described in [RFC 8288](https://tools.ietf.org/html/rfc8288)
129
-
* Context adjustment with `anchor` and `anchorPointers`
130
-
* Pseudocode specification for URI Template resolution
131
-
*`templatePointers` and `templateRequired` added to URI Template resolution process
132
-
*`mediaType` and `submissionEncType` are now `targetMediaType` and `submissionMediaType`
133
-
*`targetHints` and `headerSchema` for working with HTTP request and response headers
134
-
* HTTP guidance has its own section
135
-
* API usage has an appendix, including a subsection on static docs and code
136
-
* Collections and items are recognizable based on link relation types
137
-
138
-
## Known Issues
139
-
140
-
* Hyper-Schema needs a lot more examples (suggestions encouraged!)
141
-
* Hyper-Schema examples would be better if they fit together to tell a single story
142
-
* Hyper-Schema needs to be consistent about cross-references
143
-
144
-
The primary author of this draft (and this page) notoriously struggles to write
145
-
effective examples. Help on this aspect of the spec would be very much appreciated.
13
+
This page will remain empty until draft-08 enters the final pre-publication review period.
0 commit comments