Home  |  Version 3.6.0  |  Contact Us  ]

{
"$comment":
"Note: As of 1/2018, the JSON Schema specifications are still in flux, so take this schema with a grain of salt, especially if attempting to use it with any automated tools.  This schema is validated against draft 6.",
    "$ref": "#/definitions/NetHackBugs",
    "definitions": {
        "NetHackBugs": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "TYPE": {
                    "type": "string",
		    "enum": [ "NetHackBugs" ]
                },
                "DATA": {
                    "$ref": "#/definitions/Data"
                },
                "NHVERSION": {
		    "description": "The NetHack version (e.g. 3.6.0) corresponding to the NetHack version of the bugs contained in the file.",
                    "type": "string",
		    "regex": "^[1-9][0-9]*\\.[1-9][0-9]*\\.[1-9][0-9]*[a-z]*$"
                },
                "BRVERSION": {
		    "description": "Branch/Revision version number of this file.  This field should be used only for reporting issues with the schema.",
                    "type": "string"
                },
                "FFVERSION": {
		    "description": "File Format version of the schema.  This field will be updated if the file format is updated.  It will NOT be updated if a change to the schema is an error correction relating to the schema itself.  The current version is 1.",
                    "type": "integer",
		    "regex": "^[1-9][0-9]*$"
                },
                "DATE": {
		    "description": "Time the file was generated.",
                    "type": "string",
		    "regex": "[12][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9] GMT"
                }
            },
            "required": [
                "BRVERSION",
                "DATA",
                "DATE",
                "FFVERSION",
                "NHVERSION",
                "TYPE"
            ],
            "title": "NetHackBugs"
        },
        "Data": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "BUGS": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/Bug"
                    }
                },
                "SPOILERS": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/Bug"
                    }
                }
            },
            "required": [
                "BUGS",
                "SPOILERS"
            ],
            "title": "DATA"
        },
        "Bug": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "ID": {
                    "type": "string",
		    "regex": "^S?[A-Z][1-9][0-9]*\\.[1-9][0-9]*\\.[1-9][0-9]*[a-z]*$-[1-9][0-9]*$"
                },
                "DESCRIPTION": {
		    "description": "The bug text itself.",
                    "type": "string"
                },
                "MORE": {
                    "oneOf": [
                        {
                            "type": "null"
                        },
                        {
                            "type": "string"
                        }
                    ],
                    "title": "MORE"
                }
            },
            "required": [
                "DESCRIPTION",
                "ID"
            ],
            "title": "BUG"
        }
    }
}