optolith-database-schema 0.0.1

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 (169) hide show
  1. package/AUTHORS +1 -0
  2. package/CHANGELOG.md +27 -0
  3. package/CODEOWNERS +1 -0
  4. package/LICENSE +378 -0
  5. package/README.md +17 -0
  6. package/lib/main.d.ts +1 -0
  7. package/lib/main.js +1 -0
  8. package/lib/types/ArcaneBardTradition.d.ts +32 -0
  9. package/lib/types/ArcaneBardTradition.js +4 -0
  10. package/lib/types/ArcaneDancerTradition.d.ts +32 -0
  11. package/lib/types/ArcaneDancerTradition.js +4 -0
  12. package/lib/types/Aspect.d.ts +36 -0
  13. package/lib/types/Aspect.js +4 -0
  14. package/lib/types/Attribute.d.ts +42 -0
  15. package/lib/types/Attribute.js +5 -0
  16. package/lib/types/CombatTechnique_Close.d.ts +80 -0
  17. package/lib/types/CombatTechnique_Close.js +4 -0
  18. package/lib/types/CombatTechnique_Ranged.d.ts +62 -0
  19. package/lib/types/CombatTechnique_Ranged.js +4 -0
  20. package/lib/types/Condition.d.ts +51 -0
  21. package/lib/types/Condition.js +4 -0
  22. package/lib/types/Culture.d.ts +494 -0
  23. package/lib/types/Culture.js +4 -0
  24. package/lib/types/DerivedCharacteristic.d.ts +65 -0
  25. package/lib/types/DerivedCharacteristic.js +4 -0
  26. package/lib/types/Element.d.ts +30 -0
  27. package/lib/types/Element.js +4 -0
  28. package/lib/types/ExperienceLevel.d.ts +68 -0
  29. package/lib/types/ExperienceLevel.js +4 -0
  30. package/lib/types/EyeColor.d.ts +30 -0
  31. package/lib/types/EyeColor.js +4 -0
  32. package/lib/types/HairColor.d.ts +30 -0
  33. package/lib/types/HairColor.js +4 -0
  34. package/lib/types/Lessons_Curriculum.d.ts +297 -0
  35. package/lib/types/Lessons_Curriculum.js +4 -0
  36. package/lib/types/Lessons_Guideline.d.ts +36 -0
  37. package/lib/types/Lessons_Guideline.js +4 -0
  38. package/lib/types/Locale.d.ts +38 -0
  39. package/lib/types/Locale.js +4 -0
  40. package/lib/types/MetaCondition.d.ts +54 -0
  41. package/lib/types/MetaCondition.js +4 -0
  42. package/lib/types/Property.d.ts +36 -0
  43. package/lib/types/Property.js +4 -0
  44. package/lib/types/Race.d.ts +524 -0
  45. package/lib/types/Race.js +13 -0
  46. package/lib/types/Region.d.ts +30 -0
  47. package/lib/types/Region.js +4 -0
  48. package/lib/types/Service.d.ts +40 -0
  49. package/lib/types/Service.js +4 -0
  50. package/lib/types/SexPractice.d.ts +53 -0
  51. package/lib/types/SexPractice.js +4 -0
  52. package/lib/types/Skill.d.ts +169 -0
  53. package/lib/types/Skill.js +4 -0
  54. package/lib/types/SkillGroup.d.ts +40 -0
  55. package/lib/types/SkillGroup.js +4 -0
  56. package/lib/types/SkillModificationIncrement.d.ts +82 -0
  57. package/lib/types/SkillModificationIncrement.js +4 -0
  58. package/lib/types/SocialStatus.d.ts +30 -0
  59. package/lib/types/SocialStatus.js +4 -0
  60. package/lib/types/State.d.ts +40 -0
  61. package/lib/types/State.js +4 -0
  62. package/lib/types/TargetCategory.d.ts +36 -0
  63. package/lib/types/TargetCategory.js +4 -0
  64. package/lib/types/_ActivatableSkill.d.ts +919 -0
  65. package/lib/types/_ActivatableSkill.js +38 -0
  66. package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +12 -0
  67. package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +1 -0
  68. package/lib/types/_ImprovementCost.d.ts +9 -0
  69. package/lib/types/_ImprovementCost.js +10 -0
  70. package/lib/types/_Prerequisite.d.ts +274 -0
  71. package/lib/types/_Prerequisite.js +4 -0
  72. package/lib/types/_Sex.d.ts +11 -0
  73. package/lib/types/_Sex.js +4 -0
  74. package/lib/types/_SkillCheck.d.ts +28 -0
  75. package/lib/types/_SkillCheck.js +1 -0
  76. package/lib/types/magicalActions/AnimistPower.d.ts +227 -0
  77. package/lib/types/magicalActions/AnimistPower.js +4 -0
  78. package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +30 -0
  79. package/lib/types/magicalActions/AnimistPower_Tribe.js +4 -0
  80. package/lib/types/magicalActions/Curse.d.ts +228 -0
  81. package/lib/types/magicalActions/Curse.js +4 -0
  82. package/lib/types/magicalActions/DominationRitual.d.ts +181 -0
  83. package/lib/types/magicalActions/DominationRitual.js +4 -0
  84. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +149 -0
  85. package/lib/types/magicalActions/ElvenMagicalSong.js +4 -0
  86. package/lib/types/magicalActions/GeodeRitual.d.ts +162 -0
  87. package/lib/types/magicalActions/GeodeRitual.js +4 -0
  88. package/lib/types/magicalActions/JesterTrick.d.ts +167 -0
  89. package/lib/types/magicalActions/JesterTrick.js +4 -0
  90. package/lib/types/magicalActions/MagicalDance.d.ts +184 -0
  91. package/lib/types/magicalActions/MagicalDance.js +4 -0
  92. package/lib/types/magicalActions/MagicalMelody.d.ts +132 -0
  93. package/lib/types/magicalActions/MagicalMelody.js +4 -0
  94. package/lib/types/magicalActions/MagicalRune.d.ts +241 -0
  95. package/lib/types/magicalActions/MagicalRune.js +4 -0
  96. package/lib/types/magicalActions/ZibiljaRitual.d.ts +101 -0
  97. package/lib/types/magicalActions/ZibiljaRitual.js +4 -0
  98. package/lib/types/magicalActions/_MusicTradition.d.ts +28 -0
  99. package/lib/types/magicalActions/_MusicTradition.js +1 -0
  100. package/lib/types/magicalActions/_SkillReference.d.ts +13 -0
  101. package/lib/types/magicalActions/_SkillReference.js +5 -0
  102. package/lib/types/rule/FocusRule.d.ts +53 -0
  103. package/lib/types/rule/FocusRule.js +4 -0
  104. package/lib/types/rule/FocusRule_Subject.d.ts +31 -0
  105. package/lib/types/rule/FocusRule_Subject.js +4 -0
  106. package/lib/types/rule/OptionalRule.d.ts +65 -0
  107. package/lib/types/rule/OptionalRule.js +4 -0
  108. package/lib/types/source/Publication.d.ts +4 -0
  109. package/lib/types/source/Publication.js +4 -0
  110. package/lib/types/source/_Erratum.d.ts +25 -0
  111. package/lib/types/source/_Erratum.js +4 -0
  112. package/lib/types/source/_PublicationRef.d.ts +146 -0
  113. package/lib/types/source/_PublicationRef.js +4 -0
  114. package/lib/validation/integrity.d.ts +16 -0
  115. package/lib/validation/integrity.js +3 -0
  116. package/package.json +37 -0
  117. package/schema/ArcaneBardTradition.schema.json +49 -0
  118. package/schema/ArcaneDancerTradition.schema.json +49 -0
  119. package/schema/Aspect.schema.json +50 -0
  120. package/schema/Attribute.schema.json +57 -0
  121. package/schema/CombatTechnique_Close.schema.json +127 -0
  122. package/schema/CombatTechnique_Ranged.schema.json +83 -0
  123. package/schema/Condition.schema.json +84 -0
  124. package/schema/Culture.schema.json +858 -0
  125. package/schema/DerivedCharacteristic.schema.json +90 -0
  126. package/schema/Element.schema.json +45 -0
  127. package/schema/ExperienceLevel.schema.json +84 -0
  128. package/schema/EyeColor.schema.json +45 -0
  129. package/schema/HairColor.schema.json +45 -0
  130. package/schema/Lessons_Curriculum.schema.json +500 -0
  131. package/schema/Lessons_Guideline.schema.json +51 -0
  132. package/schema/Locale.schema.json +45 -0
  133. package/schema/MetaCondition.schema.json +85 -0
  134. package/schema/Property.schema.json +49 -0
  135. package/schema/Race.schema.json +724 -0
  136. package/schema/Region.schema.json +45 -0
  137. package/schema/Service.schema.json +58 -0
  138. package/schema/SexPractice.schema.json +72 -0
  139. package/schema/Skill.schema.json +278 -0
  140. package/schema/SkillGroup.schema.json +56 -0
  141. package/schema/SkillModificationIncrement.schema.json +98 -0
  142. package/schema/SocialStatus.schema.json +45 -0
  143. package/schema/State.schema.json +58 -0
  144. package/schema/TargetCategory.schema.json +51 -0
  145. package/schema/_ActivatableSkill.schema.json +1534 -0
  146. package/schema/_CommonnessRatedAdvantageDisadvantage.schema.json +22 -0
  147. package/schema/_ImprovementCost.schema.json +15 -0
  148. package/schema/_Prerequisite.schema.json +519 -0
  149. package/schema/_Sex.schema.json +36 -0
  150. package/schema/_SkillCheck.schema.json +94 -0
  151. package/schema/magicalActions/AnimistPower.schema.json +411 -0
  152. package/schema/magicalActions/AnimistPower_Tribe.schema.json +45 -0
  153. package/schema/magicalActions/Curse.schema.json +378 -0
  154. package/schema/magicalActions/DominationRitual.schema.json +288 -0
  155. package/schema/magicalActions/ElvenMagicalSong.schema.json +194 -0
  156. package/schema/magicalActions/GeodeRitual.schema.json +303 -0
  157. package/schema/magicalActions/JesterTrick.schema.json +292 -0
  158. package/schema/magicalActions/MagicalDance.schema.json +328 -0
  159. package/schema/magicalActions/MagicalMelody.schema.json +254 -0
  160. package/schema/magicalActions/MagicalRune.schema.json +426 -0
  161. package/schema/magicalActions/ZibiljaRitual.schema.json +159 -0
  162. package/schema/magicalActions/_MusicTradition.schema.json +44 -0
  163. package/schema/magicalActions/_SkillReference.schema.json +26 -0
  164. package/schema/rule/FocusRule.schema.json +71 -0
  165. package/schema/rule/FocusRule_Subject.schema.json +46 -0
  166. package/schema/rule/OptionalRule.schema.json +96 -0
  167. package/schema/source/Publication.schema.json +165 -0
  168. package/schema/source/_Erratum.schema.json +37 -0
  169. package/schema/source/_PublicationRef.schema.json +242 -0
@@ -0,0 +1,90 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "DerivedCharacteristic.schema.json",
4
+ "$ref": "#/definitions/DerivedCharacteristic",
5
+ "definitions": {
6
+ "DerivedCharacteristic": {
7
+ "title": "Derived Characteristic",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "description": "An unique, increasing integer.",
12
+ "type": "integer",
13
+ "minimum": 1
14
+ },
15
+ "prerequisites": {
16
+ "$ref": "./_Prerequisite.schema.json#/definitions/GroupCollection/DerivedCharacteristic"
17
+ },
18
+ "src": {
19
+ "$ref": "./source/_PublicationRef.schema.json#/definitions/PublicationRefs"
20
+ },
21
+ "translations": {
22
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
23
+ "type": "object",
24
+ "patternProperties": {
25
+ "^[a-z]{2}-[A-Z]{2}$": {
26
+ "$ref": "#/definitions/Translation"
27
+ }
28
+ },
29
+ "minProperties": 1,
30
+ "additionalProperties": false
31
+ }
32
+ },
33
+ "required": [
34
+ "id",
35
+ "src",
36
+ "translations"
37
+ ],
38
+ "additionalProperties": false
39
+ },
40
+ "Translation": {
41
+ "type": "object",
42
+ "properties": {
43
+ "name": {
44
+ "description": "The characteristic's name.",
45
+ "type": "string",
46
+ "minLength": 1
47
+ },
48
+ "abbreviation": {
49
+ "description": "The characteristic's abbreviation.",
50
+ "type": "string",
51
+ "minLength": 1
52
+ },
53
+ "calculation": {
54
+ "description": "Possible calculation strings for the final value.",
55
+ "$ref": "#/definitions/Calculation"
56
+ }
57
+ },
58
+ "required": [
59
+ "name",
60
+ "abbreviation"
61
+ ],
62
+ "additionalProperties": false
63
+ },
64
+ "Calculation": {
65
+ "description": "Possible calculation strings for the final value.",
66
+ "type": "object",
67
+ "properties": {
68
+ "default": {
69
+ "description": "The default calculation string.",
70
+ "type": "string",
71
+ "minLength": 1
72
+ },
73
+ "half_primary": {
74
+ "description": "The calculation string if only half of the primary attribute is used.",
75
+ "type": "string",
76
+ "minLength": 1
77
+ },
78
+ "no_primary": {
79
+ "description": "The calculation string if no primary attribute is used.",
80
+ "type": "string",
81
+ "minLength": 1
82
+ }
83
+ },
84
+ "required": [
85
+ "default"
86
+ ],
87
+ "additionalProperties": false
88
+ }
89
+ }
90
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "Element.schema.json",
4
+ "$ref": "#/definitions/Element",
5
+ "definitions": {
6
+ "Element": {
7
+ "title": "Element",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "description": "The element's identifier. An unique, increasing integer.",
12
+ "type": "integer",
13
+ "minimum": 1
14
+ },
15
+ "translations": {
16
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
17
+ "type": "object",
18
+ "patternProperties": {
19
+ "^[a-z]{2}-[A-Z]{2}$": {
20
+ "type": "object",
21
+ "properties": {
22
+ "name": {
23
+ "description": "The element's name.",
24
+ "type": "string",
25
+ "minLength": 1
26
+ }
27
+ },
28
+ "required": [
29
+ "name"
30
+ ],
31
+ "additionalProperties": false
32
+ }
33
+ },
34
+ "minProperties": 1,
35
+ "additionalProperties": false
36
+ }
37
+ },
38
+ "required": [
39
+ "id",
40
+ "translations"
41
+ ],
42
+ "additionalProperties": false
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,84 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "ExperienceLevel.schema.json",
4
+ "$ref": "#/definitions/ExperienceLevel",
5
+ "definitions": {
6
+ "ExperienceLevel": {
7
+ "title": "Experience Level",
8
+ "description": "Adventure Points and maximum values at hero creation.",
9
+ "type": "object",
10
+ "properties": {
11
+ "id": {
12
+ "description": "An unique, increasing integer.",
13
+ "type": "integer",
14
+ "minimum": 1
15
+ },
16
+ "adventure_points": {
17
+ "description": "The AP value you get.",
18
+ "type": "integer"
19
+ },
20
+ "max_attribute_value": {
21
+ "description": "The highest possible attribute value.",
22
+ "type": "integer"
23
+ },
24
+ "max_skill_rating": {
25
+ "description": "The highest possible skill rating.",
26
+ "type": "integer"
27
+ },
28
+ "max_combat_technique_rating": {
29
+ "description": "The highest possible combat technique rating.",
30
+ "type": "integer"
31
+ },
32
+ "max_attribute_total": {
33
+ "description": "The limit for the sum of all attribute values.",
34
+ "type": "integer"
35
+ },
36
+ "max_number_of_spells_liturgical_chants": {
37
+ "description": "The maximum of spells/chants you can activate.",
38
+ "type": "integer"
39
+ },
40
+ "max_number_of_unfamiliar_spells": {
41
+ "description": "The maximum of spells of an unfamiliar tradition you can activate.",
42
+ "type": "integer"
43
+ },
44
+ "translations": {
45
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
46
+ "type": "object",
47
+ "patternProperties": {
48
+ "^[a-z]{2}-[A-Z]{2}$": {
49
+ "$ref": "#/definitions/Translation"
50
+ }
51
+ },
52
+ "minProperties": 1,
53
+ "additionalProperties": false
54
+ }
55
+ },
56
+ "required": [
57
+ "id",
58
+ "adventure_points",
59
+ "max_attribute_value",
60
+ "max_skill_rating",
61
+ "max_combat_technique_rating",
62
+ "max_attribute_total",
63
+ "max_number_of_spells_liturgical_chants",
64
+ "max_number_of_unfamiliar_spells",
65
+ "translations"
66
+ ],
67
+ "additionalProperties": false
68
+ },
69
+ "Translation": {
70
+ "type": "object",
71
+ "properties": {
72
+ "name": {
73
+ "description": "The name of the experience level.",
74
+ "type": "string",
75
+ "minLength": 1
76
+ }
77
+ },
78
+ "required": [
79
+ "name"
80
+ ],
81
+ "additionalProperties": false
82
+ }
83
+ }
84
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "EyeColor.schema.json",
4
+ "$ref": "#/definitions/EyeColor",
5
+ "definitions": {
6
+ "EyeColor": {
7
+ "title": "Eye Color",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "description": "The eye color's identifier. An unique, increasing integer.",
12
+ "type": "integer",
13
+ "minimum": 1
14
+ },
15
+ "translations": {
16
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
17
+ "type": "object",
18
+ "patternProperties": {
19
+ "^[a-z]{2}-[A-Z]{2}$": {
20
+ "type": "object",
21
+ "properties": {
22
+ "name": {
23
+ "description": "The eye color.",
24
+ "type": "string",
25
+ "minLength": 1
26
+ }
27
+ },
28
+ "required": [
29
+ "name"
30
+ ],
31
+ "additionalProperties": false
32
+ }
33
+ },
34
+ "minProperties": 1,
35
+ "additionalProperties": false
36
+ }
37
+ },
38
+ "required": [
39
+ "id",
40
+ "translations"
41
+ ],
42
+ "additionalProperties": false
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "HairColor.schema.json",
4
+ "$ref": "#/definitions/HairColor",
5
+ "definitions": {
6
+ "HairColor": {
7
+ "title": "Hair Color",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "description": "The hair color's identifier. An unique, increasing integer.",
12
+ "type": "integer",
13
+ "minimum": 1
14
+ },
15
+ "translations": {
16
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
17
+ "type": "object",
18
+ "patternProperties": {
19
+ "^[a-z]{2}-[A-Z]{2}$": {
20
+ "type": "object",
21
+ "properties": {
22
+ "name": {
23
+ "description": "The hair color.",
24
+ "type": "string",
25
+ "minLength": 1
26
+ }
27
+ },
28
+ "required": [
29
+ "name"
30
+ ],
31
+ "additionalProperties": false
32
+ }
33
+ },
34
+ "minProperties": 1,
35
+ "additionalProperties": false
36
+ }
37
+ },
38
+ "required": [
39
+ "id",
40
+ "translations"
41
+ ],
42
+ "additionalProperties": false
43
+ }
44
+ }
45
+ }