{ "$schema": "http://json-schema.org/draft-06/schema#", "id": "http://www.iucr.org/resources/cif/cif-json.json", "description": "The CIF-JSON top-level object", "type": "object", "required": ["CIF-JSON"], "maxProperties": 1, "properties": { "CIF-JSON": { "description": "The CIF-JSON object", "type": "object", "patternProperties": { "^[^A-Z\u0000-\u0020]+$": { "id": "#datablock", "title": "datablock", "description": "An object representing a CIF datablock", "type": "object", "patternProperties": { "^_[^A-Z\u0000-\u0020]+$": { "title": "values", "description": "An array of all the values taken by a CIF data item", "type": "array", "minItems": 1, "items": { "id": "#datavalue", "title": "datavalue", "description": "A CIF data value", "anyOf": [ { "title": "string / number", "description": "A CIF string or numeric value", "type": "string" }, { "title": "null", "description": "A CIF null value (.)", "type": "boolean", "const": false }, { "title": "unknown", "description": "A CIF unknown value (?)", "type": "null" }, { "title": "list", "description": "A CIF list value", "type": "array", "items": { "$ref": "#datavalue" } }, { "title": "table", "description": "A CIF table value", "type": "object", "additionalProperties": { "$ref": "#datavalue" } } ] } } }, "properties": { "Frames": { "type": "object", "patternProperties": { "^[^\u0000-\u0020A-Z]+$": { "$ref": "#datablock" } }, "additionalProperties": { "not": {} } } }, "additionalProperties": { "not": {} } } }, "properties": { "Metadata": { "description": "provides instance metadata", "type": "object", "properties": { "cif-version": { "type": "string", "enum": ["1.1", "2.0"], "description": "The version of CIF with which the content of this CIF-JSON instance conforms" }, "schema-name": { "type": "string", "const": "CIF-JSON", "default": "CIF-JSON", "description": "Identifies the JSON format of this instance's content; always 'CIF-JSON' for instances conforming to this schema" }, "schema-version": { "type": "string", "pattern": "(0|[1-9][0-9]*)[.](0|[1-9][0-9]*)[.](0|[1-9][0-9]*)", "description": "The version of CIF-JSON to which this instance conforms, in dotted-triplet form; CIF-JSON version numbers are assigned according to semantic versioning principles" }, "schema-uri": { "type": "string", "const": "http://www.iucr.org/resources/cif/cif-json.json", "default": "http://www.iucr.org/resources/cif/cif-json.json", "description": "A URI (in fact a URL) specifying the location of this schema" } } } } } } }