skema

Object

@Serializable
@SerialName(value = "Object")
data class Object(val properties: Map<String, JsonSpec> = emptyMap(), val required: List<String> = emptyList(), val additionalPropertiesAllowed: Boolean? = null, val additionalPropertiesSpec: JsonSpec? = null, val minProperties: Int? = null, val maxProperties: Int? = null) : JsonSpec(source)

Object with named properties. additionalPropertiesAllowed gates extras; set additionalPropertiesSpec to constrain extras to a schema instead of a boolean. If both are set, the spec wins.

Constructors

Link copied to clipboard
constructor(properties: Map<String, JsonSpec> = emptyMap(), required: List<String> = emptyList(), additionalPropertiesAllowed: Boolean? = null, additionalPropertiesSpec: JsonSpec? = null, minProperties: Int? = null, maxProperties: Int? = null)

Properties

Link copied to clipboard

Whether properties not listed in properties are allowed. Default true (per JSON Schema).

Link copied to clipboard

Spec that all additional (unlisted) properties must match.

Link copied to clipboard

Maximum number of properties.

Link copied to clipboard

Minimum number of properties.

Link copied to clipboard

Named properties and their specs.

Link copied to clipboard

Property names that must be present.

Functions

Link copied to clipboard
fun JsonSpec.toJsonSchema(): JsonObject

JSON Schema fragment describing the value this primitive validates.

Object

constructor(properties: Map<String, JsonSpec> = emptyMap(), required: List<String> = emptyList(), additionalPropertiesAllowed: Boolean? = null, additionalPropertiesSpec: JsonSpec? = null, minProperties: Int? = null, maxProperties: Int? = null)(source)

additionalPropertiesAllowed

Whether properties not listed in properties are allowed. Default true (per JSON Schema).

additionalPropertiesSpec

Spec that all additional (unlisted) properties must match.

maxProperties

Maximum number of properties.

minProperties

Minimum number of properties.

properties

Named properties and their specs.

required

Property names that must be present.