Skip to content

Commit 396ec66

Browse files
committed
Rephrase process of schema bundling to make clear that existing referenes need to change, and the of an embedded shema resource is still used as the referene string for by-reference applicator keywords.
1 parent d8709a1 commit 396ec66

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

jsonschema-core.xml

+9-2
Original file line numberDiff line numberDiff line change
@@ -1844,8 +1844,15 @@
18441844
<t>
18451845
When a by-reference applicator is dereferenced as part of the bundling process, the Schema Resource
18461846
MUST NOT be embedded by replacing the schema object from which it was referenced, or by wrapping
1847-
in other applicator keywords. Instead, a bundled Schema Resource MUST be located in `$defs`,
1848-
where the key is the `$id` of the Schema Resource, which MUST then be referenced using `$ref`.
1847+
in other applicator keywords. Instead, a bundled Schema Resource MUST be located as a value of
1848+
a "$defs" object at the containing schemas root. The key of the "$defs" for the now embedded
1849+
Schema Resource MAY be the "$id" of the bundled schema or some other form of application defined
1850+
unique identifer (such as a UUID). This key is not intended to be referenced in JSON Schema, but may
1851+
be used by an application to aid the bundling process.
1852+
</t>
1853+
<t>
1854+
References in the containing schema document to the previously external Schema Resources
1855+
MUST NOT be changed, and now resolve to a schema using the "$id" of an embedded Schema Resource.
18491856
</t>
18501857
</section>
18511858
<section title="Differing and Default Dialects">

0 commit comments

Comments
 (0)