Packages
jsv
0.12.0
0.21.2
0.21.1
0.21.0
0.20.0
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.3
0.18.2
0.18.1
0.18.0
0.17.1
0.17.0
0.16.0
0.15.2
0.15.1
0.15.0
0.14.0
0.13.1
0.13.0
0.12.0
0.11.5
0.11.4
0.11.3
retired
0.11.2
0.11.1
0.11.0
0.10.1
0.10.0
0.9.0
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.3
0.6.2
0.6.0
0.5.1
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
A JSON Schema Validator with complete support for the latest specifications.
Current section
Files
Jump to
Current section
Files
lib/jsv/resolver/embedded/draft202012/meta/validation.ex
defmodule JSV.Resolver.Embedded.Draft202012.Meta.Validation do
@moduledoc false
@deprecated "use #{inspect(__MODULE__)}.json_schema/0 instead"
@doc false
@spec schema :: map
def schema do
json_schema()
end
@spec json_schema :: map
def json_schema do
%{
"$defs" => %{
"nonNegativeInteger" => %{"minimum" => 0, "type" => "integer"},
"nonNegativeIntegerDefault0" => %{
"$ref" => "#/$defs/nonNegativeInteger",
"default" => 0
},
"simpleTypes" => %{
"enum" => ["array", "boolean", "integer", "null", "number", "object", "string"]
},
"stringArray" => %{
"default" => [],
"items" => %{"type" => "string"},
"type" => "array",
"uniqueItems" => true
}
},
"$dynamicAnchor" => "meta",
"$id" => "https://json-schema.org/draft/2020-12/meta/validation",
"$schema" => "https://json-schema.org/draft/2020-12/schema",
"properties" => %{
"const" => true,
"dependentRequired" => %{
"additionalProperties" => %{"$ref" => "#/$defs/stringArray"},
"type" => "object"
},
"enum" => %{"items" => true, "type" => "array"},
"exclusiveMaximum" => %{"type" => "number"},
"exclusiveMinimum" => %{"type" => "number"},
"maxContains" => %{"$ref" => "#/$defs/nonNegativeInteger"},
"maxItems" => %{"$ref" => "#/$defs/nonNegativeInteger"},
"maxLength" => %{"$ref" => "#/$defs/nonNegativeInteger"},
"maxProperties" => %{"$ref" => "#/$defs/nonNegativeInteger"},
"maximum" => %{"type" => "number"},
"minContains" => %{"$ref" => "#/$defs/nonNegativeInteger", "default" => 1},
"minItems" => %{"$ref" => "#/$defs/nonNegativeIntegerDefault0"},
"minLength" => %{"$ref" => "#/$defs/nonNegativeIntegerDefault0"},
"minProperties" => %{"$ref" => "#/$defs/nonNegativeIntegerDefault0"},
"minimum" => %{"type" => "number"},
"multipleOf" => %{"exclusiveMinimum" => 0, "type" => "number"},
"pattern" => %{"format" => "regex", "type" => "string"},
"required" => %{"$ref" => "#/$defs/stringArray"},
"type" => %{
"anyOf" => [
%{"$ref" => "#/$defs/simpleTypes"},
%{
"items" => %{"$ref" => "#/$defs/simpleTypes"},
"minItems" => 1,
"type" => "array",
"uniqueItems" => true
}
]
},
"uniqueItems" => %{"default" => false, "type" => "boolean"}
},
"title" => "Validation vocabulary meta-schema",
"type" => ["object", "boolean"]
}
end
end