mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-27 18:22:41 -08:00
594 lines
28 KiB
JSON
594 lines
28 KiB
JSON
{
|
|
"$id": "dictionaryTermBankV3",
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"definitions": {
|
|
"structuredContent": {
|
|
"oneOf": [
|
|
{
|
|
"type": "string",
|
|
"description": "Represents a text node."
|
|
},
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/structuredContent",
|
|
"description": "An array of child content."
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"oneOf": [
|
|
{
|
|
"type": "object",
|
|
"description": "Empty tags.",
|
|
"required": [
|
|
"tag"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"const": "br"
|
|
},
|
|
"data": {
|
|
"$ref": "#/definitions/structuredContentData"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Generic container tags.",
|
|
"required": [
|
|
"tag"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"enum": ["ruby", "rt", "rp", "table", "thead", "tbody", "tfoot", "tr"]
|
|
},
|
|
"content": {
|
|
"$ref": "#/definitions/structuredContent"
|
|
},
|
|
"data": {
|
|
"$ref": "#/definitions/structuredContentData"
|
|
},
|
|
"lang": {
|
|
"type": "string",
|
|
"description": "Defines the language of an element in the format defined by RFC 5646."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Table tags.",
|
|
"required": [
|
|
"tag"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"enum": ["td", "th"]
|
|
},
|
|
"content": {
|
|
"$ref": "#/definitions/structuredContent"
|
|
},
|
|
"data": {
|
|
"$ref": "#/definitions/structuredContentData"
|
|
},
|
|
"colSpan": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"rowSpan": {
|
|
"type": "integer",
|
|
"minimum": 1
|
|
},
|
|
"style": {
|
|
"$ref": "#/definitions/structuredContentStyle"
|
|
},
|
|
"lang": {
|
|
"type": "string",
|
|
"description": "Defines the language of an element in the format defined by RFC 5646."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Container tags supporting configurable styles.",
|
|
"required": [
|
|
"tag"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"enum": ["span", "div", "ol", "ul", "li", "details", "summary"]
|
|
},
|
|
"content": {
|
|
"$ref": "#/definitions/structuredContent"
|
|
},
|
|
"data": {
|
|
"$ref": "#/definitions/structuredContentData"
|
|
},
|
|
"style": {
|
|
"$ref": "#/definitions/structuredContentStyle"
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"description": "Hover text for the element."
|
|
},
|
|
"open": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the details element is open by default."
|
|
},
|
|
"lang": {
|
|
"type": "string",
|
|
"description": "Defines the language of an element in the format defined by RFC 5646."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Image tag.",
|
|
"required": [
|
|
"tag",
|
|
"path"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"const": "img"
|
|
},
|
|
"data": {
|
|
"$ref": "#/definitions/structuredContentData"
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Path to the image file in the archive."
|
|
},
|
|
"width": {
|
|
"type": "number",
|
|
"description": "Preferred width of the image.",
|
|
"minimum": 0
|
|
},
|
|
"height": {
|
|
"type": "number",
|
|
"description": "Preferred height of the image.",
|
|
"minimum": 0
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"description": "Hover text for the image."
|
|
},
|
|
"alt": {
|
|
"type": "string",
|
|
"description": "Alt text for the image."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Description of the image."
|
|
},
|
|
"pixelated": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image should appear pixelated at sizes larger than the image's native resolution.",
|
|
"default": false
|
|
},
|
|
"imageRendering": {
|
|
"type": "string",
|
|
"description": "Controls how the image is rendered. The value of this field supersedes the pixelated field.",
|
|
"enum": ["auto", "pixelated", "crisp-edges"],
|
|
"default": "auto"
|
|
},
|
|
"appearance": {
|
|
"type": "string",
|
|
"description": "Controls the appearance of the image. The \"monochrome\" value will mask the opaque parts of the image using the current text color.",
|
|
"enum": ["auto", "monochrome"],
|
|
"default": "auto"
|
|
},
|
|
"background": {
|
|
"type": "boolean",
|
|
"description": "Whether or not a background color is displayed behind the image.",
|
|
"default": true
|
|
},
|
|
"collapsed": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image is collapsed by default.",
|
|
"default": false
|
|
},
|
|
"collapsible": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image can be collapsed.",
|
|
"default": false
|
|
},
|
|
"verticalAlign": {
|
|
"type": "string",
|
|
"description": "The vertical alignment of the image.",
|
|
"enum": ["baseline", "sub", "super", "text-top", "text-bottom", "middle", "top", "bottom"]
|
|
},
|
|
"border": {
|
|
"type": "string",
|
|
"description": "Shorthand for border width, style, and color."
|
|
},
|
|
"borderRadius": {
|
|
"type": "string",
|
|
"description": "Roundness of the corners of the image's outer border edge."
|
|
},
|
|
"sizeUnits": {
|
|
"type": "string",
|
|
"description": "The units for the width and height.",
|
|
"enum": ["px", "em"]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Link tag.",
|
|
"required": [
|
|
"tag",
|
|
"href"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"tag": {
|
|
"type": "string",
|
|
"const": "a"
|
|
},
|
|
"content": {
|
|
"$ref": "#/definitions/structuredContent"
|
|
},
|
|
"href": {
|
|
"type": "string",
|
|
"description": "The URL for the link. URLs starting with a ? are treated as internal links to other dictionary content.",
|
|
"pattern": "^(?:https?:|\\?)[\\w\\W]*"
|
|
},
|
|
"lang": {
|
|
"type": "string",
|
|
"description": "Defines the language of an element in the format defined by RFC 5646."
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"structuredContentData": {
|
|
"type": "object",
|
|
"description": "Generic data attributes that should be added to the element.",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"structuredContentStyle": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"fontStyle": {
|
|
"type": "string",
|
|
"enum": ["normal", "italic"],
|
|
"default": "normal"
|
|
},
|
|
"fontWeight": {
|
|
"type": "string",
|
|
"enum": ["normal", "bold"],
|
|
"default": "normal"
|
|
},
|
|
"fontSize": {
|
|
"type": "string",
|
|
"default": "medium"
|
|
},
|
|
"color": {
|
|
"type": "string"
|
|
},
|
|
"background": {
|
|
"type": "string"
|
|
},
|
|
"backgroundColor": {
|
|
"type": "string"
|
|
},
|
|
"textDecorationLine": {
|
|
"oneOf": [
|
|
{
|
|
"type": "string",
|
|
"enum": ["none", "underline", "overline", "line-through"],
|
|
"default": "none"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": ["underline", "overline", "line-through"],
|
|
"default": "none"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"textDecorationStyle": {
|
|
"type": "string",
|
|
"enum": ["solid", "double", "dotted", "dashed", "wavy"],
|
|
"default": "solid"
|
|
},
|
|
"textDecorationColor": {
|
|
"type": "string"
|
|
},
|
|
"borderColor": {
|
|
"type": "string"
|
|
},
|
|
"borderStyle": {
|
|
"type": "string"
|
|
},
|
|
"borderRadius": {
|
|
"type": "string"
|
|
},
|
|
"borderWidth": {
|
|
"type": "string"
|
|
},
|
|
"clipPath": {
|
|
"type": "string"
|
|
},
|
|
"verticalAlign": {
|
|
"type": "string",
|
|
"enum": ["baseline", "sub", "super", "text-top", "text-bottom", "middle", "top", "bottom"],
|
|
"default": "baseline"
|
|
},
|
|
"textAlign": {
|
|
"type": "string",
|
|
"enum": ["start", "end", "left", "right", "center", "justify", "justify-all", "match-parent"],
|
|
"default": "start"
|
|
},
|
|
"textEmphasis": {
|
|
"type": "string"
|
|
},
|
|
"textShadow": {
|
|
"type": "string"
|
|
},
|
|
"margin": {
|
|
"type": "string"
|
|
},
|
|
"marginTop": {
|
|
"type": ["number", "string"],
|
|
"default": 0
|
|
},
|
|
"marginLeft": {
|
|
"type": ["number", "string"],
|
|
"default": 0
|
|
},
|
|
"marginRight": {
|
|
"type": ["number", "string"],
|
|
"default": 0
|
|
},
|
|
"marginBottom": {
|
|
"type": ["number", "string"],
|
|
"default": 0
|
|
},
|
|
"padding": {
|
|
"type": "string"
|
|
},
|
|
"paddingTop": {
|
|
"type": "string"
|
|
},
|
|
"paddingLeft": {
|
|
"type": "string"
|
|
},
|
|
"paddingRight": {
|
|
"type": "string"
|
|
},
|
|
"paddingBottom": {
|
|
"type": "string"
|
|
},
|
|
"wordBreak": {
|
|
"type": "string",
|
|
"enum": ["normal", "break-all", "keep-all"],
|
|
"default": "normal"
|
|
},
|
|
"whiteSpace": {
|
|
"type": "string",
|
|
"default": "normal"
|
|
},
|
|
"cursor": {
|
|
"type": "string",
|
|
"default": "auto"
|
|
},
|
|
"listStyleType": {
|
|
"type": "string",
|
|
"default": "disc"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"type": "array",
|
|
"description": "Data file containing term information.",
|
|
"items": {
|
|
"type": "array",
|
|
"description": "Information about a single term.",
|
|
"minItems": 8,
|
|
"maxItems": 8,
|
|
"additionalItems": false,
|
|
"items": [
|
|
{
|
|
"type": "string",
|
|
"description": "The text for the term."
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "Reading of the term, or an empty string if the reading is the same as the term."
|
|
},
|
|
{
|
|
"type": ["string", "null"],
|
|
"description": "String of space-separated tags for the definition. An empty string is treated as no tags."
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "String of space-separated rule identifiers for the definition which is used to validate deinflection. An empty string should be used for words which aren't inflected."
|
|
},
|
|
{
|
|
"type": "number",
|
|
"description": "Score used to determine popularity. Negative values are more rare and positive values are more frequent. This score is also used to sort search results."
|
|
},
|
|
{
|
|
"type": "array",
|
|
"description": "Array of definitions for the term.",
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"type": "string",
|
|
"description": "Single definition for the term."
|
|
},
|
|
{
|
|
"type": "object",
|
|
"description": "Single detailed definition for the term.",
|
|
"required": [
|
|
"type"
|
|
],
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"description": "The type of the data for this definition.",
|
|
"enum": ["text", "image", "structured-content"]
|
|
}
|
|
},
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"type",
|
|
"text"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"const": "text"
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"description": "Single definition for the term."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"required": [
|
|
"type",
|
|
"content"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"const": "structured-content"
|
|
},
|
|
"content": {
|
|
"$ref": "#/definitions/structuredContent",
|
|
"description": "Single definition for the term using a structured content object."
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"required": [
|
|
"type",
|
|
"path"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": {
|
|
"type": "string",
|
|
"const": "image"
|
|
},
|
|
"path": {
|
|
"type": "string",
|
|
"description": "Path to the image file in the archive."
|
|
},
|
|
"width": {
|
|
"type": "integer",
|
|
"description": "Preferred width of the image.",
|
|
"minimum": 1
|
|
},
|
|
"height": {
|
|
"type": "integer",
|
|
"description": "Preferred height of the image.",
|
|
"minimum": 1
|
|
},
|
|
"title": {
|
|
"type": "string",
|
|
"description": "Hover text for the image."
|
|
},
|
|
"alt": {
|
|
"type": "string",
|
|
"description": "Alt text for the image."
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "Description of the image."
|
|
},
|
|
"pixelated": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image should appear pixelated at sizes larger than the image's native resolution.",
|
|
"default": false
|
|
},
|
|
"imageRendering": {
|
|
"type": "string",
|
|
"description": "Controls how the image is rendered. The value of this field supersedes the pixelated field.",
|
|
"enum": ["auto", "pixelated", "crisp-edges"],
|
|
"default": "auto"
|
|
},
|
|
"appearance": {
|
|
"type": "string",
|
|
"description": "Controls the appearance of the image. The \"monochrome\" value will mask the opaque parts of the image using the current text color.",
|
|
"enum": ["auto", "monochrome"],
|
|
"default": "auto"
|
|
},
|
|
"background": {
|
|
"type": "boolean",
|
|
"description": "Whether or not a background color is displayed behind the image.",
|
|
"default": true
|
|
},
|
|
"collapsed": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image is collapsed by default.",
|
|
"default": false
|
|
},
|
|
"collapsible": {
|
|
"type": "boolean",
|
|
"description": "Whether or not the image can be collapsed.",
|
|
"default": true
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "array",
|
|
"description": "Deinflection of the term to an uninflected term.",
|
|
"minItems": 2,
|
|
"maxItems": 2,
|
|
"items": [
|
|
{
|
|
"type": "string",
|
|
"description": "The uninflected term."
|
|
},
|
|
{
|
|
"type": "array",
|
|
"description": "A chain of inflection rules that produced the inflected term",
|
|
"items": {
|
|
"type": "string",
|
|
"description": "A single inflection rule."
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "Sequence number for the term. Terms with the same sequence number can be shown together when the \"resultOutputMode\" option is set to \"merge\"."
|
|
},
|
|
{
|
|
"type": "string",
|
|
"description": "String of space-separated tags for the term. An empty string is treated as no tags."
|
|
}
|
|
]
|
|
}
|
|
}
|