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

Commit 734c86e

Browse files
authored
Merge pull request #521 from json-schema-org/glossary-json
Add a glossary entry for JSON.
2 parents 63354a1 + c0b1495 commit 734c86e

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

learn/glossary.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,18 @@ While future drafts may introduce new behavior or changes to existing behavior,
3636

3737
The current list of drafts can be found [here](https://json-schema.org/specification-links.html#published-drafts).
3838

39+
### JSON
40+
41+
A pervasive data interchange format used for representing and transmitting data as human readable text.
42+
JSON is extremely widely used, and parsers which can read and write it exist for essentially every commonly-used programming language.
43+
44+
JSON Schema, distinctly, is built *on top* of JSON, in that JSON [schemas](#schema) are themselves JSON objects which describe JSON values.
45+
The two are, however, entirely different pieces of the conceptual puzzle, with JSON being a concrete format for *representing* data, and JSON Schema being a way to *schematize* data which is written in a JSON-compatible format.
46+
47+
The JSON format is an open format, with its own [homepage](https://www.json.org/), and specifications published in the [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf) and [RFC-8259](https://datatracker.ietf.org/doc/html/rfc8259) documents from ECMA and the IETF respectively.
48+
In particular, it is not managed or developed by the JSON Schema team, who simply make use of the format.
49+
50+
3951
### keyword
4052

4153
A property appearing within a [schema](#schema) object.
@@ -79,14 +91,14 @@ A document, written according to the proscribed structure of the JSON Schema spe
7991

8092
The rules constituting which schemas are conformant, as well as the rules governing their behavior when validating instances, are defined by the [JSON Schema specification](https://json-schema.org/specification.html).
8193

82-
Strictly speaking, according to the specification, schemas are themselves JSON documents, though it is somewhat common for them to be authored or maintained in other languages which are easily translated to JSON, such as YAML.
94+
Strictly speaking, according to the specification, schemas are themselves [JSON documents](#JSON), though it is somewhat common for them to be authored or maintained in other languages which are easily translated to JSON, such as YAML.
8395

8496
In recent [drafts](#draft) of the specification, a schema is either a JSON object or a JSON boolean value.
8597

8698
### subschema
8799

88100
A [schema](#schema) which is itself contained within a surrounding parent schema.
89-
Like schemas themselves, in recent [drafts](#draft) of JSON Schema, subschemas are either JSON objects or JSON boolean values.
101+
Like schemas themselves, in recent [drafts](#draft) of JSON Schema, subschemas are either [JSON](#JSON) objects or JSON boolean values.
90102

91103
Within the JSON Schema specification and its [dialects](#dialect), a number of [keywords](#keyword) take subschemas as part of their values.
92104
For example, the `not` keyword takes a subschema value and inverts its result, succeeding whenever the subschema does not succeed, such that the [instance](#instance) `12` is invalid under `{"type": "string"}` but valid under `{"not": {"type": "string"}}`, where `{"type": "string"}` is a subschema contained in the full schema.

0 commit comments

Comments
 (0)