|
369 | 369 | <t>
|
370 | 370 | A schema vocabulary, or simply a vocabulary, is a set of keywords,
|
371 | 371 | their syntax, and their semantics. A vocabulary is generally organized
|
372 |
| - around a particular purpose. Different uses of JSON Schema will |
| 372 | + around a particular purpose. Different uses of JSON Schema, such |
| 373 | + as validation, hypermedia, or user interface generation, will |
373 | 374 | involve different sets of vocabularies.
|
374 | 375 | </t>
|
375 | 376 | <t>
|
376 | 377 | Vocabularies are the primary unit of re-use in JSON Schema, as schema
|
377 | 378 | authors can indicate what vocabularies are required or optional in
|
378 |
| - order to process the schema. While keywords can be supported outside |
| 379 | + order to process the schema. Since vocabularies are identified by URIs |
| 380 | + in the meta-schema, generic implementations can load extensions to support |
| 381 | + previously unkonw vocabularies. While keywords can be supported outside |
379 | 382 | of any vocabulary, there is no analogous mechanism to indicate individual
|
380 | 383 | keyword usage.
|
381 | 384 | </t>
|
|
798 | 801 | <section title="Meta-Schemas and Vocabularies" anchor="vocabulary">
|
799 | 802 | <t>
|
800 | 803 | Two concepts, meta-schemas and vocabularies, are used to inform an implementation
|
801 |
| - how to interpret a schema. Every schema has a meta-schema, typically identified |
| 804 | + how to interpret a schema. Every schema has a meta-schema, which can be declared |
802 | 805 | using the "$schema" keyword.
|
803 | 806 | </t>
|
804 | 807 | <t>
|
|
824 | 827 | vocabularies to be combined in different ways, and for meta-schema authors
|
825 | 828 | to impose additional constraints such as forbidding certain keywords, or
|
826 | 829 | performing unusually strict syntactical validation, as might be done
|
827 |
| - during a development and testing cycle. |
| 830 | + during a development and testing cycle. Each vocabulary typically identifies |
| 831 | + a meta-schema consisting only of the vocabulary's keywords. |
828 | 832 | </t>
|
829 | 833 | <t>
|
830 | 834 | Meta-schema authoring is an advanced usage of JSON Schema, so the design of
|
|
0 commit comments