{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://chimera.local/schemas/chimera-title-manifest.schema.json", "title": "Portable Chimera title manifest", "type": "object", "additionalProperties": false, "required": [ "schemaVersion", "manifestId", "createdAt", "title", "components", "recipes", "assets", "provenance" ], "properties": { "schemaVersion": { "const": 1 }, "manifestId": { "type": "string", "minLength": 1 }, "createdAt": { "type": "string", "format": "date-time" }, "title": { "type": "object", "additionalProperties": false, "required": [ "platform", "name" ], "properties": { "platform": { "enum": [ "ps4", "ps5", "crossgen", "unknown" ] }, "name": { "type": "string", "minLength": 1 }, "titleId": { "type": [ "string", "null" ] }, "contentId": { "type": [ "string", "null" ] }, "npCommunicationId": { "type": [ "string", "null" ] }, "region": { "type": [ "string", "null" ] } } }, "components": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "type", "relativePath", "required" ], "properties": { "id": { "type": "string" }, "type": { "enum": [ "base", "update", "dlc", "unlocker", "auxiliary", "patch_bundle", "apr_ampr", "dump_folder", "image", "metadata" ] }, "relativePath": { "type": "string", "pattern": "^(?!/)(?!.*(?:^|/)\\.\\.(?:/|$)).+" }, "required": { "type": "boolean" }, "version": { "type": [ "string", "null" ] }, "contentId": { "type": [ "string", "null" ] }, "sizeBytes": { "type": [ "integer", "null" ], "minimum": 0 }, "sha256": { "type": [ "string", "null" ], "pattern": "^(?:[a-fA-F0-9]{64})?$" }, "provenance": { "type": "string" } } } }, "recipes": { "type": "array", "items": { "type": "string" } }, "assets": { "type": "array", "items": { "type": "object", "required": [ "type", "relativePath", "provenance" ], "properties": { "type": { "enum": [ "cover", "background", "screenshot", "video", "other" ] }, "relativePath": { "type": "string" }, "provenance": { "type": "string" }, "preferred": { "type": "boolean" } } } }, "installNotes": { "type": "string" }, "provenance": { "type": "object", "required": [ "importJobId", "sourceType" ], "properties": { "importJobId": { "type": "string" }, "sourceType": { "type": "string" }, "sourceName": { "type": [ "string", "null" ] }, "sourceSha256": { "type": [ "string", "null" ] } } } } }