@@ -2929,11 +2929,14 @@ https://example.com/schemas/common#/$defs/allOf/1
2929
2929
2930
2930
<section title =" Annotations" >
2931
2931
<t >
2932
- Any annotations produced by the validation. This property MUST NOT
2933
- be included if the validation was unsuccessful. The value
2934
- for this property MUST be an object where the keys are the names of
2935
- keywords and the values are the annotations produced by the
2936
- associated keyword.
2932
+ Any annotations produced by the evaluation. This property MUST NOT
2933
+ be included if the validation result of the containing subschema was
2934
+ unsuccessful.
2935
+ </t >
2936
+ <t >
2937
+ The value for this property MUST be an object where the
2938
+ keys are the names of keywords and the values are the annotations
2939
+ produced by the associated keyword.
2937
2940
</t >
2938
2941
<t >
2939
2942
Each keyword defines its own annotation data type (e.g. "properties"
@@ -2944,6 +2947,33 @@ https://example.com/schemas/common#/$defs/allOf/1
2944
2947
</t >
2945
2948
</section >
2946
2949
2950
+ <section title =" Dropped Annotations" >
2951
+ <t >
2952
+ Any annotations produced and subsequently dropped by the evaluation
2953
+ due to an unsuccessful validation result of the containing subschema.
2954
+ This property MAY be included if the validation result of the containing
2955
+ subschema was unsuccessful. It MUST NOT be included if the local
2956
+ validation result of the containing subschema was successful.
2957
+ </t >
2958
+ <t >
2959
+ Implementations that wish to provide these annotations MUST NOT provide
2960
+ them as their default behavior. These annotations MUST only be included
2961
+ by explicitly configuring the implementation to do so.
2962
+ </t >
2963
+ <t >
2964
+ The value for this property MUST be an object where the
2965
+ keys are the names of keywords and the values are the annotations
2966
+ produced by the associated keyword.
2967
+ </t >
2968
+ <t >
2969
+ Each keyword defines its own annotation data type (e.g. "properties"
2970
+ produces a list of keywords, whereas "title" produces a string).
2971
+ </t >
2972
+ <t >
2973
+ The JSON key for this information is "droppedAnnotations".
2974
+ </t >
2975
+ </section >
2976
+
2947
2977
<section title =" Nested Results" >
2948
2978
<t >
2949
2979
Nested results are generated from keywords which create a new dynamic
@@ -3337,6 +3367,10 @@ https://example.com/schemas/common#/$defs/allOf/1
3337
3367
"evaluationPath": "/properties/foo/allOf/1",
3338
3368
"schemaLocation": "https://json-schema.org/schemas/example#/properties/foo/allOf/1",
3339
3369
"instanceLocation": "/foo",
3370
+ "droppedAnnotations": {
3371
+ "properties": [ "foo-prop" ],
3372
+ "title": "foo-title"
3373
+ },
3340
3374
"nested": [
3341
3375
{
3342
3376
"valid": false,
@@ -3345,6 +3379,9 @@ https://example.com/schemas/common#/$defs/allOf/1
3345
3379
"instanceLocation": "/foo/foo-prop",
3346
3380
"errors": {
3347
3381
"const": "Expected \"1\""
3382
+ },
3383
+ "droppedAnnotations": {
3384
+ "title": "foo-prop-title"
3348
3385
}
3349
3386
},
3350
3387
{
@@ -3368,6 +3405,10 @@ https://example.com/schemas/common#/$defs/allOf/1
3368
3405
"evaluationPath": "/properties/bar/$ref",
3369
3406
"schemaLocation": "https://json-schema.org/schemas/example#/$defs/bar",
3370
3407
"instanceLocation": "/bar",
3408
+ "droppedAnnotations": {
3409
+ "properties": [ "bar-prop" ],
3410
+ "title": "bar-title"
3411
+ },
3371
3412
"nested": [
3372
3413
{
3373
3414
"valid": false,
@@ -3376,6 +3417,9 @@ https://example.com/schemas/common#/$defs/allOf/1
3376
3417
"instanceLocation": "/bar/bar-prop",
3377
3418
"errors": {
3378
3419
"minimum": "2 is less than or equal to 10"
3420
+ },
3421
+ "droppedAnnotations": {
3422
+ "title": "bar-prop-title"
3379
3423
}
3380
3424
}
3381
3425
]
0 commit comments