Permalink
Browse files

Merge git://github.com/garycourt/json-schema

  • Loading branch information...
2 parents 766aca5 + cf45c27 commit 1f3275e075e8a0d44360bd173bde8e67118318ae @kriszyp committed Nov 30, 2011
Showing with 479 additions and 236 deletions.
  1. +60 −0 draft-04/hyper-schema
  2. +41 −0 draft-04/links
  3. +189 −0 draft-04/schema
  4. +189 −236 draft-zyp-json-schema-04.xml
View
@@ -0,0 +1,60 @@
+{
+ "$schema" : "http://json-schema.org/draft-04/hyper-schema#",
+ "extends" : {"$ref" : "http://json-schema.org/draft-04/schema#"},
+ "id" : "http://json-schema.org/draft-04/hyper-schema#",
+
+ "properties" : {
+ "links" : {
+ "type" : "array",
+ "items" : {"$ref" : "http://json-schema.org/draft-04/links#"}
+ },
+
+ "fragmentResolution" : {
+ "type" : "string",
+ "default" : "json-pointer"
+ },
+
+ "root" : {
+ "type" : "boolean",
+ "default" : false
+ },
+
+ "readonly" : {
+ "type" : "boolean",
+ "default" : false
+ },
+
+ "contentEncoding" : {
+ "type" : "string"
+ },
+
+ "pathStart" : {
+ "type" : "string",
+ "format" : "uri"
+ },
+
+ "mediaType" : {
+ "type" : "string",
+ "format" : "media-type"
+ }
+ },
+
+ "links" : [
+ {
+ "href" : "{id}",
+ "rel" : "self"
+ },
+
+ {
+ "href" : "{$ref}",
+ "rel" : "full"
+ },
+
+ {
+ "href" : "{$schema}",
+ "rel" : "describedby"
+ }
+ ],
+
+ "fragmentResolution" : "json-pointer"
+}
View
@@ -0,0 +1,41 @@
+{
+ "$schema" : "http://json-schema.org/draft-04/hyper-schema#",
+ "id" : "http://json-schema.org/draft-04/links#",
+ "type" : "object",
+
+ "properties" : {
+ "rel" : {
+ "type" : "string"
+ },
+
+ "href" : {
+ "type" : "string"
+ },
+
+ "template" : {
+ "type" : "string"
+ },
+
+ "targetSchema" : {"$ref" : "http://json-schema.org/draft-04/hyper-schema#"},
+
+ "method" : {
+ "type" : "string",
+ "default" : "GET"
+ },
+
+ "enctype" : {
+ "type" : "string"
+ },
+
+ "properties" : {
+ "type" : "object",
+ "additionalProperties" : {"$ref" : "http://json-schema.org/draft-04/hyper-schema#"}
+ }
+ },
+
+ "required" : ["rel", "href"],
+
+ "dependencies" : {
+ "enctype" : "method"
+ }
+}
View
@@ -0,0 +1,189 @@
+{
+ "$schema" : "http://json-schema.org/draft-04/schema#",
+ "id" : "http://json-schema.org/draft-04/schema#",
+ "type" : "object",
+
+ "properties" : {
+ "type" : {
+ "type" : [
+ {
+ "id" : "#simple-type",
+ "type" : "string",
+ "enum" : ["object", "array", "string", "number", "boolean", "null", "any"]
+ },
+ "array"
+ ],
+ "items" : {
+ "type" : [
+ {"$ref" : "#simple-type"},
+ {"$ref" : "#"}
+ ]
+ },
+ "uniqueItems" : true,
+ "default" : "any"
+ },
+
+ "disallow" : {
+ "type" : ["string", "array"],
+ "items" : {
+ "type" : ["string", {"$ref" : "#"}]
+ },
+ "uniqueItems" : true
+ },
+
+ "extends" : {
+ "type" : [{"$ref" : "#"}, "array"],
+ "items" : {"$ref" : "#"},
+ "default" : {}
+ },
+
+ "enum" : {
+ "type" : "array",
+ "minItems" : 1,
+ "uniqueItems" : true
+ },
+
+ "minimum" : {
+ "type" : "number"
+ },
+
+ "maximum" : {
+ "type" : "number"
+ },
+
+ "exclusiveMinimum" : {
+ "type" : "boolean",
+ "default" : false
+ },
+
+ "exclusiveMaximum" : {
+ "type" : "boolean",
+ "default" : false
+ },
+
+ "divisibleBy" : {
+ "type" : "number",
+ "minimum" : 0,
+ "exclusiveMinimum" : true,
+ "default" : 1
+ },
+
+ "minLength" : {
+ "type" : "integer",
+ "minimum" : 0,
+ "default" : 0
+ },
+
+ "maxLength" : {
+ "type" : "integer"
+ },
+
+ "pattern" : {
+ "type" : "string"
+ },
+
+ "items" : {
+ "type" : [{"$ref" : "#"}, "array"],
+ "items" : {"$ref" : "#"},
+ "default" : {}
+ },
+
+ "additionalItems" : {
+ "type" : [{"$ref" : "#"}, "boolean"],
+ "default" : {}
+ },
+
+ "minItems" : {
+ "type" : "integer",
+ "minimum" : 0,
+ "default" : 0
+ },
+
+ "maxItems" : {
+ "type" : "integer",
+ "minimum" : 0
+ },
+
+ "uniqueItems" : {
+ "type" : "boolean",
+ "default" : false
+ },
+
+ "properties" : {
+ "type" : "object",
+ "additionalProperties" : {"$ref" : "#"},
+ "default" : {}
+ },
+
+ "patternProperties" : {
+ "type" : "object",
+ "additionalProperties" : {"$ref" : "#"},
+ "default" : {}
+ },
+
+ "additionalProperties" : {
+ "type" : [{"$ref" : "#"}, "boolean"],
+ "default" : {}
+ },
+
+ "minProperties" : {
+ "type" : "integer",
+ "minimum" : 0,
+ "default" : 0
+ },
+
+ "maxProperties" : {
+ "type" : "integer",
+ "minimum" : 0
+ },
+
+ "required" : {
+ "type" : "array",
+ "items" : {
+ "type" : "string"
+ }
+ },
+
+ "dependencies" : {
+ "type" : "object",
+ "additionalProperties" : {
+ "type" : ["string", "array", {"$ref" : "#"}],
+ "items" : {
+ "type" : "string"
+ }
+ },
+ "default" : {}
+ },
+
+ "id" : {
+ "type" : "string"
+ },
+
+ "$ref" : {
+ "type" : "string"
+ },
+
+ "$schema" : {
+ "type" : "string"
+ },
+
+ "title" : {
+ "type" : "string"
+ },
+
+ "description" : {
+ "type" : "string"
+ },
+
+ "default" : {
+ "type" : "any"
+ }
+ },
+
+ "dependencies" : {
+ "exclusiveMinimum" : "minimum",
+ "exclusiveMaximum" : "maximum"
+ },
+
+ "default" : {}
+}
Oops, something went wrong.

0 comments on commit 1f3275e

Please sign in to comment.