Permalink
Browse files

Update metaschemas

  • Loading branch information...
fge committed Feb 1, 2013
1 parent 84a4317 commit e14e3340c2c2e4f579cd3635b9b4e0e278161b7a
Showing with 254 additions and 232 deletions.
  1. +155 −57 draft-04/hyper-schema
  2. +0 −41 draft-04/links
  3. +99 −134 draft-04/schema
View
@@ -1,60 +1,158 @@
{
- "$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#",
+ "$schema": "http://json-schema.org/draft-04/hyper-schema#",
+ "id": "http://json-schema.org/draft-04/hyper-schema#",
+ "title": "JSON Hyper-Schema",
+ "allOf": [
+ {
+ "$ref": "http://json-schema.org/draft-04/schema#"
+ }
+ ],
+ "properties": {
+ "additionalItems": {
+ "anyOf": [
+ {
+ "type": "boolean"
+ },
+ {
+ "$ref": "#"
+ }
+ ]
+ },
+ "additionalProperties": {
+ "anyOf": [
+ {
+ "type": "boolean"
+ },
+ {
+ "$ref": "#"
+ }
+ ]
+ },
+ "dependencies": {
+ "additionalProperties": {
+ "anyOf": [
+ {
+ "$ref": "#"
+ },
+ {
+ "type": "array"
+ }
+ ]
+ }
+ },
+ "items": {
+ "anyOf": [
+ {
+ "$ref": "#"
+ },
+ {
+ "$ref": "#/definitions/schemaArray"
+ }
+ ]
+ },
+ "definitions": {
+ "additionalProperties": {
+ "$ref": "#"
+ }
+ },
+ "patternProperties": {
+ "additionalProperties": {
+ "$ref": "#"
+ }
+ },
+ "properties": {
+ "additionalProperties": {
+ "$ref": "#"
+ }
+ },
+ "allOf": {
+ "$ref": "#/definitions/schemaArray"
+ },
+ "anyOf": {
+ "$ref": "#/definitions/schemaArray"
+ },
+ "oneOf": {
+ "$ref": "#/definitions/schemaArray"
+ },
+ "not": {
+ "$ref": "#"
+ },
- "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"
+ "links": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/linkDescription"
+ }
+ },
+ "fragmentResolution": {
+ "type": "string"
+ },
+ "media": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "description": "A media type, as described in RFC 2046",
+ "type": "string"
+ },
+ "binaryEncoding": {
+ "description": "A content encoding scheme, as described in RFC 2045",
+ "type": "string"
+ }
+ }
+ },
+ "pathStart": {
+ "description": "Instances' URIs must start with this value for this schema to apply to them",
+ "type": "string",
+ "format": "uri"
+ }
+ },
+ "definitions": {
+ "schemaArray": {
+ "type": "array",
+ "items": {
+ "$ref": "#"
+ }
+ },
+ "linkDescription": {
+ "title": "Link Description Object",
+ "type": "object",
+ "required": [ "href", "rel" ],
+ "properties": {
+ "href": {
+ "description": "a URI template, as defined by RFC 6570, with the addition of the $, ( and ) characters for pre-processing",
+ "type": "string"
+ },
+ "rel": {
+ "description": "relation to the target resource of the link",
+ "type": "string"
+ },
+ "title": {
+ "description": "a title for the link",
+ "type": "string"
+ },
+ "targetSchema": {
+ "description": "JSON Schema describing the link target",
+ "$ref": "#"
+ },
+ "mediaType": {
+ "description": "media type (as defined by RFC 2046) describing the link target",
+ "type": "string"
+ },
+ "method": {
+ "description": "method for requesting the target of the link (e.g. for HTTP this might be \"GET\" or \"DELETE\")",
+ "type": "string"
+ },
+ "encType": {
+ "description": "The media type in which to submit data along with the request",
+ "type": "string",
+ "default": "application/json"
+ },
+ "schema": {
+ "description": "Schema describing the data to submit along with the request",
+ "$ref": "#"
+ }
+ }
+ }
+ }
}
+
View
@@ -1,41 +0,0 @@
-{
- "$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"
- }
-}
Oops, something went wrong.

0 comments on commit e14e334

Please sign in to comment.