optolith-database-schema 0.0.4 → 0.1.2

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.
Files changed (219) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/lib/types/Advantage.d.ts +48 -0
  3. package/lib/types/Advantage.js +4 -0
  4. package/lib/types/ArcaneBardTradition.d.ts +2 -2
  5. package/lib/types/ArcaneDancerTradition.d.ts +2 -2
  6. package/lib/types/Ceremony.d.ts +2 -2
  7. package/lib/types/Continent.d.ts +32 -0
  8. package/lib/types/Continent.js +4 -0
  9. package/lib/types/DerivedCharacteristic.d.ts +2 -2
  10. package/lib/types/Disadvantage.d.ts +46 -0
  11. package/lib/types/Disadvantage.js +4 -0
  12. package/lib/types/FamiliarsTrick.d.ts +333 -0
  13. package/lib/types/FamiliarsTrick.js +4 -0
  14. package/lib/types/FamiliarsTrick_AnimalType.d.ts +30 -0
  15. package/lib/types/FamiliarsTrick_AnimalType.js +4 -0
  16. package/lib/types/LiturgicalChant.d.ts +2 -2
  17. package/lib/types/Patron.d.ts +197 -0
  18. package/lib/types/Patron.js +4 -0
  19. package/lib/types/PatronCategory.d.ts +44 -0
  20. package/lib/types/PatronCategory.js +4 -0
  21. package/lib/types/Ritual.d.ts +2 -2
  22. package/lib/types/Spell.d.ts +2 -2
  23. package/lib/types/_Activatable.d.ts +528 -0
  24. package/lib/types/_Activatable.js +5 -0
  25. package/lib/types/_Enhancements.d.ts +2 -2
  26. package/lib/types/_I18n.d.ts +38 -0
  27. package/lib/types/_I18n.js +1 -0
  28. package/lib/types/_Identifier.d.ts +81 -75
  29. package/lib/types/_Identifier.js +76 -1
  30. package/lib/types/_Influence.d.ts +52 -0
  31. package/lib/types/_Influence.js +4 -0
  32. package/lib/types/_Prerequisite.d.ts +343 -296
  33. package/lib/types/_Prerequisite.js +136 -183
  34. package/lib/types/magicalActions/GeodeRitual.d.ts +2 -2
  35. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +34 -0
  36. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +4 -0
  37. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +32 -0
  38. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +4 -0
  39. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +32 -0
  40. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +4 -0
  41. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +32 -0
  42. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +4 -0
  43. package/lib/types/specialAbility/AncestorGlyph.d.ts +30 -0
  44. package/lib/types/specialAbility/AncestorGlyph.js +4 -0
  45. package/lib/types/specialAbility/BlessedTradition.d.ts +170 -0
  46. package/lib/types/specialAbility/BlessedTradition.js +4 -0
  47. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +32 -0
  48. package/lib/types/specialAbility/BrawlingSpecialAbility.js +4 -0
  49. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +33 -0
  50. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +4 -0
  51. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +34 -0
  52. package/lib/types/specialAbility/CombatSpecialAbility.js +4 -0
  53. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +43 -0
  54. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +4 -0
  55. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +32 -0
  56. package/lib/types/specialAbility/CommandSpecialAbility.js +4 -0
  57. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +30 -0
  58. package/lib/types/specialAbility/FamiliarSpecialAbility.js +4 -0
  59. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +30 -0
  60. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +4 -0
  61. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +32 -0
  62. package/lib/types/specialAbility/FatePointSpecialAbility.js +4 -0
  63. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +32 -0
  64. package/lib/types/specialAbility/GeneralSpecialAbility.js +4 -0
  65. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +30 -0
  66. package/lib/types/specialAbility/KarmaSpecialAbility.js +4 -0
  67. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +33 -0
  68. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +4 -0
  69. package/lib/types/specialAbility/LycantropicGift.d.ts +30 -0
  70. package/lib/types/specialAbility/LycantropicGift.js +4 -0
  71. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +33 -0
  72. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +4 -0
  73. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +32 -0
  74. package/lib/types/specialAbility/MagicalSpecialAbility.js +4 -0
  75. package/lib/types/specialAbility/MagicalTradition.d.ts +130 -0
  76. package/lib/types/specialAbility/MagicalTradition.js +4 -0
  77. package/lib/types/specialAbility/PactGift.d.ts +86 -0
  78. package/lib/types/specialAbility/PactGift.js +4 -0
  79. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +41 -0
  80. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +4 -0
  81. package/lib/types/specialAbility/Sermon.d.ts +30 -0
  82. package/lib/types/specialAbility/Sermon.js +4 -0
  83. package/lib/types/specialAbility/SexSpecialAbility.d.ts +32 -0
  84. package/lib/types/specialAbility/SexSpecialAbility.js +4 -0
  85. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +30 -0
  86. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +4 -0
  87. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +31 -0
  88. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +4 -0
  89. package/lib/types/specialAbility/VampiricGift.d.ts +30 -0
  90. package/lib/types/specialAbility/VampiricGift.js +4 -0
  91. package/lib/types/specialAbility/Vision.d.ts +30 -0
  92. package/lib/types/specialAbility/Vision.js +4 -0
  93. package/lib/types/specialAbility/sub/Language.d.ts +141 -0
  94. package/lib/types/specialAbility/sub/Language.js +4 -0
  95. package/lib/types/specialAbility/sub/Script.d.ts +85 -0
  96. package/lib/types/specialAbility/sub/Script.js +4 -0
  97. package/lib/types/specialAbility/sub/TradeSecret.d.ts +50 -0
  98. package/lib/types/specialAbility/sub/TradeSecret.js +4 -0
  99. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +31 -0
  100. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +4 -0
  101. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +31 -0
  102. package/lib/types/traditionArtifacts/AttireEnchantment.js +4 -0
  103. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +31 -0
  104. package/lib/types/traditionArtifacts/BowlEnchantment.js +4 -0
  105. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +44 -0
  106. package/lib/types/traditionArtifacts/CauldronEnchantment.js +4 -0
  107. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +31 -0
  108. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +4 -0
  109. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +31 -0
  110. package/lib/types/traditionArtifacts/DaggerRitual.js +4 -0
  111. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +31 -0
  112. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +4 -0
  113. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +31 -0
  114. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +4 -0
  115. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +31 -0
  116. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +4 -0
  117. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +31 -0
  118. package/lib/types/traditionArtifacts/OrbEnchantment.js +4 -0
  119. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +31 -0
  120. package/lib/types/traditionArtifacts/RingEnchantment.js +4 -0
  121. package/lib/types/traditionArtifacts/SickleRitual.d.ts +31 -0
  122. package/lib/types/traditionArtifacts/SickleRitual.js +4 -0
  123. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +31 -0
  124. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +4 -0
  125. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +31 -0
  126. package/lib/types/traditionArtifacts/StaffEnchantment.js +4 -0
  127. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +31 -0
  128. package/lib/types/traditionArtifacts/ToyEnchantment.js +4 -0
  129. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +31 -0
  130. package/lib/types/traditionArtifacts/Trinkhornzauber.js +4 -0
  131. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +31 -0
  132. package/lib/types/traditionArtifacts/WandEnchantment.js +4 -0
  133. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +31 -0
  134. package/lib/types/traditionArtifacts/WeaponEnchantment.js +4 -0
  135. package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +42 -0
  136. package/lib/types/traditionArtifacts/sub/AnimalShape.js +4 -0
  137. package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +30 -0
  138. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +4 -0
  139. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +42 -0
  140. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +4 -0
  141. package/lib/types/traditionArtifacts/sub/Brew.d.ts +30 -0
  142. package/lib/types/traditionArtifacts/sub/Brew.js +4 -0
  143. package/package.json +2 -2
  144. package/schema/Advantage.schema.json +81 -0
  145. package/schema/ArcaneBardTradition.schema.json +1 -1
  146. package/schema/ArcaneDancerTradition.schema.json +1 -1
  147. package/schema/Ceremony.schema.json +1 -1
  148. package/schema/Continent.schema.json +46 -0
  149. package/schema/DerivedCharacteristic.schema.json +1 -1
  150. package/schema/Disadvantage.schema.json +75 -0
  151. package/schema/FamiliarsTrick.schema.json +602 -0
  152. package/schema/FamiliarsTrick_AnimalType.schema.json +45 -0
  153. package/schema/LiturgicalChant.schema.json +1 -1
  154. package/schema/Patron.schema.json +407 -0
  155. package/schema/PatronCategory.schema.json +66 -0
  156. package/schema/Ritual.schema.json +1 -1
  157. package/schema/Spell.schema.json +1 -1
  158. package/schema/_Activatable.schema.json +1182 -0
  159. package/schema/_Enhancements.schema.json +1 -1
  160. package/schema/_I18n.schema.json +38 -0
  161. package/schema/_Identifier.schema.json +90 -113
  162. package/schema/_Influence.schema.json +77 -0
  163. package/schema/_Prerequisite.schema.json +703 -573
  164. package/schema/magicalActions/GeodeRitual.schema.json +1 -1
  165. package/schema/source/Publication.schema.json +1 -1
  166. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +76 -0
  167. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +68 -0
  168. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +68 -0
  169. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +68 -0
  170. package/schema/specialAbility/AncestorGlyph.schema.json +62 -0
  171. package/schema/specialAbility/BlessedTradition.schema.json +300 -0
  172. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +70 -0
  173. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +72 -0
  174. package/schema/specialAbility/CombatSpecialAbility.schema.json +76 -0
  175. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +110 -0
  176. package/schema/specialAbility/CommandSpecialAbility.schema.json +70 -0
  177. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +62 -0
  178. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +62 -0
  179. package/schema/specialAbility/FatePointSpecialAbility.schema.json +68 -0
  180. package/schema/specialAbility/GeneralSpecialAbility.schema.json +68 -0
  181. package/schema/specialAbility/KarmaSpecialAbility.schema.json +62 -0
  182. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +72 -0
  183. package/schema/specialAbility/LycantropicGift.schema.json +62 -0
  184. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +72 -0
  185. package/schema/specialAbility/MagicalSpecialAbility.schema.json +68 -0
  186. package/schema/specialAbility/MagicalTradition.schema.json +181 -0
  187. package/schema/specialAbility/PactGift.schema.json +215 -0
  188. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +70 -0
  189. package/schema/specialAbility/Sermon.schema.json +62 -0
  190. package/schema/specialAbility/SexSpecialAbility.schema.json +68 -0
  191. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +62 -0
  192. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +66 -0
  193. package/schema/specialAbility/VampiricGift.schema.json +62 -0
  194. package/schema/specialAbility/Vision.schema.json +62 -0
  195. package/schema/specialAbility/sub/Language.schema.json +215 -0
  196. package/schema/specialAbility/sub/Script.schema.json +127 -0
  197. package/schema/specialAbility/sub/TradeSecret.schema.json +68 -0
  198. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +66 -0
  199. package/schema/traditionArtifacts/AttireEnchantment.schema.json +66 -0
  200. package/schema/traditionArtifacts/BowlEnchantment.schema.json +66 -0
  201. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +83 -0
  202. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +66 -0
  203. package/schema/traditionArtifacts/DaggerRitual.schema.json +66 -0
  204. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +66 -0
  205. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +66 -0
  206. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +66 -0
  207. package/schema/traditionArtifacts/OrbEnchantment.schema.json +66 -0
  208. package/schema/traditionArtifacts/RingEnchantment.schema.json +66 -0
  209. package/schema/traditionArtifacts/SickleRitual.schema.json +66 -0
  210. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +66 -0
  211. package/schema/traditionArtifacts/StaffEnchantment.schema.json +66 -0
  212. package/schema/traditionArtifacts/ToyEnchantment.schema.json +66 -0
  213. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +66 -0
  214. package/schema/traditionArtifacts/WandEnchantment.schema.json +66 -0
  215. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +66 -0
  216. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +57 -0
  217. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +45 -0
  218. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +57 -0
  219. package/schema/traditionArtifacts/sub/Brew.schema.json +45 -0
@@ -32,7 +32,7 @@
32
32
  "minimum": 1
33
33
  },
34
34
  "prerequisites": {
35
- "$ref": "./_Prerequisite.schema.json#/definitions/GroupCollection/Enhancement"
35
+ "$ref": "./_Prerequisite.schema.json#/definitions/Prerequisite/GroupCollection/Enhancement"
36
36
  },
37
37
  "src": {
38
38
  "description": "Only defined if different than the associated skill.",
@@ -0,0 +1,38 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "_I18n.schema.json",
4
+ "definitions": {
5
+ "PluralizationCategories": {
6
+ "description": "The item can be present in multiple pluralization categories; this object\nunifies handling of them. Not all of the options must be present, however,\nevery possible category for that language should be defined. This means, that\ndifferent languages may have a different amount of properties defined here.\nMore information on pluralization and the Intl.PluralRules API on\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/PluralRules,\nhttps://unicode-org.github.io/cldr/ldml/tr35-numbers.html#Language_Plural_Rules and\nhttp://cldr.unicode.org/index/cldr-spec/plural-rules.\n\nFrom the third link:\n\n> The minimal pairs are those that are required for correct grammar. So\n> because 0 and 1 don't have to form a minimal pair (it is ok—even though\n> often not optimal—to say '0 people') , 0 doesn't establish a separate\n> category. However, implementations are encouraged to provide the ability to\n> have special plural messages for 0 in particular, so that more natural\n> language can be used:\n>\n> — None of your friends are online.\n>\n> rather than\n>\n> — You have 0 friends online.",
7
+ "type": "object",
8
+ "properties": {
9
+ "zero": {
10
+ "$ref": "#/definitions/NonEmptyString"
11
+ },
12
+ "one": {
13
+ "$ref": "#/definitions/NonEmptyString"
14
+ },
15
+ "two": {
16
+ "$ref": "#/definitions/NonEmptyString"
17
+ },
18
+ "few": {
19
+ "$ref": "#/definitions/NonEmptyString"
20
+ },
21
+ "many": {
22
+ "$ref": "#/definitions/NonEmptyString"
23
+ },
24
+ "other": {
25
+ "$ref": "#/definitions/NonEmptyString"
26
+ }
27
+ },
28
+ "required": [
29
+ "other"
30
+ ],
31
+ "additionalProperties": false
32
+ },
33
+ "NonEmptyString": {
34
+ "type": "string",
35
+ "minLength": 1
36
+ }
37
+ }
38
+ }
@@ -3,89 +3,93 @@
3
3
  "$id": "_Identifier.schema.json",
4
4
  "definitions": {
5
5
  "Identifier": {
6
- "Tagged": {
7
- "Attribute": {
8
- "type": "object",
9
- "properties": {
10
- "tag": {
11
- "const": "Attribute"
12
- },
13
- "value": {
14
- "description": "The attribute's numeric identifier.",
15
- "type": "integer",
16
- "maximum": 8,
17
- "minimum": 1
18
- }
19
- },
20
- "required": [
21
- "tag",
22
- "value"
23
- ],
24
- "additionalProperties": false
25
- },
26
- "Skill": {
27
- "type": "object",
28
- "properties": {
29
- "tag": {
30
- "const": "Skill"
31
- },
32
- "value": {
33
- "description": "The skill's numeric identifier.",
34
- "type": "integer",
35
- "minimum": 1
36
- }
37
- },
38
- "required": [
39
- "tag",
40
- "value"
41
- ],
42
- "additionalProperties": false
6
+ "Tag": {
7
+ "Activatable": {
8
+ "enum": [
9
+ "Advantage",
10
+ "Disadvantage",
11
+ "GeneralSpecialAbility",
12
+ "FatePointSpecialAbility",
13
+ "CombatSpecialAbility",
14
+ "MagicalSpecialAbility",
15
+ "StaffEnchantment",
16
+ "FamiliarSpecialAbility",
17
+ "KarmaSpecialAbility",
18
+ "ProtectiveWardingCircleSpecialAbility",
19
+ "CombatStyleSpecialAbility",
20
+ "AdvancedCombatSpecialAbility",
21
+ "CommandSpecialAbility",
22
+ "MagicStyleSpecialAbility",
23
+ "AdvancedMagicalSpecialAbility",
24
+ "SpellSwordEnchantment",
25
+ "DaggerRitual",
26
+ "InstrumentEnchantment",
27
+ "AttireEnchantment",
28
+ "OrbEnchantment",
29
+ "WandEnchantment",
30
+ "BrawlingSpecialAbility",
31
+ "AncestorGlyph",
32
+ "CeremonialItemSpecialAbility",
33
+ "Sermon",
34
+ "LiturgicalStyleSpecialAbility",
35
+ "AdvancedKarmaSpecialAbility",
36
+ "Vision",
37
+ "MagicalTradition",
38
+ "BlessedTradition",
39
+ "PactGift",
40
+ "SikaryanDrainSpecialAbility",
41
+ "LycantropicGift",
42
+ "SkillStyleSpecialAbility",
43
+ "AdvancedSkillSpecialAbility",
44
+ "ArcaneOrbEnchantment",
45
+ "CauldronEnchantment",
46
+ "FoolsHatEnchantment",
47
+ "ToyEnchantment",
48
+ "BowlEnchantment",
49
+ "FatePointSexSpecialAbility",
50
+ "SexSpecialAbility",
51
+ "WeaponEnchantment",
52
+ "SickleRitual",
53
+ "RingEnchantment",
54
+ "ChronicleEnchantment"
55
+ ]
43
56
  },
44
- "CloseCombatTechnique": {
45
- "type": "object",
46
- "properties": {
47
- "tag": {
48
- "const": "CloseCombatTechnique"
49
- },
50
- "value": {
51
- "description": "The close combat technique's numeric identifier.",
52
- "type": "integer",
53
- "minimum": 1
54
- }
55
- },
56
- "required": [
57
- "tag",
58
- "value"
59
- ],
60
- "additionalProperties": false
57
+ "Rated": {
58
+ "enum": [
59
+ "Attribute",
60
+ "Skill",
61
+ "CloseCombatTechnique",
62
+ "RangedCombatTechnique",
63
+ "Spell",
64
+ "Ritual",
65
+ "LiturgicalChant",
66
+ "Ceremony"
67
+ ]
61
68
  },
62
- "RangedCombatTechnique": {
63
- "type": "object",
64
- "properties": {
65
- "tag": {
66
- "const": "RangedCombatTechnique"
67
- },
68
- "value": {
69
- "description": "The ranged combat technique's numeric identifier.",
70
- "type": "integer",
71
- "minimum": 1
72
- }
73
- },
74
- "required": [
75
- "tag",
76
- "value"
77
- ],
78
- "additionalProperties": false
69
+ "AdvancedSpecialAbilityRestrictedOption": {
70
+ "enum": [
71
+ "General",
72
+ "Element"
73
+ ]
79
74
  },
80
- "Spell": {
75
+ "CombatTechnique": {
76
+ "enum": [
77
+ "CloseCombatTechnique",
78
+ "RangedCombatTechnique"
79
+ ]
80
+ }
81
+ },
82
+ "Group": {
83
+ "Activatable": {
81
84
  "type": "object",
82
85
  "properties": {
83
86
  "tag": {
84
- "const": "Spell"
87
+ "$ref": "#/definitions/Identifier/Tag/Activatable"
85
88
  },
86
89
  "value": {
87
- "description": "The spell's numeric identifier.",
90
+ "description": "The referenced entry's numeric identifier.",
88
91
  "type": "integer",
92
+ "maximum": 8,
89
93
  "minimum": 1
90
94
  }
91
95
  },
@@ -95,15 +99,16 @@
95
99
  ],
96
100
  "additionalProperties": false
97
101
  },
98
- "Ritual": {
102
+ "Rated": {
99
103
  "type": "object",
100
104
  "properties": {
101
105
  "tag": {
102
- "const": "Ritual"
106
+ "$ref": "#/definitions/Identifier/Tag/Rated"
103
107
  },
104
108
  "value": {
105
- "description": "The ritual's numeric identifier.",
109
+ "description": "The referenced entry's numeric identifier.",
106
110
  "type": "integer",
111
+ "maximum": 8,
107
112
  "minimum": 1
108
113
  }
109
114
  },
@@ -113,15 +118,16 @@
113
118
  ],
114
119
  "additionalProperties": false
115
120
  },
116
- "LiturgicalChant": {
121
+ "AdvancedSpecialAbilityRestrictedOption": {
117
122
  "type": "object",
118
123
  "properties": {
119
124
  "tag": {
120
- "const": "LiturgicalChant"
125
+ "$ref": "#/definitions/Identifier/Tag/AdvancedSpecialAbilityRestrictedOption"
121
126
  },
122
127
  "value": {
123
- "description": "The liturgical chant's numeric identifier.",
128
+ "description": "The referenced entry's numeric identifier.",
124
129
  "type": "integer",
130
+ "maximum": 8,
125
131
  "minimum": 1
126
132
  }
127
133
  },
@@ -131,15 +137,16 @@
131
137
  ],
132
138
  "additionalProperties": false
133
139
  },
134
- "Ceremony": {
140
+ "CombatTechnique": {
135
141
  "type": "object",
136
142
  "properties": {
137
143
  "tag": {
138
- "const": "Ceremony"
144
+ "$ref": "#/definitions/Identifier/Tag/CombatTechnique"
139
145
  },
140
146
  "value": {
141
- "description": "The ceremony's numeric identifier.",
147
+ "description": "The referenced entry's numeric identifier.",
142
148
  "type": "integer",
149
+ "maximum": 8,
143
150
  "minimum": 1
144
151
  }
145
152
  },
@@ -149,36 +156,6 @@
149
156
  ],
150
157
  "additionalProperties": false
151
158
  }
152
- },
153
- "Group": {
154
- "Rated": {
155
- "oneOf": [
156
- {
157
- "$ref": "#/definitions/Identifier/Tagged/Attribute"
158
- },
159
- {
160
- "$ref": "#/definitions/Identifier/Tagged/Skill"
161
- },
162
- {
163
- "$ref": "#/definitions/Identifier/Tagged/CloseCombatTechnique"
164
- },
165
- {
166
- "$ref": "#/definitions/Identifier/Tagged/RangedCombatTechnique"
167
- },
168
- {
169
- "$ref": "#/definitions/Identifier/Tagged/Spell"
170
- },
171
- {
172
- "$ref": "#/definitions/Identifier/Tagged/Ritual"
173
- },
174
- {
175
- "$ref": "#/definitions/Identifier/Tagged/LiturgicalChant"
176
- },
177
- {
178
- "$ref": "#/definitions/Identifier/Tagged/Ceremony"
179
- }
180
- ]
181
- }
182
159
  }
183
160
  }
184
161
  }
@@ -0,0 +1,77 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "_Influence.schema.json",
4
+ "$ref": "#/definitions/Influence",
5
+ "definitions": {
6
+ "Influence": {
7
+ "title": "Influence",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "description": "The influence's identifier. An unique, increasing integer.",
12
+ "type": "integer",
13
+ "minimum": 1
14
+ },
15
+ "src": {
16
+ "$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
17
+ },
18
+ "translations": {
19
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
20
+ "type": "object",
21
+ "patternProperties": {
22
+ "^[a-z]{2}-[A-Z]{2}$": {
23
+ "type": "object",
24
+ "properties": {
25
+ "name": {
26
+ "description": "The influence name.",
27
+ "type": "string",
28
+ "minLength": 1
29
+ },
30
+ "effects": {
31
+ "description": "The effects of the influence. They should be sorted like they are in\nthe book.",
32
+ "type": "array",
33
+ "items": {
34
+ "type": "object",
35
+ "properties": {
36
+ "label": {
37
+ "description": "An optional label that is displayed and placed before the actual\ntext.",
38
+ "type": "string",
39
+ "minLength": 1
40
+ },
41
+ "text": {
42
+ "description": "The effect text.",
43
+ "type": "string",
44
+ "minLength": 1
45
+ }
46
+ },
47
+ "required": [
48
+ "text"
49
+ ],
50
+ "additionalProperties": false
51
+ },
52
+ "minItems": 1
53
+ },
54
+ "errata": {
55
+ "$ref": "./source/_Erratum.schema.json#/definitions/Errata"
56
+ }
57
+ },
58
+ "required": [
59
+ "name",
60
+ "effects"
61
+ ],
62
+ "additionalProperties": false
63
+ }
64
+ },
65
+ "minProperties": 1,
66
+ "additionalProperties": false
67
+ }
68
+ },
69
+ "required": [
70
+ "id",
71
+ "src",
72
+ "translations"
73
+ ],
74
+ "additionalProperties": false
75
+ }
76
+ }
77
+ }