optolith-database-schema 0.40.0 → 0.42.0

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 (288) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/README.md +1 -1
  3. package/gen/types.d.ts +1705 -1582
  4. package/lib/types/Ceremony.d.ts +3 -0
  5. package/lib/types/DerivedCharacteristic.d.ts +23 -14
  6. package/lib/types/DerivedCharacteristic.js +58 -21
  7. package/lib/types/Disease.d.ts +2 -0
  8. package/lib/types/Disease.js +8 -0
  9. package/lib/types/FamiliarsTrick.d.ts +1 -0
  10. package/lib/types/FamiliarsTrick.js +8 -2
  11. package/lib/types/LiturgicalChant.d.ts +3 -0
  12. package/lib/types/Locale.d.ts +10 -6
  13. package/lib/types/Locale.js +10 -6
  14. package/lib/types/Profession.d.ts +31 -14
  15. package/lib/types/Profession.js +12 -2
  16. package/lib/types/Race.d.ts +28 -19
  17. package/lib/types/Race.js +36 -22
  18. package/lib/types/Ritual.d.ts +3 -0
  19. package/lib/types/Spell.d.ts +3 -0
  20. package/lib/types/Talisman.d.ts +32 -6
  21. package/lib/types/Talisman.js +51 -11
  22. package/lib/types/_ActivatableSkill.d.ts +8 -0
  23. package/lib/types/_ActivatableSkillCheckResultBased.d.ts +2 -0
  24. package/lib/types/_ActivatableSkillCheckResultBased.js +1 -0
  25. package/lib/types/_ActivatableSkillDuration.d.ts +2 -0
  26. package/lib/types/_ActivatableSkillRange.d.ts +1 -0
  27. package/lib/types/_Identifier.d.ts +1 -0
  28. package/lib/types/_Identifier.js +2 -0
  29. package/lib/types/_IdentifierGroup.d.ts +58 -0
  30. package/lib/types/_IdentifierGroup.js +15 -1
  31. package/lib/types/equipment/item/BandageOrRemedy.d.ts +5 -2
  32. package/lib/types/equipment/item/CeremonialItem.d.ts +6 -3
  33. package/lib/types/equipment/item/CeremonialItem.js +1 -1
  34. package/lib/types/equipment/item/Clothes.d.ts +5 -2
  35. package/lib/types/equipment/item/Container.d.ts +5 -2
  36. package/lib/types/equipment/item/Elixir.d.ts +16 -1
  37. package/lib/types/equipment/item/Elixir.js +35 -5
  38. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +5 -2
  39. package/lib/types/equipment/item/IlluminationLightSource.d.ts +5 -2
  40. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +5 -2
  41. package/lib/types/equipment/item/Liebesspielzeug.d.ts +5 -2
  42. package/lib/types/equipment/item/LuxuryGood.d.ts +5 -2
  43. package/lib/types/equipment/item/MagicalArtifact.d.ts +5 -2
  44. package/lib/types/equipment/item/MusicalInstrument.d.ts +5 -2
  45. package/lib/types/equipment/item/OrienteeringAid.d.ts +5 -2
  46. package/lib/types/equipment/item/Poison.d.ts +64 -91
  47. package/lib/types/equipment/item/Poison.js +5 -34
  48. package/lib/types/equipment/item/RopeOrChain.d.ts +5 -2
  49. package/lib/types/equipment/item/Stationery.d.ts +5 -2
  50. package/lib/types/equipment/item/ThievesTool.d.ts +5 -2
  51. package/lib/types/equipment/item/TravelGearOrTool.d.ts +5 -2
  52. package/lib/types/equipment/item/Weapon.d.ts +10 -4
  53. package/lib/types/equipment/item/WeaponAccessory.d.ts +5 -2
  54. package/lib/types/equipment/item/_Herbary.d.ts +31 -0
  55. package/lib/types/equipment/item/_Herbary.js +9 -0
  56. package/lib/types/equipment/item/_Item.d.ts +10 -4
  57. package/lib/types/equipment/item/_MeleeWeapon.d.ts +2 -2
  58. package/lib/types/equipment/item/_MeleeWeapon.js +1 -1
  59. package/lib/types/equipment/item/_RangedWeapon.d.ts +8 -2
  60. package/lib/types/equipment/item/_RangedWeapon.js +2 -2
  61. package/lib/types/equipment/item/sub/Reach.d.ts +1 -0
  62. package/lib/types/equipment/item/sub/Reach.js +7 -0
  63. package/lib/types/magicalActions/AnimistPower.d.ts +1 -0
  64. package/lib/types/magicalActions/Curse.d.ts +2 -0
  65. package/lib/types/magicalActions/DominationRitual.d.ts +2 -0
  66. package/lib/types/magicalActions/GeodeRitual.d.ts +1 -0
  67. package/lib/types/magicalActions/JesterTrick.d.ts +3 -0
  68. package/lib/types/magicalActions/MagicalMelody.d.ts +15 -0
  69. package/lib/types/magicalActions/MagicalMelody.js +5 -0
  70. package/lib/types/magicalActions/MagicalRune.d.ts +2 -0
  71. package/lib/types/magicalActions/ZibiljaRitual.d.ts +2 -0
  72. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +132 -0
  73. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  74. package/package.json +7 -7
  75. package/schema/Advantage.schema.json +0 -108
  76. package/schema/AnimalDisease.schema.json +0 -74
  77. package/schema/AnimalType.schema.json +0 -47
  78. package/schema/ArcaneBardTradition.schema.json +0 -11
  79. package/schema/ArcaneDancerTradition.schema.json +0 -11
  80. package/schema/Aspect.schema.json +0 -51
  81. package/schema/Attribute.schema.json +0 -57
  82. package/schema/Blessing.schema.json +0 -265
  83. package/schema/Cantrip.schema.json +0 -443
  84. package/schema/Ceremony.schema.json +0 -122
  85. package/schema/CombatTechnique_Close.schema.json +0 -116
  86. package/schema/CombatTechnique_Ranged.schema.json +0 -99
  87. package/schema/Condition.schema.json +0 -68
  88. package/schema/Continent.schema.json +0 -49
  89. package/schema/Culture.schema.json +0 -781
  90. package/schema/DerivedCharacteristic.schema.json +0 -90
  91. package/schema/Disadvantage.schema.json +0 -97
  92. package/schema/Disease.schema.json +0 -58
  93. package/schema/Element.schema.json +0 -48
  94. package/schema/ExperienceLevel.schema.json +0 -84
  95. package/schema/EyeColor.schema.json +0 -47
  96. package/schema/FamiliarsTrick.schema.json +0 -576
  97. package/schema/HairColor.schema.json +0 -47
  98. package/schema/Kirchenpraegung.schema.json +0 -11
  99. package/schema/Lessons_Curriculum.schema.json +0 -499
  100. package/schema/Lessons_Guideline.schema.json +0 -53
  101. package/schema/LiturgicalChant.schema.json +0 -122
  102. package/schema/Locale.schema.json +0 -38
  103. package/schema/MetaCondition.schema.json +0 -69
  104. package/schema/PactCategory.schema.json +0 -150
  105. package/schema/Patron.schema.json +0 -352
  106. package/schema/PatronCategory.schema.json +0 -57
  107. package/schema/PersonalityTrait.schema.json +0 -100
  108. package/schema/Profession.schema.json +0 -1424
  109. package/schema/Property.schema.json +0 -51
  110. package/schema/Race.schema.json +0 -534
  111. package/schema/Region.schema.json +0 -47
  112. package/schema/Ritual.schema.json +0 -120
  113. package/schema/Service.schema.json +0 -79
  114. package/schema/SexPractice.schema.json +0 -70
  115. package/schema/Skill.schema.json +0 -223
  116. package/schema/SkillGroup.schema.json +0 -57
  117. package/schema/SkillModificationLevel.schema.json +0 -153
  118. package/schema/SocialStatus.schema.json +0 -47
  119. package/schema/Spell.schema.json +0 -119
  120. package/schema/State.schema.json +0 -59
  121. package/schema/Talisman.schema.json +0 -120
  122. package/schema/TargetCategory.schema.json +0 -65
  123. package/schema/UI.schema.json +0 -4441
  124. package/schema/_Activatable.schema.json +0 -2755
  125. package/schema/_ActivatableSelectOptionCategory.schema.json +0 -1313
  126. package/schema/_ActivatableSkill.schema.json +0 -188
  127. package/schema/_ActivatableSkillCastingTime.schema.json +0 -181
  128. package/schema/_ActivatableSkillCheckResultBased.schema.json +0 -65
  129. package/schema/_ActivatableSkillCost.schema.json +0 -513
  130. package/schema/_ActivatableSkillDuration.schema.json +0 -353
  131. package/schema/_ActivatableSkillEffect.schema.json +0 -122
  132. package/schema/_ActivatableSkillRange.schema.json +0 -264
  133. package/schema/_ActivatableSkillTargetCategory.schema.json +0 -145
  134. package/schema/_AlternativeNames.schema.json +0 -23
  135. package/schema/_ArcaneTradition.schema.json +0 -51
  136. package/schema/_Blessed.schema.json +0 -64
  137. package/schema/_Dice.schema.json +0 -40
  138. package/schema/_DiseasePoison.schema.json +0 -152
  139. package/schema/_Enhancements.schema.json +0 -85
  140. package/schema/_I18n.schema.json +0 -55
  141. package/schema/_Identifier.schema.json +0 -2577
  142. package/schema/_IdentifierGroup.schema.json +0 -753
  143. package/schema/_ImprovementCost.schema.json +0 -23
  144. package/schema/_Influence.schema.json +0 -84
  145. package/schema/_NonEmptyString.schema.json +0 -14
  146. package/schema/_Prerequisite.schema.json +0 -1518
  147. package/schema/_ResponsiveText.schema.json +0 -66
  148. package/schema/_Sex.schema.json +0 -18
  149. package/schema/_SimpleReferences.schema.json +0 -522
  150. package/schema/_SkillCheck.schema.json +0 -38
  151. package/schema/_Spellwork.schema.json +0 -54
  152. package/schema/equipment/EquipmentPackage.schema.json +0 -79
  153. package/schema/equipment/item/Ammunition.schema.json +0 -56
  154. package/schema/equipment/item/Animal.schema.json +0 -36
  155. package/schema/equipment/item/AnimalCare.schema.json +0 -124
  156. package/schema/equipment/item/Armor.schema.json +0 -309
  157. package/schema/equipment/item/BandageOrRemedy.schema.json +0 -53
  158. package/schema/equipment/item/Book.schema.json +0 -89
  159. package/schema/equipment/item/CeremonialItem.schema.json +0 -59
  160. package/schema/equipment/item/Clothes.schema.json +0 -10
  161. package/schema/equipment/item/Container.schema.json +0 -10
  162. package/schema/equipment/item/Elixir.schema.json +0 -103
  163. package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +0 -49
  164. package/schema/equipment/item/GemOrPreciousStone.schema.json +0 -69
  165. package/schema/equipment/item/IlluminationLightSource.schema.json +0 -120
  166. package/schema/equipment/item/IlluminationRefillsOrSupplies.schema.json +0 -10
  167. package/schema/equipment/item/Jewelry.schema.json +0 -113
  168. package/schema/equipment/item/Liebesspielzeug.schema.json +0 -10
  169. package/schema/equipment/item/LuxuryGood.schema.json +0 -53
  170. package/schema/equipment/item/MagicalArtifact.schema.json +0 -64
  171. package/schema/equipment/item/MusicalInstrument.schema.json +0 -49
  172. package/schema/equipment/item/OrienteeringAid.schema.json +0 -10
  173. package/schema/equipment/item/Poison.schema.json +0 -835
  174. package/schema/equipment/item/RopeOrChain.schema.json +0 -10
  175. package/schema/equipment/item/Stationary.schema.json +0 -10
  176. package/schema/equipment/item/ThievesTool.schema.json +0 -10
  177. package/schema/equipment/item/ToolOfTheTrade.schema.json +0 -93
  178. package/schema/equipment/item/TravelGearOrTool.schema.json +0 -10
  179. package/schema/equipment/item/Vehicle.schema.json +0 -36
  180. package/schema/equipment/item/Weapon.schema.json +0 -285
  181. package/schema/equipment/item/WeaponAccessory.schema.json +0 -10
  182. package/schema/equipment/item/_Herbary.schema.json +0 -62
  183. package/schema/equipment/item/_Item.schema.json +0 -384
  184. package/schema/equipment/item/_MeleeWeapon.schema.json +0 -164
  185. package/schema/equipment/item/_RangedWeapon.schema.json +0 -185
  186. package/schema/equipment/item/_Weapon.schema.json +0 -99
  187. package/schema/equipment/item/sub/ArmorType.schema.json +0 -52
  188. package/schema/equipment/item/sub/Reach.schema.json +0 -47
  189. package/schema/magicalActions/AnimistPower.schema.json +0 -488
  190. package/schema/magicalActions/AnimistPower_Tribe.schema.json +0 -47
  191. package/schema/magicalActions/Curse.schema.json +0 -332
  192. package/schema/magicalActions/DominationRitual.schema.json +0 -275
  193. package/schema/magicalActions/ElvenMagicalSong.schema.json +0 -196
  194. package/schema/magicalActions/GeodeRitual.schema.json +0 -327
  195. package/schema/magicalActions/JesterTrick.schema.json +0 -311
  196. package/schema/magicalActions/MagicalDance.schema.json +0 -198
  197. package/schema/magicalActions/MagicalMelody.schema.json +0 -193
  198. package/schema/magicalActions/MagicalRune.schema.json +0 -578
  199. package/schema/magicalActions/ZibiljaRitual.schema.json +0 -165
  200. package/schema/magicalActions/_MusicTradition.schema.json +0 -82
  201. package/schema/magicalActions/_SkillReference.schema.json +0 -20
  202. package/schema/prerequisites/ConditionalPrerequisites.schema.json +0 -15
  203. package/schema/prerequisites/DisplayOption.schema.json +0 -70
  204. package/schema/prerequisites/PrerequisiteGroups.schema.json +0 -1029
  205. package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +0 -45
  206. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +0 -14
  207. package/schema/prerequisites/single/AnimistPowerPrerequisite.schema.json +0 -36
  208. package/schema/prerequisites/single/CulturePrerequisite.schema.json +0 -24
  209. package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +0 -61
  210. package/schema/prerequisites/single/InfluencePrerequisite.schema.json +0 -28
  211. package/schema/prerequisites/single/PactPrerequisite.schema.json +0 -36
  212. package/schema/prerequisites/single/PrimaryAttributePrerequisite.schema.json +0 -39
  213. package/schema/prerequisites/single/PublicationPrerequisite.schema.json +0 -22
  214. package/schema/prerequisites/single/RacePrerequisite.schema.json +0 -28
  215. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +0 -172
  216. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -29
  217. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +0 -33
  218. package/schema/prerequisites/single/RulePrerequisite.schema.json +0 -22
  219. package/schema/prerequisites/single/SexPrerequisite.schema.json +0 -23
  220. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +0 -30
  221. package/schema/prerequisites/single/SocialStatusPrerequisite.schema.json +0 -24
  222. package/schema/prerequisites/single/StatePrerequisite.schema.json +0 -23
  223. package/schema/prerequisites/single/TextPrerequisite.schema.json +0 -64
  224. package/schema/prerequisites/single/TraditionPrerequisite.schema.json +0 -58
  225. package/schema/rule/CoreRule.schema.json +0 -1403
  226. package/schema/rule/FocusRule.schema.json +0 -76
  227. package/schema/rule/FocusRule_Subject.schema.json +0 -48
  228. package/schema/rule/OptionalRule.schema.json +0 -64
  229. package/schema/source/Publication.schema.json +0 -103
  230. package/schema/source/_Erratum.schema.json +0 -36
  231. package/schema/source/_PublicationRef.schema.json +0 -285
  232. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +0 -102
  233. package/schema/specialAbility/AdvancedKarmaSpecialAbility.schema.json +0 -80
  234. package/schema/specialAbility/AdvancedMagicalSpecialAbility.schema.json +0 -80
  235. package/schema/specialAbility/AdvancedSkillSpecialAbility.schema.json +0 -80
  236. package/schema/specialAbility/AncestorGlyph.schema.json +0 -80
  237. package/schema/specialAbility/BlessedTradition.schema.json +0 -354
  238. package/schema/specialAbility/BrawlingSpecialAbility.schema.json +0 -82
  239. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +0 -87
  240. package/schema/specialAbility/CombatSpecialAbility.schema.json +0 -98
  241. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +0 -273
  242. package/schema/specialAbility/CommandSpecialAbility.schema.json +0 -82
  243. package/schema/specialAbility/FamiliarSpecialAbility.schema.json +0 -74
  244. package/schema/specialAbility/FatePointSexSpecialAbility.schema.json +0 -74
  245. package/schema/specialAbility/FatePointSpecialAbility.schema.json +0 -84
  246. package/schema/specialAbility/GeneralSpecialAbility.schema.json +0 -88
  247. package/schema/specialAbility/KarmaSpecialAbility.schema.json +0 -78
  248. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +0 -260
  249. package/schema/specialAbility/LycantropicGift.schema.json +0 -74
  250. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +0 -260
  251. package/schema/specialAbility/MagicalSign.schema.json +0 -72
  252. package/schema/specialAbility/MagicalSpecialAbility.schema.json +0 -88
  253. package/schema/specialAbility/MagicalTradition.schema.json +0 -163
  254. package/schema/specialAbility/PactGift.schema.json +0 -254
  255. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +0 -86
  256. package/schema/specialAbility/Sermon.schema.json +0 -74
  257. package/schema/specialAbility/SexSpecialAbility.schema.json +0 -80
  258. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +0 -78
  259. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +0 -254
  260. package/schema/specialAbility/VampiricGift.schema.json +0 -78
  261. package/schema/specialAbility/Vision.schema.json +0 -74
  262. package/schema/specialAbility/_Tradition.schema.json +0 -23
  263. package/schema/specialAbility/sub/Language.schema.json +0 -222
  264. package/schema/specialAbility/sub/Script.schema.json +0 -90
  265. package/schema/specialAbility/sub/TradeSecret.schema.json +0 -72
  266. package/schema/specialAbility/sub/_LanguageScript.schema.json +0 -24
  267. package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +0 -95
  268. package/schema/traditionArtifacts/AttireEnchantment.schema.json +0 -95
  269. package/schema/traditionArtifacts/BowlEnchantment.schema.json +0 -95
  270. package/schema/traditionArtifacts/CauldronEnchantment.schema.json +0 -115
  271. package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +0 -95
  272. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -176
  273. package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +0 -95
  274. package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +0 -95
  275. package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +0 -95
  276. package/schema/traditionArtifacts/OrbEnchantment.schema.json +0 -95
  277. package/schema/traditionArtifacts/RingEnchantment.schema.json +0 -95
  278. package/schema/traditionArtifacts/SickleRitual.schema.json +0 -95
  279. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +0 -99
  280. package/schema/traditionArtifacts/StaffEnchantment.schema.json +0 -103
  281. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -95
  282. package/schema/traditionArtifacts/Trinkhornzauber.schema.json +0 -95
  283. package/schema/traditionArtifacts/WandEnchantment.schema.json +0 -87
  284. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +0 -95
  285. package/schema/traditionArtifacts/sub/AnimalShape.schema.json +0 -85
  286. package/schema/traditionArtifacts/sub/AnimalShapePath.schema.json +0 -47
  287. package/schema/traditionArtifacts/sub/AnimalShapeSize.schema.json +0 -59
  288. package/schema/traditionArtifacts/sub/Brew.schema.json +0 -47
@@ -1,76 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/rule/FocusRule.schema.json",
4
- "$ref": "#/$defs/FocusRule",
5
- "$defs": {
6
- "FocusRule": {
7
- "title": "Focus Rule",
8
- "type": "object",
9
- "properties": {
10
- "id": {
11
- "description": "The focus rule's identifier. An unique, increasing integer.",
12
- "type": "integer",
13
- "minimum": 1
14
- },
15
- "subject": {
16
- "description": "The associated subject.",
17
- "$ref": "../_SimpleReferences.schema.json#/$defs/FocusRuleSubjectReference"
18
- },
19
- "level": {
20
- "description": "The focus rule's level.",
21
- "type": "integer",
22
- "maximum": 4,
23
- "minimum": 1
24
- },
25
- "is_missing_implementation": {
26
- "description": "Has the focus rule not been implemented in Optolith yet? This is also true if the focus rule does not (currently) apply to any Optolith feature.",
27
- "type": "boolean"
28
- },
29
- "src": {
30
- "$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
31
- },
32
- "translations": {
33
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
34
- "type": "object",
35
- "patternProperties": {
36
- "^[a-z]{2}-[A-Z]{2}$": {
37
- "$ref": "#/$defs/FocusRuleTranslation"
38
- }
39
- },
40
- "minProperties": 1,
41
- "additionalProperties": false
42
- }
43
- },
44
- "required": [
45
- "id",
46
- "subject",
47
- "level",
48
- "is_missing_implementation",
49
- "src",
50
- "translations"
51
- ],
52
- "additionalProperties": false
53
- },
54
- "FocusRuleTranslation": {
55
- "type": "object",
56
- "properties": {
57
- "name": {
58
- "description": "The name of the focus rule.",
59
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
60
- },
61
- "description": {
62
- "description": "The description of the focus rule.",
63
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
64
- },
65
- "errata": {
66
- "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
67
- }
68
- },
69
- "required": [
70
- "name",
71
- "description"
72
- ],
73
- "additionalProperties": false
74
- }
75
- }
76
- }
@@ -1,48 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/rule/FocusRule_Subject.schema.json",
4
- "$ref": "#/$defs/Subject",
5
- "$defs": {
6
- "Subject": {
7
- "title": "Subject",
8
- "description": "Subjects or Subject Areas are the categories of Focus Rules.",
9
- "type": "object",
10
- "properties": {
11
- "id": {
12
- "description": "The subject's identifier. An unique, increasing integer.",
13
- "type": "integer",
14
- "minimum": 1
15
- },
16
- "translations": {
17
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
18
- "type": "object",
19
- "patternProperties": {
20
- "^[a-z]{2}-[A-Z]{2}$": {
21
- "$ref": "#/$defs/SubjectTranslation"
22
- }
23
- },
24
- "minProperties": 1,
25
- "additionalProperties": false
26
- }
27
- },
28
- "required": [
29
- "id",
30
- "translations"
31
- ],
32
- "additionalProperties": false
33
- },
34
- "SubjectTranslation": {
35
- "type": "object",
36
- "properties": {
37
- "name": {
38
- "description": "The subject.",
39
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
40
- }
41
- },
42
- "required": [
43
- "name"
44
- ],
45
- "additionalProperties": false
46
- }
47
- }
48
- }
@@ -1,64 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/rule/OptionalRule.schema.json",
4
- "$ref": "#/$defs/OptionalRule",
5
- "$defs": {
6
- "OptionalRule": {
7
- "title": "Optional Rule",
8
- "type": "object",
9
- "properties": {
10
- "id": {
11
- "description": "The optional rule's identifier. An unique, increasing integer.",
12
- "type": "integer",
13
- "minimum": 1
14
- },
15
- "is_missing_implementation": {
16
- "description": "Has the focus rule not been implemented in Optolith yet? This is also true if the focus rule does not (currently) apply to any Optolith feature.",
17
- "type": "boolean"
18
- },
19
- "src": {
20
- "$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
21
- },
22
- "translations": {
23
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
24
- "type": "object",
25
- "patternProperties": {
26
- "^[a-z]{2}-[A-Z]{2}$": {
27
- "$ref": "#/$defs/OptionalRuleTranslation"
28
- }
29
- },
30
- "minProperties": 1,
31
- "additionalProperties": false
32
- }
33
- },
34
- "required": [
35
- "id",
36
- "is_missing_implementation",
37
- "src",
38
- "translations"
39
- ],
40
- "additionalProperties": false
41
- },
42
- "OptionalRuleTranslation": {
43
- "type": "object",
44
- "properties": {
45
- "name": {
46
- "description": "The name of the optional rule.",
47
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
48
- },
49
- "description": {
50
- "description": "The description of the optional rule.",
51
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
52
- },
53
- "errata": {
54
- "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
55
- }
56
- },
57
- "required": [
58
- "name",
59
- "description"
60
- ],
61
- "additionalProperties": false
62
- }
63
- }
64
- }
@@ -1,103 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/source/Publication.schema.json",
4
- "$ref": "#/$defs/Publication",
5
- "$defs": {
6
- "Publication": {
7
- "title": "Publication",
8
- "type": "object",
9
- "properties": {
10
- "id": {
11
- "description": "The publication's identifier. An unique, increasing integer.",
12
- "type": "integer",
13
- "minimum": 1
14
- },
15
- "category": {
16
- "description": "The publication category.",
17
- "$ref": "#/$defs/Category"
18
- },
19
- "contains_adult_content": {
20
- "description": "If the publication may contain adult content.",
21
- "type": "boolean"
22
- },
23
- "is_missing_implementation": {
24
- "description": "If the publication is not (fully) implemented and thus needs to be excluded from * stable releases.",
25
- "type": "boolean"
26
- },
27
- "prerequisites": {
28
- "description": "The specific other publications this publication depends on data from.",
29
- "$ref": "../_Prerequisite.schema.json#/$defs/PublicationPrerequisites"
30
- },
31
- "translations": {
32
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
33
- "type": "object",
34
- "patternProperties": {
35
- "^[a-z]{2}-[A-Z]{2}$": {
36
- "$ref": "#/$defs/PublicationTranslation"
37
- }
38
- },
39
- "minProperties": 1,
40
- "additionalProperties": false
41
- }
42
- },
43
- "required": [
44
- "id",
45
- "category",
46
- "contains_adult_content",
47
- "is_missing_implementation",
48
- "translations"
49
- ],
50
- "additionalProperties": false
51
- },
52
- "PublicationTranslation": {
53
- "type": "object",
54
- "properties": {
55
- "id": {
56
- "description": "The publisher's publication identifier.",
57
- "type": "string",
58
- "minLength": 1
59
- },
60
- "name": {
61
- "description": "The publication's name.",
62
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
63
- },
64
- "abbreviation": {
65
- "description": "The publication's abbreviation.",
66
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyString"
67
- },
68
- "release_date": {
69
- "description": "The publication's release date.",
70
- "type": "string",
71
- "format": "date"
72
- },
73
- "is_missing_implementation": {
74
- "description": "If this publication translation is not (fully) implemented and thus needs to be excluded from stable releases.",
75
- "type": "boolean"
76
- }
77
- },
78
- "required": [
79
- "name",
80
- "abbreviation",
81
- "is_missing_implementation"
82
- ],
83
- "additionalProperties": false
84
- },
85
- "Category": {
86
- "description": "The publication category.",
87
- "oneOf": [
88
- {
89
- "const": "CoreRules"
90
- },
91
- {
92
- "const": "ExpansionRules"
93
- },
94
- {
95
- "const": "Sourcebook"
96
- },
97
- {
98
- "const": "RegionalSourcebook"
99
- }
100
- ]
101
- }
102
- }
103
- }
@@ -1,36 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/source/_Erratum.schema.json",
4
- "$ref": "#/$defs/Errata",
5
- "$defs": {
6
- "Errata": {
7
- "title": "Errata",
8
- "description": "A list of errata for the entry in the specific language.",
9
- "type": "array",
10
- "items": {
11
- "$ref": "#/$defs/Erratum"
12
- },
13
- "minItems": 1
14
- },
15
- "Erratum": {
16
- "title": "Erratum",
17
- "type": "object",
18
- "properties": {
19
- "date": {
20
- "description": "The date when the change was confirmed and applied to the entry.",
21
- "type": "string",
22
- "format": "date"
23
- },
24
- "description": {
25
- "description": "A description of what changed.",
26
- "$ref": "../_NonEmptyString.schema.json#/$defs/NonEmptyMarkdown"
27
- }
28
- },
29
- "required": [
30
- "date",
31
- "description"
32
- ],
33
- "additionalProperties": false
34
- }
35
- }
36
- }
@@ -1,285 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2019-09/schema",
3
- "$id": "/source/_PublicationRef.schema.json",
4
- "$ref": "#/$defs/PublicationRefs",
5
- "$defs": {
6
- "PublicationRefs": {
7
- "title": "Publication References",
8
- "description": "The publications where you can find the entry.",
9
- "type": "array",
10
- "items": {
11
- "$ref": "#/$defs/PublicationRef"
12
- },
13
- "minItems": 1
14
- },
15
- "PublicationRef": {
16
- "title": "Publication Reference",
17
- "description": "A source reference. It contains the book's publisher identifier and the page where it occurs. If an entry spans multiple pages, provide the last page as well.",
18
- "type": "object",
19
- "properties": {
20
- "id": {
21
- "description": "The publication's identifier.",
22
- "$ref": "../_Identifier.schema.json#/$defs/PublicationIdentifier"
23
- },
24
- "occurrences": {
25
- "description": "All translations for the entry, identified by IETF language tag (BCP47).",
26
- "type": "object",
27
- "patternProperties": {
28
- "^[a-z]{2}-[A-Z]{2}$": {
29
- "$ref": "#/$defs/Occurrence"
30
- }
31
- },
32
- "minProperties": 1,
33
- "additionalProperties": false
34
- }
35
- },
36
- "required": [
37
- "id",
38
- "occurrences"
39
- ],
40
- "additionalProperties": false
41
- },
42
- "Occurrence": {
43
- "oneOf": [
44
- {
45
- "$ref": "#/$defs/SimpleOccurrence"
46
- },
47
- {
48
- "$ref": "#/$defs/SimpleOccurrences"
49
- },
50
- {
51
- "$ref": "#/$defs/VersionedOccurrence"
52
- }
53
- ]
54
- },
55
- "SimpleOccurrences": {
56
- "title": "Simple Occurrences",
57
- "type": "array",
58
- "items": {
59
- "$ref": "#/$defs/SimpleOccurrence"
60
- },
61
- "minItems": 1
62
- },
63
- "SimpleOccurrence": {
64
- "title": "Simple Occurrence",
65
- "type": "object",
66
- "properties": {
67
- "first_page": {
68
- "description": "The page where it occurs. If the entry spans multiple pages, use this as the first page and `last_page` as the last page.",
69
- "type": "integer",
70
- "minimum": 1
71
- },
72
- "last_page": {
73
- "description": "The last page where it occurs. If there is only one page, set this to the same as `first_page` oder remove it.",
74
- "type": "integer",
75
- "minimum": 2
76
- }
77
- },
78
- "required": [
79
- "first_page"
80
- ],
81
- "additionalProperties": false
82
- },
83
- "VersionedOccurrence": {
84
- "title": "Versioned Occurrence",
85
- "type": "object",
86
- "properties": {
87
- "initial": {
88
- "description": "The initial occurrence of the entry.",
89
- "$ref": "#/$defs/InitialOccurrence"
90
- },
91
- "revisions": {
92
- "description": "Revisions of the entry, resulting in either changed page references or re-addition or removal of an entry.",
93
- "type": "array",
94
- "items": {
95
- "$ref": "#/$defs/Revision"
96
- },
97
- "minItems": 1
98
- }
99
- },
100
- "required": [
101
- "initial"
102
- ],
103
- "additionalProperties": false
104
- },
105
- "InitialOccurrence": {
106
- "title": "Initial Occurrence",
107
- "type": "object",
108
- "properties": {
109
- "printing": {
110
- "description": "The publication's printing since which the entry is present. Leave empty if present since the beginning.",
111
- "type": "integer",
112
- "minimum": 2
113
- },
114
- "pages": {
115
- "description": "The initial page references.",
116
- "type": "array",
117
- "items": {
118
- "$ref": "#/$defs/PageRange"
119
- },
120
- "minItems": 1
121
- }
122
- },
123
- "required": [
124
- "pages"
125
- ],
126
- "additionalProperties": false
127
- },
128
- "Revision": {
129
- "title": "Revision",
130
- "description": "A revision of the entry, resulting in either changed page references or re-addition or removal of an entry.",
131
- "oneOf": [
132
- {
133
- "type": "object",
134
- "properties": {
135
- "tag": {
136
- "const": "Since"
137
- },
138
- "since": {
139
- "$ref": "#/$defs/Since"
140
- }
141
- },
142
- "required": [
143
- "tag",
144
- "since"
145
- ],
146
- "additionalProperties": false
147
- },
148
- {
149
- "type": "object",
150
- "properties": {
151
- "tag": {
152
- "const": "Deprecated"
153
- },
154
- "deprecated": {
155
- "$ref": "#/$defs/Deprecation"
156
- }
157
- },
158
- "required": [
159
- "tag",
160
- "deprecated"
161
- ],
162
- "additionalProperties": false
163
- }
164
- ]
165
- },
166
- "Since": {
167
- "type": "object",
168
- "properties": {
169
- "printing": {
170
- "description": "The publication's printing since which the entry is present again or has changed page references.",
171
- "type": "integer",
172
- "minimum": 2
173
- },
174
- "pages": {
175
- "description": "The changed or new page references.",
176
- "type": "array",
177
- "items": {
178
- "$ref": "#/$defs/PageRange"
179
- },
180
- "minItems": 1
181
- }
182
- },
183
- "required": [
184
- "printing",
185
- "pages"
186
- ],
187
- "additionalProperties": false
188
- },
189
- "Deprecation": {
190
- "type": "object",
191
- "properties": {
192
- "printing": {
193
- "description": "The publication's printing since which the entry has been removed.",
194
- "type": "integer",
195
- "minimum": 2
196
- }
197
- },
198
- "required": [
199
- "printing"
200
- ],
201
- "additionalProperties": false
202
- },
203
- "PageRange": {
204
- "title": "Page Range",
205
- "type": "object",
206
- "properties": {
207
- "first_page": {
208
- "description": "The page where it occurs. If the entry spans multiple pages, use this as the first page and `last_page` as the last page.",
209
- "$ref": "#/$defs/Page"
210
- },
211
- "last_page": {
212
- "description": "The last page where it occurs. If there is only one page, set this to the same as `first_page` oder remove it.",
213
- "$ref": "#/$defs/Page"
214
- }
215
- },
216
- "required": [
217
- "first_page"
218
- ],
219
- "additionalProperties": false
220
- },
221
- "Page": {
222
- "title": "Page",
223
- "oneOf": [
224
- {
225
- "type": "object",
226
- "properties": {
227
- "tag": {
228
- "const": "InsideCoverFront"
229
- },
230
- "inside_cover_front": {
231
- "type": "object",
232
- "properties": {},
233
- "required": [],
234
- "additionalProperties": false
235
- }
236
- },
237
- "required": [
238
- "tag",
239
- "inside_cover_front"
240
- ],
241
- "additionalProperties": false
242
- },
243
- {
244
- "type": "object",
245
- "properties": {
246
- "tag": {
247
- "const": "InsideCoverBack"
248
- },
249
- "inside_cover_back": {
250
- "type": "object",
251
- "properties": {},
252
- "required": [],
253
- "additionalProperties": false
254
- }
255
- },
256
- "required": [
257
- "tag",
258
- "inside_cover_back"
259
- ],
260
- "additionalProperties": false
261
- },
262
- {
263
- "type": "object",
264
- "properties": {
265
- "tag": {
266
- "const": "Numbered"
267
- },
268
- "numbered": {
269
- "$ref": "#/$defs/NumberedPage"
270
- }
271
- },
272
- "required": [
273
- "tag",
274
- "numbered"
275
- ],
276
- "additionalProperties": false
277
- }
278
- ]
279
- },
280
- "NumberedPage": {
281
- "description": "The page number.",
282
- "type": "integer"
283
- }
284
- }
285
- }