Class JsonSchema
- Direct Known Subclasses:
JsonSchemaProperty
,JsonSchemaRef
This implementation follows the JSON Schema Draft 2020-12 specification.
Example:
Output:
{
Key Features:
- Draft 2020-12 Support: Includes all properties from the latest JSON Schema specification
- Backward Compatibility: Deprecated Draft 04 properties (like
id anddefinitions ) are still supported - Fluent API: All setter methods return
this for method chaining - Type Safety: Uses enums and typed collections for validation
- Serialization: Can be serialized to any format supported by Juneau (JSON, XML, HTML, etc.)
Common Use Cases:
1. Simple Type Constraints:
2. Numeric Ranges:
3. Enumerations:
4. Arrays:
5. Conditional Schemas (Draft 07+):
6. Reusable Definitions:
Migration from Draft 04:
- Use
setIdUri(Object)
instead ofsetId(Object)
(deprecated) - Use
setDefs(Map)
instead ofsetDefinitions(Map)
(deprecated but still works) - Use
setExclusiveMaximum(Number)
with a numeric value instead of a boolean flag - Use
setExclusiveMinimum(Number)
with a numeric value instead of a boolean flag
See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Used during parsing to convert theadditionalItems property to the correct class type.static class
Used during parsing to convert theadditionalProperties property to the correct class type.static class
Used during parsing to convert theitems property to the correct class type.static class
Used during parsing to convert thetype property to the correct class type. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAdditionalItems
(JsonSchema... additionalItems) Bean property appender:additionalItems .addAllOf
(JsonSchema... allOf) Bean property appender:allOf .addAnyOf
(JsonSchema... anyOf) Bean property appender:anyOf .addDef
(String name, JsonSchema def) Bean property appender:$defs .addDefinition
(String name, JsonSchema definition) Bean property appender:definitions .addDependency
(String name, JsonSchema dependency) Bean property appender:dependencies .addDependentRequired
(String name, List<String> required) Bean property appender:dependentRequired .addDependentSchema
(String name, JsonSchema schema) Bean property appender:dependentSchemas .Bean property appender:enum .addExamples
(Object... examples) Bean property appender:examples .addItems
(JsonSchema... items) Bean property appender:items .addOneOf
(JsonSchema... oneOf) Bean property appender:oneOf .addPatternProperties
(JsonSchemaProperty... properties) Bean property appender:patternProperties .addPrefixItems
(JsonSchema... prefixItems) Bean property appender:prefixItems .addProperties
(JsonSchema... properties) Bean property appender:properties .addRequired
(String... required) Bean property appender:required .addRequired
(List<String> required) Bean property appender:required .addRequired
(JsonSchemaProperty... properties) Bean property appender:required .Bean property appender:type .Bean property getter:additionalItems .Bean property getter:additionalItems .Bean property getter:additionalItems .Bean property getter:additionalProperties .Bean property getter:additionalProperties .Bean property getter:additionalProperties .getAllOf()
Bean property getter:allOf .getAnyOf()
Bean property getter:anyOf .getConst()
Bean property getter:const .Bean property getter:contentEncoding .Bean property getter:contentMediaType .Bean property getter:definitions .getDefs()
Bean property getter:$defs .Bean property getter:dependencies .Bean property getter:dependentRequired .Bean property getter:dependentSchemas .Bean property getter:description .getElse()
Bean property getter:else .getEnum()
Bean property getter:enum .Bean property getter:examples .Bean property getter:exclusiveMaximum .Bean property getter:exclusiveMinimum .getId()
Deprecated.getIdUri()
Bean property getter:$id .getIf()
Bean property getter:if .getItems()
Bean property getter:items .Bean property getter:items .Bean property getter:items .Bean property getter:maximum .Bean property getter:maxItems .Bean property getter:maxLength .Bean property getter:maxProperties .Bean property getter:minimum .Bean property getter:minItems .Bean property getter:minLength .Bean property getter:minProperties .Bean property getter:multipleOf .getName()
Bean property getter:name .getNot()
Bean property getter:not .getOneOf()
Bean property getter:oneOf .Bean property getter:pattern .Bean property getter:patternProperties .Bean property getter:prefixItems .Bean property getter:properties .getProperty
(String name) Returns the property with the specified name.getProperty
(String name, boolean resolve) Returns the property with the specified name.Bean property getter:readOnly .getRef()
Bean property getter:$ref .Bean property getter:required .Bean property getter:$schema .getThen()
Bean property getter:then .getTitle()
Bean property getter:title .getType()
Bean property getter:type .Bean property getter:type .Bean property getter:type .Bean property getter:unevaluatedItems .Bean property getter:unevaluatedProperties .Bean property getter:uniqueItems .Bean property getter:writeOnly .resolve()
Resolve schema if reference.setAdditionalItems
(Object additionalItems) Bean property setter:additionalItems .setAdditionalProperties
(Object additionalProperties) Bean property setter:additionalProperties .setAllOf
(List<JsonSchema> allOf) Bean property setter:allOf .setAnyOf
(List<JsonSchema> anyOf) Bean property setter:anyOf .Bean property setter:const .setContentEncoding
(String contentEncoding) Bean property setter:contentEncoding .setContentMediaType
(String contentMediaType) Bean property setter:contentMediaType .setDefinitions
(Map<String, JsonSchema> definitions) Bean property setter:definitions .setDefs
(Map<String, JsonSchema> defs) Bean property setter:$defs .setDependencies
(Map<String, JsonSchema> dependencies) Bean property setter:dependencies .setDependentRequired
(Map<String, List<String>> dependentRequired) Bean property setter:dependentRequired .setDependentSchemas
(Map<String, JsonSchema> dependentSchemas) Bean property setter:dependentSchemas .setDescription
(String description) Bean property setter:description .setElse
(JsonSchema _else) Bean property setter:else .Bean property setter:enum .setExamples
(List<Object> examples) Bean property setter:examples .setExclusiveMaximum
(Number exclusiveMaximum) Bean property setter:exclusiveMaximum .setExclusiveMinimum
(Number exclusiveMinimum) Bean property setter:exclusiveMinimum .Deprecated.UsesetIdUri(Object)
instead.Bean property setter:$id .setIf
(JsonSchema _if) Bean property setter:if .Bean property setter:items .protected void
setMaster
(JsonSchema master) Sets the master schema for this schema and all child schema objects.setMaximum
(Number maximum) Bean property setter:maximum .setMaxItems
(Integer maxItems) Bean property setter:maxItems .setMaxLength
(Integer maxLength) Bean property setter:maxLength .setMaxProperties
(Integer maxProperties) Bean property setter:maxProperties .setMinimum
(Number minimum) Bean property setter:minimum .setMinItems
(Integer minItems) Bean property setter:minItems .setMinLength
(Integer minLength) Bean property setter:minLength .setMinProperties
(Integer minProperties) Bean property setter:minProperties .setMultipleOf
(Number multipleOf) Bean property setter:multipleOf .Bean property setter:name .setNot
(JsonSchema not) Bean property setter:not .setOneOf
(List<JsonSchema> oneOf) Bean property setter:oneOf .setPattern
(String pattern) Bean property setter:pattern .setPatternProperties
(Map<String, JsonSchema> patternProperties) Bean property setter:patternProperties .setPrefixItems
(JsonSchemaArray prefixItems) Bean property setter:prefixItems .setProperties
(Map<String, JsonSchema> properties) Bean property setter:properties .setReadOnly
(Boolean readOnly) Bean property setter:readOnly .Bean property setter:$ref .setRequired
(List<String> required) Bean property setter:required .setSchemaMap
(JsonSchemaMap schemaMap) Associates a schema map with this schema for resolving other schemas identified through$ref properties.setSchemaVersionUri
(Object schemaVersion) Bean property setter:$schema .setThen
(JsonSchema _then) Bean property setter:then .Bean property setter:title .Bean property setter:type .setUnevaluatedItems
(JsonSchema unevaluatedItems) Bean property setter:unevaluatedItems .setUnevaluatedProperties
(JsonSchema unevaluatedProperties) Bean property setter:unevaluatedProperties .setUniqueItems
(Boolean uniqueItems) Bean property setter:uniqueItems .setWriteOnly
(Boolean writeOnly) Bean property setter:writeOnly .toString()
-
Constructor Details
-
JsonSchema
public JsonSchema()Default constructor.
-
-
Method Details
-
getName
Bean property getter:name .This is an internal property used for tracking property names and is not part of the JSON Schema specification.
- Returns:
- The value of the
name property on this bean, ornull if it is not set.
-
setName
Bean property setter:name .This is an internal property used for tracking property names and is not part of the JSON Schema specification.
- Parameters:
name
- The new value for thename property on this bean.- Returns:
- This object.
-
getIdUri
Bean property getter:$id .This is the Draft 2020-12 property for schema identification.
- Returns:
- The value of the
$id property on this bean, ornull if it is not set.
-
setIdUri
Bean property setter:$id .This is the Draft 2020-12 property for schema identification.
The value can be of any of the following types:
URI
,URL
,String
. Strings must be valid URIs.URIs defined by
UriResolver
can be used for values.- Parameters:
idUri
- The new value for the$id property on this bean.- Returns:
- This object.
-
getId
Deprecated.UsegetIdUri()
instead.Bean property getter:id .Deprecated: Use
getIdUri()
instead. This property is retained for Draft 04 backward compatibility.- Returns:
- The value of the
id property on this bean, ornull if it is not set.
-
setId
Deprecated.UsesetIdUri(Object)
instead.Bean property setter:id .Deprecated: Use
setIdUri(Object)
instead. This property is retained for Draft 04 backward compatibility.The value can be of any of the following types:
URI
,URL
,String
. Strings must be valid URIs.URIs defined by
UriResolver
can be used for values.- Parameters:
id
- The new value for theid property on this bean.- Returns:
- This object.
-
getSchemaVersionUri
Bean property getter:$schema .- Returns:
- The value of the
$schema property on this bean, ornull if it is not set.
-
setSchemaVersionUri
Bean property setter:$schema .The value can be of any of the following types:
URI
,URL
,String
. Strings must be valid URIs.URIs defined by
UriResolver
can be used for values.- Parameters:
schemaVersion
- The new value for theschemaVersion property on this bean.- Returns:
- This object.
-
getTitle
Bean property getter:title .- Returns:
- The value of the
title property, ornull if it is not set.
-
setTitle
Bean property setter:title .- Parameters:
title
- The new value for thetitle property on this bean.- Returns:
- This object.
-
getDescription
Bean property getter:description .- Returns:
- The value of the
description property, ornull if it is not set.
-
setDescription
Bean property setter:description .- Parameters:
description
- The new value for thedescription property on this bean.- Returns:
- This object.
-
getType
Bean property getter:type .- Returns:
- The value of the
type property on this bean, ornull if it is not set. Can be either aJsonType
orJsonTypeArray
depending on what value was used to set it.
-
getTypeAsJsonType
Bean property getter:type .Convenience method for returning the
type property when it is aJsonType
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonTypeArray
.
-
getTypeAsJsonTypeArray
Bean property getter:type .Convenience method for returning the
type property when it is aJsonTypeArray
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonType
.
-
setType
Bean property setter:type .- Parameters:
type
- The new value for thetype property on this bean. This object must be of typeJsonType
orJsonTypeArray
.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If invalid object type passed in.
-
addTypes
Bean property appender:type .- Parameters:
types
- The list of items to append to thetype property on this bean.- Returns:
- This object.
-
getDefinitions
Bean property getter:definitions .Deprecated: Use
getDefs()
for Draft 2020-12 compliance. This property is retained for Draft 04 backward compatibility.- Returns:
- The value of the
definitions property on this bean, ornull if it is not set.
-
setDefinitions
Bean property setter:definitions .- Parameters:
definitions
- The new value for thedefinitions property on this bean.- Returns:
- This object.
-
addDefinition
Bean property appender:definitions .- Parameters:
name
- The key in the definitions map entry.definition
- The value in the definitions map entry.- Returns:
- This object.
-
getProperties
Bean property getter:properties .- Returns:
- The value of the
properties property on this bean, ornull if it is not set.
-
getProperty
Returns the property with the specified name.This is equivalent to calling
getProperty(name, .false )- Parameters:
name
- The property name.- Returns:
- The property with the specified name, or
null if no property is specified.
-
getProperty
Returns the property with the specified name.If
resolve istrue , the property object will automatically be resolved by callingresolve()
. Therefore,getProperty(name, is equivalent to callingtrue )getProperty(name).resolve() , except it's safe from a potentialNullPointerException .- Parameters:
name
- The property name.resolve
- Iftrue , callsresolve()
on object before returning.- Returns:
- The property with the specified name, or
null if no property is specified.
-
setProperties
Bean property setter:properties .- Parameters:
properties
- The new value for theproperties property on this bean.- Returns:
- This object.
-
addProperties
Bean property appender:properties .Properties must have their
name property set on them when using this method.- Parameters:
properties
- The list of items to append to theproperties property on this bean.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If property is found without a setname property.
-
getPatternProperties
Bean property getter:patternProperties .- Returns:
- The value of the
patternProperties property on this bean, ornull if it is not set.
-
setPatternProperties
Bean property setter:patternProperties .- Parameters:
patternProperties
- The new value for thepatternProperties property on this bean.- Returns:
- This object.
-
addPatternProperties
Bean property appender:patternProperties .Properties must have their
name property set to the pattern string when using this method.- Parameters:
properties
- The list of items to append to thepatternProperties property on this bean.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If property is found without a setname property.
-
getDependencies
Bean property getter:dependencies .- Returns:
- The value of the
dependencies property on this bean, ornull if it is not set.
-
setDependencies
Bean property setter:dependencies .- Parameters:
dependencies
- The new value for thedependencies property on this bean.- Returns:
- This object.
-
addDependency
Bean property appender:dependencies .- Parameters:
name
- The key of the entry in the dependencies map.dependency
- The value of the entry in the dependencies map.- Returns:
- This object.
-
getItems
Bean property getter:items .- Returns:
- The value of the
items property on this bean, ornull if it is not set. Can be either aJsonSchema
orJsonSchemaArray
depending on what value was used to set it.
-
getItemsAsSchema
Bean property getter:items .Convenience method for returning the
items property when it is aJsonSchema
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonSchemaArray
.
-
getItemsAsSchemaArray
Bean property getter:items .Convenience method for returning the
items property when it is aJsonSchemaArray
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonSchema
.
-
setItems
Bean property setter:items .- Parameters:
items
- The new value for theitems property on this bean. This object must be of typeJsonSchema
orJsonSchemaArray
.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If invalid object type passed in.
-
addItems
Bean property appender:items .- Parameters:
items
- The list of items to append to theitems property on this bean.- Returns:
- This object.
-
getMultipleOf
Bean property getter:multipleOf .- Returns:
- The value of the
multipleOf property on this bean, ornull if it is not set.
-
setMultipleOf
Bean property setter:multipleOf .- Parameters:
multipleOf
- The new value for themultipleOf property on this bean.- Returns:
- This object.
-
getMaximum
Bean property getter:maximum .- Returns:
- The value of the
maximum property on this bean, ornull if it is not set.
-
setMaximum
Bean property setter:maximum .- Parameters:
maximum
- The new value for themaximum property on this bean.- Returns:
- This object.
-
getExclusiveMaximum
Bean property getter:exclusiveMaximum .In Draft 06+, this is a numeric value representing the exclusive upper bound. In Draft 04, this was a boolean flag. This implementation uses the Draft 06+ semantics.
- Returns:
- The value of the
exclusiveMaximum property on this bean, ornull if it is not set.
-
setExclusiveMaximum
Bean property setter:exclusiveMaximum .In Draft 06+, this is a numeric value representing the exclusive upper bound. In Draft 04, this was a boolean flag. This implementation uses the Draft 06+ semantics.
- Parameters:
exclusiveMaximum
- The new value for theexclusiveMaximum property on this bean.- Returns:
- This object.
-
getMinimum
Bean property getter:minimum .- Returns:
- The value of the
minimum property on this bean, ornull if it is not set.
-
setMinimum
Bean property setter:minimum .- Parameters:
minimum
- The new value for theminimum property on this bean.- Returns:
- This object.
-
getExclusiveMinimum
Bean property getter:exclusiveMinimum .In Draft 06+, this is a numeric value representing the exclusive lower bound. In Draft 04, this was a boolean flag. This implementation uses the Draft 06+ semantics.
- Returns:
- The value of the
exclusiveMinimum property on this bean, ornull if it is not set.
-
setExclusiveMinimum
Bean property setter:exclusiveMinimum .In Draft 06+, this is a numeric value representing the exclusive lower bound. In Draft 04, this was a boolean flag. This implementation uses the Draft 06+ semantics.
- Parameters:
exclusiveMinimum
- The new value for theexclusiveMinimum property on this bean.- Returns:
- This object.
-
getMaxLength
Bean property getter:maxLength .- Returns:
- The value of the
maxLength property on this bean, ornull if it is not set.
-
setMaxLength
Bean property setter:maxLength .- Parameters:
maxLength
- The new value for themaxLength property on this bean.- Returns:
- This object.
-
getMinLength
Bean property getter:minLength .- Returns:
- The value of the
minLength property on this bean, ornull if it is not set.
-
setMinLength
Bean property setter:minLength .- Parameters:
minLength
- The new value for theminLength property on this bean.- Returns:
- This object.
-
getPattern
Bean property getter:pattern .- Returns:
- The value of the
pattern property on this bean, ornull if it is not set.
-
setPattern
Bean property setter:pattern .- Parameters:
pattern
- The new value for thepattern property on this bean.- Returns:
- This object.
-
getAdditionalItems
Bean property getter:additionalItems .- Returns:
- The value of the
additionalItems property on this bean, ornull if it is not set. Can be either aBoolean
orJsonSchemaArray
depending on what value was used to set it.
-
getAdditionalItemsAsBoolean
Bean property getter:additionalItems .Convenience method for returning the
additionalItems property when it is aBoolean
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonSchemaArray
.
-
getAdditionalItemsAsSchemaArray
Bean property getter:additionalItems .Convenience method for returning the
additionalItems property when it is aJsonSchemaArray
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aBoolean
.
-
setAdditionalItems
Bean property setter:additionalItems .- Parameters:
additionalItems
- The new value for theadditionalItems property on this bean. This object must be of typeBoolean
orJsonSchemaArray
.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If invalid object type passed in.
-
addAdditionalItems
Bean property appender:additionalItems .- Parameters:
additionalItems
- The list of items to append to theadditionalItems property on this bean.- Returns:
- This object.
-
getMaxItems
Bean property getter:maxItems .- Returns:
- The value of the
maxItems property on this bean, ornull if it is not set.
-
setMaxItems
Bean property setter:maxItems .- Parameters:
maxItems
- The new value for themaxItems property on this bean.- Returns:
- This object.
-
getMinItems
Bean property getter:minItems .- Returns:
- The value of the
minItems property on this bean, ornull if it is not set.
-
setMinItems
Bean property setter:minItems .- Parameters:
minItems
- The new value for theminItems property on this bean.- Returns:
- This object.
-
getUniqueItems
Bean property getter:uniqueItems .- Returns:
- The value of the
uniqueItems property on this bean, ornull if it is not set.
-
setUniqueItems
Bean property setter:uniqueItems .- Parameters:
uniqueItems
- The new value for theuniqueItems property on this bean.- Returns:
- This object.
-
getMaxProperties
Bean property getter:maxProperties .- Returns:
- The value of the
maxProperties property on this bean, ornull if it is not set.
-
setMaxProperties
Bean property setter:maxProperties .- Parameters:
maxProperties
- The new value for themaxProperties property on this bean.- Returns:
- This object.
-
getMinProperties
Bean property getter:minProperties .- Returns:
- The value of the
minProperties property on this bean, ornull if it is not set.
-
setMinProperties
Bean property setter:minProperties .- Parameters:
minProperties
- The new value for theminProperties property on this bean.- Returns:
- This object.
-
getRequired
Bean property getter:required .- Returns:
- The value of the
required property on this bean, ornull if it is not set.
-
setRequired
Bean property setter:required .- Parameters:
required
- The new value for therequired property on this bean.- Returns:
- This object.
-
addRequired
Bean property appender:required .- Parameters:
required
- The list of items to append to therequired property on this bean.- Returns:
- This object.
-
addRequired
Bean property appender:required .- Parameters:
required
- The list of items to append to therequired property on this bean.- Returns:
- This object.
-
addRequired
Bean property appender:required .- Parameters:
properties
- The list of items to append to therequired property on this bean.- Returns:
- This object.
-
getAdditionalProperties
Bean property getter:additionalProperties .- Returns:
- The value of the
additionalProperties property on this bean, ornull if it is not set. Can be either aBoolean
orJsonSchemaArray
depending on what value was used to set it.
-
getAdditionalPropertiesAsBoolean
Bean property getter:additionalProperties .Convenience method for returning the
additionalProperties property when it is aBoolean
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aJsonSchema
.
-
getAdditionalPropertiesAsSchema
Bean property getter:additionalProperties .Convenience method for returning the
additionalProperties property when it is aJsonSchema
value.- Returns:
- The currently set value, or
null if the property is not set, or is set as aBoolean
.
-
setAdditionalProperties
@Beanp(dictionary=JsonSchema.class) public JsonSchema setAdditionalProperties(Object additionalProperties) Bean property setter:additionalProperties .- Parameters:
additionalProperties
- The new value for theadditionalProperties property on this bean. This object must be of typeBoolean
orJsonSchema
.- Returns:
- This object.
- Throws:
BeanRuntimeException
- If invalid object type passed in.
-
getEnum
Bean property getter:enum .- Returns:
- The value of the
enum property on this bean, ornull if it is not set.
-
setEnum
Bean property setter:enum .- Parameters:
_enum
- The new value for theenum property on this bean.- Returns:
- This object.
-
addEnum
Bean property appender:enum .- Parameters:
_enum
- The list of items to append to theenum property on this bean.- Returns:
- This object.
-
getAllOf
Bean property getter:allOf .- Returns:
- The value of the
allOf property on this bean, ornull if it is not set.
-
setAllOf
Bean property setter:allOf .- Parameters:
allOf
- The new value for theallOf property on this bean.- Returns:
- This object.
-
addAllOf
Bean property appender:allOf .- Parameters:
allOf
- The list of items to append to theallOf property on this bean.- Returns:
- This object.
-
getAnyOf
Bean property getter:anyOf .- Returns:
- The value of the
anyOf property on this bean, ornull if it is not set.
-
setAnyOf
Bean property setter:anyOf .- Parameters:
anyOf
- The new value of theanyOf property on this bean.- Returns:
- This object.
-
addAnyOf
Bean property appender:anyOf .- Parameters:
anyOf
- The list of items to append to theanyOf property on this bean.- Returns:
- This object.
-
getOneOf
Bean property getter:oneOf .- Returns:
- The value of the
oneOf property on this bean, ornull if it is not set.
-
setOneOf
Bean property setter:oneOf .- Parameters:
oneOf
- The new value for theoneOf property on this bean.- Returns:
- This object.
-
addOneOf
Bean property appender:oneOf .- Parameters:
oneOf
- The list of items to append to theoneOf property on this bean.- Returns:
- This object.
-
getNot
Bean property getter:not .- Returns:
- The value of the
not property on this bean, ornull if it is not set.
-
setNot
Bean property setter:not .- Parameters:
not
- The new value for thenot property on this bean.- Returns:
- This object.
-
getConst
Bean property getter:const .This property was added in Draft 06.
- Returns:
- The value of the
const property on this bean, ornull if it is not set.
-
setConst
Bean property setter:const .This property was added in Draft 06.
- Parameters:
_const
- The new value for theconst property on this bean.- Returns:
- This object.
-
getExamples
Bean property getter:examples .This property was added in Draft 06.
- Returns:
- The value of the
examples property on this bean, ornull if it is not set.
-
setExamples
Bean property setter:examples .This property was added in Draft 06.
- Parameters:
examples
- The new value for theexamples property on this bean.- Returns:
- This object.
-
addExamples
Bean property appender:examples .- Parameters:
examples
- The list of items to append to theexamples property on this bean.- Returns:
- This object.
-
getIf
Bean property getter:if .This property was added in Draft 07 for conditional schema application.
- Returns:
- The value of the
if property on this bean, ornull if it is not set.
-
setIf
Bean property setter:if .This property was added in Draft 07 for conditional schema application.
- Parameters:
_if
- The new value for theif property on this bean.- Returns:
- This object.
-
getThen
Bean property getter:then .This property was added in Draft 07 for conditional schema application.
- Returns:
- The value of the
then property on this bean, ornull if it is not set.
-
setThen
Bean property setter:then .This property was added in Draft 07 for conditional schema application.
- Parameters:
_then
- The new value for thethen property on this bean.- Returns:
- This object.
-
getElse
Bean property getter:else .This property was added in Draft 07 for conditional schema application.
- Returns:
- The value of the
else property on this bean, ornull if it is not set.
-
setElse
Bean property setter:else .This property was added in Draft 07 for conditional schema application.
- Parameters:
_else
- The new value for theelse property on this bean.- Returns:
- This object.
-
getReadOnly
Bean property getter:readOnly .This property was added in Draft 07.
- Returns:
- The value of the
readOnly property on this bean, ornull if it is not set.
-
setReadOnly
Bean property setter:readOnly .This property was added in Draft 07.
- Parameters:
readOnly
- The new value for thereadOnly property on this bean.- Returns:
- This object.
-
getWriteOnly
Bean property getter:writeOnly .This property was added in Draft 07.
- Returns:
- The value of the
writeOnly property on this bean, ornull if it is not set.
-
setWriteOnly
Bean property setter:writeOnly .This property was added in Draft 07.
- Parameters:
writeOnly
- The new value for thewriteOnly property on this bean.- Returns:
- This object.
-
getContentMediaType
Bean property getter:contentMediaType .This property was added in Draft 07.
- Returns:
- The value of the
contentMediaType property on this bean, ornull if it is not set.
-
setContentMediaType
Bean property setter:contentMediaType .This property was added in Draft 07.
- Parameters:
contentMediaType
- The new value for thecontentMediaType property on this bean.- Returns:
- This object.
-
getContentEncoding
Bean property getter:contentEncoding .This property was added in Draft 07.
- Returns:
- The value of the
contentEncoding property on this bean, ornull if it is not set.
-
setContentEncoding
Bean property setter:contentEncoding .This property was added in Draft 07.
- Parameters:
contentEncoding
- The new value for thecontentEncoding property on this bean.- Returns:
- This object.
-
getDefs
Bean property getter:$defs .This is the Draft 2020-12 replacement for
definitions . Both properties are supported for backward compatibility.- Returns:
- The value of the
$defs property on this bean, ornull if it is not set.
-
setDefs
Bean property setter:$defs .This is the Draft 2020-12 replacement for
definitions . Both properties are supported for backward compatibility.- Parameters:
defs
- The new value for the$defs property on this bean.- Returns:
- This object.
-
addDef
Bean property appender:$defs .- Parameters:
name
- The key in the defs map entry.def
- The value in the defs map entry.- Returns:
- This object.
-
getPrefixItems
Bean property getter:prefixItems .This property was added in Draft 2020-12 for tuple validation.
- Returns:
- The value of the
prefixItems property on this bean, ornull if it is not set.
-
setPrefixItems
Bean property setter:prefixItems .This property was added in Draft 2020-12 for tuple validation.
- Parameters:
prefixItems
- The new value for theprefixItems property on this bean.- Returns:
- This object.
-
addPrefixItems
Bean property appender:prefixItems .- Parameters:
prefixItems
- The list of items to append to theprefixItems property on this bean.- Returns:
- This object.
-
getUnevaluatedItems
Bean property getter:unevaluatedItems .This property was added in Draft 2019-09.
- Returns:
- The value of the
unevaluatedItems property on this bean, ornull if it is not set.
-
setUnevaluatedItems
Bean property setter:unevaluatedItems .This property was added in Draft 2019-09.
- Parameters:
unevaluatedItems
- The new value for theunevaluatedItems property on this bean.- Returns:
- This object.
-
getUnevaluatedProperties
Bean property getter:unevaluatedProperties .This property was added in Draft 2019-09.
- Returns:
- The value of the
unevaluatedProperties property on this bean, ornull if it is not set.
-
setUnevaluatedProperties
Bean property setter:unevaluatedProperties .This property was added in Draft 2019-09.
- Parameters:
unevaluatedProperties
- The new value for theunevaluatedProperties property on this bean.- Returns:
- This object.
-
getDependentSchemas
Bean property getter:dependentSchemas .This property was added in Draft 2019-09 as a replacement for the schema form of
dependencies .- Returns:
- The value of the
dependentSchemas property on this bean, ornull if it is not set.
-
setDependentSchemas
Bean property setter:dependentSchemas .This property was added in Draft 2019-09 as a replacement for the schema form of
dependencies .- Parameters:
dependentSchemas
- The new value for thedependentSchemas property on this bean.- Returns:
- This object.
-
addDependentSchema
Bean property appender:dependentSchemas .- Parameters:
name
- The key of the entry in the dependentSchemas map.schema
- The value of the entry in the dependentSchemas map.- Returns:
- This object.
-
getDependentRequired
Bean property getter:dependentRequired .This property was added in Draft 2019-09 as a replacement for the array form of
dependencies .- Returns:
- The value of the
dependentRequired property on this bean, ornull if it is not set.
-
setDependentRequired
Bean property setter:dependentRequired .This property was added in Draft 2019-09 as a replacement for the array form of
dependencies .- Parameters:
dependentRequired
- The new value for thedependentRequired property on this bean.- Returns:
- This object.
-
addDependentRequired
Bean property appender:dependentRequired .- Parameters:
name
- The key of the entry in the dependentRequired map.required
- The value of the entry in the dependentRequired map.- Returns:
- This object.
-
getRef
Bean property getter:$ref .- Returns:
- The value of the
$ref property on this bean, ornull if it is not set.
-
setRef
Bean property setter:$ref .The value can be of any of the following types:
URI
,URL
,String
. Strings must be valid URIs.URIs defined by
UriResolver
can be used for values.- Parameters:
ref
- The new value for the$ref property on this bean.- Returns:
- This object.
-
setMaster
Sets the master schema for this schema and all child schema objects.All child elements in a schema should point to a single "master" schema in order to locate registered JsonSchemaMap objects for resolving external schemas.
- Parameters:
master
- The master schema to associate on this and all children. Can benull .
-
resolve
Resolve schema if reference.If this schema is a reference to another schema (has its
$ref property set), this method will retrieve the referenced schema from the schema map registered with this schema.If this schema is not a reference, or no schema map is registered with this schema, this method is a no-op and simply returns this object.
- Returns:
- The referenced schema, or
null .
-
setSchemaMap
Associates a schema map with this schema for resolving other schemas identified through$ref properties.- Parameters:
schemaMap
- The schema map to associate with this schema. Can benull .- Returns:
- This object.
-
toString
-
getIdUri()
instead.