optolith-database-schema 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/lib/types/Blessing.d.ts +124 -0
- package/lib/types/Blessing.js +4 -0
- package/lib/types/Cantrip.d.ts +220 -0
- package/lib/types/Cantrip.js +4 -0
- package/lib/types/Ceremony.d.ts +0 -6
- package/lib/types/LiturgicalChant.d.ts +0 -6
- package/lib/types/PactCategory.d.ts +90 -0
- package/lib/types/PactCategory.js +4 -0
- package/package.json +1 -1
- package/schema/Blessing.schema.json +227 -0
- package/schema/Cantrip.schema.json +427 -0
- package/schema/Ceremony.schema.json +0 -6
- package/schema/LiturgicalChant.schema.json +0 -6
- package/schema/PactCategory.schema.json +138 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [0.0.3](https://github.com/elyukai/optolith-database-schema/compare/v0.0.2...v0.0.3) (2022-03-05)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* blessings ([8586a40](https://github.com/elyukai/optolith-database-schema/commit/8586a4026615ff6ebdc6cfb1e988d71828e5cd23))
|
|
11
|
+
* cantrips ([50397e8](https://github.com/elyukai/optolith-database-schema/commit/50397e83c9322dd36ef0cd28d2924128a6133a27))
|
|
12
|
+
* pact categories ([7b9cbc6](https://github.com/elyukai/optolith-database-schema/commit/7b9cbc66a5f13b40536d03a90f726fd9aff8c15a))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* liturgies do not have properties ([9b2c41d](https://github.com/elyukai/optolith-database-schema/commit/9b2c41dd9996abeac627b652cdb6ce0226760f2a))
|
|
18
|
+
|
|
5
19
|
### [0.0.2](https://github.com/elyukai/optolith-database-schema/compare/v0.0.1...v0.0.2) (2022-03-05)
|
|
6
20
|
|
|
7
21
|
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Blessing
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "./source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
6
|
+
import { Duration, TargetCategory } from "./_ActivatableSkill";
|
|
7
|
+
/**
|
|
8
|
+
* @title Blessing
|
|
9
|
+
*/
|
|
10
|
+
export declare type Blessing = {
|
|
11
|
+
/**
|
|
12
|
+
* The blessing's identifier. An unique, increasing integer.
|
|
13
|
+
* @integer
|
|
14
|
+
* @minimum 1
|
|
15
|
+
*/
|
|
16
|
+
id: number;
|
|
17
|
+
/**
|
|
18
|
+
* Measurable parameters of a blessing.
|
|
19
|
+
*/
|
|
20
|
+
parameters: PerformanceParameters;
|
|
21
|
+
/**
|
|
22
|
+
* The target category – the kind of creature or object – the skill affects.
|
|
23
|
+
*/
|
|
24
|
+
target: TargetCategory.T;
|
|
25
|
+
src: PublicationRefs;
|
|
26
|
+
/**
|
|
27
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
28
|
+
* @minProperties 1
|
|
29
|
+
*/
|
|
30
|
+
translations: {
|
|
31
|
+
/**
|
|
32
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
33
|
+
*/
|
|
34
|
+
[localeId: string]: {
|
|
35
|
+
/**
|
|
36
|
+
* The name of the blessing.
|
|
37
|
+
* @minLength 1
|
|
38
|
+
*/
|
|
39
|
+
name: string;
|
|
40
|
+
/**
|
|
41
|
+
* The effect description.
|
|
42
|
+
* @markdown
|
|
43
|
+
* @minLength 1
|
|
44
|
+
*/
|
|
45
|
+
effect: string;
|
|
46
|
+
/**
|
|
47
|
+
* @deprecated
|
|
48
|
+
*/
|
|
49
|
+
range: string;
|
|
50
|
+
/**
|
|
51
|
+
* @deprecated
|
|
52
|
+
*/
|
|
53
|
+
duration: string;
|
|
54
|
+
/**
|
|
55
|
+
* @deprecated
|
|
56
|
+
*/
|
|
57
|
+
target: string;
|
|
58
|
+
errata?: Errata;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Measurable parameters of a blessing.
|
|
64
|
+
*/
|
|
65
|
+
declare type PerformanceParameters = {
|
|
66
|
+
range: {
|
|
67
|
+
tag: "Self";
|
|
68
|
+
} | {
|
|
69
|
+
tag: "Touch";
|
|
70
|
+
} | {
|
|
71
|
+
tag: "Fixed";
|
|
72
|
+
/**
|
|
73
|
+
* The range in steps/m.
|
|
74
|
+
* @integer
|
|
75
|
+
* @minimum 1
|
|
76
|
+
*/
|
|
77
|
+
value: number;
|
|
78
|
+
};
|
|
79
|
+
duration: {
|
|
80
|
+
tag: "Immediate";
|
|
81
|
+
} | {
|
|
82
|
+
tag: "Fixed";
|
|
83
|
+
/**
|
|
84
|
+
* The (unitless) duration.
|
|
85
|
+
* @integer
|
|
86
|
+
* @minimum 1
|
|
87
|
+
*/
|
|
88
|
+
value: number;
|
|
89
|
+
/**
|
|
90
|
+
* The duration unit.
|
|
91
|
+
*/
|
|
92
|
+
unit: Duration.Unit;
|
|
93
|
+
} | {
|
|
94
|
+
tag: "Indefinite";
|
|
95
|
+
/**
|
|
96
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
97
|
+
* @minProperties 1
|
|
98
|
+
*/
|
|
99
|
+
translations: {
|
|
100
|
+
/**
|
|
101
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
102
|
+
*/
|
|
103
|
+
[localeId: string]: {
|
|
104
|
+
/**
|
|
105
|
+
* A description of the duration.
|
|
106
|
+
*/
|
|
107
|
+
description: {
|
|
108
|
+
/**
|
|
109
|
+
* The full description of the duration.
|
|
110
|
+
* @minLength 1
|
|
111
|
+
*/
|
|
112
|
+
default: string;
|
|
113
|
+
/**
|
|
114
|
+
* A compressed description of the duration for use in small areas
|
|
115
|
+
* (e.g. on character sheet).
|
|
116
|
+
* @minLength 1
|
|
117
|
+
*/
|
|
118
|
+
compressed: string;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
export {};
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main Spell
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "./source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
6
|
+
import { Duration, Effect, TargetCategory } from "./_ActivatableSkill";
|
|
7
|
+
import { Enhancements } from "./_Enhancements";
|
|
8
|
+
import { ImprovementCost } from "./_ImprovementCost";
|
|
9
|
+
/**
|
|
10
|
+
* @title Spell
|
|
11
|
+
*/
|
|
12
|
+
export declare type Spell = {
|
|
13
|
+
/**
|
|
14
|
+
* The spell's identifier. An unique, increasing integer.
|
|
15
|
+
* @integer
|
|
16
|
+
* @minimum 1
|
|
17
|
+
*/
|
|
18
|
+
id: number;
|
|
19
|
+
/**
|
|
20
|
+
* Measurable parameters of a spell.
|
|
21
|
+
*/
|
|
22
|
+
parameters: PerformanceParameters;
|
|
23
|
+
/**
|
|
24
|
+
* The target category – the kind of creature or object – the skill affects.
|
|
25
|
+
*/
|
|
26
|
+
target: TargetCategory.T;
|
|
27
|
+
/**
|
|
28
|
+
* The property's identifier.
|
|
29
|
+
* @integer
|
|
30
|
+
* @minimum 1
|
|
31
|
+
*/
|
|
32
|
+
property_id: number;
|
|
33
|
+
/**
|
|
34
|
+
* States which column is used to improve the skill.
|
|
35
|
+
*/
|
|
36
|
+
improvement_cost: ImprovementCost;
|
|
37
|
+
/**
|
|
38
|
+
* A note specifying the dissemination of the cantrip in different traditions.
|
|
39
|
+
* Sometimes a cantrip is exclusively available to one or more specific
|
|
40
|
+
* traditions, but usually one the academies and traditions are listed the
|
|
41
|
+
* cantrip is most commonly teached in.
|
|
42
|
+
*/
|
|
43
|
+
note: {
|
|
44
|
+
tag: "Exclusive";
|
|
45
|
+
/**
|
|
46
|
+
* The traditions the cantrip is exclusively available to.
|
|
47
|
+
* @minItems 1
|
|
48
|
+
* @uniqueItems
|
|
49
|
+
*/
|
|
50
|
+
traditions: {
|
|
51
|
+
/**
|
|
52
|
+
* The magical tradition's identifier.
|
|
53
|
+
* @integer
|
|
54
|
+
* @minimum 2
|
|
55
|
+
*/
|
|
56
|
+
id: number;
|
|
57
|
+
}[];
|
|
58
|
+
} | {
|
|
59
|
+
tag: "Common";
|
|
60
|
+
/**
|
|
61
|
+
* The academies and traditions the cantrip is commonly teached in.
|
|
62
|
+
* @minItems 1
|
|
63
|
+
* @uniqueItems
|
|
64
|
+
*/
|
|
65
|
+
list: CommonNote[];
|
|
66
|
+
};
|
|
67
|
+
src: PublicationRefs;
|
|
68
|
+
/**
|
|
69
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
70
|
+
* @minProperties 1
|
|
71
|
+
*/
|
|
72
|
+
translations: {
|
|
73
|
+
/**
|
|
74
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
75
|
+
*/
|
|
76
|
+
[localeId: string]: {
|
|
77
|
+
/**
|
|
78
|
+
* The name of the spell.
|
|
79
|
+
* @minLength 1
|
|
80
|
+
*/
|
|
81
|
+
name: string;
|
|
82
|
+
/**
|
|
83
|
+
* The effect description may be either a plain text or a text that is
|
|
84
|
+
* divided by a list of effects for each quality level. It may also be a
|
|
85
|
+
* list for each two quality levels.
|
|
86
|
+
*/
|
|
87
|
+
effect: Effect.T;
|
|
88
|
+
/**
|
|
89
|
+
* @deprecated
|
|
90
|
+
*/
|
|
91
|
+
casting_time: {
|
|
92
|
+
full: string;
|
|
93
|
+
abbr: string;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* @deprecated
|
|
97
|
+
*/
|
|
98
|
+
cost: {
|
|
99
|
+
full: string;
|
|
100
|
+
abbr: string;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* @deprecated
|
|
104
|
+
*/
|
|
105
|
+
range: {
|
|
106
|
+
full: string;
|
|
107
|
+
abbr: string;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* @deprecated
|
|
111
|
+
*/
|
|
112
|
+
duration: {
|
|
113
|
+
full: string;
|
|
114
|
+
abbr: string;
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* @deprecated
|
|
118
|
+
*/
|
|
119
|
+
target: string;
|
|
120
|
+
errata?: Errata;
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
enhancements?: Enhancements;
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Measurable parameters of a blessing.
|
|
127
|
+
*/
|
|
128
|
+
declare type PerformanceParameters = {
|
|
129
|
+
range: {
|
|
130
|
+
tag: "Self";
|
|
131
|
+
} | {
|
|
132
|
+
tag: "Touch";
|
|
133
|
+
} | {
|
|
134
|
+
tag: "Fixed";
|
|
135
|
+
/**
|
|
136
|
+
* The range in steps/m.
|
|
137
|
+
* @integer
|
|
138
|
+
* @minimum 1
|
|
139
|
+
*/
|
|
140
|
+
value: number;
|
|
141
|
+
/**
|
|
142
|
+
* If `true`, the range is a radius.
|
|
143
|
+
*/
|
|
144
|
+
is_radius?: true;
|
|
145
|
+
};
|
|
146
|
+
duration: {
|
|
147
|
+
tag: "Immediate";
|
|
148
|
+
} | {
|
|
149
|
+
tag: "Fixed";
|
|
150
|
+
/**
|
|
151
|
+
* If `true`, the duration is a maximum duration.
|
|
152
|
+
*/
|
|
153
|
+
is_maximum?: true;
|
|
154
|
+
/**
|
|
155
|
+
* The (unitless) duration.
|
|
156
|
+
* @integer
|
|
157
|
+
* @minimum 1
|
|
158
|
+
*/
|
|
159
|
+
value: number;
|
|
160
|
+
/**
|
|
161
|
+
* The duration unit.
|
|
162
|
+
*/
|
|
163
|
+
unit: Duration.Unit;
|
|
164
|
+
} | {
|
|
165
|
+
tag: "DuringLovemaking";
|
|
166
|
+
/**
|
|
167
|
+
* The duration in rounds.
|
|
168
|
+
* @integer
|
|
169
|
+
* @minimum 1
|
|
170
|
+
*/
|
|
171
|
+
value: number;
|
|
172
|
+
} | {
|
|
173
|
+
tag: "Indefinite";
|
|
174
|
+
/**
|
|
175
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
176
|
+
* @minProperties 1
|
|
177
|
+
*/
|
|
178
|
+
translations: {
|
|
179
|
+
/**
|
|
180
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
181
|
+
*/
|
|
182
|
+
[localeId: string]: {
|
|
183
|
+
/**
|
|
184
|
+
* A description of the duration.
|
|
185
|
+
*/
|
|
186
|
+
description: {
|
|
187
|
+
/**
|
|
188
|
+
* The full description of the duration.
|
|
189
|
+
* @minLength 1
|
|
190
|
+
*/
|
|
191
|
+
default: string;
|
|
192
|
+
/**
|
|
193
|
+
* A compressed description of the duration for use in small areas
|
|
194
|
+
* (e.g. on character sheet).
|
|
195
|
+
* @minLength 1
|
|
196
|
+
*/
|
|
197
|
+
compressed: string;
|
|
198
|
+
};
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
};
|
|
202
|
+
};
|
|
203
|
+
export declare type CommonNote = {
|
|
204
|
+
tag: "Academy";
|
|
205
|
+
/**
|
|
206
|
+
* The academy's curriculum identifier.
|
|
207
|
+
* @integer
|
|
208
|
+
* @minimum 1
|
|
209
|
+
*/
|
|
210
|
+
id: number;
|
|
211
|
+
} | {
|
|
212
|
+
tag: "Tradition";
|
|
213
|
+
/**
|
|
214
|
+
* The magical tradition's identifier.
|
|
215
|
+
* @integer
|
|
216
|
+
* @minimum 2
|
|
217
|
+
*/
|
|
218
|
+
id: number;
|
|
219
|
+
};
|
|
220
|
+
export {};
|
package/lib/types/Ceremony.d.ts
CHANGED
|
@@ -34,12 +34,6 @@ export declare type Ceremony = {
|
|
|
34
34
|
* The target category – the kind of creature or object – the skill affects.
|
|
35
35
|
*/
|
|
36
36
|
target: TargetCategory.T;
|
|
37
|
-
/**
|
|
38
|
-
* The property's identifier.
|
|
39
|
-
* @integer
|
|
40
|
-
* @minimum 1
|
|
41
|
-
*/
|
|
42
|
-
property_id: number;
|
|
43
37
|
/**
|
|
44
38
|
* The tradition(s) the ceremony is available for. Note that general aspects
|
|
45
39
|
* do not have an associated tradition and thus need to be defined in a
|
|
@@ -34,12 +34,6 @@ export declare type LiturgicalChant = {
|
|
|
34
34
|
* The target category – the kind of creature or object – the skill affects.
|
|
35
35
|
*/
|
|
36
36
|
target: TargetCategory.T;
|
|
37
|
-
/**
|
|
38
|
-
* The property's identifier.
|
|
39
|
-
* @integer
|
|
40
|
-
* @minimum 1
|
|
41
|
-
*/
|
|
42
|
-
property_id: number;
|
|
43
37
|
/**
|
|
44
38
|
* The tradition(s) the liturgical chant is available for. Note that general
|
|
45
39
|
* aspects do not have an associated tradition and thus need to be defined in
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @main PactCategory
|
|
3
|
+
*/
|
|
4
|
+
import { Errata } from "./source/_Erratum";
|
|
5
|
+
import { PublicationRefs } from "./source/_PublicationRef";
|
|
6
|
+
/**
|
|
7
|
+
* @title Pact Category
|
|
8
|
+
*/
|
|
9
|
+
export declare type PactCategory = {
|
|
10
|
+
/**
|
|
11
|
+
* The pact category's identifier. An unique, increasing integer.
|
|
12
|
+
* @integer
|
|
13
|
+
* @minimum 1
|
|
14
|
+
*/
|
|
15
|
+
id: number;
|
|
16
|
+
/**
|
|
17
|
+
* Types of creatures in this category.
|
|
18
|
+
* @minItems 1
|
|
19
|
+
*/
|
|
20
|
+
types: {
|
|
21
|
+
/**
|
|
22
|
+
* The type's identifier. An unique, increasing integer.
|
|
23
|
+
* @integer
|
|
24
|
+
* @minimum 1
|
|
25
|
+
*/
|
|
26
|
+
id: number;
|
|
27
|
+
/**
|
|
28
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
29
|
+
* @minProperties 1
|
|
30
|
+
*/
|
|
31
|
+
translations: {
|
|
32
|
+
/**
|
|
33
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
34
|
+
*/
|
|
35
|
+
[localeId: string]: {
|
|
36
|
+
/**
|
|
37
|
+
* The name of the type.
|
|
38
|
+
* @minLength 1
|
|
39
|
+
*/
|
|
40
|
+
name: string;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
}[];
|
|
44
|
+
/**
|
|
45
|
+
* Domains in this category.
|
|
46
|
+
* @minItems 1
|
|
47
|
+
*/
|
|
48
|
+
domains: {
|
|
49
|
+
/**
|
|
50
|
+
* The domain's identifier. An unique, increasing integer.
|
|
51
|
+
* @integer
|
|
52
|
+
* @minimum 1
|
|
53
|
+
*/
|
|
54
|
+
id: number;
|
|
55
|
+
/**
|
|
56
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
57
|
+
* @minProperties 1
|
|
58
|
+
*/
|
|
59
|
+
translations: {
|
|
60
|
+
/**
|
|
61
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
62
|
+
*/
|
|
63
|
+
[localeId: string]: {
|
|
64
|
+
/**
|
|
65
|
+
* The name of the domain.
|
|
66
|
+
* @minLength 1
|
|
67
|
+
*/
|
|
68
|
+
name: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
}[];
|
|
72
|
+
src: PublicationRefs;
|
|
73
|
+
/**
|
|
74
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
75
|
+
* @minProperties 1
|
|
76
|
+
*/
|
|
77
|
+
translations: {
|
|
78
|
+
/**
|
|
79
|
+
* @patternProperties ^[a-z]{2}-[A-Z]{2}$
|
|
80
|
+
*/
|
|
81
|
+
[localeId: string]: {
|
|
82
|
+
/**
|
|
83
|
+
* The name of the pact category.
|
|
84
|
+
* @minLength 1
|
|
85
|
+
*/
|
|
86
|
+
name: string;
|
|
87
|
+
errata?: Errata;
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "optolith-database-schema",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "Definitions and utilities for the flat-file database of Optolith, a character creation tool for the Pen and Paper RPG “The Dark Eye 5”, and its external integrations into other software.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"tde",
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "Blessing.schema.json",
|
|
4
|
+
"$ref": "#/definitions/Blessing",
|
|
5
|
+
"definitions": {
|
|
6
|
+
"Blessing": {
|
|
7
|
+
"title": "Blessing",
|
|
8
|
+
"type": "object",
|
|
9
|
+
"properties": {
|
|
10
|
+
"id": {
|
|
11
|
+
"description": "The blessing's identifier. An unique, increasing integer.",
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"minimum": 1
|
|
14
|
+
},
|
|
15
|
+
"parameters": {
|
|
16
|
+
"description": "Measurable parameters of a blessing.",
|
|
17
|
+
"$ref": "#/definitions/PerformanceParameters"
|
|
18
|
+
},
|
|
19
|
+
"target": {
|
|
20
|
+
"description": "The target category – the kind of creature or object – the skill affects.",
|
|
21
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/TargetCategory/T"
|
|
22
|
+
},
|
|
23
|
+
"src": {
|
|
24
|
+
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
25
|
+
},
|
|
26
|
+
"translations": {
|
|
27
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
28
|
+
"type": "object",
|
|
29
|
+
"patternProperties": {
|
|
30
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
31
|
+
"type": "object",
|
|
32
|
+
"properties": {
|
|
33
|
+
"name": {
|
|
34
|
+
"description": "The name of the blessing.",
|
|
35
|
+
"type": "string",
|
|
36
|
+
"minLength": 1
|
|
37
|
+
},
|
|
38
|
+
"effect": {
|
|
39
|
+
"description": "The effect description.",
|
|
40
|
+
"type": "string",
|
|
41
|
+
"minLength": 1
|
|
42
|
+
},
|
|
43
|
+
"range": {
|
|
44
|
+
"type": "string"
|
|
45
|
+
},
|
|
46
|
+
"duration": {
|
|
47
|
+
"type": "string"
|
|
48
|
+
},
|
|
49
|
+
"target": {
|
|
50
|
+
"type": "string"
|
|
51
|
+
},
|
|
52
|
+
"errata": {
|
|
53
|
+
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"required": [
|
|
57
|
+
"name",
|
|
58
|
+
"effect",
|
|
59
|
+
"range",
|
|
60
|
+
"duration",
|
|
61
|
+
"target"
|
|
62
|
+
],
|
|
63
|
+
"additionalProperties": false
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"minProperties": 1,
|
|
67
|
+
"additionalProperties": false
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"required": [
|
|
71
|
+
"id",
|
|
72
|
+
"parameters",
|
|
73
|
+
"target",
|
|
74
|
+
"src",
|
|
75
|
+
"translations"
|
|
76
|
+
],
|
|
77
|
+
"additionalProperties": false
|
|
78
|
+
},
|
|
79
|
+
"PerformanceParameters": {
|
|
80
|
+
"description": "Measurable parameters of a blessing.",
|
|
81
|
+
"type": "object",
|
|
82
|
+
"properties": {
|
|
83
|
+
"range": {
|
|
84
|
+
"oneOf": [
|
|
85
|
+
{
|
|
86
|
+
"type": "object",
|
|
87
|
+
"properties": {
|
|
88
|
+
"tag": {
|
|
89
|
+
"const": "Self"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
"required": [
|
|
93
|
+
"tag"
|
|
94
|
+
],
|
|
95
|
+
"additionalProperties": false
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"type": "object",
|
|
99
|
+
"properties": {
|
|
100
|
+
"tag": {
|
|
101
|
+
"const": "Touch"
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"required": [
|
|
105
|
+
"tag"
|
|
106
|
+
],
|
|
107
|
+
"additionalProperties": false
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"type": "object",
|
|
111
|
+
"properties": {
|
|
112
|
+
"tag": {
|
|
113
|
+
"const": "Fixed"
|
|
114
|
+
},
|
|
115
|
+
"value": {
|
|
116
|
+
"description": "The range in steps/m.",
|
|
117
|
+
"type": "integer",
|
|
118
|
+
"minimum": 1
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"required": [
|
|
122
|
+
"tag",
|
|
123
|
+
"value"
|
|
124
|
+
],
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
}
|
|
127
|
+
]
|
|
128
|
+
},
|
|
129
|
+
"duration": {
|
|
130
|
+
"oneOf": [
|
|
131
|
+
{
|
|
132
|
+
"type": "object",
|
|
133
|
+
"properties": {
|
|
134
|
+
"tag": {
|
|
135
|
+
"const": "Immediate"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"required": [
|
|
139
|
+
"tag"
|
|
140
|
+
],
|
|
141
|
+
"additionalProperties": false
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"type": "object",
|
|
145
|
+
"properties": {
|
|
146
|
+
"tag": {
|
|
147
|
+
"const": "Fixed"
|
|
148
|
+
},
|
|
149
|
+
"value": {
|
|
150
|
+
"description": "The (unitless) duration.",
|
|
151
|
+
"type": "integer",
|
|
152
|
+
"minimum": 1
|
|
153
|
+
},
|
|
154
|
+
"unit": {
|
|
155
|
+
"description": "The duration unit.",
|
|
156
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/Unit"
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"required": [
|
|
160
|
+
"tag",
|
|
161
|
+
"value",
|
|
162
|
+
"unit"
|
|
163
|
+
],
|
|
164
|
+
"additionalProperties": false
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"type": "object",
|
|
168
|
+
"properties": {
|
|
169
|
+
"tag": {
|
|
170
|
+
"const": "Indefinite"
|
|
171
|
+
},
|
|
172
|
+
"translations": {
|
|
173
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
174
|
+
"type": "object",
|
|
175
|
+
"patternProperties": {
|
|
176
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
177
|
+
"type": "object",
|
|
178
|
+
"properties": {
|
|
179
|
+
"description": {
|
|
180
|
+
"description": "A description of the duration.",
|
|
181
|
+
"type": "object",
|
|
182
|
+
"properties": {
|
|
183
|
+
"default": {
|
|
184
|
+
"description": "The full description of the duration.",
|
|
185
|
+
"type": "string",
|
|
186
|
+
"minLength": 1
|
|
187
|
+
},
|
|
188
|
+
"compressed": {
|
|
189
|
+
"description": "A compressed description of the duration for use in small areas\n(e.g. on character sheet).",
|
|
190
|
+
"type": "string",
|
|
191
|
+
"minLength": 1
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"required": [
|
|
195
|
+
"default",
|
|
196
|
+
"compressed"
|
|
197
|
+
],
|
|
198
|
+
"additionalProperties": false
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"required": [
|
|
202
|
+
"description"
|
|
203
|
+
],
|
|
204
|
+
"additionalProperties": false
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"minProperties": 1,
|
|
208
|
+
"additionalProperties": false
|
|
209
|
+
}
|
|
210
|
+
},
|
|
211
|
+
"required": [
|
|
212
|
+
"tag",
|
|
213
|
+
"translations"
|
|
214
|
+
],
|
|
215
|
+
"additionalProperties": false
|
|
216
|
+
}
|
|
217
|
+
]
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
"required": [
|
|
221
|
+
"range",
|
|
222
|
+
"duration"
|
|
223
|
+
],
|
|
224
|
+
"additionalProperties": false
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "Cantrip.schema.json",
|
|
4
|
+
"$ref": "#/definitions/Spell",
|
|
5
|
+
"definitions": {
|
|
6
|
+
"Spell": {
|
|
7
|
+
"title": "Spell",
|
|
8
|
+
"type": "object",
|
|
9
|
+
"properties": {
|
|
10
|
+
"id": {
|
|
11
|
+
"description": "The spell's identifier. An unique, increasing integer.",
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"minimum": 1
|
|
14
|
+
},
|
|
15
|
+
"parameters": {
|
|
16
|
+
"description": "Measurable parameters of a spell.",
|
|
17
|
+
"$ref": "#/definitions/PerformanceParameters"
|
|
18
|
+
},
|
|
19
|
+
"target": {
|
|
20
|
+
"description": "The target category – the kind of creature or object – the skill affects.",
|
|
21
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/TargetCategory/T"
|
|
22
|
+
},
|
|
23
|
+
"property_id": {
|
|
24
|
+
"description": "The property's identifier.",
|
|
25
|
+
"type": "integer",
|
|
26
|
+
"minimum": 1
|
|
27
|
+
},
|
|
28
|
+
"improvement_cost": {
|
|
29
|
+
"description": "States which column is used to improve the skill.",
|
|
30
|
+
"$ref": "./_ImprovementCost.schema.json#/definitions/ImprovementCost"
|
|
31
|
+
},
|
|
32
|
+
"note": {
|
|
33
|
+
"description": "A note specifying the dissemination of the cantrip in different traditions.\nSometimes a cantrip is exclusively available to one or more specific\ntraditions, but usually one the academies and traditions are listed the\ncantrip is most commonly teached in.",
|
|
34
|
+
"oneOf": [
|
|
35
|
+
{
|
|
36
|
+
"type": "object",
|
|
37
|
+
"properties": {
|
|
38
|
+
"tag": {
|
|
39
|
+
"const": "Exclusive"
|
|
40
|
+
},
|
|
41
|
+
"traditions": {
|
|
42
|
+
"description": "The traditions the cantrip is exclusively available to.",
|
|
43
|
+
"type": "array",
|
|
44
|
+
"items": {
|
|
45
|
+
"type": "object",
|
|
46
|
+
"properties": {
|
|
47
|
+
"id": {
|
|
48
|
+
"description": "The magical tradition's identifier.",
|
|
49
|
+
"type": "integer",
|
|
50
|
+
"minimum": 2
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"required": [
|
|
54
|
+
"id"
|
|
55
|
+
],
|
|
56
|
+
"additionalProperties": false
|
|
57
|
+
},
|
|
58
|
+
"minItems": 1,
|
|
59
|
+
"uniqueItems": true
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"required": [
|
|
63
|
+
"tag",
|
|
64
|
+
"traditions"
|
|
65
|
+
],
|
|
66
|
+
"additionalProperties": false
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"type": "object",
|
|
70
|
+
"properties": {
|
|
71
|
+
"tag": {
|
|
72
|
+
"const": "Common"
|
|
73
|
+
},
|
|
74
|
+
"list": {
|
|
75
|
+
"description": "The academies and traditions the cantrip is commonly teached in.",
|
|
76
|
+
"type": "array",
|
|
77
|
+
"items": {
|
|
78
|
+
"$ref": "#/definitions/CommonNote"
|
|
79
|
+
},
|
|
80
|
+
"minItems": 1,
|
|
81
|
+
"uniqueItems": true
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
"required": [
|
|
85
|
+
"tag",
|
|
86
|
+
"list"
|
|
87
|
+
],
|
|
88
|
+
"additionalProperties": false
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
"src": {
|
|
93
|
+
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
94
|
+
},
|
|
95
|
+
"translations": {
|
|
96
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
97
|
+
"type": "object",
|
|
98
|
+
"patternProperties": {
|
|
99
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
100
|
+
"type": "object",
|
|
101
|
+
"properties": {
|
|
102
|
+
"name": {
|
|
103
|
+
"description": "The name of the spell.",
|
|
104
|
+
"type": "string",
|
|
105
|
+
"minLength": 1
|
|
106
|
+
},
|
|
107
|
+
"effect": {
|
|
108
|
+
"description": "The effect description may be either a plain text or a text that is\ndivided by a list of effects for each quality level. It may also be a\nlist for each two quality levels.",
|
|
109
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Effect/T"
|
|
110
|
+
},
|
|
111
|
+
"casting_time": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"properties": {
|
|
114
|
+
"full": {
|
|
115
|
+
"type": "string"
|
|
116
|
+
},
|
|
117
|
+
"abbr": {
|
|
118
|
+
"type": "string"
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"required": [
|
|
122
|
+
"full",
|
|
123
|
+
"abbr"
|
|
124
|
+
],
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
},
|
|
127
|
+
"cost": {
|
|
128
|
+
"type": "object",
|
|
129
|
+
"properties": {
|
|
130
|
+
"full": {
|
|
131
|
+
"type": "string"
|
|
132
|
+
},
|
|
133
|
+
"abbr": {
|
|
134
|
+
"type": "string"
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
"required": [
|
|
138
|
+
"full",
|
|
139
|
+
"abbr"
|
|
140
|
+
],
|
|
141
|
+
"additionalProperties": false
|
|
142
|
+
},
|
|
143
|
+
"range": {
|
|
144
|
+
"type": "object",
|
|
145
|
+
"properties": {
|
|
146
|
+
"full": {
|
|
147
|
+
"type": "string"
|
|
148
|
+
},
|
|
149
|
+
"abbr": {
|
|
150
|
+
"type": "string"
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
"required": [
|
|
154
|
+
"full",
|
|
155
|
+
"abbr"
|
|
156
|
+
],
|
|
157
|
+
"additionalProperties": false
|
|
158
|
+
},
|
|
159
|
+
"duration": {
|
|
160
|
+
"type": "object",
|
|
161
|
+
"properties": {
|
|
162
|
+
"full": {
|
|
163
|
+
"type": "string"
|
|
164
|
+
},
|
|
165
|
+
"abbr": {
|
|
166
|
+
"type": "string"
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"required": [
|
|
170
|
+
"full",
|
|
171
|
+
"abbr"
|
|
172
|
+
],
|
|
173
|
+
"additionalProperties": false
|
|
174
|
+
},
|
|
175
|
+
"target": {
|
|
176
|
+
"type": "string"
|
|
177
|
+
},
|
|
178
|
+
"errata": {
|
|
179
|
+
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
"required": [
|
|
183
|
+
"name",
|
|
184
|
+
"effect",
|
|
185
|
+
"casting_time",
|
|
186
|
+
"cost",
|
|
187
|
+
"range",
|
|
188
|
+
"duration",
|
|
189
|
+
"target"
|
|
190
|
+
],
|
|
191
|
+
"additionalProperties": false
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
"minProperties": 1,
|
|
195
|
+
"additionalProperties": false
|
|
196
|
+
},
|
|
197
|
+
"enhancements": {
|
|
198
|
+
"$ref": "./_Enhancements.schema.json#/definitions/Enhancements"
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"required": [
|
|
202
|
+
"id",
|
|
203
|
+
"parameters",
|
|
204
|
+
"target",
|
|
205
|
+
"property_id",
|
|
206
|
+
"improvement_cost",
|
|
207
|
+
"note",
|
|
208
|
+
"src",
|
|
209
|
+
"translations"
|
|
210
|
+
],
|
|
211
|
+
"additionalProperties": false
|
|
212
|
+
},
|
|
213
|
+
"PerformanceParameters": {
|
|
214
|
+
"description": "Measurable parameters of a blessing.",
|
|
215
|
+
"type": "object",
|
|
216
|
+
"properties": {
|
|
217
|
+
"range": {
|
|
218
|
+
"oneOf": [
|
|
219
|
+
{
|
|
220
|
+
"type": "object",
|
|
221
|
+
"properties": {
|
|
222
|
+
"tag": {
|
|
223
|
+
"const": "Self"
|
|
224
|
+
}
|
|
225
|
+
},
|
|
226
|
+
"required": [
|
|
227
|
+
"tag"
|
|
228
|
+
],
|
|
229
|
+
"additionalProperties": false
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"type": "object",
|
|
233
|
+
"properties": {
|
|
234
|
+
"tag": {
|
|
235
|
+
"const": "Touch"
|
|
236
|
+
}
|
|
237
|
+
},
|
|
238
|
+
"required": [
|
|
239
|
+
"tag"
|
|
240
|
+
],
|
|
241
|
+
"additionalProperties": false
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"type": "object",
|
|
245
|
+
"properties": {
|
|
246
|
+
"tag": {
|
|
247
|
+
"const": "Fixed"
|
|
248
|
+
},
|
|
249
|
+
"value": {
|
|
250
|
+
"description": "The range in steps/m.",
|
|
251
|
+
"type": "integer",
|
|
252
|
+
"minimum": 1
|
|
253
|
+
},
|
|
254
|
+
"is_radius": {
|
|
255
|
+
"description": "If `true`, the range is a radius.",
|
|
256
|
+
"const": true
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
"required": [
|
|
260
|
+
"tag",
|
|
261
|
+
"value"
|
|
262
|
+
],
|
|
263
|
+
"additionalProperties": false
|
|
264
|
+
}
|
|
265
|
+
]
|
|
266
|
+
},
|
|
267
|
+
"duration": {
|
|
268
|
+
"oneOf": [
|
|
269
|
+
{
|
|
270
|
+
"type": "object",
|
|
271
|
+
"properties": {
|
|
272
|
+
"tag": {
|
|
273
|
+
"const": "Immediate"
|
|
274
|
+
}
|
|
275
|
+
},
|
|
276
|
+
"required": [
|
|
277
|
+
"tag"
|
|
278
|
+
],
|
|
279
|
+
"additionalProperties": false
|
|
280
|
+
},
|
|
281
|
+
{
|
|
282
|
+
"type": "object",
|
|
283
|
+
"properties": {
|
|
284
|
+
"tag": {
|
|
285
|
+
"const": "Fixed"
|
|
286
|
+
},
|
|
287
|
+
"is_maximum": {
|
|
288
|
+
"description": "If `true`, the duration is a maximum duration.",
|
|
289
|
+
"const": true
|
|
290
|
+
},
|
|
291
|
+
"value": {
|
|
292
|
+
"description": "The (unitless) duration.",
|
|
293
|
+
"type": "integer",
|
|
294
|
+
"minimum": 1
|
|
295
|
+
},
|
|
296
|
+
"unit": {
|
|
297
|
+
"description": "The duration unit.",
|
|
298
|
+
"$ref": "./_ActivatableSkill.schema.json#/definitions/Duration/Unit"
|
|
299
|
+
}
|
|
300
|
+
},
|
|
301
|
+
"required": [
|
|
302
|
+
"tag",
|
|
303
|
+
"value",
|
|
304
|
+
"unit"
|
|
305
|
+
],
|
|
306
|
+
"additionalProperties": false
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"type": "object",
|
|
310
|
+
"properties": {
|
|
311
|
+
"tag": {
|
|
312
|
+
"const": "DuringLovemaking"
|
|
313
|
+
},
|
|
314
|
+
"value": {
|
|
315
|
+
"description": "The duration in rounds.",
|
|
316
|
+
"type": "integer",
|
|
317
|
+
"minimum": 1
|
|
318
|
+
}
|
|
319
|
+
},
|
|
320
|
+
"required": [
|
|
321
|
+
"tag",
|
|
322
|
+
"value"
|
|
323
|
+
],
|
|
324
|
+
"additionalProperties": false
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"type": "object",
|
|
328
|
+
"properties": {
|
|
329
|
+
"tag": {
|
|
330
|
+
"const": "Indefinite"
|
|
331
|
+
},
|
|
332
|
+
"translations": {
|
|
333
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
334
|
+
"type": "object",
|
|
335
|
+
"patternProperties": {
|
|
336
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
337
|
+
"type": "object",
|
|
338
|
+
"properties": {
|
|
339
|
+
"description": {
|
|
340
|
+
"description": "A description of the duration.",
|
|
341
|
+
"type": "object",
|
|
342
|
+
"properties": {
|
|
343
|
+
"default": {
|
|
344
|
+
"description": "The full description of the duration.",
|
|
345
|
+
"type": "string",
|
|
346
|
+
"minLength": 1
|
|
347
|
+
},
|
|
348
|
+
"compressed": {
|
|
349
|
+
"description": "A compressed description of the duration for use in small areas\n(e.g. on character sheet).",
|
|
350
|
+
"type": "string",
|
|
351
|
+
"minLength": 1
|
|
352
|
+
}
|
|
353
|
+
},
|
|
354
|
+
"required": [
|
|
355
|
+
"default",
|
|
356
|
+
"compressed"
|
|
357
|
+
],
|
|
358
|
+
"additionalProperties": false
|
|
359
|
+
}
|
|
360
|
+
},
|
|
361
|
+
"required": [
|
|
362
|
+
"description"
|
|
363
|
+
],
|
|
364
|
+
"additionalProperties": false
|
|
365
|
+
}
|
|
366
|
+
},
|
|
367
|
+
"minProperties": 1,
|
|
368
|
+
"additionalProperties": false
|
|
369
|
+
}
|
|
370
|
+
},
|
|
371
|
+
"required": [
|
|
372
|
+
"tag",
|
|
373
|
+
"translations"
|
|
374
|
+
],
|
|
375
|
+
"additionalProperties": false
|
|
376
|
+
}
|
|
377
|
+
]
|
|
378
|
+
}
|
|
379
|
+
},
|
|
380
|
+
"required": [
|
|
381
|
+
"range",
|
|
382
|
+
"duration"
|
|
383
|
+
],
|
|
384
|
+
"additionalProperties": false
|
|
385
|
+
},
|
|
386
|
+
"CommonNote": {
|
|
387
|
+
"oneOf": [
|
|
388
|
+
{
|
|
389
|
+
"type": "object",
|
|
390
|
+
"properties": {
|
|
391
|
+
"tag": {
|
|
392
|
+
"const": "Academy"
|
|
393
|
+
},
|
|
394
|
+
"id": {
|
|
395
|
+
"description": "The academy's curriculum identifier.",
|
|
396
|
+
"type": "integer",
|
|
397
|
+
"minimum": 1
|
|
398
|
+
}
|
|
399
|
+
},
|
|
400
|
+
"required": [
|
|
401
|
+
"tag",
|
|
402
|
+
"id"
|
|
403
|
+
],
|
|
404
|
+
"additionalProperties": false
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
"type": "object",
|
|
408
|
+
"properties": {
|
|
409
|
+
"tag": {
|
|
410
|
+
"const": "Tradition"
|
|
411
|
+
},
|
|
412
|
+
"id": {
|
|
413
|
+
"description": "The magical tradition's identifier.",
|
|
414
|
+
"type": "integer",
|
|
415
|
+
"minimum": 2
|
|
416
|
+
}
|
|
417
|
+
},
|
|
418
|
+
"required": [
|
|
419
|
+
"tag",
|
|
420
|
+
"id"
|
|
421
|
+
],
|
|
422
|
+
"additionalProperties": false
|
|
423
|
+
}
|
|
424
|
+
]
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
@@ -28,11 +28,6 @@
|
|
|
28
28
|
"description": "The target category – the kind of creature or object – the skill affects.",
|
|
29
29
|
"$ref": "./_ActivatableSkill.schema.json#/definitions/TargetCategory/T"
|
|
30
30
|
},
|
|
31
|
-
"property_id": {
|
|
32
|
-
"description": "The property's identifier.",
|
|
33
|
-
"type": "integer",
|
|
34
|
-
"minimum": 1
|
|
35
|
-
},
|
|
36
31
|
"traditions": {
|
|
37
32
|
"description": "The tradition(s) the ceremony is available for. Note that general aspects\ndo not have an associated tradition and thus need to be defined in a\nspecial way.",
|
|
38
33
|
"type": "array",
|
|
@@ -167,7 +162,6 @@
|
|
|
167
162
|
"check",
|
|
168
163
|
"parameters",
|
|
169
164
|
"target",
|
|
170
|
-
"property_id",
|
|
171
165
|
"traditions",
|
|
172
166
|
"improvement_cost",
|
|
173
167
|
"src",
|
|
@@ -28,11 +28,6 @@
|
|
|
28
28
|
"description": "The target category – the kind of creature or object – the skill affects.",
|
|
29
29
|
"$ref": "./_ActivatableSkill.schema.json#/definitions/TargetCategory/T"
|
|
30
30
|
},
|
|
31
|
-
"property_id": {
|
|
32
|
-
"description": "The property's identifier.",
|
|
33
|
-
"type": "integer",
|
|
34
|
-
"minimum": 1
|
|
35
|
-
},
|
|
36
31
|
"traditions": {
|
|
37
32
|
"description": "The tradition(s) the liturgical chant is available for. Note that general\naspects do not have an associated tradition and thus need to be defined in\na special way.",
|
|
38
33
|
"type": "array",
|
|
@@ -167,7 +162,6 @@
|
|
|
167
162
|
"check",
|
|
168
163
|
"parameters",
|
|
169
164
|
"target",
|
|
170
|
-
"property_id",
|
|
171
165
|
"traditions",
|
|
172
166
|
"improvement_cost",
|
|
173
167
|
"src",
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "PactCategory.schema.json",
|
|
4
|
+
"$ref": "#/definitions/PactCategory",
|
|
5
|
+
"definitions": {
|
|
6
|
+
"PactCategory": {
|
|
7
|
+
"title": "Pact Category",
|
|
8
|
+
"type": "object",
|
|
9
|
+
"properties": {
|
|
10
|
+
"id": {
|
|
11
|
+
"description": "The pact category's identifier. An unique, increasing integer.",
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"minimum": 1
|
|
14
|
+
},
|
|
15
|
+
"types": {
|
|
16
|
+
"description": "Types of creatures in this category.",
|
|
17
|
+
"type": "array",
|
|
18
|
+
"items": {
|
|
19
|
+
"type": "object",
|
|
20
|
+
"properties": {
|
|
21
|
+
"id": {
|
|
22
|
+
"description": "The type's identifier. An unique, increasing integer.",
|
|
23
|
+
"type": "integer",
|
|
24
|
+
"minimum": 1
|
|
25
|
+
},
|
|
26
|
+
"translations": {
|
|
27
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
28
|
+
"type": "object",
|
|
29
|
+
"patternProperties": {
|
|
30
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
31
|
+
"type": "object",
|
|
32
|
+
"properties": {
|
|
33
|
+
"name": {
|
|
34
|
+
"description": "The name of the type.",
|
|
35
|
+
"type": "string",
|
|
36
|
+
"minLength": 1
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"required": [
|
|
40
|
+
"name"
|
|
41
|
+
],
|
|
42
|
+
"additionalProperties": false
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"minProperties": 1,
|
|
46
|
+
"additionalProperties": false
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"required": [
|
|
50
|
+
"id",
|
|
51
|
+
"translations"
|
|
52
|
+
],
|
|
53
|
+
"additionalProperties": false
|
|
54
|
+
},
|
|
55
|
+
"minItems": 1
|
|
56
|
+
},
|
|
57
|
+
"domains": {
|
|
58
|
+
"description": "Domains in this category.",
|
|
59
|
+
"type": "array",
|
|
60
|
+
"items": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"properties": {
|
|
63
|
+
"id": {
|
|
64
|
+
"description": "The domain's identifier. An unique, increasing integer.",
|
|
65
|
+
"type": "integer",
|
|
66
|
+
"minimum": 1
|
|
67
|
+
},
|
|
68
|
+
"translations": {
|
|
69
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
70
|
+
"type": "object",
|
|
71
|
+
"patternProperties": {
|
|
72
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
73
|
+
"type": "object",
|
|
74
|
+
"properties": {
|
|
75
|
+
"name": {
|
|
76
|
+
"description": "The name of the domain.",
|
|
77
|
+
"type": "string",
|
|
78
|
+
"minLength": 1
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"required": [
|
|
82
|
+
"name"
|
|
83
|
+
],
|
|
84
|
+
"additionalProperties": false
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
"minProperties": 1,
|
|
88
|
+
"additionalProperties": false
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
"required": [
|
|
92
|
+
"id",
|
|
93
|
+
"translations"
|
|
94
|
+
],
|
|
95
|
+
"additionalProperties": false
|
|
96
|
+
},
|
|
97
|
+
"minItems": 1
|
|
98
|
+
},
|
|
99
|
+
"src": {
|
|
100
|
+
"$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
|
|
101
|
+
},
|
|
102
|
+
"translations": {
|
|
103
|
+
"description": "All translations for the entry, identified by IETF language tag (BCP47).",
|
|
104
|
+
"type": "object",
|
|
105
|
+
"patternProperties": {
|
|
106
|
+
"^[a-z]{2}-[A-Z]{2}$": {
|
|
107
|
+
"type": "object",
|
|
108
|
+
"properties": {
|
|
109
|
+
"name": {
|
|
110
|
+
"description": "The name of the pact category.",
|
|
111
|
+
"type": "string",
|
|
112
|
+
"minLength": 1
|
|
113
|
+
},
|
|
114
|
+
"errata": {
|
|
115
|
+
"$ref": "./source/_Erratum.schema.json#/definitions/Errata"
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"required": [
|
|
119
|
+
"name"
|
|
120
|
+
],
|
|
121
|
+
"additionalProperties": false
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"minProperties": 1,
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
}
|
|
127
|
+
},
|
|
128
|
+
"required": [
|
|
129
|
+
"id",
|
|
130
|
+
"types",
|
|
131
|
+
"domains",
|
|
132
|
+
"src",
|
|
133
|
+
"translations"
|
|
134
|
+
],
|
|
135
|
+
"additionalProperties": false
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|