1 /*
2  * Vocabulary Document for KDE Edu KVTML version 2
3  * SPDX-FileCopyrightText: 2007 Jeremy Whiting <jpwhiting@kde.org>
4  * SPDX-FileCopyrightText: 2007 Frederik Gladhorn <frederik.gladhorn@kdemail.net>
5  * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7 #ifndef KVTML2DEFS_H
8 #define KVTML2DEFS_H
9 
10 #define KVTML_TAG               "kvtml"
11 #define KVTML_VERSION           "version"
12 #define KVTML_ID                "id"
13 
14 #define KVTML_INFORMATION       "information"
15 
16 #define KVTML_GENERATOR         "generator"
17 #define KVTML_TITLE             "title"
18 #define KVTML_AUTHOR            "author"
19 #define KVTML_AUTHORCONTACT     "contact"
20 #define KVTML_LICENSE           "license"
21 #define KVTML_COMMENT           "comment"
22 #define KVTML_CATEGORY          "category"
23 
24 #define KVTML_IDENTIFIERS       "identifiers"
25 #define KVTML_IDENTIFIER        "identifier"
26 #define KVTML_IDENTIFIERTYPE    "identifiertype"
27 #define KVTML_LOCALE            "locale"
28 #define KVTML_NAME              "name"
29 #define KVTML_SIZEHINT          "sizehint"
30 
31 // articles
32 #define KVTML_ARTICLE           "article"
33 
34 // conjugation, declension and personal pronouns
35 #define KVTML_CONJUGATION       "conjugation"
36 #define KVTML_CONJUGATIONTYPE   "conjugationtype"
37 #define KVTML_PERSONALPRONOUNS  "personalpronouns"
38 #define KVTML_DECLENSION       "declension"
39 
40 static const QString KVTML_DECLENSION_CASE[] = {
41     "nominative",
42     "genitive",
43     "dative",
44     "accusative",
45     "ablative",
46     "locative",
47     "vocative"
48 };
49 
50 static const QString KVTML_GRAMMATICAL_NUMBER[] = {
51     "singular",
52     "dual", // dual is the case where there's a special form for exactly two
53     "plural"
54 };
55 
56 static const QString KVTML_GRAMMATICAL_GENDER[] = {
57     "male",
58     "female",
59     "neutral"
60 };
61 
62 static const QString KVTML_GRAMMATICAL_PERSON[] = {
63     "firstperson",
64     "secondperson",
65     "thirdpersonmale",
66     "thirdpersonfemale",
67     "thirdpersonneutralcommon"
68 };
69 
70 static const QString KVTML_GRAMMATICAL_DEFINITENESS[] = {
71     "definite",
72     "indefinite"
73 };
74 
75 
76 // for the personal pronuns:
77 // if this tag exists, in a conjugation male/female are different
78 #define KVTML_THIRD_PERSON_MALE_FEMALE_DIFFERENT "malefemaledifferent"
79 // if this tag exists conjugations even have a neutral form for the third person
80 #define KVTML_THIRD_PERSON_NEUTRAL_EXISTS "neutralexists"
81 #define KVTML_DUAL_EXISTS        "dualexists"
82 
83 // word types, lessons and leitner boxes are vocabulary containers.
84 // each is allowed to have as many child containers as desired.
85 // for KDE 4.0 Parley will only allow a depth of wordtype children of two,
86 // leitner is not implemented at all.
87 // it is assumed that one container only has children of the same type.
88 // containers may have an image associated to represent them visually.
89 #define KVTML_WORDTYPES         "wordtypes"
90 #define KVTML_LESSONS           "lessons"
91 #define KVTML_LEITNERBOXES      "leitnerboxes"
92 #define KVTML_CONTAINER         "container"
93 #define KVTML_INPRACTICE        "inpractice"
94 
95 // these are necessary to enable practices based on word types. users can give types arbitrary names, but these few are hardcoded. special container types
96 #define KVTML_SPECIALWORDTYPE       "specialwordtype"
97 #define KVTML_SPECIALWORDTYPE_NOUN        "noun"
98 #define KVTML_SPECIALWORDTYPE_NOUN_MALE   "noun/male"
99 #define KVTML_SPECIALWORDTYPE_NOUN_FEMALE "noun/female"
100 #define KVTML_SPECIALWORDTYPE_NOUN_NEUTRAL "noun/neutral"
101 #define KVTML_SPECIALWORDTYPE_VERB        "verb"
102 #define KVTML_SPECIALWORDTYPE_ADJECTIVE   "adjective"
103 #define KVTML_SPECIALWORDTYPE_ADVERB      "adverb"
104 #define KVTML_SPECIALWORDTYPE_CONJUNCTION "conjunction"
105 
106 
107 #define KVTML_TENSES            "tenses"
108 #define KVTML_TENSE             "tense"
109 
110 #define KVTML_USAGES            "usages"
111 #define KVTML_USAGE             "usage"
112 
113 #define KVTML_CURRENT           "current"
114 
115 #define KVTML_ENTRIES           "entries"
116 #define KVTML_ENTRY             "entry"
117 #define KVTML_DEACTIVATED       "deactivated"
118 
119 #define KVTML_TRANSLATION       "translation"
120 #define KVTML_TEXT              "text"
121 #define KVTML_PRONUNCIATION     "pronunciation"
122 
123 #define KVTML_PAIR              "pair"
124 #define KVTML_FALSEFRIEND       "falsefriend"
125 #define KVTML_ANTONYM           "antonym"
126 #define KVTML_SYNONYM           "synonym"
127 
128 #define KVTML_EXAMPLE           "example"
129 #define KVTML_PARAPHRASE        "paraphrase"
130 
131 #define KVTML_COMPARISON        "comparison"
132 #define KVTML_ABSOLUTE          "absolute"
133 #define KVTML_COMPARATIVE       "comparative"
134 #define KVTML_SUPERLATIVE       "superlative"
135 
136 #define KVTML_MULTIPLECHOICE    "multiplechoice"
137 #define KVTML_CHOICE            "choice"
138 
139 #define KVTML_IMAGE             "image"
140 #define KVTML_SOUND             "sound"
141 
142 #define KVTML_GRADE             "grade"
143 #define KVTML_FROMID            "fromid"
144 #define KVTML_PREGRADE          "pregrade"
145 #define KVTML_CURRENTGRADE      "currentgrade"
146 #define KVTML_COUNT             "count"
147 #define KVTML_ERRORCOUNT        "errorcount"
148 #define KVTML_DATE              "date"
149 #define KVTML_INTERVAL          "interval"
150 
151 #define KVTML_TRUE              "true"
152 #define KVTML_FALSE             "false"
153 
154 #endif
155 
156