Skip to content

Commit 430bb83

Browse files
committed
remove paragraphs about ref-ing into unknown keywords
1 parent 9af8b27 commit 430bb83

File tree

1 file changed

+1
-16
lines changed

1 file changed

+1
-16
lines changed

jsonschema-core.md

+1-16
Original file line numberDiff line numberDiff line change
@@ -1313,7 +1313,7 @@ When the Schema Resource referenced by a by-reference applicator is bundled, it
13131313
is RECOMMENDED that the Schema Resource be located as a value of a `$defs`
13141314
object at the containing schema's root. The key of the `$defs` for the now
13151315
embedded Schema Resource MAY be the `$id` of the bundled schema or some other
1316-
form of application defined unique identifer (such as a UUID). This key is not
1316+
form of application defined unique identifier (such as a UUID). This key is not
13171317
intended to be referenced in JSON Schema, but may be used by an application to
13181318
aid the bundling process.
13191319

@@ -1381,21 +1381,6 @@ applicator keywords or with location-reserving keywords such as
13811381
be `$defs` and the standard applicators from this document or
13821382
implementation-specific custom keywords.
13831383

1384-
Multi-level structures of unknown keywords are capable of introducing nested
1385-
subschemas, which would be subject to the processing rules for `$id`. Therefore,
1386-
having a reference target in such an unrecognized structure cannot be reliably
1387-
implemented, and the resulting behavior is undefined. Similarly, a reference
1388-
target under a known keyword, for which the value is known not to be a schema,
1389-
results in undefined behavior in order to avoid burdening implementations with
1390-
the need to detect such targets.[^10]
1391-
1392-
[^10]: These scenarios are analogous to fetching a schema over HTTP but
1393-
receiving a response with a Content-Type other than `application/schema+json`.
1394-
An implementation can certainly try to interpret it as a schema, but the origin
1395-
server offered no guarantee that it actually is any such thing. Therefore,
1396-
interpreting it as such has security implication and may produce unpredictable
1397-
results.
1398-
13991384
Note that single-level custom keywords with identical syntax and semantics to
14001385
`$defs` do not allow for any intervening `$id` keywords, and therefore will
14011386
behave correctly under implementations that attempt to use any reference target

0 commit comments

Comments
 (0)