{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "frequency": { "oneOf": [ { "type": ["string", "number"] }, { "type": "object", "additionalProperties": false, "required": [ "value" ], "properties": { "value": { "type": "number" }, "displayValue": { "type": "string" } } } ] } }, "type": "array", "description": "Custom metadata for terms.", "items": { "type": "array", "description": "Metadata about a single term.", "minItems": 3, "additionalItems": false, "items": [ { "type": "string", "description": "The text for the term." }, { "type": "string", "enum": ["freq", "pitch"], "description": "Type of data. \"freq\" corresponds to frequency information; \"pitch\" corresponds to pitch information." }, { "description": "Data for the term." } ], "oneOf": [ { "items": [ {}, {"enum": ["freq"]}, { "oneOf": [ { "$ref": "#/definitions/frequency", "description": "Frequency information for the term." }, { "type": ["object"], "required": [ "reading", "frequency" ], "additionalProperties": false, "properties": { "reading": { "type": "string", "description": "Reading for the term." }, "frequency": { "$ref": "#/definitions/frequency", "description": "Frequency information for the term." } } } ] } ] }, { "items": [ {}, {"enum": ["pitch"]}, { "type": ["object"], "description": "Pitch accent information for the term.", "required": [ "reading", "pitches" ], "additionalProperties": false, "properties": { "reading": { "type": "string", "description": "Reading for the term." }, "pitches": { "type": "array", "description": "List of different pitch accent information for the term and reading combination.", "items": { "type": "object", "required": [ "position" ], "additionalProperties": false, "properties": { "position": { "type": "integer", "description": "Mora position of the pitch accent downstep. A value of 0 indicates that the word does not have a downstep (heiban).", "minimum": 0 }, "nasal": { "oneOf": [ { "type": "integer", "description": "Position of a mora with nasal sound.", "minimum": 0 }, { "type": "array", "description": "Positions of morae with nasal sound.", "items": { "type": "integer", "minimum": 0 } } ] }, "devoice": { "oneOf": [ { "type": "integer", "description": "Position of a mora with devoiced sound.", "minimum": 0 }, { "type": "array", "description": "Positions of morae with devoiced sound.", "items": { "type": "integer", "minimum": 0 } } ] }, "tags": { "type": "array", "description": "List of tags for this pitch accent.", "items": { "type": "string", "description": "Tag for this pitch accent. This typically corresponds to a certain type of part of speech." } } } } } } } ] } ] } }