@@ -2768,7 +2768,7 @@ Bray, T., Ed., Hollander, D., Ed., Layman, A., Ed., and R. Tobin, Ed.,
27682768"Namespaces in XML 1.1 (Second Edition)", August 2006,
27692769<< http://www.w3.org/TR/2006/REC-xml-names11-20060816 > >.
27702770
2771- ## Appendix A. Schema identification examples
2771+ ## [ Appendix] Schema identification examples
27722772Consider the following schema, which shows ` $id ` being used to identify both the
27732773root schema and various subschemas, and ` $anchor ` being used to define plain
27742774name fragment identifiers.
@@ -2841,12 +2841,12 @@ embedded schema
28412841resources] ( #921-json-pointer-fragments-and-embedded-schema-resources ) section
28422842for futher comments.
28432843
2844- ## Appendix B. Manipulating schema documents and references
2844+ ## [ Appendix] Manipulating schema documents and references
28452845Various tools have been created to rearrange schema documents based on how and
28462846where references (` $ref ` ) appear. This appendix discusses which use cases and
28472847actions are compliant with this specification.
28482848
2849- ### B.1. Bundling schema resources into a single document
2849+ ### Bundling schema resources into a single document
28502850A set of schema resources intended for use together can be organized with each
28512851in its own schema document, all in the same schema document, or any granularity
28522852of document grouping in between.
@@ -2868,7 +2868,7 @@ changing any aspect of validation or annotation results. The names of the
28682868schemas under ` $defs ` do not affect behavior, assuming they are each unique, as
28692869they do not appear in the canonical IRIs for the embedded resources.
28702870
2871- ### B.2. Reference removal is not always safe
2871+ ### Reference removal is not always safe
28722872Attempting to remove all references and produce a single schema document does
28732873not, in all cases, produce a schema with identical behavior to the original
28742874form.
@@ -2880,7 +2880,7 @@ scope of this specification to determine or provide a set of safe `$ref` removal
28802880transformations, as they depend not only on the schema structure but also on the
28812881intended usage.
28822882
2883- ## Appendix C. Example of recursive schema extension
2883+ ## [ Appendix] Example of recursive schema extension
28842884Consider the following two schemas describing a simple recursive tree structure,
28852885where each node in the tree can have a "data" field of any type. The first
28862886schema allows and ignores other instance properties. The second is more strict
@@ -2976,9 +2976,9 @@ of the node schema objects were moved under `$defs`. It is the matching
29762976` $dynamicAnchor ` values which tell us how to resolve the dynamic reference, not
29772977any sort of correlation in JSON structure.
29782978
2979- ## Appendix D. Working with vocabularies
2979+ ## [ Appendix] Working with vocabularies
29802980
2981- ### D.1. Best practices for vocabulary and meta-schema authors
2981+ ### Best practices for vocabulary and meta-schema authors
29822982Vocabulary authors should take care to avoid keyword name collisions if the
29832983vocabulary is intended for broad use, and potentially combined with other
29842984vocabularies. JSON Schema does not provide any formal namespacing system, but
@@ -3026,7 +3026,7 @@ resulting behavior is undefined.
30263026Meta-schemas intended for local use, with no need to test for vocabulary support
30273027in arbitrary implementations, can safely omit ` $vocabulary ` entirely.
30283028
3029- ### D.2. Example meta-schema with vocabulary declarations
3029+ ### Example meta-schema with vocabulary declarations
30303030This meta-schema explicitly declares both the Core and Applicator vocabularies,
30313031together with an extension vocabulary, and combines their meta-schemas with an
30323032` allOf ` . The extension vocabulary's meta-schema, which describes only the
@@ -3118,7 +3118,7 @@ to ensure that it is validated even when `format` functions purely as an
31183118annotation, as explained in the [Validation
31193119specification ](#json-schema-validation).
31203120
3121- ## Appendix E. References and generative use cases
3121+ ## [ Appendix] References and generative use cases
31223122While the presence of references is expected to be transparent to validation
31233123results, generative use cases such as code generators and UI renderers often
31243124consider references to be semantically significant.
@@ -3167,7 +3167,7 @@ instance of a distinct class.
31673167This style of usage requires the annotation to be in the same object as the
31683168reference, which must be recognizable as a reference.
31693169
3170- ## Appendix F. Acknowledgments
3170+ ## [ Appendix] Acknowledgments
31713171Thanks to Gary Court, Francis Galiegue, Kris Zyp, Geraint Luff, and Henry
31723172Andrews for their work on the initial drafts of JSON Schema.
31733173
@@ -3176,16 +3176,16 @@ Bowman, Gowry Sankar, Donald Pipowitch, Dave Finlay, Denis Laxalde, Phil
31763176Sturgeon, Shawn Silverman, and Karen Etheridge for their submissions and patches
31773177to the document.
31783178
3179- ## Appendix G. Change Log[^19]
3179+ ## [ Appendix] Change Log[^19]
31803180[^19 ]: This section to be removed before leaving Internet-Draft status.
31813181
3182- ### G.1. draft-bhutton-json-schema-next
3182+ ### draft-bhutton-json-schema-next
31833183- `contains` now applies to objects as well as arrays
31843184- Use IRIs instead of URIs
31853185- Remove bookending requirement for `$dynamicRef`
31863186- Add `propertyDependencies` keyword
31873187
3188- ### G.2. draft-bhutton-json-schema-01
3188+ ### draft-bhutton-json-schema-01
31893189- Improve and clarify the `type`, `contains`, `unevaluatedProperties`, and
31903190`unevaluatedItems` keyword explanations
31913191- Clarify various aspects of "canonical URIs"
@@ -3194,7 +3194,7 @@ to the document.
31943194- Remove references to remaining media-type parameters
31953195- Fix multiple examples
31963196
3197- ### G.3. draft-bhutton-json-schema-00
3197+ ### draft-bhutton-json-schema-00
31983198- `$schema` MAY change for embedded resources
31993199- Array-value `items` functionality is now `prefixItems`
32003200- `items` subsumes the old function of `additionalItems`
@@ -3211,7 +3211,7 @@ interactions now specified
32113211- Moved `unevaluatedItems` and `unevaluatedProperties` from core into their own
32123212vocabulary
32133213
3214- ### G.4. draft-handrews-json-schema-02
3214+ ### draft-handrews-json-schema-02
32153215- Update to RFC 8259 for JSON specification
32163216- Moved `definitions` from the Validation specification here as `$defs`
32173217- Moved applicator keywords from the Validation specification as their own
@@ -3237,7 +3237,7 @@ meta-schemas
32373237- Clarified that the behavior of JSON Pointers across `$id` boundary is
32383238unreliable
32393239
3240- ### G.5. draft-handrews-json-schema-01
3240+ ### draft-handrews-json-schema-01
32413241- This draft is purely a clarification with no functional changes
32423242- Emphasized annotations as a primary usage of JSON Schema
32433243- Clarified $id by use cases
@@ -3250,7 +3250,7 @@ schema identifiers during parsing
32503250same process
32513251- Minor formatting improvements
32523252
3253- ### G.6. draft-handrews-json-schema-00
3253+ ### draft-handrews-json-schema-00
32543254- Make the concept of a schema keyword vocabulary more clear
32553255- Note that the concept of "integer" is from a vocabulary, not the data model
32563256- Classify keywords as assertions or annotations and describe their general
@@ -3262,7 +3262,7 @@ behavior
32623262- Add `application/schema-instance+json` media type
32633263- Recommend a "schema" link relation / parameter instead of "profile"
32643264
3265- ### G.7. draft-wright-json-schema-01
3265+ ### draft-wright-json-schema-01
32663266- Updated intro
32673267- Allowed for any schema to be a boolean
32683268- `$schema` SHOULD NOT appear in subschemas, although that may change
@@ -3271,7 +3271,7 @@ behavior
32713271- Note applicability to formats such as CBOR that can be represented in the JSON
32723272data model
32733273
3274- ### G.8. draft-wright-json-schema-00
3274+ ### draft-wright-json-schema-00
32753275- Updated references to JSON
32763276- Updated references to HTTP
32773277- Updated references to JSON Pointer
@@ -3286,7 +3286,7 @@ data model
32863286- Rewrote section on usage with rel="describedBy" and rel="profile"
32873287- Fixed numerous invalid examples
32883288
3289- ### G.9. draft-zyp-json-schema-04
3289+ ### draft-zyp-json-schema-04
32903290- Salvaged from draft v3.
32913291- Split validation keywords into separate document.
32923292- Split hypermedia keywords into separate document.
@@ -3295,23 +3295,12 @@ data model
32953295- Define the role of `id`. Define URI resolution scope.
32963296- Add interoperability considerations.
32973297
3298- ### G.10. draft-zyp-json-schema-00
3298+ ### draft-zyp-json-schema-00
32993299- Initial draft.
33003300
33013301## Authors' Addresses
3302-
3303- ### Austin Wright (*editor*)
3304- Email: <aaa@bzfx.net>
3305-
3306- ### Ben Hutton (*editor*)
3307- Postman
3308-
3309- Email: <ben@jsonschema.dev>
3310-
3311- URI: <https://jsonschema.dev>
3312-
3313- ### Greg Dennis
3314-
3315- Email: <gregsdennis@yahoo.com>
3316-
3317- URI: <https://github.com/gregsdennis>
3302+ | Author | Company | Email | URI |
3303+ |--------------------------|---------|-------------------------|----------------------------------|
3304+ | Austin Wright (*editor*) | | <aaa@bzfx.net> | |
3305+ | Ben Hutton (*editor*) | Postman | <ben@jsonschema.dev> | <https://jsonschema.dev> |
3306+ | Greg Dennis | | <gregsdennis@yahoo.com> | <https://github.com/gregsdennis> |
0 commit comments