164 lines
7.2 KiB
JSON
164 lines
7.2 KiB
JSON
{
|
|
"$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": [
|
|
{},
|
|
{"const": "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": [
|
|
{},
|
|
{"const": "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."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
} |