@@ -252,19 +252,26 @@ func WithValidationOptions(ctx context.Context, opts ...ValidationOption) contex
252252
253253TYPES
254254
255- type AdditionalProperties struct {
255+ type AdditionalProperties = BoolSchema
256+ AdditionalProperties is a type alias for BoolSchema, kept for backward
257+ compatibility.
258+
259+ type BoolSchema struct {
256260 Has *bool
257261 Schema *SchemaRef
258262}
263+ BoolSchema represents a JSON Schema keyword that can be either a boolean
264+ or a schema object. Used for additionalProperties, unevaluatedProperties,
265+ and unevaluatedItems.
259266
260- func (addProps AdditionalProperties ) MarshalJSON() ([]byte, error)
261- MarshalJSON returns the JSON encoding of AdditionalProperties .
267+ func (bs BoolSchema ) MarshalJSON() ([]byte, error)
268+ MarshalJSON returns the JSON encoding of BoolSchema .
262269
263- func (addProps AdditionalProperties ) MarshalYAML() (any, error)
264- MarshalYAML returns the YAML encoding of AdditionalProperties .
270+ func (bs BoolSchema ) MarshalYAML() (any, error)
271+ MarshalYAML returns the YAML encoding of BoolSchema .
265272
266- func (addProps *AdditionalProperties ) UnmarshalJSON(data []byte) error
267- UnmarshalJSON sets AdditionalProperties to a copy of data.
273+ func (bs *BoolSchema ) UnmarshalJSON(data []byte) error
274+ UnmarshalJSON sets BoolSchema to a copy of data.
268275
269276type Callback struct {
270277 Extensions map[string]any `json:"-" yaml:"-"`
@@ -1715,8 +1722,8 @@ type Schema struct {
17151722 PatternProperties Schemas `json:"patternProperties,omitempty" yaml:"patternProperties,omitempty"`
17161723 DependentSchemas Schemas `json:"dependentSchemas,omitempty" yaml:"dependentSchemas,omitempty"`
17171724 PropertyNames *SchemaRef `json:"propertyNames,omitempty" yaml:"propertyNames,omitempty"`
1718- UnevaluatedItems *SchemaRef `json:"unevaluatedItems,omitempty" yaml:"unevaluatedItems,omitempty"`
1719- UnevaluatedProperties *SchemaRef `json:"unevaluatedProperties,omitempty" yaml:"unevaluatedProperties,omitempty"`
1725+ UnevaluatedItems BoolSchema `json:"unevaluatedItems,omitempty" yaml:"unevaluatedItems,omitempty"`
1726+ UnevaluatedProperties BoolSchema `json:"unevaluatedProperties,omitempty" yaml:"unevaluatedProperties,omitempty"`
17201727
17211728 // JSON Schema 2020-12 conditional keywords
17221729 If *SchemaRef `json:"if,omitempty" yaml:"if,omitempty"`
0 commit comments