Skip to content

Commit 08e9e60

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 375cb26 commit 08e9e60

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

jsonschema-core.xml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1859,8 +1859,15 @@
18591859
<t>
18601860
When a by-reference applicator is dereferenced as part of the bundling process, the Schema Resource
18611861
MUST NOT be embedded by replacing the schema object from which it was referenced, or by wrapping
1862-
in other applicator keywords. Instead, a bundled Schema Resource MUST be located in `$defs`,
1863-
where the key is the `$id` of the Schema Resource, which MUST then be referenced using `$ref`.
1862+
in other applicator keywords. Instead, a bundled Schema Resource MUST be located as a value of
1863+
a "$defs" object at the containing schemas root. The key of the "$defs" for the now embedded
1864+
Schema Resource MAY be the "$id" of the bundled schema or some other form of application defined
1865+
unique identifer (such as a UUID). This key is not intended to be referenced in JSON Schema, but may
1866+
be used by an application to aid the bundling process.
1867+
</t>
1868+
<t>
1869+
References in the containing schema document to the previously external Schema Resources
1870+
MUST NOT be changed, and now resolve to a schema using the "$id" of an embedded Schema Resource.
18641871
</t>
18651872
</section>
18661873
<section title="Differing and Default Dialects">

0 commit comments

Comments
 (0)