{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "ResourceBundle", "type": "object", "required": [ "id", "schema_version", "revision", "display_name", "entry_character", "entry_persona", "entry_plot_module", "characters", "world_books", "personas", "plot_modules", "item_specs" ], "properties": { "id": { "type": "string", "pattern": "^[a-z0-9_]+(?:\\.[a-z0-9_]+)+$" }, "schema_version": { "const": 1 }, "revision": { "type": "string", "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$" }, "display_name": { "type": "string", "minLength": 1 }, "entry_character": { "type": "string" }, "entry_persona": { "type": "string" }, "entry_plot_module": { "type": ["string", "null"] }, "characters": { "type": "array", "items": { "$ref": "character-card.schema.json" } }, "world_books": { "type": "array", "items": { "$ref": "world-book.schema.json" } }, "personas": { "type": "array", "items": { "$ref": "persona.schema.json" } }, "plot_modules": { "type": "array", "items": { "$ref": "plot-module.schema.json" } }, "item_specs": { "type": "array", "items": { "$ref": "item-spec.schema.json" } } }, "additionalProperties": false }