summaryrefslogtreecommitdiff
path: root/ext/data/schemas/dictionary-index-schema.json
blob: a8ca0f23758234532db7586131075d12d2f76bbf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "object",
    "description": "Index file containing information about the data contained in the dictionary.",
    "required": [
        "title",
        "revision"
    ],
    "properties": {
        "title": {
            "type": "string",
            "description": "Title of the dictionary."
        },
        "revision": {
            "type": "string",
            "description": "Revision of the dictionary. This value is only used for displaying information."
        },
        "sequenced": {
            "type": "boolean",
            "default": false,
            "description": "Whether or not this dictionary contains sequencing information for related terms."
        },
        "format": {
            "type": "integer",
            "description": "Format of data found in the JSON data files.",
            "enum": [1, 2, 3]
        },
        "version": {
            "type": "integer",
            "description": "Alias for format.",
            "enum": [1, 2, 3]
        },
        "author": {
            "type": "string",
            "description": "Creator of the dictionary."
        },
        "url": {
            "type": "string",
            "description": "URL for the source of the dictionary."
        },
        "description": {
            "type": "string",
            "description": "Description of the dictionary data."
        },
        "attribution": {
            "type": "string",
            "description": "Attribution information for the dictionary data."
        },
        "frequencyMode": {
            "type": "string",
            "enum": ["occurrence-based", "rank-based"]
        },
        "tagMeta": {
            "type": "object",
            "description": "Tag information for terms and kanji. This object is obsolete and individual tag files should be used instead.",
            "additionalProperties": {
                "type": "object",
                "description": "Information about a single tag. The object key is the name of the tag.",
                "properties": {
                    "category": {
                        "type": "string",
                        "description": "Category for the tag."
                    },
                    "order": {
                        "type": "number",
                        "description": "Sorting order for the tag."
                    },
                    "notes": {
                        "type": "string",
                        "description": "Notes for the tag."
                    },
                    "score": {
                        "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."
                    }
                },
                "additionalProperties": false
            }
        }
    },
    "anyOf": [
        {
            "required": ["format"]
        },
        {
            "required": ["version"]
        }
    ]
}