Class: JSON::Schema

Inherits:
Object
  • Object
show all
Defined in:
lib/jsonschema.rb

Defined Under Namespace

Classes: ValueError

Constant Summary collapse

VERSION =
'1.0.0'
TypesMap =
{
  "string"  => String,
  "integer" => Integer,
  "number"  => [Integer, Float],
  "boolean" => [TrueClass, FalseClass],
  "object"  => Hash,
  "array"   => Array,
  "null"    => NilClass,
  "any"     => nil
}
TypesList =
[String, Integer, Float, TrueClass, FalseClass, Hash, Array, NilClass]
DefaultSchema =
{
  "id"                    => nil,
  "type"                  => nil,
  "properties"            => nil,
  "items"                 => nil,
  "optional"              => false,
  "additionalProperties" => nil,
  "requires"              => nil,
  "identity"              => nil,
  "minimum"               => nil,
  "maximum"               => nil,
  "minItems"             => nil,
  "maxItems"             => nil,
  "pattern"               => nil,
  "maxLength"            => nil,
  "minLength"            => nil,
  "enum"                  => nil,
  "options"               => nil,
  "readonly"              => nil,
  "title"                 => nil,
  "description"           => nil,
  "format"                => nil,
  "default"               => nil,
  "transient"             => nil,
  "maxDecimal"           => nil,
  "hidden"                => nil,
  "disallow"              => nil,
  "extends"               => nil
}

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(interactive = true) ⇒ Schema

Returns a new instance of Schema.



47
48
49
50
# File 'lib/jsonschema.rb', line 47

def initialize interactive=true
  @interactive = interactive
  @refmap = {}
end

Class Method Details

.validate(data, schema, interactive = true) ⇒ Object



425
426
427
428
# File 'lib/jsonschema.rb', line 425

def validate data, schema, interactive=true
  validator = JSON::Schema.new(interactive)
  validator.validate(data, schema)
end

Instance Method Details

#validate(data, schema) ⇒ Object



52
53
54
55
56
57
# File 'lib/jsonschema.rb', line 52

def validate data, schema
  @refmap = {
    '$' => schema
  }
  _validate(data, schema)
end