12 Matching Annotations
- Sep 2022
-
json-schema.org json-schema.org
-
A workaround you can use is to move additionalProperties to the extending schema and redeclare the properties from the extended schema.
-
Because additionalProperties only recognizes properties declared in the same subschema, it considers anything other than “street_address”, “city”, and “state” to be additional. Combining the schemas with allOf doesn’t change that.
-
It’s important to note that additionalProperties only recognizes properties declared in the same subschema as itself. So, additionalProperties can restrict you from “extending” a schema using Schema Composition keywords such as allOf. In the following example, we can see how the additionalProperties can cause attempts to extend the address schema example to fail.
-
-
stackoverflow.com stackoverflow.com
-
In your scenario, which many, many people encounter, you expect that properties defined in schema1 will be known to schema2; but this is not the case and will never be.
-
When you do: "allOf": [ { "schema1": "here" }, { "schema2": "here" } ] schema1 and schema2 have no knowledge of one another; they are evaluated in their own context.
-
I'm not sure if there's a reason why additionalProperties only looks at the sibling-level when checking allowed properties but IMHO this should be changed.
-
It's unfortunate that additionalProperties only takes the immediate, sibling-level properties into account
-
additionalProperties applies to all properties that are not accounted-for by properties or patternProperties in the immediate schema.
annotation meta: may need new tag: applies to siblings only or applies to same level only
-
additionalProperties here applies to all properties, because there is no sibling-level properties entry - the one inside allOf does not count.
-
-
github.com github.com
-
unevaluatedProperties is like additionalProperties, except that it can "see through" $ref and "see inside" allOf, anyOf, oneOf, if, then, else
-
-
stackoverflow.com stackoverflow.com
-
What I want is to use "additionalProperties: false" to validate a union of schemas, but it seems it isn't possible. I already tried with sevaral different combination, but I didn't make it works.
-
additionalProperties: false works on it, but not along with allOf, because only validate one schema or another.
-