Data contracts and versions
Contract boundaries
The authoring project envelope is not a runtime scene. SceneDocumentV2 contains semantic state and a static projection. The nested projection retains its existing schema format; this is not a second editor or supported v1 authoring workflow. Validators at API and browser boundaries check structure and cross-reference rules. JSON Schema alone does not prove geometry or licensing.
Each complete schema below is copied from the repository. Required properties, enums, units, maximums and immutable version constants are normative for this build. Use the runtime validators as well as these structural schemas.
archetype.schema.json
Download archetype.schema.json
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.archetype","type":"string"} |
| schemaVersion | yes | {"const":"1.0.0","type":"string"} |
| profileId | yes | {"type":"string"} |
| revision | yes | {"type":"number"} |
| parentId | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| semanticClass | yes | {"type":"string"} |
| status | yes | {"anyOf":[{"const":"suggested","type":"string"},{"const":"accepted","type":"string"},{"const":"rejected","type":"string"},{"const":"user-corrected","type":"string"}]} |
| dimensions | yes | {"type":"object","properties":{"width":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"height":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"depth":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]}},"required":["width","height","depth"],"additionalProperties":false} |
| preferredDimension | yes | {"anyOf":[{"type":"null"},{"const":"width","type":"string"},{"const":"height","type":"string"},{"const":"depth","type":"string"}]} |
| grounding | yes | {"anyOf":[{"const":"floor","type":"string"},{"const":"support","type":"string"},{"const":"architectural","type":"string"},{"const":"unknown","type":"string"}]} |
| orientation | yes | {"type":"object","properties":{"up":{"anyOf":[{"type":"null"},{"const":"+Y","type":"string"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Y","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]},"forward":{"anyOf":[{"type":"null"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]}},"required":["up","forward"],"additionalProperties":false} |
| affordances | yes | {"type":"array","items":{"type":"string"}} |
| clearances | yes | {"type":"object","properties":{"usableSideM":{"anyOf":[{"type":"null"},{"type":"number"}]},"circulationM":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["usableSideM","circulationM"],"additionalProperties":false} |
| relationHints | yes | {"type":"array","items":{"type":"string"}} |
| provenance | yes | {"type":"object","properties":{"source":{"anyOf":[{"const":"curated","type":"string"},{"const":"standard","type":"string"},{"const":"ai_inferred","type":"string"},{"const":"user_confirmed","type":"string"},{"const":"project_specific","type":"string"}]},"producer":{"type":"string"},"model":{"anyOf":[{"type":"null"},{"type":"string"}]},"inferenceVersion":{"type":"string"},"requestedClass":{"anyOf":[{"type":"null"},{"type":"string"}]},"confidence":{"type":"number"},"createdAt":{"type":"string"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["source","producer","model","inferenceVersion","requestedClass","confidence","createdAt","evidence"],"additionalProperties":false} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"schema": {
"const": "quay.archetype",
"type": "string"
},
"schemaVersion": {
"const": "1.0.0",
"type": "string"
},
"profileId": {
"type": "string"
},
"revision": {
"type": "number"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"semanticClass": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "suggested",
"type": "string"
},
{
"const": "accepted",
"type": "string"
},
{
"const": "rejected",
"type": "string"
},
{
"const": "user-corrected",
"type": "string"
}
]
},
"dimensions": {
"type": "object",
"properties": {
"width": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"height": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"depth": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
}
},
"required": [
"width",
"height",
"depth"
],
"additionalProperties": false
},
"preferredDimension": {
"anyOf": [
{
"type": "null"
},
{
"const": "width",
"type": "string"
},
{
"const": "height",
"type": "string"
},
{
"const": "depth",
"type": "string"
}
]
},
"grounding": {
"anyOf": [
{
"const": "floor",
"type": "string"
},
{
"const": "support",
"type": "string"
},
{
"const": "architectural",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"orientation": {
"type": "object",
"properties": {
"up": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Y",
"type": "string"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Y",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
},
"forward": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
}
},
"required": [
"up",
"forward"
],
"additionalProperties": false
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"clearances": {
"type": "object",
"properties": {
"usableSideM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"circulationM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"usableSideM",
"circulationM"
],
"additionalProperties": false
},
"relationHints": {
"type": "array",
"items": {
"type": "string"
}
},
"provenance": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"const": "curated",
"type": "string"
},
{
"const": "standard",
"type": "string"
},
{
"const": "ai_inferred",
"type": "string"
},
{
"const": "user_confirmed",
"type": "string"
},
{
"const": "project_specific",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"inferenceVersion": {
"type": "string"
},
"requestedClass": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"source",
"producer",
"model",
"inferenceVersion",
"requestedClass",
"confidence",
"createdAt",
"evidence"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"profileId",
"revision",
"parentId",
"semanticClass",
"status",
"dimensions",
"preferredDimension",
"grounding",
"orientation",
"affordances",
"clearances",
"relationHints",
"provenance"
],
"additionalProperties": false
}asset-analysis.schema.json
Download asset-analysis.schema.json
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.asset-analysis","type":"string"} |
| schemaVersion | yes | {"const":"2.0.0-draft.2","type":"string"} |
| revision | yes | {"type":"string"} |
| content | yes | {"type":"object","properties":{"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["sha256","byteLength"],"additionalProperties":false} |
| analyzer | yes | {"type":"object","properties":{"version":{"type":"string"},"threeVersion":{"type":"string"},"policy":{"type":"string"}},"required":["version","threeVersion","policy"],"additionalProperties":false} |
| coordinates | yes | {"type":"object","properties":{"units":{"const":"metres","type":"string"},"up":{"const":"+Y","type":"string"},"authoredForward":{"const":"unknown","type":"string"}},"required":["units","up","authoredForward"],"additionalProperties":false} |
| validation | yes | {"type":"object","properties":{"container":{"const":"passed","type":"string"},"loader":{"const":"passed","type":"string"},"khronosValidator":{"anyOf":[{"const":"not-run","type":"string"},{"type":"object","properties":{"producer":{"const":"Khronos glTF Validator","type":"string"},"version":{"type":"string"},"maxIssues":{"type":"number"},"errors":{"type":"number"},"warnings":{"type":"number"},"infos":{"type":"number"},"hints":{"type":"number"},"truncated":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"messages":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"pointer":{"type":"string"},"severity":{"type":"number"}},"required":["code","pointer","severity"],"additionalProperties":false}}},"required":["producer","version","maxIssues","errors","warnings","infos","hints","truncated","messages"],"additionalProperties":false}]}},"required":["container","loader","khronosValidator"],"additionalProperties":false} |
| inventory | yes | {"type":"object","properties":{"scenes":{"type":"number"},"nodes":{"type":"number"},"meshes":{"type":"number"},"primitives":{"type":"number"},"materials":{"type":"number"},"textures":{"type":"number"},"skins":{"type":"number"},"morphTargets":{"type":"number"},"animations":{"type":"array","items":{"type":"object","properties":{"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"channels":{"type":"number"}},"required":["name","channels"],"additionalProperties":false}}},"required":["scenes","nodes","meshes","primitives","materials","textures","skins","morphTargets","animations"],"additionalProperties":false} |
| geometry | yes | {"type":"object","properties":{"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"nodes":{"type":"array","items":{"type":"object","properties":{"nodeIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"localMatrix":{"type":"array","items":{"type":"number"}},"worldMatrix":{"type":"array","items":{"type":"number"}},"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"localBounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"aggregateBounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]}},"required":["nodeIndex","name","localMatrix","worldMatrix","bounds","localBounds","aggregateBounds"],"additionalProperties":false}},"meshes":{"type":"array","items":{"type":"object","properties":{"gltfMeshIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"primitiveIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"vertices":{"type":"number"},"triangles":{"type":"number"},"skinned":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"morphTargets":{"type":"number"},"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]}},"required":["gltfMeshIndex","primitiveIndex","name","vertices","triangles","skinned","morphTargets","bounds"],"additionalProperties":false}}},"required":["bounds","nodes","meshes"],"additionalProperties":false} |
| featureAvailability | yes | {"type":"object","properties":{"supportSurfaces":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"contactRegions":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"components":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"cavities":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"openings":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"handles":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"orientation":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"colliders":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]}},"required":["supportSurfaces","contactRegions","components","cavities","openings","handles","orientation","colliders"],"additionalProperties":false} |
| planarPatches | yes | {"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"meshIndex":{"type":"number"},"faceIndices":{"type":"array","items":{"type":"number"}},"faceIndicesComplete":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"normal":{"type":"array","items":{"type":"number"}},"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"areaM2":{"type":"number"},"purposeCandidate":{"anyOf":[{"const":"support","type":"string"},{"const":"contact","type":"string"},{"const":"other","type":"string"}]},"evidence":{"const":"measured-coplanar-edge-connected-triangles","type":"string"},"weldToleranceM":{"type":"number"},"planeToleranceM":{"type":"number"},"surfaceFrame":{"type":"object","properties":{"version":{"const":"orthonormal-v1","type":"string"},"localToAsset":{"type":"array","items":{"type":"number"}}},"required":["version","localToAsset"],"additionalProperties":false}},"required":["featureId","meshIndex","faceIndices","faceIndicesComplete","normal","bounds","areaM2","purposeCandidate","evidence","weldToleranceM","planeToleranceM"],"additionalProperties":false}} |
| components | yes | {"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"meshIndex":{"type":"number"},"triangleCount":{"type":"number"},"areaM2":{"type":"number"},"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"topology":{"anyOf":[{"const":"closed-oriented-at-weld-tolerance","type":"string"},{"const":"open-or-nonmanifold","type":"string"}]},"weldToleranceM":{"type":"number"}},"required":["featureId","meshIndex","triangleCount","areaM2","bounds","topology","weldToleranceM"],"additionalProperties":false}} |
| interpretation | yes | {"type":"object","properties":{"status":{"const":"unknown","type":"string"},"producer":{"const":"none","type":"string"}},"required":["status","producer"],"additionalProperties":false} |
| authored | yes | {"type":"object","properties":{"defaultScene":{"type":"number"},"scenes":{"type":"array","items":{"type":"object","properties":{"sceneIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"roots":{"type":"array","items":{"type":"number"}}},"required":["sceneIndex","name","roots"],"additionalProperties":false}},"nodes":{"type":"array","items":{"type":"object","properties":{"nodeIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"children":{"type":"array","items":{"type":"number"}},"mesh":{"anyOf":[{"type":"null"},{"type":"number"}]},"skin":{"anyOf":[{"type":"null"},{"type":"number"}]},"matrix":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"translation":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"rotation":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"scale":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"weights":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]}},"required":["nodeIndex","name","children","mesh","skin","matrix","translation","rotation","scale","weights"],"additionalProperties":false}},"meshes":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"weights":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"primitives":{"type":"array","items":{"type":"object","properties":{"primitiveIndex":{"type":"number"},"mode":{"type":"number"},"indices":{"anyOf":[{"type":"null"},{"type":"number"}]},"material":{"anyOf":[{"type":"null"},{"type":"number"}]},"attributes":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"null"},{"type":"number"}]}},"morphTargets":{"type":"array","items":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"null"},{"type":"number"}]}}}},"required":["primitiveIndex","mode","indices","material","attributes","morphTargets"],"additionalProperties":false}}},"required":["meshIndex","name","weights","primitives"],"additionalProperties":false}},"accessors":{"type":"array","items":{"type":"object","properties":{"accessorIndex":{"type":"number"},"bufferView":{"anyOf":[{"type":"null"},{"type":"number"}]},"byteOffset":{"type":"number"},"componentType":{"anyOf":[{"type":"null"},{"type":"number"}]},"count":{"anyOf":[{"type":"null"},{"type":"number"}]},"type":{"anyOf":[{"type":"null"},{"type":"string"}]},"normalized":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"min":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"max":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"sparseCount":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["accessorIndex","bufferView","byteOffset","componentType","count","type","normalized","min","max","sparseCount"],"additionalProperties":false}},"materials":{"type":"array","items":{"type":"object","properties":{"materialIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"doubleSided":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"alphaMode":{"type":"string"},"baseColorFactor":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"metallicFactor":{"type":"number"},"roughnessFactor":{"type":"number"},"baseColorTexture":{"anyOf":[{"type":"null"},{"type":"number"}]},"normalTexture":{"anyOf":[{"type":"null"},{"type":"number"}]},"emissiveFactor":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]}},"required":["materialIndex","name","doubleSided","alphaMode","baseColorFactor","metallicFactor","roughnessFactor","baseColorTexture","normalTexture","emissiveFactor"],"additionalProperties":false}},"textures":{"type":"array","items":{"type":"object","properties":{"textureIndex":{"type":"number"},"source":{"anyOf":[{"type":"null"},{"type":"number"}]},"sampler":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["textureIndex","source","sampler"],"additionalProperties":false}},"images":{"type":"array","items":{"type":"object","properties":{"imageIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"mimeType":{"anyOf":[{"type":"null"},{"type":"string"}]},"bufferView":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["imageIndex","name","mimeType","bufferView"],"additionalProperties":false}},"skins":{"type":"array","items":{"type":"object","properties":{"skinIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"joints":{"type":"array","items":{"type":"number"}},"skeleton":{"anyOf":[{"type":"null"},{"type":"number"}]},"inverseBindMatrices":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["skinIndex","name","joints","skeleton","inverseBindMatrices"],"additionalProperties":false}},"animations":{"type":"array","items":{"type":"object","properties":{"animationIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"channels":{"type":"array","items":{"type":"object","properties":{"sampler":{"anyOf":[{"type":"null"},{"type":"number"}]},"node":{"anyOf":[{"type":"null"},{"type":"number"}]},"path":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["sampler","node","path"],"additionalProperties":false}},"samplers":{"type":"array","items":{"type":"object","properties":{"input":{"anyOf":[{"type":"null"},{"type":"number"}]},"output":{"anyOf":[{"type":"null"},{"type":"number"}]},"interpolation":{"type":"string"}},"required":["input","output","interpolation"],"additionalProperties":false}}},"required":["animationIndex","name","channels","samplers"],"additionalProperties":false}}},"required":["defaultScene","scenes","nodes","meshes","accessors","materials","textures","images","skins","animations"],"additionalProperties":false} |
| recommendations | no | {"type":"object","properties":{"policy":{"const":"authored-frame-conservative-v1","type":"string"},"normalization":{"anyOf":[{"type":"null"},{"type":"object","properties":{"status":{"const":"suggested","type":"string"},"translation":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"measured-bounds-center-and-ground","type":"string"}},"required":["status","translation","quaternion","scale","evidence"],"additionalProperties":false}]},"orientation":{"type":"object","properties":{"up":{"const":"+Y","type":"string"},"upEvidence":{"const":"gltf-coordinate-convention","type":"string"},"front":{"const":"unknown","type":"string"},"horizontalLongAxis":{"anyOf":[{"const":"X","type":"string"},{"const":"Z","type":"string"},{"const":"ambiguous","type":"string"}]},"evidence":{"const":"measured-axis-aligned-extents","type":"string"}},"required":["up","upEvidence","front","horizontalLongAxis","evidence"],"additionalProperties":false},"colliderCandidates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"shape":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"conservative-rest-pose-bound-envelope","type":"string"},"approximation":{"const":"may-fill-openings-and-empty-space","type":"string"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["id","shape","center","halfExtents","evidence","approximation","requiresAcceptance"],"additionalProperties":false}},"physics":{"type":"object","properties":{"motion":{"const":"static","type":"string"},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"}]},"controller":{"const":"none","type":"string"},"role":{"const":"unknown","type":"string"},"evidence":{"const":"conservative-fallback-not-material-inference","type":"string"},"accepted":{"const":false,"type":"boolean"}},"required":["motion","collision","controller","role","evidence","accepted"],"additionalProperties":false}},"required":["policy","normalization","orientation","colliderCandidates","physics"],"additionalProperties":false} |
| staticColliders | no | {"type":"object","properties":{"status":{"anyOf":[{"const":"partial","type":"string"},{"const":"unsupported","type":"string"},{"const":"complete","type":"string"}]},"candidates":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"geometry":{"type":"object","properties":{"shape":{"const":"triangle-mesh","type":"string"},"motion":{"const":"static-only","type":"string"},"coordinateFrame":{"const":"authored-scene","type":"string"},"vertices":{"type":"array","items":{"type":"number"}},"indices":{"type":"array","items":{"type":"number"}},"sourceFaces":{"type":"array","items":{"type":"number"}},"evidence":{"const":"measured-triangles-no-simplification","type":"string"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["shape","motion","coordinateFrame","vertices","indices","evidence","requiresAcceptance"],"additionalProperties":false}},"required":["meshIndex","geometry"],"additionalProperties":false}}},"required":["status","candidates"],"additionalProperties":false} |
| fittedPrimitives | no | {"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"geometry":{"type":"object","properties":{"shape":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"six-face-triangle-union-coverage","type":"string"},"toleranceM":{"type":"number"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["shape","center","halfExtents","evidence","toleranceM","requiresAcceptance"],"additionalProperties":false}},"required":["meshIndex","geometry"],"additionalProperties":false}} |
| orientedBounds | no | {"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"bounds":{"type":"object","properties":{"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"evidence":{"const":"authored-orthogonal-axis-envelope","type":"string"},"occupancy":{"const":"unknown","type":"string"}},"required":["center","halfExtents","quaternion","evidence","occupancy"],"additionalProperties":false}},"required":["meshIndex","bounds"],"additionalProperties":false}} |
| clearanceProbes | no | {"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"origin":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"direction":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"rangeM":{"type":"number"},"hitDistanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"status":{"anyOf":[{"const":"unknown","type":"string"},{"const":"observed-hit","type":"string"},{"const":"no-hit-within-range","type":"string"}]},"scope":{"const":"single-ray-not-volume-clearance","type":"string"},"geometryComplete":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["featureId","origin","direction","rangeM","hitDistanceM","status","scope","geometryComplete"],"additionalProperties":false}} |
| rectangularCavities | no | {"type":"array","items":{"type":"object","properties":{"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"opening":{"const":"+Y","type":"string"},"evidence":{"const":"five-covered-inward-planes-empty-interior","type":"string"},"toleranceM":{"type":"number"}},"required":["bounds","opening","evidence","toleranceM"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"schema": {
"const": "quay.asset-analysis",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.2",
"type": "string"
},
"revision": {
"type": "string"
},
"content": {
"type": "object",
"properties": {
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"sha256",
"byteLength"
],
"additionalProperties": false
},
"analyzer": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"threeVersion": {
"type": "string"
},
"policy": {
"type": "string"
}
},
"required": [
"version",
"threeVersion",
"policy"
],
"additionalProperties": false
},
"coordinates": {
"type": "object",
"properties": {
"units": {
"const": "metres",
"type": "string"
},
"up": {
"const": "+Y",
"type": "string"
},
"authoredForward": {
"const": "unknown",
"type": "string"
}
},
"required": [
"units",
"up",
"authoredForward"
],
"additionalProperties": false
},
"validation": {
"type": "object",
"properties": {
"container": {
"const": "passed",
"type": "string"
},
"loader": {
"const": "passed",
"type": "string"
},
"khronosValidator": {
"anyOf": [
{
"const": "not-run",
"type": "string"
},
{
"type": "object",
"properties": {
"producer": {
"const": "Khronos glTF Validator",
"type": "string"
},
"version": {
"type": "string"
},
"maxIssues": {
"type": "number"
},
"errors": {
"type": "number"
},
"warnings": {
"type": "number"
},
"infos": {
"type": "number"
},
"hints": {
"type": "number"
},
"truncated": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"pointer": {
"type": "string"
},
"severity": {
"type": "number"
}
},
"required": [
"code",
"pointer",
"severity"
],
"additionalProperties": false
}
}
},
"required": [
"producer",
"version",
"maxIssues",
"errors",
"warnings",
"infos",
"hints",
"truncated",
"messages"
],
"additionalProperties": false
}
]
}
},
"required": [
"container",
"loader",
"khronosValidator"
],
"additionalProperties": false
},
"inventory": {
"type": "object",
"properties": {
"scenes": {
"type": "number"
},
"nodes": {
"type": "number"
},
"meshes": {
"type": "number"
},
"primitives": {
"type": "number"
},
"materials": {
"type": "number"
},
"textures": {
"type": "number"
},
"skins": {
"type": "number"
},
"morphTargets": {
"type": "number"
},
"animations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"channels": {
"type": "number"
}
},
"required": [
"name",
"channels"
],
"additionalProperties": false
}
}
},
"required": [
"scenes",
"nodes",
"meshes",
"primitives",
"materials",
"textures",
"skins",
"morphTargets",
"animations"
],
"additionalProperties": false
},
"geometry": {
"type": "object",
"properties": {
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"nodeIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"localMatrix": {
"type": "array",
"items": {
"type": "number"
}
},
"worldMatrix": {
"type": "array",
"items": {
"type": "number"
}
},
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"localBounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"aggregateBounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
}
},
"required": [
"nodeIndex",
"name",
"localMatrix",
"worldMatrix",
"bounds",
"localBounds",
"aggregateBounds"
],
"additionalProperties": false
}
},
"meshes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"gltfMeshIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"primitiveIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"vertices": {
"type": "number"
},
"triangles": {
"type": "number"
},
"skinned": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"morphTargets": {
"type": "number"
},
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
}
},
"required": [
"gltfMeshIndex",
"primitiveIndex",
"name",
"vertices",
"triangles",
"skinned",
"morphTargets",
"bounds"
],
"additionalProperties": false
}
}
},
"required": [
"bounds",
"nodes",
"meshes"
],
"additionalProperties": false
},
"featureAvailability": {
"type": "object",
"properties": {
"supportSurfaces": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"contactRegions": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"components": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"cavities": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"openings": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"handles": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"orientation": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"colliders": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
}
},
"required": [
"supportSurfaces",
"contactRegions",
"components",
"cavities",
"openings",
"handles",
"orientation",
"colliders"
],
"additionalProperties": false
},
"planarPatches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"meshIndex": {
"type": "number"
},
"faceIndices": {
"type": "array",
"items": {
"type": "number"
}
},
"faceIndicesComplete": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"normal": {
"type": "array",
"items": {
"type": "number"
}
},
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"areaM2": {
"type": "number"
},
"purposeCandidate": {
"anyOf": [
{
"const": "support",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "other",
"type": "string"
}
]
},
"evidence": {
"const": "measured-coplanar-edge-connected-triangles",
"type": "string"
},
"weldToleranceM": {
"type": "number"
},
"planeToleranceM": {
"type": "number"
},
"surfaceFrame": {
"type": "object",
"properties": {
"version": {
"const": "orthonormal-v1",
"type": "string"
},
"localToAsset": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"version",
"localToAsset"
],
"additionalProperties": false
}
},
"required": [
"featureId",
"meshIndex",
"faceIndices",
"faceIndicesComplete",
"normal",
"bounds",
"areaM2",
"purposeCandidate",
"evidence",
"weldToleranceM",
"planeToleranceM"
],
"additionalProperties": false
}
},
"components": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"meshIndex": {
"type": "number"
},
"triangleCount": {
"type": "number"
},
"areaM2": {
"type": "number"
},
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"topology": {
"anyOf": [
{
"const": "closed-oriented-at-weld-tolerance",
"type": "string"
},
{
"const": "open-or-nonmanifold",
"type": "string"
}
]
},
"weldToleranceM": {
"type": "number"
}
},
"required": [
"featureId",
"meshIndex",
"triangleCount",
"areaM2",
"bounds",
"topology",
"weldToleranceM"
],
"additionalProperties": false
}
},
"interpretation": {
"type": "object",
"properties": {
"status": {
"const": "unknown",
"type": "string"
},
"producer": {
"const": "none",
"type": "string"
}
},
"required": [
"status",
"producer"
],
"additionalProperties": false
},
"authored": {
"type": "object",
"properties": {
"defaultScene": {
"type": "number"
},
"scenes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sceneIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"roots": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"sceneIndex",
"name",
"roots"
],
"additionalProperties": false
}
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"nodeIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"children": {
"type": "array",
"items": {
"type": "number"
}
},
"mesh": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"skin": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"matrix": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"translation": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"rotation": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"scale": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"weights": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"required": [
"nodeIndex",
"name",
"children",
"mesh",
"skin",
"matrix",
"translation",
"rotation",
"scale",
"weights"
],
"additionalProperties": false
}
},
"meshes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"weights": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"primitives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"primitiveIndex": {
"type": "number"
},
"mode": {
"type": "number"
},
"indices": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"material": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"attributes": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"morphTargets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"required": [
"primitiveIndex",
"mode",
"indices",
"material",
"attributes",
"morphTargets"
],
"additionalProperties": false
}
}
},
"required": [
"meshIndex",
"name",
"weights",
"primitives"
],
"additionalProperties": false
}
},
"accessors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"accessorIndex": {
"type": "number"
},
"bufferView": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"byteOffset": {
"type": "number"
},
"componentType": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"count": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"type": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"normalized": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"min": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"max": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"sparseCount": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"accessorIndex",
"bufferView",
"byteOffset",
"componentType",
"count",
"type",
"normalized",
"min",
"max",
"sparseCount"
],
"additionalProperties": false
}
},
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"doubleSided": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"alphaMode": {
"type": "string"
},
"baseColorFactor": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"metallicFactor": {
"type": "number"
},
"roughnessFactor": {
"type": "number"
},
"baseColorTexture": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"normalTexture": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"emissiveFactor": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"required": [
"materialIndex",
"name",
"doubleSided",
"alphaMode",
"baseColorFactor",
"metallicFactor",
"roughnessFactor",
"baseColorTexture",
"normalTexture",
"emissiveFactor"
],
"additionalProperties": false
}
},
"textures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"textureIndex": {
"type": "number"
},
"source": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"sampler": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"textureIndex",
"source",
"sampler"
],
"additionalProperties": false
}
},
"images": {
"type": "array",
"items": {
"type": "object",
"properties": {
"imageIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"mimeType": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"bufferView": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"imageIndex",
"name",
"mimeType",
"bufferView"
],
"additionalProperties": false
}
},
"skins": {
"type": "array",
"items": {
"type": "object",
"properties": {
"skinIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"joints": {
"type": "array",
"items": {
"type": "number"
}
},
"skeleton": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"inverseBindMatrices": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"skinIndex",
"name",
"joints",
"skeleton",
"inverseBindMatrices"
],
"additionalProperties": false
}
},
"animations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"animationIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"channels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sampler": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"node": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"path": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"sampler",
"node",
"path"
],
"additionalProperties": false
}
},
"samplers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"input": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"output": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"interpolation": {
"type": "string"
}
},
"required": [
"input",
"output",
"interpolation"
],
"additionalProperties": false
}
}
},
"required": [
"animationIndex",
"name",
"channels",
"samplers"
],
"additionalProperties": false
}
}
},
"required": [
"defaultScene",
"scenes",
"nodes",
"meshes",
"accessors",
"materials",
"textures",
"images",
"skins",
"animations"
],
"additionalProperties": false
},
"recommendations": {
"type": "object",
"properties": {
"policy": {
"const": "authored-frame-conservative-v1",
"type": "string"
},
"normalization": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"status": {
"const": "suggested",
"type": "string"
},
"translation": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "measured-bounds-center-and-ground",
"type": "string"
}
},
"required": [
"status",
"translation",
"quaternion",
"scale",
"evidence"
],
"additionalProperties": false
}
]
},
"orientation": {
"type": "object",
"properties": {
"up": {
"const": "+Y",
"type": "string"
},
"upEvidence": {
"const": "gltf-coordinate-convention",
"type": "string"
},
"front": {
"const": "unknown",
"type": "string"
},
"horizontalLongAxis": {
"anyOf": [
{
"const": "X",
"type": "string"
},
{
"const": "Z",
"type": "string"
},
{
"const": "ambiguous",
"type": "string"
}
]
},
"evidence": {
"const": "measured-axis-aligned-extents",
"type": "string"
}
},
"required": [
"up",
"upEvidence",
"front",
"horizontalLongAxis",
"evidence"
],
"additionalProperties": false
},
"colliderCandidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"shape": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "conservative-rest-pose-bound-envelope",
"type": "string"
},
"approximation": {
"const": "may-fill-openings-and-empty-space",
"type": "string"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"id",
"shape",
"center",
"halfExtents",
"evidence",
"approximation",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"physics": {
"type": "object",
"properties": {
"motion": {
"const": "static",
"type": "string"
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
}
]
},
"controller": {
"const": "none",
"type": "string"
},
"role": {
"const": "unknown",
"type": "string"
},
"evidence": {
"const": "conservative-fallback-not-material-inference",
"type": "string"
},
"accepted": {
"const": false,
"type": "boolean"
}
},
"required": [
"motion",
"collision",
"controller",
"role",
"evidence",
"accepted"
],
"additionalProperties": false
}
},
"required": [
"policy",
"normalization",
"orientation",
"colliderCandidates",
"physics"
],
"additionalProperties": false
},
"staticColliders": {
"type": "object",
"properties": {
"status": {
"anyOf": [
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
},
{
"const": "complete",
"type": "string"
}
]
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"geometry": {
"type": "object",
"properties": {
"shape": {
"const": "triangle-mesh",
"type": "string"
},
"motion": {
"const": "static-only",
"type": "string"
},
"coordinateFrame": {
"const": "authored-scene",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
},
"indices": {
"type": "array",
"items": {
"type": "number"
}
},
"sourceFaces": {
"type": "array",
"items": {
"type": "number"
}
},
"evidence": {
"const": "measured-triangles-no-simplification",
"type": "string"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"shape",
"motion",
"coordinateFrame",
"vertices",
"indices",
"evidence",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"geometry"
],
"additionalProperties": false
}
}
},
"required": [
"status",
"candidates"
],
"additionalProperties": false
},
"fittedPrimitives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"geometry": {
"type": "object",
"properties": {
"shape": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "six-face-triangle-union-coverage",
"type": "string"
},
"toleranceM": {
"type": "number"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"shape",
"center",
"halfExtents",
"evidence",
"toleranceM",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"geometry"
],
"additionalProperties": false
}
},
"orientedBounds": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"bounds": {
"type": "object",
"properties": {
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"evidence": {
"const": "authored-orthogonal-axis-envelope",
"type": "string"
},
"occupancy": {
"const": "unknown",
"type": "string"
}
},
"required": [
"center",
"halfExtents",
"quaternion",
"evidence",
"occupancy"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"bounds"
],
"additionalProperties": false
}
},
"clearanceProbes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"origin": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"direction": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"rangeM": {
"type": "number"
},
"hitDistanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"status": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "observed-hit",
"type": "string"
},
{
"const": "no-hit-within-range",
"type": "string"
}
]
},
"scope": {
"const": "single-ray-not-volume-clearance",
"type": "string"
},
"geometryComplete": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"featureId",
"origin",
"direction",
"rangeM",
"hitDistanceM",
"status",
"scope",
"geometryComplete"
],
"additionalProperties": false
}
},
"rectangularCavities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"opening": {
"const": "+Y",
"type": "string"
},
"evidence": {
"const": "five-covered-inward-planes-empty-interior",
"type": "string"
},
"toleranceM": {
"type": "number"
}
},
"required": [
"bounds",
"opening",
"evidence",
"toleranceM"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"schemaVersion",
"revision",
"content",
"analyzer",
"coordinates",
"validation",
"inventory",
"geometry",
"featureAvailability",
"planarPatches",
"components",
"interpretation",
"authored"
],
"additionalProperties": false
}asset-manifest.schema.json
Download asset-manifest.schema.json
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.asset-manifest","type":"string"} |
| schemaVersion | yes | {"const":"2.0.0-draft.1","type":"string"} |
| manifestId | yes | {"type":"string","format":"uuid"} |
| assetId | yes | {"type":"string","format":"uuid"} |
| createdAt | yes | {"type":"string","format":"date-time"} |
| analysis | yes | {"type":"object","properties":{"schema":{"const":"quay.asset-analysis","type":"string"},"schemaVersion":{"const":"2.0.0-draft.2","type":"string"},"revision":{"type":"string"},"content":{"type":"object","properties":{"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["sha256","byteLength"],"additionalProperties":false},"analyzer":{"type":"object","properties":{"version":{"type":"string"},"threeVersion":{"type":"string"},"policy":{"type":"string"}},"required":["version","threeVersion","policy"],"additionalProperties":false},"coordinates":{"type":"object","properties":{"units":{"const":"metres","type":"string"},"up":{"const":"+Y","type":"string"},"authoredForward":{"const":"unknown","type":"string"}},"required":["units","up","authoredForward"],"additionalProperties":false},"validation":{"type":"object","properties":{"container":{"const":"passed","type":"string"},"loader":{"const":"passed","type":"string"},"khronosValidator":{"anyOf":[{"const":"not-run","type":"string"},{"type":"object","properties":{"producer":{"const":"Khronos glTF Validator","type":"string"},"version":{"type":"string"},"maxIssues":{"type":"number"},"errors":{"type":"number"},"warnings":{"type":"number"},"infos":{"type":"number"},"hints":{"type":"number"},"truncated":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"messages":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"pointer":{"type":"string"},"severity":{"type":"number"}},"required":["code","pointer","severity"],"additionalProperties":false}}},"required":["producer","version","maxIssues","errors","warnings","infos","hints","truncated","messages"],"additionalProperties":false}]}},"required":["container","loader","khronosValidator"],"additionalProperties":false},"inventory":{"type":"object","properties":{"scenes":{"type":"number"},"nodes":{"type":"number"},"meshes":{"type":"number"},"primitives":{"type":"number"},"materials":{"type":"number"},"textures":{"type":"number"},"skins":{"type":"number"},"morphTargets":{"type":"number"},"animations":{"type":"array","items":{"type":"object","properties":{"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"channels":{"type":"number"}},"required":["name","channels"],"additionalProperties":false}}},"required":["scenes","nodes","meshes","primitives","materials","textures","skins","morphTargets","animations"],"additionalProperties":false},"geometry":{"type":"object","properties":{"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"nodes":{"type":"array","items":{"type":"object","properties":{"nodeIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"localMatrix":{"type":"array","items":{"type":"number"}},"worldMatrix":{"type":"array","items":{"type":"number"}},"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"localBounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]},"aggregateBounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]}},"required":["nodeIndex","name","localMatrix","worldMatrix","bounds","localBounds","aggregateBounds"],"additionalProperties":false}},"meshes":{"type":"array","items":{"type":"object","properties":{"gltfMeshIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"primitiveIndex":{"anyOf":[{"type":"null"},{"type":"number"}]},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"vertices":{"type":"number"},"triangles":{"type":"number"},"skinned":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"morphTargets":{"type":"number"},"bounds":{"anyOf":[{"type":"null"},{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false}]}},"required":["gltfMeshIndex","primitiveIndex","name","vertices","triangles","skinned","morphTargets","bounds"],"additionalProperties":false}}},"required":["bounds","nodes","meshes"],"additionalProperties":false},"featureAvailability":{"type":"object","properties":{"supportSurfaces":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"contactRegions":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"components":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"cavities":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"openings":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"handles":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"orientation":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]},"colliders":{"anyOf":[{"const":"not-analyzed","type":"string"},{"const":"analyzed","type":"string"},{"const":"partial","type":"string"},{"const":"unsupported","type":"string"}]}},"required":["supportSurfaces","contactRegions","components","cavities","openings","handles","orientation","colliders"],"additionalProperties":false},"planarPatches":{"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"meshIndex":{"type":"number"},"faceIndices":{"type":"array","items":{"type":"number"}},"faceIndicesComplete":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"normal":{"type":"array","items":{"type":"number"}},"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"areaM2":{"type":"number"},"purposeCandidate":{"anyOf":[{"const":"support","type":"string"},{"const":"contact","type":"string"},{"const":"other","type":"string"}]},"evidence":{"const":"measured-coplanar-edge-connected-triangles","type":"string"},"weldToleranceM":{"type":"number"},"planeToleranceM":{"type":"number"},"surfaceFrame":{"type":"object","properties":{"version":{"const":"orthonormal-v1","type":"string"},"localToAsset":{"type":"array","items":{"type":"number"}}},"required":["version","localToAsset"],"additionalProperties":false}},"required":["featureId","meshIndex","faceIndices","faceIndicesComplete","normal","bounds","areaM2","purposeCandidate","evidence","weldToleranceM","planeToleranceM"],"additionalProperties":false}},"components":{"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"meshIndex":{"type":"number"},"triangleCount":{"type":"number"},"areaM2":{"type":"number"},"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"topology":{"anyOf":[{"const":"closed-oriented-at-weld-tolerance","type":"string"},{"const":"open-or-nonmanifold","type":"string"}]},"weldToleranceM":{"type":"number"}},"required":["featureId","meshIndex","triangleCount","areaM2","bounds","topology","weldToleranceM"],"additionalProperties":false}},"interpretation":{"type":"object","properties":{"status":{"const":"unknown","type":"string"},"producer":{"const":"none","type":"string"}},"required":["status","producer"],"additionalProperties":false},"authored":{"type":"object","properties":{"defaultScene":{"type":"number"},"scenes":{"type":"array","items":{"type":"object","properties":{"sceneIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"roots":{"type":"array","items":{"type":"number"}}},"required":["sceneIndex","name","roots"],"additionalProperties":false}},"nodes":{"type":"array","items":{"type":"object","properties":{"nodeIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"children":{"type":"array","items":{"type":"number"}},"mesh":{"anyOf":[{"type":"null"},{"type":"number"}]},"skin":{"anyOf":[{"type":"null"},{"type":"number"}]},"matrix":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"translation":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"rotation":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"scale":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"weights":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]}},"required":["nodeIndex","name","children","mesh","skin","matrix","translation","rotation","scale","weights"],"additionalProperties":false}},"meshes":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"weights":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"primitives":{"type":"array","items":{"type":"object","properties":{"primitiveIndex":{"type":"number"},"mode":{"type":"number"},"indices":{"anyOf":[{"type":"null"},{"type":"number"}]},"material":{"anyOf":[{"type":"null"},{"type":"number"}]},"attributes":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"null"},{"type":"number"}]}},"morphTargets":{"type":"array","items":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"null"},{"type":"number"}]}}}},"required":["primitiveIndex","mode","indices","material","attributes","morphTargets"],"additionalProperties":false}}},"required":["meshIndex","name","weights","primitives"],"additionalProperties":false}},"accessors":{"type":"array","items":{"type":"object","properties":{"accessorIndex":{"type":"number"},"bufferView":{"anyOf":[{"type":"null"},{"type":"number"}]},"byteOffset":{"type":"number"},"componentType":{"anyOf":[{"type":"null"},{"type":"number"}]},"count":{"anyOf":[{"type":"null"},{"type":"number"}]},"type":{"anyOf":[{"type":"null"},{"type":"string"}]},"normalized":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"min":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"max":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"sparseCount":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["accessorIndex","bufferView","byteOffset","componentType","count","type","normalized","min","max","sparseCount"],"additionalProperties":false}},"materials":{"type":"array","items":{"type":"object","properties":{"materialIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"doubleSided":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"alphaMode":{"type":"string"},"baseColorFactor":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]},"metallicFactor":{"type":"number"},"roughnessFactor":{"type":"number"},"baseColorTexture":{"anyOf":[{"type":"null"},{"type":"number"}]},"normalTexture":{"anyOf":[{"type":"null"},{"type":"number"}]},"emissiveFactor":{"anyOf":[{"type":"null"},{"type":"array","items":{"type":"number"}}]}},"required":["materialIndex","name","doubleSided","alphaMode","baseColorFactor","metallicFactor","roughnessFactor","baseColorTexture","normalTexture","emissiveFactor"],"additionalProperties":false}},"textures":{"type":"array","items":{"type":"object","properties":{"textureIndex":{"type":"number"},"source":{"anyOf":[{"type":"null"},{"type":"number"}]},"sampler":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["textureIndex","source","sampler"],"additionalProperties":false}},"images":{"type":"array","items":{"type":"object","properties":{"imageIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"mimeType":{"anyOf":[{"type":"null"},{"type":"string"}]},"bufferView":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["imageIndex","name","mimeType","bufferView"],"additionalProperties":false}},"skins":{"type":"array","items":{"type":"object","properties":{"skinIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"joints":{"type":"array","items":{"type":"number"}},"skeleton":{"anyOf":[{"type":"null"},{"type":"number"}]},"inverseBindMatrices":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["skinIndex","name","joints","skeleton","inverseBindMatrices"],"additionalProperties":false}},"animations":{"type":"array","items":{"type":"object","properties":{"animationIndex":{"type":"number"},"name":{"anyOf":[{"type":"null"},{"type":"string"}]},"channels":{"type":"array","items":{"type":"object","properties":{"sampler":{"anyOf":[{"type":"null"},{"type":"number"}]},"node":{"anyOf":[{"type":"null"},{"type":"number"}]},"path":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["sampler","node","path"],"additionalProperties":false}},"samplers":{"type":"array","items":{"type":"object","properties":{"input":{"anyOf":[{"type":"null"},{"type":"number"}]},"output":{"anyOf":[{"type":"null"},{"type":"number"}]},"interpolation":{"type":"string"}},"required":["input","output","interpolation"],"additionalProperties":false}}},"required":["animationIndex","name","channels","samplers"],"additionalProperties":false}}},"required":["defaultScene","scenes","nodes","meshes","accessors","materials","textures","images","skins","animations"],"additionalProperties":false},"recommendations":{"type":"object","properties":{"policy":{"const":"authored-frame-conservative-v1","type":"string"},"normalization":{"anyOf":[{"type":"null"},{"type":"object","properties":{"status":{"const":"suggested","type":"string"},"translation":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"measured-bounds-center-and-ground","type":"string"}},"required":["status","translation","quaternion","scale","evidence"],"additionalProperties":false}]},"orientation":{"type":"object","properties":{"up":{"const":"+Y","type":"string"},"upEvidence":{"const":"gltf-coordinate-convention","type":"string"},"front":{"const":"unknown","type":"string"},"horizontalLongAxis":{"anyOf":[{"const":"X","type":"string"},{"const":"Z","type":"string"},{"const":"ambiguous","type":"string"}]},"evidence":{"const":"measured-axis-aligned-extents","type":"string"}},"required":["up","upEvidence","front","horizontalLongAxis","evidence"],"additionalProperties":false},"colliderCandidates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"shape":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"conservative-rest-pose-bound-envelope","type":"string"},"approximation":{"const":"may-fill-openings-and-empty-space","type":"string"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["id","shape","center","halfExtents","evidence","approximation","requiresAcceptance"],"additionalProperties":false}},"physics":{"type":"object","properties":{"motion":{"const":"static","type":"string"},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"}]},"controller":{"const":"none","type":"string"},"role":{"const":"unknown","type":"string"},"evidence":{"const":"conservative-fallback-not-material-inference","type":"string"},"accepted":{"const":false,"type":"boolean"}},"required":["motion","collision","controller","role","evidence","accepted"],"additionalProperties":false}},"required":["policy","normalization","orientation","colliderCandidates","physics"],"additionalProperties":false},"staticColliders":{"type":"object","properties":{"status":{"anyOf":[{"const":"partial","type":"string"},{"const":"unsupported","type":"string"},{"const":"complete","type":"string"}]},"candidates":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"geometry":{"type":"object","properties":{"shape":{"const":"triangle-mesh","type":"string"},"motion":{"const":"static-only","type":"string"},"coordinateFrame":{"const":"authored-scene","type":"string"},"vertices":{"type":"array","items":{"type":"number"}},"indices":{"type":"array","items":{"type":"number"}},"sourceFaces":{"type":"array","items":{"type":"number"}},"evidence":{"const":"measured-triangles-no-simplification","type":"string"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["shape","motion","coordinateFrame","vertices","indices","evidence","requiresAcceptance"],"additionalProperties":false}},"required":["meshIndex","geometry"],"additionalProperties":false}}},"required":["status","candidates"],"additionalProperties":false},"fittedPrimitives":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"geometry":{"type":"object","properties":{"shape":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"evidence":{"const":"six-face-triangle-union-coverage","type":"string"},"toleranceM":{"type":"number"},"requiresAcceptance":{"const":true,"type":"boolean"}},"required":["shape","center","halfExtents","evidence","toleranceM","requiresAcceptance"],"additionalProperties":false}},"required":["meshIndex","geometry"],"additionalProperties":false}},"orientedBounds":{"type":"array","items":{"type":"object","properties":{"meshIndex":{"type":"number"},"bounds":{"type":"object","properties":{"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"evidence":{"const":"authored-orthogonal-axis-envelope","type":"string"},"occupancy":{"const":"unknown","type":"string"}},"required":["center","halfExtents","quaternion","evidence","occupancy"],"additionalProperties":false}},"required":["meshIndex","bounds"],"additionalProperties":false}},"clearanceProbes":{"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"origin":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"direction":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"rangeM":{"type":"number"},"hitDistanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"status":{"anyOf":[{"const":"unknown","type":"string"},{"const":"observed-hit","type":"string"},{"const":"no-hit-within-range","type":"string"}]},"scope":{"const":"single-ray-not-volume-clearance","type":"string"},"geometryComplete":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["featureId","origin","direction","rangeM","hitDistanceM","status","scope","geometryComplete"],"additionalProperties":false}},"rectangularCavities":{"type":"array","items":{"type":"object","properties":{"bounds":{"type":"object","properties":{"min":{"type":"array","items":{"type":"number"}},"max":{"type":"array","items":{"type":"number"}}},"required":["min","max"],"additionalProperties":false},"opening":{"const":"+Y","type":"string"},"evidence":{"const":"five-covered-inward-planes-empty-interior","type":"string"},"toleranceM":{"type":"number"}},"required":["bounds","opening","evidence","toleranceM"],"additionalProperties":false}}},"required":["schema","schemaVersion","revision","content","analyzer","coordinates","validation","inventory","geometry","featureAvailability","planarPatches","components","interpretation","authored"],"additionalProperties":false} |
| acceptedOverrides | no | {"type":"object","properties":{"producer":{"const":"user","type":"string"},"state":{"const":"accepted","type":"string"},"baseManifestId":{"type":"string","format":"uuid"},"analysisRevision":{"type":"string"},"values":{"type":"object","properties":{"role":{"anyOf":[{"type":"null"},{"type":"string"}]},"front":{"anyOf":[{"type":"null"},{"const":"+X","type":"string"},{"const":"-X","type":"string"},{"const":"+Z","type":"string"},{"const":"-Z","type":"string"}]},"featureLabels":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"physics":{"anyOf":[{"type":"null"},{"type":"object","properties":{"motion":{"anyOf":[{"const":"static","type":"string"},{"const":"dynamic","type":"string"},{"const":"kinematic","type":"string"}]},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"},{"const":"sensor","type":"string"}]},"controller":{"const":"none","type":"string"},"massKg":{"type":"number"},"friction":{"type":"number"},"restitution":{"type":"number"},"shape":{"anyOf":[{"const":"box","type":"string"},{"const":"triangle-mesh","type":"string"},{"const":"auto","type":"string"},{"const":"convex-hull","type":"string"},{"const":"decomposition","type":"string"}]}},"required":["motion","collision","controller"],"additionalProperties":false}]}},"required":["role","front","featureLabels","physics"],"additionalProperties":false}},"required":["producer","state","baseManifestId","analysisRevision","values"],"additionalProperties":false} |
| semanticInterpretation | no | {"type":"object","properties":{"version":{"const":"quay.asset-interpretation/1","type":"string"},"producer":{"anyOf":[{"const":"none","type":"string"},{"const":"openai","type":"string"}]},"model":{"anyOf":[{"type":"null"},{"type":"string"}]},"createdAt":{"type":"string","format":"date-time"},"baseManifestId":{"type":"string","format":"uuid"},"analysisRevision":{"type":"string"},"state":{"anyOf":[{"const":"unknown","type":"string"},{"const":"suggested","type":"string"},{"const":"accepted","type":"string"},{"const":"disputed","type":"string"}]},"reviewedBy":{"anyOf":[{"type":"null"},{"const":"user","type":"string"}]},"diagnostic":{"anyOf":[{"type":"null"},{"type":"string"}]},"suggestion":{"anyOf":[{"type":"null"},{"type":"object","properties":{"role":{"anyOf":[{"type":"null"},{"type":"string"}]},"physicalArchetype":{"anyOf":[{"type":"null"},{"const":"furniture","type":"string"},{"const":"prop","type":"string"},{"const":"architecture","type":"string"},{"const":"actor","type":"string"},{"const":"decorative","type":"string"}]},"affordances":{"type":"array","items":{"anyOf":[{"const":"supports","type":"string"},{"const":"contains","type":"string"},{"const":"graspable","type":"string"},{"const":"sit-on","type":"string"},{"const":"stand-on","type":"string"}]}},"features":{"type":"array","items":{"type":"object","properties":{"featureId":{"type":"string"},"label":{"type":"string"},"evidence":{"type":"array","items":{"type":"string"}},"confidence":{"type":"number"}},"required":["featureId","label","evidence","confidence"],"additionalProperties":false}},"evidence":{"type":"array","items":{"type":"string"}},"confidence":{"type":"number"}},"required":["role","physicalArchetype","affordances","features","evidence","confidence"],"additionalProperties":false}]}},"required":["version","producer","model","createdAt","baseManifestId","analysisRevision","state","reviewedBy","diagnostic","suggestion"],"additionalProperties":false} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"schema": {
"const": "quay.asset-manifest",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.1",
"type": "string"
},
"manifestId": {
"type": "string",
"format": "uuid"
},
"assetId": {
"type": "string",
"format": "uuid"
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"analysis": {
"type": "object",
"properties": {
"schema": {
"const": "quay.asset-analysis",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.2",
"type": "string"
},
"revision": {
"type": "string"
},
"content": {
"type": "object",
"properties": {
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"sha256",
"byteLength"
],
"additionalProperties": false
},
"analyzer": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"threeVersion": {
"type": "string"
},
"policy": {
"type": "string"
}
},
"required": [
"version",
"threeVersion",
"policy"
],
"additionalProperties": false
},
"coordinates": {
"type": "object",
"properties": {
"units": {
"const": "metres",
"type": "string"
},
"up": {
"const": "+Y",
"type": "string"
},
"authoredForward": {
"const": "unknown",
"type": "string"
}
},
"required": [
"units",
"up",
"authoredForward"
],
"additionalProperties": false
},
"validation": {
"type": "object",
"properties": {
"container": {
"const": "passed",
"type": "string"
},
"loader": {
"const": "passed",
"type": "string"
},
"khronosValidator": {
"anyOf": [
{
"const": "not-run",
"type": "string"
},
{
"type": "object",
"properties": {
"producer": {
"const": "Khronos glTF Validator",
"type": "string"
},
"version": {
"type": "string"
},
"maxIssues": {
"type": "number"
},
"errors": {
"type": "number"
},
"warnings": {
"type": "number"
},
"infos": {
"type": "number"
},
"hints": {
"type": "number"
},
"truncated": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"pointer": {
"type": "string"
},
"severity": {
"type": "number"
}
},
"required": [
"code",
"pointer",
"severity"
],
"additionalProperties": false
}
}
},
"required": [
"producer",
"version",
"maxIssues",
"errors",
"warnings",
"infos",
"hints",
"truncated",
"messages"
],
"additionalProperties": false
}
]
}
},
"required": [
"container",
"loader",
"khronosValidator"
],
"additionalProperties": false
},
"inventory": {
"type": "object",
"properties": {
"scenes": {
"type": "number"
},
"nodes": {
"type": "number"
},
"meshes": {
"type": "number"
},
"primitives": {
"type": "number"
},
"materials": {
"type": "number"
},
"textures": {
"type": "number"
},
"skins": {
"type": "number"
},
"morphTargets": {
"type": "number"
},
"animations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"channels": {
"type": "number"
}
},
"required": [
"name",
"channels"
],
"additionalProperties": false
}
}
},
"required": [
"scenes",
"nodes",
"meshes",
"primitives",
"materials",
"textures",
"skins",
"morphTargets",
"animations"
],
"additionalProperties": false
},
"geometry": {
"type": "object",
"properties": {
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"nodeIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"localMatrix": {
"type": "array",
"items": {
"type": "number"
}
},
"worldMatrix": {
"type": "array",
"items": {
"type": "number"
}
},
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"localBounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
},
"aggregateBounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
}
},
"required": [
"nodeIndex",
"name",
"localMatrix",
"worldMatrix",
"bounds",
"localBounds",
"aggregateBounds"
],
"additionalProperties": false
}
},
"meshes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"gltfMeshIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"primitiveIndex": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"vertices": {
"type": "number"
},
"triangles": {
"type": "number"
},
"skinned": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"morphTargets": {
"type": "number"
},
"bounds": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
]
}
},
"required": [
"gltfMeshIndex",
"primitiveIndex",
"name",
"vertices",
"triangles",
"skinned",
"morphTargets",
"bounds"
],
"additionalProperties": false
}
}
},
"required": [
"bounds",
"nodes",
"meshes"
],
"additionalProperties": false
},
"featureAvailability": {
"type": "object",
"properties": {
"supportSurfaces": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"contactRegions": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"components": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"cavities": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"openings": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"handles": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"orientation": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"colliders": {
"anyOf": [
{
"const": "not-analyzed",
"type": "string"
},
{
"const": "analyzed",
"type": "string"
},
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
}
},
"required": [
"supportSurfaces",
"contactRegions",
"components",
"cavities",
"openings",
"handles",
"orientation",
"colliders"
],
"additionalProperties": false
},
"planarPatches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"meshIndex": {
"type": "number"
},
"faceIndices": {
"type": "array",
"items": {
"type": "number"
}
},
"faceIndicesComplete": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"normal": {
"type": "array",
"items": {
"type": "number"
}
},
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"areaM2": {
"type": "number"
},
"purposeCandidate": {
"anyOf": [
{
"const": "support",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "other",
"type": "string"
}
]
},
"evidence": {
"const": "measured-coplanar-edge-connected-triangles",
"type": "string"
},
"weldToleranceM": {
"type": "number"
},
"planeToleranceM": {
"type": "number"
},
"surfaceFrame": {
"type": "object",
"properties": {
"version": {
"const": "orthonormal-v1",
"type": "string"
},
"localToAsset": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"version",
"localToAsset"
],
"additionalProperties": false
}
},
"required": [
"featureId",
"meshIndex",
"faceIndices",
"faceIndicesComplete",
"normal",
"bounds",
"areaM2",
"purposeCandidate",
"evidence",
"weldToleranceM",
"planeToleranceM"
],
"additionalProperties": false
}
},
"components": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"meshIndex": {
"type": "number"
},
"triangleCount": {
"type": "number"
},
"areaM2": {
"type": "number"
},
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"topology": {
"anyOf": [
{
"const": "closed-oriented-at-weld-tolerance",
"type": "string"
},
{
"const": "open-or-nonmanifold",
"type": "string"
}
]
},
"weldToleranceM": {
"type": "number"
}
},
"required": [
"featureId",
"meshIndex",
"triangleCount",
"areaM2",
"bounds",
"topology",
"weldToleranceM"
],
"additionalProperties": false
}
},
"interpretation": {
"type": "object",
"properties": {
"status": {
"const": "unknown",
"type": "string"
},
"producer": {
"const": "none",
"type": "string"
}
},
"required": [
"status",
"producer"
],
"additionalProperties": false
},
"authored": {
"type": "object",
"properties": {
"defaultScene": {
"type": "number"
},
"scenes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sceneIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"roots": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"sceneIndex",
"name",
"roots"
],
"additionalProperties": false
}
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"nodeIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"children": {
"type": "array",
"items": {
"type": "number"
}
},
"mesh": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"skin": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"matrix": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"translation": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"rotation": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"scale": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"weights": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"required": [
"nodeIndex",
"name",
"children",
"mesh",
"skin",
"matrix",
"translation",
"rotation",
"scale",
"weights"
],
"additionalProperties": false
}
},
"meshes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"weights": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"primitives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"primitiveIndex": {
"type": "number"
},
"mode": {
"type": "number"
},
"indices": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"material": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"attributes": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"morphTargets": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
}
}
},
"required": [
"primitiveIndex",
"mode",
"indices",
"material",
"attributes",
"morphTargets"
],
"additionalProperties": false
}
}
},
"required": [
"meshIndex",
"name",
"weights",
"primitives"
],
"additionalProperties": false
}
},
"accessors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"accessorIndex": {
"type": "number"
},
"bufferView": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"byteOffset": {
"type": "number"
},
"componentType": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"count": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"type": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"normalized": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"min": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"max": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"sparseCount": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"accessorIndex",
"bufferView",
"byteOffset",
"componentType",
"count",
"type",
"normalized",
"min",
"max",
"sparseCount"
],
"additionalProperties": false
}
},
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"doubleSided": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"alphaMode": {
"type": "string"
},
"baseColorFactor": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
},
"metallicFactor": {
"type": "number"
},
"roughnessFactor": {
"type": "number"
},
"baseColorTexture": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"normalTexture": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"emissiveFactor": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"required": [
"materialIndex",
"name",
"doubleSided",
"alphaMode",
"baseColorFactor",
"metallicFactor",
"roughnessFactor",
"baseColorTexture",
"normalTexture",
"emissiveFactor"
],
"additionalProperties": false
}
},
"textures": {
"type": "array",
"items": {
"type": "object",
"properties": {
"textureIndex": {
"type": "number"
},
"source": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"sampler": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"textureIndex",
"source",
"sampler"
],
"additionalProperties": false
}
},
"images": {
"type": "array",
"items": {
"type": "object",
"properties": {
"imageIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"mimeType": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"bufferView": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"imageIndex",
"name",
"mimeType",
"bufferView"
],
"additionalProperties": false
}
},
"skins": {
"type": "array",
"items": {
"type": "object",
"properties": {
"skinIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"joints": {
"type": "array",
"items": {
"type": "number"
}
},
"skeleton": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"inverseBindMatrices": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"skinIndex",
"name",
"joints",
"skeleton",
"inverseBindMatrices"
],
"additionalProperties": false
}
},
"animations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"animationIndex": {
"type": "number"
},
"name": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"channels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"sampler": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"node": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"path": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"sampler",
"node",
"path"
],
"additionalProperties": false
}
},
"samplers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"input": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"output": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"interpolation": {
"type": "string"
}
},
"required": [
"input",
"output",
"interpolation"
],
"additionalProperties": false
}
}
},
"required": [
"animationIndex",
"name",
"channels",
"samplers"
],
"additionalProperties": false
}
}
},
"required": [
"defaultScene",
"scenes",
"nodes",
"meshes",
"accessors",
"materials",
"textures",
"images",
"skins",
"animations"
],
"additionalProperties": false
},
"recommendations": {
"type": "object",
"properties": {
"policy": {
"const": "authored-frame-conservative-v1",
"type": "string"
},
"normalization": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"status": {
"const": "suggested",
"type": "string"
},
"translation": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "measured-bounds-center-and-ground",
"type": "string"
}
},
"required": [
"status",
"translation",
"quaternion",
"scale",
"evidence"
],
"additionalProperties": false
}
]
},
"orientation": {
"type": "object",
"properties": {
"up": {
"const": "+Y",
"type": "string"
},
"upEvidence": {
"const": "gltf-coordinate-convention",
"type": "string"
},
"front": {
"const": "unknown",
"type": "string"
},
"horizontalLongAxis": {
"anyOf": [
{
"const": "X",
"type": "string"
},
{
"const": "Z",
"type": "string"
},
{
"const": "ambiguous",
"type": "string"
}
]
},
"evidence": {
"const": "measured-axis-aligned-extents",
"type": "string"
}
},
"required": [
"up",
"upEvidence",
"front",
"horizontalLongAxis",
"evidence"
],
"additionalProperties": false
},
"colliderCandidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"shape": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "conservative-rest-pose-bound-envelope",
"type": "string"
},
"approximation": {
"const": "may-fill-openings-and-empty-space",
"type": "string"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"id",
"shape",
"center",
"halfExtents",
"evidence",
"approximation",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"physics": {
"type": "object",
"properties": {
"motion": {
"const": "static",
"type": "string"
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
}
]
},
"controller": {
"const": "none",
"type": "string"
},
"role": {
"const": "unknown",
"type": "string"
},
"evidence": {
"const": "conservative-fallback-not-material-inference",
"type": "string"
},
"accepted": {
"const": false,
"type": "boolean"
}
},
"required": [
"motion",
"collision",
"controller",
"role",
"evidence",
"accepted"
],
"additionalProperties": false
}
},
"required": [
"policy",
"normalization",
"orientation",
"colliderCandidates",
"physics"
],
"additionalProperties": false
},
"staticColliders": {
"type": "object",
"properties": {
"status": {
"anyOf": [
{
"const": "partial",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
},
{
"const": "complete",
"type": "string"
}
]
},
"candidates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"geometry": {
"type": "object",
"properties": {
"shape": {
"const": "triangle-mesh",
"type": "string"
},
"motion": {
"const": "static-only",
"type": "string"
},
"coordinateFrame": {
"const": "authored-scene",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
},
"indices": {
"type": "array",
"items": {
"type": "number"
}
},
"sourceFaces": {
"type": "array",
"items": {
"type": "number"
}
},
"evidence": {
"const": "measured-triangles-no-simplification",
"type": "string"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"shape",
"motion",
"coordinateFrame",
"vertices",
"indices",
"evidence",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"geometry"
],
"additionalProperties": false
}
}
},
"required": [
"status",
"candidates"
],
"additionalProperties": false
},
"fittedPrimitives": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"geometry": {
"type": "object",
"properties": {
"shape": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"evidence": {
"const": "six-face-triangle-union-coverage",
"type": "string"
},
"toleranceM": {
"type": "number"
},
"requiresAcceptance": {
"const": true,
"type": "boolean"
}
},
"required": [
"shape",
"center",
"halfExtents",
"evidence",
"toleranceM",
"requiresAcceptance"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"geometry"
],
"additionalProperties": false
}
},
"orientedBounds": {
"type": "array",
"items": {
"type": "object",
"properties": {
"meshIndex": {
"type": "number"
},
"bounds": {
"type": "object",
"properties": {
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"evidence": {
"const": "authored-orthogonal-axis-envelope",
"type": "string"
},
"occupancy": {
"const": "unknown",
"type": "string"
}
},
"required": [
"center",
"halfExtents",
"quaternion",
"evidence",
"occupancy"
],
"additionalProperties": false
}
},
"required": [
"meshIndex",
"bounds"
],
"additionalProperties": false
}
},
"clearanceProbes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"origin": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"direction": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"rangeM": {
"type": "number"
},
"hitDistanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"status": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "observed-hit",
"type": "string"
},
{
"const": "no-hit-within-range",
"type": "string"
}
]
},
"scope": {
"const": "single-ray-not-volume-clearance",
"type": "string"
},
"geometryComplete": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"featureId",
"origin",
"direction",
"rangeM",
"hitDistanceM",
"status",
"scope",
"geometryComplete"
],
"additionalProperties": false
}
},
"rectangularCavities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"bounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"items": {
"type": "number"
}
},
"max": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"opening": {
"const": "+Y",
"type": "string"
},
"evidence": {
"const": "five-covered-inward-planes-empty-interior",
"type": "string"
},
"toleranceM": {
"type": "number"
}
},
"required": [
"bounds",
"opening",
"evidence",
"toleranceM"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"schemaVersion",
"revision",
"content",
"analyzer",
"coordinates",
"validation",
"inventory",
"geometry",
"featureAvailability",
"planarPatches",
"components",
"interpretation",
"authored"
],
"additionalProperties": false
},
"acceptedOverrides": {
"type": "object",
"properties": {
"producer": {
"const": "user",
"type": "string"
},
"state": {
"const": "accepted",
"type": "string"
},
"baseManifestId": {
"type": "string",
"format": "uuid"
},
"analysisRevision": {
"type": "string"
},
"values": {
"type": "object",
"properties": {
"role": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"front": {
"anyOf": [
{
"type": "null"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-X",
"type": "string"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "-Z",
"type": "string"
}
]
},
"featureLabels": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"physics": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"motion": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "dynamic",
"type": "string"
},
{
"const": "kinematic",
"type": "string"
}
]
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
},
{
"const": "sensor",
"type": "string"
}
]
},
"controller": {
"const": "none",
"type": "string"
},
"massKg": {
"type": "number"
},
"friction": {
"type": "number"
},
"restitution": {
"type": "number"
},
"shape": {
"anyOf": [
{
"const": "box",
"type": "string"
},
{
"const": "triangle-mesh",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "convex-hull",
"type": "string"
},
{
"const": "decomposition",
"type": "string"
}
]
}
},
"required": [
"motion",
"collision",
"controller"
],
"additionalProperties": false
}
]
}
},
"required": [
"role",
"front",
"featureLabels",
"physics"
],
"additionalProperties": false
}
},
"required": [
"producer",
"state",
"baseManifestId",
"analysisRevision",
"values"
],
"additionalProperties": false
},
"semanticInterpretation": {
"type": "object",
"properties": {
"version": {
"const": "quay.asset-interpretation/1",
"type": "string"
},
"producer": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "openai",
"type": "string"
}
]
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"baseManifestId": {
"type": "string",
"format": "uuid"
},
"analysisRevision": {
"type": "string"
},
"state": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "suggested",
"type": "string"
},
{
"const": "accepted",
"type": "string"
},
{
"const": "disputed",
"type": "string"
}
]
},
"reviewedBy": {
"anyOf": [
{
"type": "null"
},
{
"const": "user",
"type": "string"
}
]
},
"diagnostic": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"suggestion": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"role": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"physicalArchetype": {
"anyOf": [
{
"type": "null"
},
{
"const": "furniture",
"type": "string"
},
{
"const": "prop",
"type": "string"
},
{
"const": "architecture",
"type": "string"
},
{
"const": "actor",
"type": "string"
},
{
"const": "decorative",
"type": "string"
}
]
},
"affordances": {
"type": "array",
"items": {
"anyOf": [
{
"const": "supports",
"type": "string"
},
{
"const": "contains",
"type": "string"
},
{
"const": "graspable",
"type": "string"
},
{
"const": "sit-on",
"type": "string"
},
{
"const": "stand-on",
"type": "string"
}
]
}
},
"features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"featureId": {
"type": "string"
},
"label": {
"type": "string"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
},
"confidence": {
"type": "number"
}
},
"required": [
"featureId",
"label",
"evidence",
"confidence"
],
"additionalProperties": false
}
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
},
"confidence": {
"type": "number"
}
},
"required": [
"role",
"physicalArchetype",
"affordances",
"features",
"evidence",
"confidence"
],
"additionalProperties": false
}
]
}
},
"required": [
"version",
"producer",
"model",
"createdAt",
"baseManifestId",
"analysisRevision",
"state",
"reviewedBy",
"diagnostic",
"suggestion"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"manifestId",
"assetId",
"createdAt",
"analysis"
],
"additionalProperties": false
}audio.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"ridley.audio/1","type":"string"} |
| assetId | yes | {"type":"string"} |
| displayName | yes | {"type":"string"} |
| sha256 | yes | {"type":"string"} |
| uri | yes | {"type":"string"} |
| byteLength | yes | {"type":"number"} |
| mediaType | yes | {"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]} |
| durationSeconds | yes | {"type":"number"} |
| sampleRate | yes | {"type":"number"} |
| channels | yes | {"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}cinematic.schema.json
Download cinematic.schema.json
| Root property | Required | Constraint |
|---|---|---|
| audio | no | {"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.audio/1","type":"string"},"assetId":{"type":"string"},"displayName":{"type":"string"},"sha256":{"type":"string"},"uri":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]},"durationSeconds":{"type":"number"},"sampleRate":{"type":"number"},"channels":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}},"required":["version","assetId","displayName","sha256","uri","byteLength","mediaType","durationSeconds","sampleRate","channels"],"additionalProperties":false}} |
| schema | yes | {"const":"quay.cinematic","type":"string"} |
| version | yes | {"const":"1.0.0","type":"string"} |
| compiler | yes | {"const":"ridley.compiler/1","type":"string"} |
| worldSceneId | yes | {"type":"string"} |
| worldSourceHash | yes | {"type":"string"} |
| sourceHash | yes | {"type":"string"} |
| bindings | yes | {"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}} |
| direction | no | {"type":"object","properties":{"schema":{"const":"quay.room-direction","type":"string"},"version":{"const":"1.0.0","type":"string"},"compiler":{"const":"ridley.direction/1","type":"string"},"manual":{"const":"ridley.direction-manual/1","type":"string"},"styleProfile":{"type":"object","properties":{"styles":{"type":"array","items":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"restrained","type":"string"},{"const":"surreal","type":"string"},{"const":"documentary","type":"string"},{"const":"elegant","type":"string"},{"const":"playful","type":"string"},{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"cold","type":"string"},{"const":"technological","type":"string"},{"const":"natural","type":"string"},{"const":"intimate","type":"string"},{"const":"theatrical","type":"string"},{"const":"high-contrast","type":"string"},{"const":"soft-contrast","type":"string"}]}},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"restrained","type":"string"},{"const":"none","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"natural","type":"string"},{"const":"dramatic","type":"string"},{"const":"soft","type":"string"}]}},"required":["room"],"additionalProperties":false}}},"required":["styles"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intent":{"type":"object","properties":{"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"restrained","type":"string"},{"const":"none","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"natural","type":"string"},{"const":"dramatic","type":"string"},{"const":"soft","type":"string"}]}},"required":["intensity","mood","hero","motion","contrast"],"additionalProperties":false},"resolved":{"type":"object","properties":{"lightingPreset":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"clinical","type":"string"},{"const":"dramatic-hero","type":"string"}]},"atmospherePreset":{"anyOf":[{"const":"none","type":"string"},{"const":"subtle-depth","type":"string"},{"const":"haze","type":"string"}]},"postProcessingPreset":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"hero","type":"string"}]},"cameraEntryPreset":{"anyOf":[{"const":"none","type":"string"},{"const":"settle","type":"string"},{"const":"slow-reveal","type":"string"},{"const":"hero-reveal","type":"string"}]},"explorationPreset":{"const":"free-stable","type":"string"},"ambientMotion":{"type":"array","items":{"type":"string"}},"performance":{"type":"object","properties":{"cinematicHigh":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"balanced":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"performance":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]}},"required":["cinematicHigh","balanced","performance"],"additionalProperties":false}},"required":["lightingPreset","atmospherePreset","postProcessingPreset","cameraEntryPreset","explorationPreset","ambientMotion","performance"],"additionalProperties":false},"rules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"event":{"anyOf":[{"const":"wright.room.enter","type":"string"},{"const":"wright.room.leave","type":"string"},{"const":"qway.object.near","type":"string"},{"const":"ridley.dialogue.start","type":"string"},{"const":"ridley.dialogue.end","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"preset":{"anyOf":[{"const":"hero","type":"string"},{"const":"entry","type":"string"},{"const":"exploration","type":"string"},{"const":"dialogue","type":"string"},{"const":"exit","type":"string"}]},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","event","target","preset","once"],"additionalProperties":false}}},"required":["room","intent","resolved","rules"],"additionalProperties":false}}},"required":["schema","version","compiler","manual","styleProfile","rooms"],"additionalProperties":false} |
| sequences | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"duration":{"type":"number"},"cues":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"shot","type":"string"},"type":{"anyOf":[{"const":"extreme-closeup","type":"string"},{"const":"closeup","type":"string"},{"const":"medium-closeup","type":"string"},{"const":"medium","type":"string"},{"const":"american","type":"string"},{"const":"full","type":"string"},{"const":"long","type":"string"},{"const":"extreme-long","type":"string"},{"const":"two-shot","type":"string"},{"const":"over-the-shoulder","type":"string"},{"const":"pov","type":"string"},{"const":"establishing","type":"string"},{"const":"insert","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"shoulder":{"anyOf":[{"type":"null"},{"type":"string"}]},"movement":{"anyOf":[{"const":"static","type":"string"},{"const":"pan","type":"string"},{"const":"tilt","type":"string"},{"const":"dolly","type":"string"},{"const":"truck","type":"string"},{"const":"pedestal","type":"string"},{"const":"orbit","type":"string"},{"const":"zoom","type":"string"},{"const":"follow","type":"string"},{"const":"crane","type":"string"}]},"amount":{"type":"number"},"transition":{"anyOf":[{"const":"cut","type":"string"},{"const":"smooth","type":"string"}]}},"required":["id","start","duration","span","kind","type","subjects","shoulder","movement","amount","transition"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"anyOf":[{"const":"dialogue","type":"string"},{"const":"subtitle","type":"string"},{"const":"narration","type":"string"}]},"actor":{"anyOf":[{"type":"null"},{"type":"string"}]},"text":{"type":"string"},"speech":{"type":"object","additionalProperties":false,"required":["model","voice","language","instructions","speed"],"properties":{"model":{"const":"gpt-4o-mini-tts-2025-12-15","type":"string"},"voice":{"enum":["alloy","ash","ballad","coral","echo","fable","nova","onyx","sage","shimmer","verse","marin","cedar"],"type":"string"},"language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z]{2,8})?$"},"instructions":{"type":"string","maxLength":2000},"speed":{"type":"number","minimum":0.25,"maximum":4}}},"speechAudio":{"type":"string","pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$"}},"required":["id","start","duration","span","kind","actor","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"action","type":"string"},"actor":{"type":"string"},"action":{"anyOf":[{"const":"look-at","type":"string"},{"const":"move-to","type":"string"},{"const":"animate","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"clip":{"anyOf":[{"type":"null"},{"type":"number"}]},"persistence":{"anyOf":[{"const":"temporary","type":"string"},{"const":"runtime","type":"string"}]}},"required":["id","start","duration","span","kind","actor","action","target","clip","persistence"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"emit","type":"string"},"event":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["id","start","duration","span","kind","event","target"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"music","type":"string"},"command":{"type":"object","properties":{"action":{"anyOf":[{"const":"play","type":"string"},{"const":"stop","type":"string"},{"const":"crossfade","type":"string"}]},"assetId":{"type":"string"},"from":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"},"fade":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["action","assetId","from","volume","fade","loop"],"additionalProperties":false}},"required":["id","start","duration","span","kind","command"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"sfx","type":"string"},"assetId":{"type":"string"},"spatial":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"}},"required":["id","start","duration","span","kind","assetId","spatial","volume"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"return","type":"string"}},"required":["id","start","duration","span","kind"],"additionalProperties":false}]}}},"required":["id","duration","cues"],"additionalProperties":false}} |
| triggers | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"subject":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"event":{"anyOf":[{"const":"near","type":"string"},{"const":"qway.object.enter","type":"string"},{"const":"qway.object.leave","type":"string"},{"const":"qway.relation.changed","type":"string"},{"const":"qway.interaction","type":"string"},{"const":"qway.trigger","type":"string"},{"const":"ridley.complete","type":"string"}]},"distance":{"type":"number"},"cinematic":{"type":"string"},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","subject","target","event","distance","cinematic","once"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.cinematic",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.compiler/1",
"type": "string"
},
"worldSceneId": {
"type": "string"
},
"worldSourceHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"direction": {
"type": "object",
"properties": {
"schema": {
"const": "quay.room-direction",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.direction/1",
"type": "string"
},
"manual": {
"const": "ridley.direction-manual/1",
"type": "string"
},
"styleProfile": {
"type": "object",
"properties": {
"styles": {
"type": "array",
"items": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "surreal",
"type": "string"
},
{
"const": "documentary",
"type": "string"
},
{
"const": "elegant",
"type": "string"
},
{
"const": "playful",
"type": "string"
},
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "cold",
"type": "string"
},
{
"const": "technological",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "theatrical",
"type": "string"
},
{
"const": "high-contrast",
"type": "string"
},
{
"const": "soft-contrast",
"type": "string"
}
]
}
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "restrained",
"type": "string"
},
{
"const": "none",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
}
},
"required": [
"room"
],
"additionalProperties": false
}
}
},
"required": [
"styles"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intent": {
"type": "object",
"properties": {
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "restrained",
"type": "string"
},
{
"const": "none",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
}
},
"required": [
"intensity",
"mood",
"hero",
"motion",
"contrast"
],
"additionalProperties": false
},
"resolved": {
"type": "object",
"properties": {
"lightingPreset": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "dramatic-hero",
"type": "string"
}
]
},
"atmospherePreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "subtle-depth",
"type": "string"
},
{
"const": "haze",
"type": "string"
}
]
},
"postProcessingPreset": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "hero",
"type": "string"
}
]
},
"cameraEntryPreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "settle",
"type": "string"
},
{
"const": "slow-reveal",
"type": "string"
},
{
"const": "hero-reveal",
"type": "string"
}
]
},
"explorationPreset": {
"const": "free-stable",
"type": "string"
},
"ambientMotion": {
"type": "array",
"items": {
"type": "string"
}
},
"performance": {
"type": "object",
"properties": {
"cinematicHigh": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"balanced": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"performance": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
}
},
"required": [
"cinematicHigh",
"balanced",
"performance"
],
"additionalProperties": false
}
},
"required": [
"lightingPreset",
"atmospherePreset",
"postProcessingPreset",
"cameraEntryPreset",
"explorationPreset",
"ambientMotion",
"performance"
],
"additionalProperties": false
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"event": {
"anyOf": [
{
"const": "wright.room.enter",
"type": "string"
},
{
"const": "wright.room.leave",
"type": "string"
},
{
"const": "qway.object.near",
"type": "string"
},
{
"const": "ridley.dialogue.start",
"type": "string"
},
{
"const": "ridley.dialogue.end",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"const": "hero",
"type": "string"
},
{
"const": "entry",
"type": "string"
},
{
"const": "exploration",
"type": "string"
},
{
"const": "dialogue",
"type": "string"
},
{
"const": "exit",
"type": "string"
}
]
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"event",
"target",
"preset",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"intent",
"resolved",
"rules"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"manual",
"styleProfile",
"rooms"
],
"additionalProperties": false
},
"sequences": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"duration": {
"type": "number"
},
"cues": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "shot",
"type": "string"
},
"type": {
"anyOf": [
{
"const": "extreme-closeup",
"type": "string"
},
{
"const": "closeup",
"type": "string"
},
{
"const": "medium-closeup",
"type": "string"
},
{
"const": "medium",
"type": "string"
},
{
"const": "american",
"type": "string"
},
{
"const": "full",
"type": "string"
},
{
"const": "long",
"type": "string"
},
{
"const": "extreme-long",
"type": "string"
},
{
"const": "two-shot",
"type": "string"
},
{
"const": "over-the-shoulder",
"type": "string"
},
{
"const": "pov",
"type": "string"
},
{
"const": "establishing",
"type": "string"
},
{
"const": "insert",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"shoulder": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"movement": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "pan",
"type": "string"
},
{
"const": "tilt",
"type": "string"
},
{
"const": "dolly",
"type": "string"
},
{
"const": "truck",
"type": "string"
},
{
"const": "pedestal",
"type": "string"
},
{
"const": "orbit",
"type": "string"
},
{
"const": "zoom",
"type": "string"
},
{
"const": "follow",
"type": "string"
},
{
"const": "crane",
"type": "string"
}
]
},
"amount": {
"type": "number"
},
"transition": {
"anyOf": [
{
"const": "cut",
"type": "string"
},
{
"const": "smooth",
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"type",
"subjects",
"shoulder",
"movement",
"amount",
"transition"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"anyOf": [
{
"const": "dialogue",
"type": "string"
},
{
"const": "subtitle",
"type": "string"
},
{
"const": "narration",
"type": "string"
}
]
},
"actor": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"text": {
"type": "string"
},
"speech": {
"type": "object",
"additionalProperties": false,
"required": [
"model",
"voice",
"language",
"instructions",
"speed"
],
"properties": {
"model": {
"const": "gpt-4o-mini-tts-2025-12-15",
"type": "string"
},
"voice": {
"enum": [
"alloy",
"ash",
"ballad",
"coral",
"echo",
"fable",
"nova",
"onyx",
"sage",
"shimmer",
"verse",
"marin",
"cedar"
],
"type": "string"
},
"language": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[A-Za-z]{2,8})?$"
},
"instructions": {
"type": "string",
"maxLength": 2000
},
"speed": {
"type": "number",
"minimum": 0.25,
"maximum": 4
}
}
},
"speechAudio": {
"type": "string",
"pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"actor",
"text"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "action",
"type": "string"
},
"actor": {
"type": "string"
},
"action": {
"anyOf": [
{
"const": "look-at",
"type": "string"
},
{
"const": "move-to",
"type": "string"
},
{
"const": "animate",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"clip": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"persistence": {
"anyOf": [
{
"const": "temporary",
"type": "string"
},
{
"const": "runtime",
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"actor",
"action",
"target",
"clip",
"persistence"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "emit",
"type": "string"
},
"event": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"event",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "music",
"type": "string"
},
"command": {
"type": "object",
"properties": {
"action": {
"anyOf": [
{
"const": "play",
"type": "string"
},
{
"const": "stop",
"type": "string"
},
{
"const": "crossfade",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"from": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
},
"fade": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"action",
"assetId",
"from",
"volume",
"fade",
"loop"
],
"additionalProperties": false
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"command"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "sfx",
"type": "string"
},
"assetId": {
"type": "string"
},
"spatial": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"assetId",
"spatial",
"volume"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "return",
"type": "string"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"id",
"duration",
"cues"
],
"additionalProperties": false
}
},
"triggers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"subject": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"event": {
"anyOf": [
{
"const": "near",
"type": "string"
},
{
"const": "qway.object.enter",
"type": "string"
},
{
"const": "qway.object.leave",
"type": "string"
},
{
"const": "qway.relation.changed",
"type": "string"
},
{
"const": "qway.interaction",
"type": "string"
},
{
"const": "qway.trigger",
"type": "string"
},
{
"const": "ridley.complete",
"type": "string"
}
]
},
"distance": {
"type": "number"
},
"cinematic": {
"type": "string"
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"subject",
"target",
"event",
"distance",
"cinematic",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"worldSceneId",
"worldSourceHash",
"sourceHash",
"bindings",
"sequences",
"triggers"
],
"additionalProperties": false
}experience.schema.json
Download experience.schema.json
| Root property | Required | Constraint |
|---|---|---|
| personas | no | {"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.persona/1","type":"string"},"personaId":{"type":"string"},"profileId":{"type":"string"},"parentId":{"anyOf":[{"type":"null"},{"type":"string"}]},"revision":{"type":"number"},"createdAt":{"type":"string"},"sha256":{"type":"string"},"description":{"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string"},"instructions":{"type":"string"},"knowledge":{"type":"string"},"speakingStyle":{"type":"string"},"language":{"type":"string"},"allowedTopics":{"type":"array","items":{"type":"string"}},"forbiddenTopics":{"type":"array","items":{"type":"string"}},"emotionalBaseline":{"type":"string"},"memory":{"anyOf":[{"const":"none","type":"string"},{"const":"session","type":"string"}]},"maxTurns":{"type":"number"},"maxHistoryChars":{"type":"number"}},"required":["name","role","instructions","knowledge","speakingStyle","language","allowedTopics","forbiddenTopics","emotionalBaseline","memory","maxTurns","maxHistoryChars"],"additionalProperties":false}},"required":["version","personaId","profileId","parentId","revision","createdAt","sha256","description"],"additionalProperties":false}} |
| npcs | no | {"type":"array","items":{"type":"object","properties":{"actor":{"type":"string"},"profileId":{"type":"string"}},"required":["actor","profileId"],"additionalProperties":false}} |
| audio | no | {"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.audio/1","type":"string"},"assetId":{"type":"string"},"displayName":{"type":"string"},"sha256":{"type":"string"},"uri":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]},"durationSeconds":{"type":"number"},"sampleRate":{"type":"number"},"channels":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}},"required":["version","assetId","displayName","sha256","uri","byteLength","mediaType","durationSeconds","sampleRate","channels"],"additionalProperties":false}} |
| schema | yes | {"const":"quay.experience","type":"string"} |
| version | yes | {"const":"1.0.0","type":"string"} |
| compiler | yes | {"const":"ridley.experience/1","type":"string"} |
| worldSceneId | yes | {"type":"string"} |
| worldSourceHash | yes | {"type":"string"} |
| sourceHash | yes | {"type":"string"} |
| bindings | yes | {"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}} |
| initial | yes | {"type":"string"} |
| states | yes | {"type":"array","items":{"type":"object","properties":{"audio":{"type":"array","items":{"type":"object","properties":{"action":{"anyOf":[{"const":"play","type":"string"},{"const":"stop","type":"string"},{"const":"crossfade","type":"string"}]},"assetId":{"type":"string"},"from":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"},"fade":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["action","assetId","from","volume","fade","loop"],"additionalProperties":false}},"id":{"type":"string"},"mode":{"anyOf":[{"const":"interactive","type":"string"},{"const":"cinematic","type":"string"},{"const":"conversation","type":"string"}]},"conversation":{"type":"object","properties":{"actor":{"type":"string"},"profileId":{"type":"string"}},"required":["actor","profileId"],"additionalProperties":false},"cinematic":{"anyOf":[{"type":"null"},{"type":"string"}]},"control":{"anyOf":[{"type":"null"},{"type":"string"}]},"camera":{"anyOf":[{"const":"third-person","type":"string"},{"const":"first-person","type":"string"},{"const":"overhead","type":"string"},{"const":"overview","type":"string"}]},"userCamera":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"followers":{"type":"array","items":{"type":"object","properties":{"actor":{"type":"string"},"target":{"type":"string"},"distance":{"type":"number"},"delay":{"type":"number"},"speed":{"type":"number"}},"required":["actor","target","distance","delay","speed"],"additionalProperties":false}}},"required":["id","mode","cinematic","control","camera","userCamera","followers"],"additionalProperties":false}} |
| transitions | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"from":{"type":"string"},"to":{"type":"string"},"event":{"type":"string"},"subject":{"anyOf":[{"type":"null"},{"type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","from","to","event","subject","target","once"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"personas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.persona/1",
"type": "string"
},
"personaId": {
"type": "string"
},
"profileId": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"revision": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"sha256": {
"type": "string"
},
"description": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"instructions": {
"type": "string"
},
"knowledge": {
"type": "string"
},
"speakingStyle": {
"type": "string"
},
"language": {
"type": "string"
},
"allowedTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"forbiddenTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"emotionalBaseline": {
"type": "string"
},
"memory": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "session",
"type": "string"
}
]
},
"maxTurns": {
"type": "number"
},
"maxHistoryChars": {
"type": "number"
}
},
"required": [
"name",
"role",
"instructions",
"knowledge",
"speakingStyle",
"language",
"allowedTopics",
"forbiddenTopics",
"emotionalBaseline",
"memory",
"maxTurns",
"maxHistoryChars"
],
"additionalProperties": false
}
},
"required": [
"version",
"personaId",
"profileId",
"parentId",
"revision",
"createdAt",
"sha256",
"description"
],
"additionalProperties": false
}
},
"npcs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"profileId": {
"type": "string"
}
},
"required": [
"actor",
"profileId"
],
"additionalProperties": false
}
},
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.experience",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.experience/1",
"type": "string"
},
"worldSceneId": {
"type": "string"
},
"worldSourceHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"initial": {
"type": "string"
},
"states": {
"type": "array",
"items": {
"type": "object",
"properties": {
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"action": {
"anyOf": [
{
"const": "play",
"type": "string"
},
{
"const": "stop",
"type": "string"
},
{
"const": "crossfade",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"from": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
},
"fade": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"action",
"assetId",
"from",
"volume",
"fade",
"loop"
],
"additionalProperties": false
}
},
"id": {
"type": "string"
},
"mode": {
"anyOf": [
{
"const": "interactive",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
},
{
"const": "conversation",
"type": "string"
}
]
},
"conversation": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"profileId": {
"type": "string"
}
},
"required": [
"actor",
"profileId"
],
"additionalProperties": false
},
"cinematic": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"control": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"camera": {
"anyOf": [
{
"const": "third-person",
"type": "string"
},
{
"const": "first-person",
"type": "string"
},
{
"const": "overhead",
"type": "string"
},
{
"const": "overview",
"type": "string"
}
]
},
"userCamera": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"followers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"target": {
"type": "string"
},
"distance": {
"type": "number"
},
"delay": {
"type": "number"
},
"speed": {
"type": "number"
}
},
"required": [
"actor",
"target",
"distance",
"delay",
"speed"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"mode",
"cinematic",
"control",
"camera",
"userCamera",
"followers"
],
"additionalProperties": false
}
},
"transitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"event": {
"type": "string"
},
"subject": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"from",
"to",
"event",
"subject",
"target",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"worldSceneId",
"worldSourceHash",
"sourceHash",
"bindings",
"initial",
"states",
"transitions"
],
"additionalProperties": false
}material.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"quay.material/1","type":"string"} |
| identity | yes | {"type":"string"} |
| alias | yes | {"type":"string"} |
| label | yes | {"type":"string"} |
| description | yes | {"type":"string"} |
| category | yes | {"anyOf":[{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"glass","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]} |
| shader | yes | {"anyOf":[{"const":"standard","type":"string"},{"const":"unlit","type":"string"}]} |
| color | yes | {"type":"string"} |
| roughness | yes | {"type":"number"} |
| metalness | yes | {"type":"number"} |
| emissive | yes | {"type":"string"} |
| emissiveIntensity | yes | {"type":"number"} |
| opacity | yes | {"type":"number"} |
| alphaMode | yes | {"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]} |
| alphaCutoff | yes | {"type":"number"} |
| side | yes | {"anyOf":[{"const":"front","type":"string"},{"const":"back","type":"string"},{"const":"double","type":"string"}]} |
| preset | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| maps | yes | {"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "glass",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "unlit",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "front",
"type": "string"
},
{
"const": "back",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}persona.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"ridley.persona/1","type":"string"} |
| personaId | yes | {"type":"string"} |
| profileId | yes | {"type":"string"} |
| parentId | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| revision | yes | {"type":"number"} |
| createdAt | yes | {"type":"string"} |
| sha256 | yes | {"type":"string"} |
| description | yes | {"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string"},"instructions":{"type":"string"},"knowledge":{"type":"string"},"speakingStyle":{"type":"string"},"language":{"type":"string"},"allowedTopics":{"type":"array","items":{"type":"string"}},"forbiddenTopics":{"type":"array","items":{"type":"string"}},"emotionalBaseline":{"type":"string"},"memory":{"anyOf":[{"const":"none","type":"string"},{"const":"session","type":"string"}]},"maxTurns":{"type":"number"},"maxHistoryChars":{"type":"number"}},"required":["name","role","instructions","knowledge","speakingStyle","language","allowedTopics","forbiddenTopics","emotionalBaseline","memory","maxTurns","maxHistoryChars"],"additionalProperties":false} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"version": {
"const": "ridley.persona/1",
"type": "string"
},
"personaId": {
"type": "string"
},
"profileId": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"revision": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"sha256": {
"type": "string"
},
"description": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"instructions": {
"type": "string"
},
"knowledge": {
"type": "string"
},
"speakingStyle": {
"type": "string"
},
"language": {
"type": "string"
},
"allowedTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"forbiddenTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"emotionalBaseline": {
"type": "string"
},
"memory": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "session",
"type": "string"
}
]
},
"maxTurns": {
"type": "number"
},
"maxHistoryChars": {
"type": "number"
}
},
"required": [
"name",
"role",
"instructions",
"knowledge",
"speakingStyle",
"language",
"allowedTopics",
"forbiddenTopics",
"emotionalBaseline",
"memory",
"maxTurns",
"maxHistoryChars"
],
"additionalProperties": false
}
},
"required": [
"version",
"personaId",
"profileId",
"parentId",
"revision",
"createdAt",
"sha256",
"description"
],
"additionalProperties": false
}QUAY PlannerOutput
Download planner-output.schema.json
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.plan"} |
| schemaVersion | yes | {"const":"1.0.0"} |
| summary | yes | {"type":"string","minLength":1,"maxLength":1000} |
| composition | yes | {"$ref":"#/$defs/composition"} |
| placements | yes | {"type":"array","maxItems":200,"items":{"$ref":"#/$defs/placement"}} |
| relations | yes | {"type":"array","maxItems":500,"items":{"$ref":"#/$defs/relation"}} |
| groups | yes | {"type":"array","maxItems":50,"items":{"$ref":"#/$defs/group"}} |
| excludedInstances | yes | {"type":"array","maxItems":200,"items":{"$ref":"#/$defs/excluded"}} |
| warnings | yes | {"type":"array","maxItems":100,"items":{"$ref":"#/$defs/warning"}} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://quay.local/schemas/planner-output.schema.json",
"title": "QUAY PlannerOutput",
"type": "object",
"additionalProperties": false,
"required": [
"schema",
"schemaVersion",
"summary",
"composition",
"placements",
"relations",
"groups",
"excludedInstances",
"warnings"
],
"properties": {
"schema": {
"const": "quay.plan"
},
"schemaVersion": {
"const": "1.0.0"
},
"summary": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"composition": {
"$ref": "#/$defs/composition"
},
"placements": {
"type": "array",
"maxItems": 200,
"items": {
"$ref": "#/$defs/placement"
}
},
"relations": {
"type": "array",
"maxItems": 500,
"items": {
"$ref": "#/$defs/relation"
}
},
"groups": {
"type": "array",
"maxItems": 50,
"items": {
"$ref": "#/$defs/group"
}
},
"excludedInstances": {
"type": "array",
"maxItems": 200,
"items": {
"$ref": "#/$defs/excluded"
}
},
"warnings": {
"type": "array",
"maxItems": 100,
"items": {
"$ref": "#/$defs/warning"
}
}
},
"$defs": {
"composition": {
"type": "object",
"additionalProperties": false,
"required": [
"density",
"asymmetry",
"negativeSpace",
"focalInstanceId",
"styleNotes"
],
"properties": {
"density": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"asymmetry": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"negativeSpace": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"focalInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"styleNotes": {
"type": "string",
"maxLength": 1000
}
}
},
"placement": {
"type": "object",
"additionalProperties": false,
"required": [
"instanceId",
"role",
"importance",
"preferredRegion",
"facing",
"facingTargetInstanceId",
"allowFloorFallback",
"notes"
],
"properties": {
"instanceId": {
"type": "string",
"format": "uuid"
},
"role": {
"enum": [
"architectural",
"primary_furniture",
"secondary_furniture",
"functional_prop",
"decorative_prop",
"focal_prop"
]
},
"importance": {
"type": "integer",
"minimum": 0,
"maximum": 100
},
"preferredRegion": {
"enum": [
"any",
"center",
"front",
"back",
"left",
"right",
"front_left",
"front_right",
"back_left",
"back_right",
"perimeter"
]
},
"facing": {
"enum": [
"free",
"preserve",
"toward_room_center",
"away_from_wall",
"toward_target"
]
},
"facingTargetInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"allowFloorFallback": {
"type": "boolean"
},
"notes": {
"type": "string",
"maxLength": 500
}
}
},
"relation": {
"type": "object",
"additionalProperties": false,
"required": [
"relationId",
"type",
"subjectInstanceId",
"targetInstanceId",
"strength",
"zone",
"minimumM",
"maximumM",
"notes"
],
"properties": {
"relationId": {
"type": "string",
"format": "uuid"
},
"type": {
"enum": [
"ON",
"NEAR",
"LEFT_OF",
"RIGHT_OF",
"IN_FRONT_OF",
"BEHIND",
"FACING",
"CENTERED_ON",
"ALIGNED_WITH",
"AGAINST_WALL",
"KEEP_CLEAR_OF"
]
},
"subjectInstanceId": {
"type": "string",
"format": "uuid"
},
"targetInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"strength": {
"enum": [
"hard",
"soft"
]
},
"zone": {
"enum": [
"any",
"left",
"right",
"front",
"back",
"center"
]
},
"minimumM": {
"type": [
"number",
"null"
],
"minimum": 0
},
"maximumM": {
"type": [
"number",
"null"
],
"exclusiveMinimum": 0
},
"notes": {
"type": "string",
"maxLength": 500
}
}
},
"group": {
"type": "object",
"additionalProperties": false,
"required": [
"groupId",
"label",
"instanceIds",
"cohesion"
],
"properties": {
"groupId": {
"type": "string",
"format": "uuid"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"instanceIds": {
"type": "array",
"minItems": 2,
"maxItems": 100,
"items": {
"type": "string",
"format": "uuid"
}
},
"cohesion": {
"type": "number",
"minimum": 0,
"maximum": 1
}
}
},
"excluded": {
"type": "object",
"additionalProperties": false,
"required": [
"instanceId",
"reason"
],
"properties": {
"instanceId": {
"type": "string",
"format": "uuid"
},
"reason": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
}
},
"warning": {
"type": "object",
"additionalProperties": false,
"required": [
"code",
"message",
"instanceIds"
],
"properties": {
"code": {
"type": "string",
"pattern": "^[A-Z][A-Z0-9_]{1,63}$"
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 500
},
"instanceIds": {
"type": "array",
"maxItems": 20,
"items": {
"type": "string",
"format": "uuid"
}
}
}
}
}
}ProjectArchiveCheckpoint
Download project-archive.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"quay.project-archive/1","title":"Version","type":"string"} |
| editor | yes | {"$ref":"#/$defs/ArchiveEditor"} |
| workspace | yes | {"additionalProperties":{"$ref":"#/$defs/JsonValue"},"title":"Workspace","type":"object"} |
Complete schema including nested definitions
{
"$defs": {
"ArchitecturalNeed": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"kind": {
"enum": [
"window",
"portal",
"wall-run",
"open-center",
"natural-light",
"ceiling-light"
],
"title": "Kind",
"type": "string"
},
"quantity": {
"maximum": 16,
"minimum": 1,
"title": "Quantity",
"type": "integer"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"title": "ArchitecturalNeed",
"type": "object"
},
"ArchiveAuthoring": {
"additionalProperties": false,
"properties": {
"ramsSource": {
"default": "",
"maxLength": 2097152,
"title": "Ramssource",
"type": "string"
},
"source": {
"maxLength": 262144,
"title": "Source",
"type": "string"
},
"snapshots": {
"items": {
"$ref": "#/$defs/asset"
},
"maxItems": 200,
"title": "Snapshots",
"type": "array"
},
"ridley": {
"$ref": "#/$defs/RidleyInput"
},
"wright": {
"anyOf": [
{
"$ref": "#/$defs/WrightInput"
},
{
"type": "null"
}
]
},
"layoutVersion": {
"enum": [
"quay.semantic-layout/1",
"quay.semantic-layout/2",
"quay.legacy-layout-adapter/1"
],
"title": "Layoutversion",
"type": "string"
}
},
"required": [
"source",
"snapshots",
"ridley",
"wright",
"layoutVersion"
],
"title": "ArchiveAuthoring",
"type": "object"
},
"ArchiveEditor": {
"additionalProperties": false,
"properties": {
"ramsSource": {
"default": "",
"maxLength": 2097152,
"title": "Ramssource",
"type": "string"
},
"source": {
"maxLength": 262144,
"title": "Source",
"type": "string"
},
"snapshots": {
"items": {
"$ref": "#/$defs/asset"
},
"maxItems": 200,
"title": "Snapshots",
"type": "array"
},
"ridley": {
"$ref": "#/$defs/RidleyInput"
},
"wright": {
"anyOf": [
{
"$ref": "#/$defs/WrightInput"
},
{
"type": "null"
}
]
},
"layoutVersion": {
"enum": [
"quay.semantic-layout/1",
"quay.semantic-layout/2",
"quay.legacy-layout-adapter/1"
],
"title": "Layoutversion",
"type": "string"
},
"project": {
"anyOf": [
{
"additionalProperties": true,
"type": "object"
},
{
"type": "null"
}
],
"title": "Project"
},
"undo": {
"items": {
"$ref": "#/$defs/ArchiveAuthoring"
},
"maxItems": 200,
"title": "Undo",
"type": "array"
},
"redo": {
"items": {
"$ref": "#/$defs/ArchiveAuthoring"
},
"maxItems": 200,
"title": "Redo",
"type": "array"
},
"activeRoom": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Activeroom"
}
},
"required": [
"source",
"snapshots",
"ridley",
"wright",
"layoutVersion",
"project",
"undo",
"redo",
"activeRoom"
],
"title": "ArchiveEditor",
"type": "object"
},
"AssetBackdropSource": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "asset",
"title": "Kind",
"type": "string"
},
"uri": {
"default": null,
"title": "Uri",
"type": "null"
},
"assetId": {
"format": "uuid",
"title": "Assetid",
"type": "string"
}
},
"required": [
"kind",
"assetId"
],
"title": "AssetBackdropSource",
"type": "object"
},
"AudioResource": {
"additionalProperties": false,
"properties": {
"version": {
"const": "ridley.audio/1",
"default": "ridley.audio/1",
"title": "Version",
"type": "string"
},
"assetId": {
"format": "uuid",
"title": "Assetid",
"type": "string"
},
"displayName": {
"maxLength": 200,
"minLength": 1,
"title": "Displayname",
"type": "string"
},
"sha256": {
"pattern": "^[a-f0-9]{64}$",
"title": "Sha256",
"type": "string"
},
"uri": {
"maxLength": 300,
"title": "Uri",
"type": "string"
},
"byteLength": {
"exclusiveMinimum": 44,
"maximum": 67108864,
"title": "Bytelength",
"type": "integer"
},
"mediaType": {
"default": "audio/wav",
"enum": [
"audio/wav",
"audio/mpeg"
],
"title": "Mediatype",
"type": "string"
},
"durationSeconds": {
"exclusiveMinimum": 0,
"maximum": 600,
"title": "Durationseconds",
"type": "number"
},
"sampleRate": {
"maximum": 96000,
"minimum": 8000,
"title": "Samplerate",
"type": "integer"
},
"channels": {
"enum": [
1,
2
],
"title": "Channels",
"type": "integer"
}
},
"required": [
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"durationSeconds",
"sampleRate",
"channels"
],
"title": "AudioResource",
"type": "object"
},
"DirectionProfile": {
"additionalProperties": false,
"properties": {
"styles": {
"items": {
"enum": [
"cinematic",
"restrained",
"surreal",
"documentary",
"elegant",
"playful",
"monumental",
"warm",
"cold",
"technological",
"natural",
"intimate",
"theatrical",
"high-contrast",
"soft-contrast"
],
"type": "string"
},
"maxItems": 16,
"title": "Styles",
"type": "array"
},
"rooms": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/RoomDirectionIntent"
},
"maxItems": 128,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Rooms"
}
},
"required": [
"styles"
],
"title": "DirectionProfile",
"type": "object"
},
"Entrance": {
"additionalProperties": false,
"properties": {
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"alias": {
"pattern": "^[A-Za-z_][\\w-]{0,99}$",
"title": "Alias",
"type": "string"
},
"room": {
"format": "uuid",
"title": "Room",
"type": "string"
},
"frame": {
"$ref": "#/$defs/Frame"
},
"width": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Width",
"type": "number"
},
"height": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Height",
"type": "number"
},
"traversable": {
"title": "Traversable",
"type": "boolean"
},
"door": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Door"
}
},
"required": [
"identity",
"alias",
"room",
"frame",
"width",
"height",
"traversable",
"door"
],
"title": "Entrance",
"type": "object"
},
"ExplicitProgramEvidence": {
"additionalProperties": false,
"properties": {
"origin": {
"const": "explicit",
"title": "Origin",
"type": "string"
},
"confidence": {
"maximum": 1,
"minimum": 0,
"title": "Confidence",
"type": "number"
},
"explanation": {
"maxLength": 500,
"minLength": 1,
"title": "Explanation",
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"title": "ExplicitProgramEvidence",
"type": "object"
},
"Frame": {
"additionalProperties": false,
"properties": {
"position": {
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"title": "Position",
"type": "array"
},
"quaternion": {
"maxItems": 4,
"minItems": 4,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"title": "Quaternion",
"type": "array"
}
},
"required": [
"position",
"quaternion"
],
"title": "Frame",
"type": "object"
},
"FunctionalZone": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"purpose": {
"maxLength": 100,
"minLength": 1,
"title": "Purpose",
"type": "string"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
}
},
"required": [
"reference",
"purpose",
"priority"
],
"title": "FunctionalZone",
"type": "object"
},
"FurnishingNeed": {
"additionalProperties": false,
"properties": {
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"category": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Category",
"type": "string"
},
"quantity": {
"maximum": 64,
"minimum": 1,
"title": "Quantity",
"type": "integer"
},
"capacity": {
"anyOf": [
{
"maximum": 64,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"title": "Capacity"
},
"assetAlias": {
"anyOf": [
{
"pattern": "^[a-z0-9][a-z0-9_.-]{0,99}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Assetalias"
},
"placement": {
"enum": [
"auto",
"center",
"perimeter"
],
"title": "Placement",
"type": "string"
},
"relation": {
"anyOf": [
{
"enum": [
"on",
"seating",
"near-window"
],
"type": "string"
},
{
"type": "null"
}
],
"title": "Relation"
},
"target": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"instances": {
"items": {
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
"maxItems": 64,
"title": "Instances",
"type": "array"
}
},
"required": [
"identity",
"category",
"quantity",
"capacity",
"assetAlias",
"placement",
"relation",
"target",
"instances"
],
"title": "FurnishingNeed",
"type": "object"
},
"ImageBackdropSource": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "image",
"title": "Kind",
"type": "string"
},
"uri": {
"maxLength": 300,
"title": "Uri",
"type": "string"
},
"assetId": {
"format": "uuid",
"title": "Assetid",
"type": "string"
},
"mediaType": {
"enum": [
"image/png",
"image/jpeg",
"image/webp"
],
"title": "Mediatype",
"type": "string"
},
"sha256": {
"pattern": "^[a-f0-9]{64}$",
"title": "Sha256",
"type": "string"
},
"byteLength": {
"exclusiveMinimum": 0,
"maximum": 33554432,
"title": "Bytelength",
"type": "integer"
}
},
"required": [
"kind",
"uri",
"assetId",
"mediaType",
"sha256",
"byteLength"
],
"title": "ImageBackdropSource",
"type": "object"
},
"JsonValue": {},
"Level": {
"additionalProperties": false,
"properties": {
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"label": {
"maxLength": 200,
"title": "Label",
"type": "string"
}
},
"required": [
"identity",
"label"
],
"title": "Level",
"type": "object"
},
"PersonaDescription": {
"additionalProperties": false,
"properties": {
"name": {
"maxLength": 100,
"minLength": 1,
"title": "Name",
"type": "string"
},
"role": {
"maxLength": 500,
"title": "Role",
"type": "string"
},
"instructions": {
"maxLength": 8000,
"title": "Instructions",
"type": "string"
},
"knowledge": {
"maxLength": 16000,
"title": "Knowledge",
"type": "string"
},
"speakingStyle": {
"maxLength": 1000,
"title": "Speakingstyle",
"type": "string"
},
"language": {
"maxLength": 100,
"minLength": 1,
"title": "Language",
"type": "string"
},
"allowedTopics": {
"items": {
"maxLength": 200,
"type": "string"
},
"maxItems": 32,
"title": "Allowedtopics",
"type": "array"
},
"forbiddenTopics": {
"items": {
"maxLength": 200,
"type": "string"
},
"maxItems": 32,
"title": "Forbiddentopics",
"type": "array"
},
"emotionalBaseline": {
"maxLength": 500,
"title": "Emotionalbaseline",
"type": "string"
},
"memory": {
"enum": [
"none",
"session"
],
"title": "Memory",
"type": "string"
},
"maxTurns": {
"maximum": 16,
"minimum": 1,
"title": "Maxturns",
"type": "integer"
},
"maxHistoryChars": {
"maximum": 16000,
"minimum": 1000,
"title": "Maxhistorychars",
"type": "integer"
}
},
"required": [
"name",
"role",
"instructions",
"knowledge",
"speakingStyle",
"language",
"allowedTopics",
"forbiddenTopics",
"emotionalBaseline",
"memory",
"maxTurns",
"maxHistoryChars"
],
"title": "PersonaDescription",
"type": "object"
},
"PersonaResource": {
"additionalProperties": false,
"properties": {
"version": {
"const": "ridley.persona/1",
"default": "ridley.persona/1",
"title": "Version",
"type": "string"
},
"personaId": {
"format": "uuid",
"title": "Personaid",
"type": "string"
},
"profileId": {
"format": "uuid",
"title": "Profileid",
"type": "string"
},
"parentId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Parentid"
},
"revision": {
"minimum": 1,
"title": "Revision",
"type": "integer"
},
"createdAt": {
"format": "date-time",
"title": "Createdat",
"type": "string"
},
"sha256": {
"pattern": "^[a-f0-9]{64}$",
"title": "Sha256",
"type": "string"
},
"description": {
"$ref": "#/$defs/PersonaDescription"
}
},
"required": [
"personaId",
"profileId",
"parentId",
"revision",
"createdAt",
"sha256",
"description"
],
"title": "PersonaResource",
"type": "object"
},
"Portal": {
"additionalProperties": false,
"properties": {
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"alias": {
"pattern": "^[A-Za-z_][\\w-]{0,99}$",
"title": "Alias",
"type": "string"
},
"from": {
"format": "uuid",
"title": "From",
"type": "string"
},
"to": {
"format": "uuid",
"title": "To",
"type": "string"
},
"frame": {
"$ref": "#/$defs/Frame"
},
"width": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Width",
"type": "number"
},
"height": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Height",
"type": "number"
},
"traversable": {
"title": "Traversable",
"type": "boolean"
},
"door": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Door"
}
},
"required": [
"identity",
"alias",
"from",
"to",
"frame",
"width",
"height",
"traversable",
"door"
],
"title": "Portal",
"type": "object"
},
"ProgramEvidence": {
"additionalProperties": false,
"properties": {
"origin": {
"enum": [
"explicit",
"archetype",
"inferred"
],
"title": "Origin",
"type": "string"
},
"confidence": {
"maximum": 1,
"minimum": 0,
"title": "Confidence",
"type": "number"
},
"explanation": {
"maxLength": 500,
"minLength": 1,
"title": "Explanation",
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"title": "ProgramEvidence",
"type": "object"
},
"ProgramExclusion": {
"additionalProperties": false,
"properties": {
"category": {
"pattern": "^[a-z][a-z0-9_-]*\\.[a-z][a-z0-9_.-]{0,79}$",
"title": "Category",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ExplicitProgramEvidence"
}
},
"required": [
"category",
"evidence"
],
"title": "ProgramExclusion",
"type": "object"
},
"ProgramNeed": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"category": {
"pattern": "^[a-z][a-z0-9_-]*\\.[a-z][a-z0-9_.-]{0,79}$",
"title": "Category",
"type": "string"
},
"zone": {
"maxLength": 80,
"title": "Zone",
"type": "string"
},
"quantity": {
"maximum": 64,
"minimum": 1,
"title": "Quantity",
"type": "integer"
},
"capacity": {
"anyOf": [
{
"maximum": 64,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"title": "Capacity"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"assetAlias": {
"anyOf": [
{
"pattern": "^[a-z0-9][a-z0-9_.-]{0,99}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Assetalias"
},
"placement": {
"enum": [
"auto",
"center",
"perimeter"
],
"title": "Placement",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"title": "ProgramNeed",
"type": "object"
},
"ProgramProducer": {
"additionalProperties": false,
"properties": {
"provider": {
"maxLength": 100,
"minLength": 1,
"title": "Provider",
"type": "string"
},
"model": {
"maxLength": 100,
"minLength": 1,
"title": "Model",
"type": "string"
},
"version": {
"maxLength": 100,
"minLength": 1,
"title": "Version",
"type": "string"
}
},
"required": [
"provider",
"model",
"version"
],
"title": "ProgramProducer",
"type": "object"
},
"ProgramRepair": {
"additionalProperties": false,
"properties": {
"stage": {
"const": "semantic",
"default": "semantic",
"title": "Stage",
"type": "string"
},
"attempts": {
"maximum": 2,
"minimum": 1,
"title": "Attempts",
"type": "integer"
},
"strategy": {
"enum": [
"none",
"bounded-semantic-revision"
],
"title": "Strategy",
"type": "string"
},
"initialFailures": {
"items": {
"type": "string"
},
"maxItems": 16,
"title": "Initialfailures",
"type": "array"
},
"finalState": {
"const": "accepted",
"default": "accepted",
"title": "Finalstate",
"type": "string"
},
"relaxedConstraints": {
"items": {
"type": "string"
},
"maxItems": 0,
"title": "Relaxedconstraints",
"type": "array"
}
},
"required": [
"attempts",
"strategy",
"initialFailures",
"relaxedConstraints"
],
"title": "ProgramRepair",
"type": "object"
},
"ProgramRule": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"kind": {
"enum": [
"on",
"seating",
"beside",
"facing",
"near-window",
"wall-alignment",
"interior",
"access",
"visibility",
"clearance",
"circulation",
"minimum-dimensions",
"unsupported"
],
"title": "Kind",
"type": "string"
},
"subjects": {
"items": {
"type": "string"
},
"maxItems": 64,
"title": "Subjects",
"type": "array"
},
"target": {
"anyOf": [
{
"maxLength": 80,
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"strength": {
"enum": [
"hard",
"soft"
],
"title": "Strength",
"type": "string"
},
"clearanceM": {
"anyOf": [
{
"maximum": 100,
"minimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"title": "Clearancem"
},
"description": {
"maxLength": 500,
"minLength": 1,
"title": "Description",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"title": "ProgramRule",
"type": "object"
},
"RidleyInput": {
"additionalProperties": false,
"properties": {
"audio": {
"items": {
"$ref": "#/$defs/AudioResource"
},
"maxItems": 64,
"title": "Audio",
"type": "array"
},
"personas": {
"items": {
"$ref": "#/$defs/PersonaResource"
},
"maxItems": 64,
"title": "Personas",
"type": "array"
},
"source": {
"maxLength": 131072,
"title": "Source",
"type": "string"
},
"screenplays": {
"items": {
"$ref": "#/$defs/ScreenplayInput"
},
"maxItems": 32,
"title": "Screenplays",
"type": "array"
},
"bindings": {
"additionalProperties": {
"format": "uuid",
"type": "string"
},
"maxProperties": 1000,
"title": "Bindings",
"type": "object"
},
"styleProfile": {
"anyOf": [
{
"$ref": "#/$defs/DirectionProfile"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"source",
"screenplays",
"bindings"
],
"title": "RidleyInput",
"type": "object"
},
"Room": {
"additionalProperties": false,
"properties": {
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"alias": {
"pattern": "^[A-Za-z_][\\w-]{0,99}$",
"title": "Alias",
"type": "string"
},
"label": {
"maxLength": 200,
"title": "Label",
"type": "string"
},
"level": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Level"
},
"parent": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Parent"
},
"size": {
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"title": "Size",
"type": "array"
},
"frame": {
"$ref": "#/$defs/Frame"
},
"backdrop": {
"anyOf": [
{
"$ref": "#/$defs/RoomBackdrop"
},
{
"additionalProperties": {
"$ref": "#/$defs/RoomBackdrop"
},
"propertyNames": {
"enum": [
"north",
"south",
"east",
"west"
]
},
"type": "object"
},
{
"type": "null"
}
],
"default": null,
"title": "Backdrop"
},
"furnishing": {
"anyOf": [
{
"$ref": "#/$defs/RoomFurnishing"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"identity",
"alias",
"label",
"level",
"parent",
"size",
"frame"
],
"title": "Room",
"type": "object"
},
"RoomBackdrop": {
"additionalProperties": false,
"properties": {
"materialId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Materialid"
},
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"semantic": {
"maxLength": 200,
"title": "Semantic",
"type": "string"
},
"source": {
"discriminator": {
"mapping": {
"asset": "#/$defs/AssetBackdropSource",
"image": "#/$defs/ImageBackdropSource"
},
"propertyName": "kind"
},
"oneOf": [
{
"$ref": "#/$defs/ImageBackdropSource"
},
{
"$ref": "#/$defs/AssetBackdropSource"
}
],
"title": "Source"
},
"side": {
"enum": [
"north",
"south",
"east",
"west"
],
"title": "Side",
"type": "string"
},
"mode": {
"const": "architectural",
"title": "Mode",
"type": "string"
},
"fit": {
"enum": [
"cover",
"contain"
],
"title": "Fit",
"type": "string"
},
"projection": {
"const": "flat",
"title": "Projection",
"type": "string"
},
"distance": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Distance",
"type": "number"
},
"lighting": {
"enum": [
"unlit",
"lit"
],
"title": "Lighting",
"type": "string"
},
"enabled": {
"title": "Enabled",
"type": "boolean"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"title": "RoomBackdrop",
"type": "object"
},
"RoomDirectionIntent": {
"additionalProperties": false,
"properties": {
"room": {
"format": "uuid",
"title": "Room",
"type": "string"
},
"intensity": {
"anyOf": [
{
"enum": [
0,
1,
2,
3,
4
],
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Intensity"
},
"mood": {
"anyOf": [
{
"enum": [
"neutral",
"warm",
"cool",
"intimate",
"dramatic",
"monumental",
"clinical",
"mysterious",
"energetic",
"contemplative"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Mood"
},
"hero": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hero"
},
"motion": {
"anyOf": [
{
"enum": [
"none",
"restrained",
"active"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Motion"
},
"contrast": {
"anyOf": [
{
"enum": [
"soft",
"natural",
"dramatic"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Contrast"
}
},
"required": [
"room"
],
"title": "RoomDirectionIntent",
"type": "object"
},
"RoomFurnishing": {
"additionalProperties": false,
"properties": {
"roomProgram": {
"anyOf": [
{
"$ref": "#/$defs/RoomProgramAttachment"
},
{
"type": "null"
}
],
"default": null
},
"version": {
"const": "qway.furnishing/1",
"title": "Version",
"type": "string"
},
"purpose": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Purpose",
"type": "string"
},
"capacity": {
"maximum": 64,
"minimum": 1,
"title": "Capacity",
"type": "integer"
},
"style": {
"maxLength": 100,
"title": "Style",
"type": "string"
},
"needs": {
"items": {
"$ref": "#/$defs/FurnishingNeed"
},
"maxItems": 64,
"title": "Needs",
"type": "array"
}
},
"required": [
"version",
"purpose",
"capacity",
"style",
"needs"
],
"title": "RoomFurnishing",
"type": "object"
},
"RoomProgram": {
"additionalProperties": false,
"properties": {
"version": {
"const": "qway.room-program/1",
"title": "Version",
"type": "string"
},
"archetype": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Archetype",
"type": "string"
},
"archetypeRevision": {
"maxLength": 100,
"minLength": 1,
"title": "Archetyperevision",
"type": "string"
},
"purpose": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Purpose",
"type": "string"
},
"capacity": {
"maximum": 64,
"minimum": 1,
"title": "Capacity",
"type": "integer"
},
"style": {
"maxLength": 100,
"title": "Style",
"type": "string"
},
"zones": {
"items": {
"$ref": "#/$defs/FunctionalZone"
},
"maxItems": 32,
"minItems": 1,
"title": "Zones",
"type": "array"
},
"needs": {
"items": {
"$ref": "#/$defs/ProgramNeed"
},
"maxItems": 64,
"title": "Needs",
"type": "array"
},
"rules": {
"items": {
"$ref": "#/$defs/ProgramRule"
},
"maxItems": 128,
"title": "Rules",
"type": "array"
},
"architecture": {
"items": {
"$ref": "#/$defs/ArchitecturalNeed"
},
"maxItems": 32,
"title": "Architecture",
"type": "array"
},
"exclusions": {
"items": {
"$ref": "#/$defs/ProgramExclusion"
},
"maxItems": 64,
"title": "Exclusions",
"type": "array"
},
"uncertainties": {
"items": {
"type": "string"
},
"maxItems": 32,
"title": "Uncertainties",
"type": "array"
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"title": "RoomProgram",
"type": "object"
},
"RoomProgramAttachment": {
"additionalProperties": false,
"properties": {
"repair": {
"anyOf": [
{
"$ref": "#/$defs/ProgramRepair"
},
{
"type": "null"
}
],
"default": null
},
"enrichment": {
"anyOf": [
{
"$ref": "#/$defs/ProgramProducer"
},
{
"type": "null"
}
],
"default": null
},
"intent": {
"$ref": "#/$defs/RoomProgram"
},
"archetypeSnapshot": {
"$ref": "#/$defs/RoomProgram"
},
"bindings": {
"additionalProperties": {
"format": "uuid",
"type": "string"
},
"maxProperties": 64,
"title": "Bindings",
"type": "object"
}
},
"required": [
"intent",
"archetypeSnapshot",
"bindings"
],
"title": "RoomProgramAttachment",
"type": "object"
},
"ScreenplayInput": {
"additionalProperties": false,
"properties": {
"id": {
"pattern": "^[A-Za-z0-9_-]{1,100}$",
"title": "Id",
"type": "string"
},
"title": {
"maxLength": 200,
"title": "Title",
"type": "string"
},
"text": {
"maxLength": 65536,
"title": "Text",
"type": "string"
}
},
"required": [
"id",
"title",
"text"
],
"title": "ScreenplayInput",
"type": "object"
},
"WrightInput": {
"additionalProperties": false,
"properties": {
"version": {
"const": "wright.world/1",
"title": "Version",
"type": "string"
},
"identity": {
"format": "uuid",
"title": "Identity",
"type": "string"
},
"rooms": {
"items": {
"$ref": "#/$defs/Room"
},
"maxItems": 64,
"minItems": 1,
"title": "Rooms",
"type": "array"
},
"levels": {
"items": {
"$ref": "#/$defs/Level"
},
"maxItems": 32,
"title": "Levels",
"type": "array"
},
"portals": {
"items": {
"$ref": "#/$defs/Portal"
},
"maxItems": 256,
"title": "Portals",
"type": "array"
},
"entrances": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/Entrance"
},
"maxItems": 64,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Entrances"
},
"membership": {
"additionalProperties": {
"format": "uuid",
"type": "string"
},
"maxProperties": 1000,
"propertyNames": {
"format": "uuid"
},
"title": "Membership",
"type": "object"
}
},
"required": [
"version",
"identity",
"rooms",
"levels",
"portals",
"membership"
],
"title": "WrightInput",
"type": "object"
},
"vec3": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"length2": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"positiveLength2": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"positiveVec3": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"quaternion": {
"type": "array",
"minItems": 4,
"maxItems": 4,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"color": {
"type": "string",
"pattern": "^#[0-9A-Fa-f]{6}$"
},
"bounds": {
"type": "object",
"additionalProperties": false,
"required": [
"min",
"max"
],
"properties": {
"min": {
"$ref": "#/$defs/vec3"
},
"max": {
"$ref": "#/$defs/vec3"
}
}
},
"transform": {
"type": "object",
"additionalProperties": false,
"required": [
"position",
"quaternion",
"scale"
],
"properties": {
"position": {
"$ref": "#/$defs/vec3"
},
"quaternion": {
"$ref": "#/$defs/quaternion"
},
"scale": {
"$ref": "#/$defs/positiveVec3"
}
}
},
"environment": {
"type": "object",
"additionalProperties": false,
"required": [
"room",
"background",
"fog",
"floor",
"lights"
],
"properties": {
"room": {
"type": "object",
"additionalProperties": false,
"required": [
"width",
"depth",
"height",
"floorY"
],
"properties": {
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"depth": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"floorY": {
"type": "number"
}
}
},
"background": {
"$ref": "#/$defs/color"
},
"fog": {
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"additionalProperties": false,
"required": [
"color",
"near",
"far"
],
"properties": {
"color": {
"$ref": "#/$defs/color"
},
"near": {
"type": "number",
"minimum": 0
},
"far": {
"type": "number",
"exclusiveMinimum": 0
}
}
}
]
},
"floor": {
"type": "object",
"additionalProperties": false,
"required": [
"visible",
"color",
"receiveShadow",
"gridVisible"
],
"properties": {
"visible": {
"type": "boolean"
},
"color": {
"$ref": "#/$defs/color"
},
"receiveShadow": {
"type": "boolean"
},
"gridVisible": {
"type": "boolean"
}
}
},
"lights": {
"type": "array",
"maxItems": 16,
"items": {
"$ref": "#/$defs/light"
}
}
}
},
"light": {
"type": "object",
"additionalProperties": false,
"required": [
"type",
"color",
"intensity",
"position",
"castShadow"
],
"properties": {
"type": {
"enum": [
"ambient",
"hemisphere",
"directional",
"point"
]
},
"color": {
"$ref": "#/$defs/color"
},
"groundColor": {
"$ref": "#/$defs/color"
},
"intensity": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"position": {
"$ref": "#/$defs/vec3"
},
"castShadow": {
"type": "boolean"
}
}
},
"asset": {
"type": "object",
"additionalProperties": false,
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"description",
"category",
"canonicalSize",
"normalization",
"placement",
"supportsObjects",
"supportSurfaces"
],
"properties": {
"library": {
"type": "object",
"properties": {
"version": {
"const": "quay.asset-library/1",
"type": "string"
},
"alias": {
"type": "string"
},
"scope": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "user",
"type": "string"
},
{
"const": "project",
"type": "string"
}
]
},
"projectId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"origin": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"originalAssetId": {
"type": "string"
},
"originalUrl": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"author": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"license": {
"type": "string"
},
"attributionRequired": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"originalFilename": {
"type": "string"
},
"downloadedAt": {
"type": "string"
},
"contentHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
}
},
"required": [
"provider",
"originalAssetId",
"originalUrl",
"author",
"license",
"attributionRequired",
"originalFilename",
"downloadedAt",
"contentHash",
"sourceHash"
],
"additionalProperties": false
},
"semantics": {
"type": "object",
"properties": {
"taxonomy": {
"const": "quay.asset-taxonomy/1",
"type": "string"
},
"category": {
"type": "string"
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"roomTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"confidence": {
"type": "number"
},
"state": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "suggested",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"taxonomy",
"category",
"styles",
"roomTypes",
"affordances",
"capacity",
"confidence",
"state",
"producer",
"model"
],
"additionalProperties": false
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"archetypeId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"cost": {
"type": "object",
"properties": {
"triangles": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"materials": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"textureBytes": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"texturePixels": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"triangles",
"materials",
"textureBytes",
"texturePixels"
],
"additionalProperties": false
}
},
"required": [
"version",
"alias",
"scope",
"projectId",
"origin",
"semantics",
"manifestId",
"archetypeId",
"cost"
],
"additionalProperties": false
},
"assetId": {
"type": "string",
"format": "uuid"
},
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"sha256": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"byteLength": {
"type": "integer",
"minimum": 1
},
"mediaType": {
"const": "model/gltf-binary"
},
"displayName": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"description": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"category": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"canonicalSize": {
"$ref": "#/$defs/positiveVec3"
},
"normalization": {
"type": "object",
"additionalProperties": false,
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"properties": {
"rawBounds": {
"$ref": "#/$defs/bounds"
},
"scale": {
"$ref": "#/$defs/positiveVec3"
},
"baseOffset": {
"$ref": "#/$defs/vec3"
},
"forwardCorrection": {
"$ref": "#/$defs/quaternion"
}
}
},
"placement": {
"enum": [
"floor_only",
"support_only",
"floor_or_support"
]
},
"supportsObjects": {
"type": "boolean"
},
"wallAlignment": {
"type": [
"string",
"null"
],
"enum": [
"left",
"center",
"right",
null
]
},
"availability": {
"enum": [
"global",
"local"
]
},
"roomId": {
"type": [
"string",
"null"
]
},
"supportSurfaces": {
"type": "array",
"maxItems": 50,
"items": {
"$ref": "#/$defs/supportSurface"
}
}
}
},
"imageAsset": {
"type": "object",
"additionalProperties": false,
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"properties": {
"assetId": {
"type": "string",
"format": "uuid"
},
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"sha256": {
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
},
"byteLength": {
"type": "integer",
"minimum": 1
},
"mediaType": {
"enum": [
"image/png",
"image/jpeg",
"image/webp"
]
},
"displayName": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
}
},
"supportSurface": {
"type": "object",
"additionalProperties": false,
"required": [
"surfaceId",
"label",
"center",
"normal",
"size",
"source"
],
"properties": {
"surfaceId": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"center": {
"$ref": "#/$defs/vec3"
},
"normal": {
"$ref": "#/$defs/vec3"
},
"size": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"source": {
"enum": [
"bounds",
"mesh",
"manual"
]
}
}
},
"instance": {
"type": "object",
"additionalProperties": false,
"required": [
"instanceId",
"assetId",
"name",
"transform",
"visible",
"castShadow",
"receiveShadow",
"locked",
"placement",
"tags"
],
"properties": {
"instanceId": {
"type": "string",
"format": "uuid"
},
"assetId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"transform": {
"$ref": "#/$defs/transform"
},
"normalization": {
"$ref": "#/$defs/asset/properties/normalization"
},
"wallImage": {
"type": "object",
"additionalProperties": false,
"required": [
"wallInstanceId",
"assetId",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio"
],
"properties": {
"wallInstanceId": {
"type": "string",
"format": "uuid"
},
"assetId": {
"type": "string",
"format": "uuid"
},
"position": {
"$ref": "#/$defs/length2"
},
"size": {
"$ref": "#/$defs/positiveLength2"
},
"surfaceOffset": {
"type": "number",
"minimum": 0
},
"preserveAspectRatio": {
"type": "boolean"
},
"surface": {
"enum": [
"wall",
"floor"
]
}
}
},
"visible": {
"type": "boolean"
},
"castShadow": {
"type": "boolean"
},
"receiveShadow": {
"type": "boolean"
},
"locked": {
"type": "boolean"
},
"placement": {
"type": "object",
"additionalProperties": false,
"required": [
"source",
"supportingInstanceId",
"supportSurfaceId",
"solverStatus"
],
"properties": {
"source": {
"enum": [
"solver",
"manual",
"imported"
]
},
"supportingInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"supportSurfaceId": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"solverStatus": {
"enum": [
"placed",
"fallback",
"unresolved"
]
}
}
},
"tags": {
"type": "array",
"maxItems": 50,
"uniqueItems": true,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"materialId": {
"type": "string",
"format": "uuid"
}
}
},
"resolvedRelation": {
"type": "object",
"additionalProperties": false,
"required": [
"relationId",
"type",
"subjectInstanceId",
"targetInstanceId",
"strength",
"status",
"message"
],
"properties": {
"relationId": {
"type": "string",
"format": "uuid"
},
"type": {
"enum": [
"ON",
"NEAR",
"LEFT_OF",
"RIGHT_OF",
"IN_FRONT_OF",
"BEHIND",
"FACING",
"CENTERED_ON",
"ALIGNED_WITH",
"AGAINST_WALL",
"KEEP_CLEAR_OF"
]
},
"subjectInstanceId": {
"type": "string",
"format": "uuid"
},
"targetInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"strength": {
"enum": [
"hard",
"soft"
]
},
"status": {
"enum": [
"satisfied",
"degraded",
"unresolved"
]
},
"message": {
"type": "string",
"maxLength": 500
}
}
},
"diagnostic": {
"type": "object",
"additionalProperties": false,
"required": [
"code",
"severity",
"message",
"instanceIds",
"relationId"
],
"properties": {
"code": {
"type": "string",
"pattern": "^[A-Z][A-Z0-9_]{1,63}$"
},
"severity": {
"enum": [
"info",
"warning",
"error"
]
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"instanceIds": {
"type": "array",
"maxItems": 50,
"uniqueItems": true,
"items": {
"type": "string",
"format": "uuid"
}
},
"relationId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"measurements": {
"type": "object",
"additionalProperties": {
"type": "number"
}
}
}
},
"camera": {
"type": "object",
"additionalProperties": false,
"required": [
"type",
"position",
"target",
"up",
"fovDegrees",
"near",
"far"
],
"properties": {
"type": {
"const": "perspective"
},
"position": {
"$ref": "#/$defs/vec3"
},
"target": {
"$ref": "#/$defs/vec3"
},
"up": {
"$ref": "#/$defs/vec3"
},
"fovDegrees": {
"type": "number",
"exclusiveMinimum": 1,
"exclusiveMaximum": 179
},
"near": {
"type": "number",
"exclusiveMinimum": 0
},
"far": {
"type": "number",
"exclusiveMinimum": 0
}
}
},
"provenance": {
"type": "object",
"additionalProperties": false,
"required": [
"createdBy",
"planner",
"layoutEngineVersion",
"threeVersion",
"sourcePrompt"
],
"properties": {
"createdBy": {
"enum": [
"quay",
"import"
]
},
"planner": {
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"additionalProperties": false,
"required": [
"provider",
"model",
"promptTemplateVersion",
"requestId"
],
"properties": {
"provider": {
"enum": [
"openai",
"fake"
]
},
"model": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"promptTemplateVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"requestId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
}
}
]
},
"layoutEngineVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"threeVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sourcePrompt": {
"type": "string",
"maxLength": 4000
}
}
}
},
"additionalProperties": false,
"properties": {
"version": {
"const": "quay.project-archive/1",
"title": "Version",
"type": "string"
},
"editor": {
"$ref": "#/$defs/ArchiveEditor"
},
"workspace": {
"additionalProperties": {
"$ref": "#/$defs/JsonValue"
},
"title": "Workspace",
"type": "object"
}
},
"required": [
"version",
"editor",
"workspace"
],
"title": "ProjectArchiveCheckpoint",
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema"
}project.schema.json
| Root property | Required | Constraint |
|---|---|---|
| rams | no | {"type":"object","properties":{"source":{"type":"string"},"config":{"anyOf":[{"type":"null"},{"type":"object","properties":{"presentation":{"type":"object","properties":{"template":{"const":"portfolio","type":"string"},"monogram":{"type":"string"},"rooms":{"type":"array","items":{"type":"object","properties":{"stableRoomId":{"type":"string"},"slug":{"type":"string"},"canonicalPath":{"type":"string"},"navigationTitle":{"type":"string"},"title":{"type":"string"},"subtitle":{"type":"string"},"seoTitle":{"type":"string"},"seoDescription":{"type":"string"},"html":{"type":"string"}},"required":["stableRoomId","slug","canonicalPath","navigationTitle","title","subtitle","seoTitle","seoDescription","html"],"additionalProperties":false}},"welcomeAudio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"landscapeOnMobile":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"introState":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["template","monogram","rooms","welcomeAudio","landscapeOnMobile","introState"],"additionalProperties":false},"version":{"const":"rams.site/1","type":"string"},"title":{"type":"string"},"locale":{"anyOf":[{"const":"it","type":"string"},{"const":"en","type":"string"}]},"navigation":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}},"footer":{"type":"object","properties":{"text":{"type":"string"},"links":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}},"branding":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["text","links","branding"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string"},"description":{"type":"string"},"descriptionSource":{"anyOf":[{"const":"generated","type":"string"},{"const":"authored","type":"string"}]},"image":{"anyOf":[{"type":"null"},{"type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","summary","description","descriptionSource","image","actions"],"additionalProperties":false}},"roomInfo":{"anyOf":[{"const":"card","type":"string"},{"const":"panel","type":"string"},{"const":"chat","type":"string"},{"const":"none","type":"string"}]},"overlays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"kind":{"anyOf":[{"const":"text","type":"string"},{"const":"project","type":"string"},{"const":"about","type":"string"},{"const":"gallery","type":"string"},{"const":"embed","type":"string"},{"const":"html","type":"string"},{"const":"contact","type":"string"},{"const":"component","type":"string"}]},"text":{"type":"string"},"images":{"type":"array","items":{"type":"string"}},"url":{"anyOf":[{"type":"null"},{"type":"string"}]},"fragment":{"anyOf":[{"type":"null"},{"type":"object","properties":{"html":{"type":"string"},"css":{"type":"string"},"script":{"type":"string"},"security":{"anyOf":[{"const":"safe","type":"string"},{"const":"controlled-script","type":"string"}]}},"required":["html","css","script","security"],"additionalProperties":false}]},"component":{"anyOf":[{"type":"null"},{"const":"chat","type":"string"},{"const":"rooms","type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","kind","text","images","url","fragment","component","actions"],"additionalProperties":false}},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"kind":{"anyOf":[{"const":"text","type":"string"},{"const":"project","type":"string"},{"const":"about","type":"string"},{"const":"gallery","type":"string"},{"const":"embed","type":"string"},{"const":"html","type":"string"},{"const":"contact","type":"string"},{"const":"component","type":"string"}]},"text":{"type":"string"},"images":{"type":"array","items":{"type":"string"}},"url":{"anyOf":[{"type":"null"},{"type":"string"}]},"fragment":{"anyOf":[{"type":"null"},{"type":"object","properties":{"html":{"type":"string"},"css":{"type":"string"},"script":{"type":"string"},"security":{"anyOf":[{"const":"safe","type":"string"},{"const":"controlled-script","type":"string"}]}},"required":["html","css","script","security"],"additionalProperties":false}]},"component":{"anyOf":[{"type":"null"},{"const":"chat","type":"string"},{"const":"rooms","type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","kind","text","images","url","fragment","component","actions"],"additionalProperties":false}},"assets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"alt":{"type":"string"},"data":{"type":"string"}},"required":["id","alt","data"],"additionalProperties":false}},"theme":{"type":"object","properties":{"mode":{"anyOf":[{"const":"dark","type":"string"},{"const":"light","type":"string"},{"const":"system","type":"string"}]},"font":{"anyOf":[{"const":"system","type":"string"},{"const":"serif","type":"string"},{"const":"mono","type":"string"}]},"fontSize":{"type":"number"},"spacing":{"type":"number"},"radius":{"type":"number"},"background":{"type":"string"},"foreground":{"type":"string"},"accent":{"type":"string"},"navigation":{"anyOf":[{"const":"solid","type":"string"},{"const":"glass","type":"string"}]},"footer":{"anyOf":[{"const":"compact","type":"string"},{"const":"expanded","type":"string"}]},"overlay":{"anyOf":[{"const":"center","type":"string"},{"const":"side","type":"string"}]},"transitions":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"logo":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["mode","font","fontSize","spacing","radius","background","foreground","accent","navigation","footer","overlay","transitions","logo"],"additionalProperties":false},"contact":{"type":"object","properties":{"endpoint":{"anyOf":[{"type":"null"},{"type":"string"}]},"alternative":{"type":"string"},"privacy":{"type":"string"},"fields":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"required":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","label","required"],"additionalProperties":false}},"honeypot":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["endpoint","alternative","privacy","fields","honeypot"],"additionalProperties":false},"chat":{"type":"object","properties":{"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"welcome":{"type":"string"}},"required":["enabled","welcome"],"additionalProperties":false},"security":{"type":"object","properties":{"embedOrigins":{"type":"array","items":{"type":"string"}}},"required":["embedOrigins"],"additionalProperties":false},"deploy":{"type":"object","properties":{"target":{"const":"static","type":"string"},"basePath":{"type":"string"},"profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"transport":{"anyOf":[{"const":"local","type":"string"},{"const":"ssh","type":"string"},{"const":"sftp","type":"string"},{"const":"rsync","type":"string"},{"const":"scp","type":"string"},{"const":"ftp","type":"string"},{"const":"ftps","type":"string"},{"const":"custom","type":"string"}]},"host":{"type":"string"},"port":{"type":"number"},"username":{"type":"string"},"destination":{"type":"string"},"credentialRef":{"type":"string"},"strategy":{"anyOf":[{"const":"atomic","type":"string"},{"const":"directory","type":"string"}]},"buildProfile":{"const":"production","type":"string"},"preDeploy":{"const":"verify","type":"string"},"postDeploy":{"const":"healthcheck","type":"string"},"healthCheck":{"type":"object","properties":{"url":{"type":"string"},"expectedStatus":{"type":"number"},"expectedText":{"type":"string"}},"required":["url","expectedStatus","expectedText"],"additionalProperties":false},"timeout":{"type":"number"},"keepReleases":{"type":"number"},"compression":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"clean":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"passive":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"tls":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","name","transport","host","port","username","destination","credentialRef","strategy","buildProfile","preDeploy","postDeploy","healthCheck","timeout","keepReleases","compression","clean","passive","tls"],"additionalProperties":false}}},"required":["target","basePath"],"additionalProperties":false}},"required":["version","title","locale","navigation","footer","rooms","roomInfo","overlays","pages","assets","theme","contact","chat","security","deploy"],"additionalProperties":false}]},"error":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["source","config","error"],"additionalProperties":false} |
| wright | no | {"type":"object","properties":{"version":{"const":"wright.world/1","type":"string"},"identity":{"type":"string"},"rooms":{"type":"array","items":{"type":"object","properties":{"furnishing":{"type":"object","properties":{"roomProgram":{"type":"object","properties":{"repair":{"type":"object","properties":{"stage":{"const":"semantic","type":"string"},"attempts":{"type":"number"},"strategy":{"anyOf":[{"const":"none","type":"string"},{"const":"bounded-semantic-revision","type":"string"}]},"initialFailures":{"type":"array","items":{"type":"string"}},"finalState":{"const":"accepted","type":"string"},"relaxedConstraints":{"type":"array","items":{"type":"string"}}},"required":["stage","attempts","strategy","initialFailures","finalState","relaxedConstraints"],"additionalProperties":false},"enrichment":{"type":"object","properties":{"provider":{"type":"string"},"model":{"type":"string"},"version":{"type":"string"}},"required":["provider","model","version"],"additionalProperties":false},"intent":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"archetypeSnapshot":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["intent","archetypeSnapshot","bindings"],"additionalProperties":false},"version":{"const":"qway.furnishing/1","type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"needs":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"category":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"relation":{"anyOf":[{"type":"null"},{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"near-window","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"instances":{"type":"array","items":{"type":"array","items":{"type":"string"}}}},"required":["identity","category","quantity","capacity","assetAlias","placement","relation","target","instances"],"additionalProperties":false}}},"required":["version","purpose","capacity","style","needs"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"label":{"type":"string","maxLength":200},"level":{"anyOf":[{"type":"null"},{"type":"string"}]},"parent":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"backdrop":{"anyOf":[{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},{"type":"object","properties":{"north":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"south":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"east":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"west":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false}},"required":[],"additionalProperties":false}]}},"required":["identity","alias","label","level","parent","size","frame"],"additionalProperties":false}},"levels":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"label":{"type":"string"}},"required":["identity","label"],"additionalProperties":false}},"portals":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"from":{"type":"string"},"to":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","from","to","frame","width","height","traversable","door"],"additionalProperties":false}},"entrances":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"room":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","room","frame","width","height","traversable","door"],"additionalProperties":false}},"membership":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["version","identity","rooms","levels","portals","membership"],"additionalProperties":false} |
| ridley | no | {"type":"object","properties":{"personas":{"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.persona/1","type":"string"},"personaId":{"type":"string"},"profileId":{"type":"string"},"parentId":{"anyOf":[{"type":"null"},{"type":"string"}]},"revision":{"type":"number"},"createdAt":{"type":"string"},"sha256":{"type":"string"},"description":{"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string"},"instructions":{"type":"string"},"knowledge":{"type":"string"},"speakingStyle":{"type":"string"},"language":{"type":"string"},"allowedTopics":{"type":"array","items":{"type":"string"}},"forbiddenTopics":{"type":"array","items":{"type":"string"}},"emotionalBaseline":{"type":"string"},"memory":{"anyOf":[{"const":"none","type":"string"},{"const":"session","type":"string"}]},"maxTurns":{"type":"number"},"maxHistoryChars":{"type":"number"}},"required":["name","role","instructions","knowledge","speakingStyle","language","allowedTopics","forbiddenTopics","emotionalBaseline","memory","maxTurns","maxHistoryChars"],"additionalProperties":false}},"required":["version","personaId","profileId","parentId","revision","createdAt","sha256","description"],"additionalProperties":false}},"audio":{"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.audio/1","type":"string"},"assetId":{"type":"string"},"displayName":{"type":"string"},"sha256":{"type":"string"},"uri":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]},"durationSeconds":{"type":"number"},"sampleRate":{"type":"number"},"channels":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}},"required":["version","assetId","displayName","sha256","uri","byteLength","mediaType","durationSeconds","sampleRate","channels"],"additionalProperties":false}},"version":{"const":"ridley.project/1","type":"string"},"screenplays":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string","maxLength":200},"text":{"type":"string","maxLength":65536}},"required":["id","title","text"],"additionalProperties":false}},"styleProfile":{"type":"object","properties":{"styles":{"type":"array","items":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"restrained","type":"string"},{"const":"surreal","type":"string"},{"const":"documentary","type":"string"},{"const":"elegant","type":"string"},{"const":"playful","type":"string"},{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"cold","type":"string"},{"const":"technological","type":"string"},{"const":"natural","type":"string"},{"const":"intimate","type":"string"},{"const":"theatrical","type":"string"},{"const":"high-contrast","type":"string"},{"const":"soft-contrast","type":"string"}]}},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"none","type":"string"},{"const":"restrained","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"soft","type":"string"},{"const":"natural","type":"string"},{"const":"dramatic","type":"string"}]}},"required":["room"],"additionalProperties":false}}},"required":["styles"],"additionalProperties":false},"draft":{"type":"object","properties":{"source":{"type":"string"},"sourceHash":{"type":"string"},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"info","type":"string"},{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"message":{"type":"string"},"span":{"anyOf":[{"type":"null"},{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["code","severity","message","span","identity"],"additionalProperties":false}}},"required":["source","sourceHash","diagnostics"],"additionalProperties":false},"accepted":{"anyOf":[{"type":"null"},{"type":"object","properties":{"source":{"type":"string"},"document":{"anyOf":[{"type":"null"},{"type":"object","properties":{"audio":{"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.audio/1","type":"string"},"assetId":{"type":"string"},"displayName":{"type":"string"},"sha256":{"type":"string"},"uri":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]},"durationSeconds":{"type":"number"},"sampleRate":{"type":"number"},"channels":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}},"required":["version","assetId","displayName","sha256","uri","byteLength","mediaType","durationSeconds","sampleRate","channels"],"additionalProperties":false}},"schema":{"const":"quay.cinematic","type":"string"},"version":{"const":"1.0.0","type":"string"},"compiler":{"const":"ridley.compiler/1","type":"string"},"worldSceneId":{"type":"string"},"worldSourceHash":{"type":"string"},"sourceHash":{"type":"string"},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"direction":{"type":"object","properties":{"schema":{"const":"quay.room-direction","type":"string"},"version":{"const":"1.0.0","type":"string"},"compiler":{"const":"ridley.direction/1","type":"string"},"manual":{"const":"ridley.direction-manual/1","type":"string"},"styleProfile":{"type":"object","properties":{"styles":{"type":"array","items":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"restrained","type":"string"},{"const":"surreal","type":"string"},{"const":"documentary","type":"string"},{"const":"elegant","type":"string"},{"const":"playful","type":"string"},{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"cold","type":"string"},{"const":"technological","type":"string"},{"const":"natural","type":"string"},{"const":"intimate","type":"string"},{"const":"theatrical","type":"string"},{"const":"high-contrast","type":"string"},{"const":"soft-contrast","type":"string"}]}},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"none","type":"string"},{"const":"restrained","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"soft","type":"string"},{"const":"natural","type":"string"},{"const":"dramatic","type":"string"}]}},"required":["room"],"additionalProperties":false}}},"required":["styles"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intent":{"type":"object","properties":{"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"none","type":"string"},{"const":"restrained","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"soft","type":"string"},{"const":"natural","type":"string"},{"const":"dramatic","type":"string"}]}},"required":["intensity","mood","hero","motion","contrast"],"additionalProperties":false},"resolved":{"type":"object","properties":{"lightingPreset":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"clinical","type":"string"},{"const":"dramatic-hero","type":"string"}]},"atmospherePreset":{"anyOf":[{"const":"none","type":"string"},{"const":"subtle-depth","type":"string"},{"const":"haze","type":"string"}]},"postProcessingPreset":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"hero","type":"string"}]},"cameraEntryPreset":{"anyOf":[{"const":"none","type":"string"},{"const":"settle","type":"string"},{"const":"slow-reveal","type":"string"},{"const":"hero-reveal","type":"string"}]},"explorationPreset":{"const":"free-stable","type":"string"},"ambientMotion":{"type":"array","items":{"type":"string"}},"performance":{"type":"object","properties":{"cinematicHigh":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"balanced":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"performance":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]}},"required":["cinematicHigh","balanced","performance"],"additionalProperties":false}},"required":["lightingPreset","atmospherePreset","postProcessingPreset","cameraEntryPreset","explorationPreset","ambientMotion","performance"],"additionalProperties":false},"rules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"event":{"anyOf":[{"const":"wright.room.enter","type":"string"},{"const":"wright.room.leave","type":"string"},{"const":"qway.object.near","type":"string"},{"const":"ridley.dialogue.start","type":"string"},{"const":"ridley.dialogue.end","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"preset":{"anyOf":[{"const":"hero","type":"string"},{"const":"entry","type":"string"},{"const":"exploration","type":"string"},{"const":"dialogue","type":"string"},{"const":"exit","type":"string"}]},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","event","target","preset","once"],"additionalProperties":false}}},"required":["room","intent","resolved","rules"],"additionalProperties":false}}},"required":["schema","version","compiler","manual","styleProfile","rooms"],"additionalProperties":false},"sequences":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"duration":{"type":"number"},"cues":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"shot","type":"string"},"type":{"anyOf":[{"const":"extreme-closeup","type":"string"},{"const":"closeup","type":"string"},{"const":"medium-closeup","type":"string"},{"const":"medium","type":"string"},{"const":"american","type":"string"},{"const":"full","type":"string"},{"const":"long","type":"string"},{"const":"extreme-long","type":"string"},{"const":"two-shot","type":"string"},{"const":"over-the-shoulder","type":"string"},{"const":"pov","type":"string"},{"const":"establishing","type":"string"},{"const":"insert","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"shoulder":{"anyOf":[{"type":"null"},{"type":"string"}]},"movement":{"anyOf":[{"const":"static","type":"string"},{"const":"pan","type":"string"},{"const":"tilt","type":"string"},{"const":"dolly","type":"string"},{"const":"truck","type":"string"},{"const":"pedestal","type":"string"},{"const":"orbit","type":"string"},{"const":"zoom","type":"string"},{"const":"follow","type":"string"},{"const":"crane","type":"string"}]},"amount":{"type":"number"},"transition":{"anyOf":[{"const":"cut","type":"string"},{"const":"smooth","type":"string"}]}},"required":["id","start","duration","span","kind","type","subjects","shoulder","movement","amount","transition"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"anyOf":[{"const":"dialogue","type":"string"},{"const":"subtitle","type":"string"},{"const":"narration","type":"string"}]},"actor":{"anyOf":[{"type":"null"},{"type":"string"}]},"text":{"type":"string"},"speech":{"type":"object","properties":{"model":{"const":"gpt-4o-mini-tts-2025-12-15","type":"string"},"voice":{"type":"string","enum":["alloy","ash","ballad","coral","echo","fable","nova","onyx","sage","shimmer","verse","marin","cedar"]},"language":{"type":"string","pattern":"^[a-z]{2,3}(-[A-Za-z]{2,8})?$"},"instructions":{"type":"string","maxLength":2000},"speed":{"type":"number","minimum":0.25,"maximum":4}},"required":["model","voice","language","instructions","speed"],"additionalProperties":false},"speechAudio":{"type":"string","pattern":"^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$"}},"required":["id","start","duration","span","kind","actor","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"action","type":"string"},"actor":{"type":"string"},"action":{"anyOf":[{"const":"look-at","type":"string"},{"const":"move-to","type":"string"},{"const":"animate","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"clip":{"anyOf":[{"type":"null"},{"type":"number"}]},"persistence":{"anyOf":[{"const":"temporary","type":"string"},{"const":"runtime","type":"string"}]}},"required":["id","start","duration","span","kind","actor","action","target","clip","persistence"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"emit","type":"string"},"event":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["id","start","duration","span","kind","event","target"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"music","type":"string"},"command":{"type":"object","properties":{"action":{"anyOf":[{"const":"play","type":"string"},{"const":"stop","type":"string"},{"const":"crossfade","type":"string"}]},"assetId":{"type":"string"},"from":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"},"fade":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["action","assetId","from","volume","fade","loop"],"additionalProperties":false}},"required":["id","start","duration","span","kind","command"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"sfx","type":"string"},"assetId":{"type":"string"},"spatial":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"}},"required":["id","start","duration","span","kind","assetId","spatial","volume"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string"},"start":{"type":"number"},"duration":{"type":"number"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false},"kind":{"const":"return","type":"string"}},"required":["id","start","duration","span","kind"],"additionalProperties":false}]}}},"required":["id","duration","cues"],"additionalProperties":false}},"triggers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"subject":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"event":{"anyOf":[{"const":"near","type":"string"},{"const":"qway.object.enter","type":"string"},{"const":"qway.object.leave","type":"string"},{"const":"qway.relation.changed","type":"string"},{"const":"qway.interaction","type":"string"},{"const":"qway.trigger","type":"string"},{"const":"ridley.complete","type":"string"}]},"distance":{"type":"number"},"cinematic":{"type":"string"},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","subject","target","event","distance","cinematic","once"],"additionalProperties":false}}},"required":["schema","version","compiler","worldSceneId","worldSourceHash","sourceHash","bindings","sequences","triggers"],"additionalProperties":false}]},"direction":{"type":"object","properties":{"schema":{"const":"quay.room-direction","type":"string"},"version":{"const":"1.0.0","type":"string"},"compiler":{"const":"ridley.direction/1","type":"string"},"manual":{"const":"ridley.direction-manual/1","type":"string"},"styleProfile":{"type":"object","properties":{"styles":{"type":"array","items":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"restrained","type":"string"},{"const":"surreal","type":"string"},{"const":"documentary","type":"string"},{"const":"elegant","type":"string"},{"const":"playful","type":"string"},{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"cold","type":"string"},{"const":"technological","type":"string"},{"const":"natural","type":"string"},{"const":"intimate","type":"string"},{"const":"theatrical","type":"string"},{"const":"high-contrast","type":"string"},{"const":"soft-contrast","type":"string"}]}},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"none","type":"string"},{"const":"restrained","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"soft","type":"string"},{"const":"natural","type":"string"},{"const":"dramatic","type":"string"}]}},"required":["room"],"additionalProperties":false}}},"required":["styles"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"intent":{"type":"object","properties":{"intensity":{"anyOf":[{"const":0,"type":"number"},{"const":3,"type":"number"},{"const":4,"type":"number"},{"const":1,"type":"number"},{"const":2,"type":"number"}]},"mood":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"dramatic","type":"string"},{"const":"clinical","type":"string"},{"const":"mysterious","type":"string"},{"const":"energetic","type":"string"},{"const":"contemplative","type":"string"}]},"hero":{"anyOf":[{"type":"null"},{"type":"string"}]},"motion":{"anyOf":[{"const":"none","type":"string"},{"const":"restrained","type":"string"},{"const":"active","type":"string"}]},"contrast":{"anyOf":[{"const":"soft","type":"string"},{"const":"natural","type":"string"},{"const":"dramatic","type":"string"}]}},"required":["intensity","mood","hero","motion","contrast"],"additionalProperties":false},"resolved":{"type":"object","properties":{"lightingPreset":{"anyOf":[{"const":"monumental","type":"string"},{"const":"warm","type":"string"},{"const":"intimate","type":"string"},{"const":"neutral","type":"string"},{"const":"cool","type":"string"},{"const":"clinical","type":"string"},{"const":"dramatic-hero","type":"string"}]},"atmospherePreset":{"anyOf":[{"const":"none","type":"string"},{"const":"subtle-depth","type":"string"},{"const":"haze","type":"string"}]},"postProcessingPreset":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"hero","type":"string"}]},"cameraEntryPreset":{"anyOf":[{"const":"none","type":"string"},{"const":"settle","type":"string"},{"const":"slow-reveal","type":"string"},{"const":"hero-reveal","type":"string"}]},"explorationPreset":{"const":"free-stable","type":"string"},"ambientMotion":{"type":"array","items":{"type":"string"}},"performance":{"type":"object","properties":{"cinematicHigh":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"balanced":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]},"performance":{"anyOf":[{"const":"minimal","type":"string"},{"const":"balanced","type":"string"},{"const":"high","type":"string"}]}},"required":["cinematicHigh","balanced","performance"],"additionalProperties":false}},"required":["lightingPreset","atmospherePreset","postProcessingPreset","cameraEntryPreset","explorationPreset","ambientMotion","performance"],"additionalProperties":false},"rules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"event":{"anyOf":[{"const":"wright.room.enter","type":"string"},{"const":"wright.room.leave","type":"string"},{"const":"qway.object.near","type":"string"},{"const":"ridley.dialogue.start","type":"string"},{"const":"ridley.dialogue.end","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"preset":{"anyOf":[{"const":"hero","type":"string"},{"const":"entry","type":"string"},{"const":"exploration","type":"string"},{"const":"dialogue","type":"string"},{"const":"exit","type":"string"}]},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","event","target","preset","once"],"additionalProperties":false}}},"required":["room","intent","resolved","rules"],"additionalProperties":false}}},"required":["schema","version","compiler","manual","styleProfile","rooms"],"additionalProperties":false},"experience":{"type":"object","properties":{"personas":{"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.persona/1","type":"string"},"personaId":{"type":"string"},"profileId":{"type":"string"},"parentId":{"anyOf":[{"type":"null"},{"type":"string"}]},"revision":{"type":"number"},"createdAt":{"type":"string"},"sha256":{"type":"string"},"description":{"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string"},"instructions":{"type":"string"},"knowledge":{"type":"string"},"speakingStyle":{"type":"string"},"language":{"type":"string"},"allowedTopics":{"type":"array","items":{"type":"string"}},"forbiddenTopics":{"type":"array","items":{"type":"string"}},"emotionalBaseline":{"type":"string"},"memory":{"anyOf":[{"const":"none","type":"string"},{"const":"session","type":"string"}]},"maxTurns":{"type":"number"},"maxHistoryChars":{"type":"number"}},"required":["name","role","instructions","knowledge","speakingStyle","language","allowedTopics","forbiddenTopics","emotionalBaseline","memory","maxTurns","maxHistoryChars"],"additionalProperties":false}},"required":["version","personaId","profileId","parentId","revision","createdAt","sha256","description"],"additionalProperties":false}},"npcs":{"type":"array","items":{"type":"object","properties":{"actor":{"type":"string"},"profileId":{"type":"string"}},"required":["actor","profileId"],"additionalProperties":false}},"audio":{"type":"array","items":{"type":"object","properties":{"version":{"const":"ridley.audio/1","type":"string"},"assetId":{"type":"string"},"displayName":{"type":"string"},"sha256":{"type":"string"},"uri":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"audio/wav","type":"string"},{"const":"audio/mpeg","type":"string"}]},"durationSeconds":{"type":"number"},"sampleRate":{"type":"number"},"channels":{"anyOf":[{"const":1,"type":"number"},{"const":2,"type":"number"}]}},"required":["version","assetId","displayName","sha256","uri","byteLength","mediaType","durationSeconds","sampleRate","channels"],"additionalProperties":false}},"schema":{"const":"quay.experience","type":"string"},"version":{"const":"1.0.0","type":"string"},"compiler":{"const":"ridley.experience/1","type":"string"},"worldSceneId":{"type":"string"},"worldSourceHash":{"type":"string"},"sourceHash":{"type":"string"},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"initial":{"type":"string"},"states":{"type":"array","items":{"type":"object","properties":{"audio":{"type":"array","items":{"type":"object","properties":{"action":{"anyOf":[{"const":"play","type":"string"},{"const":"stop","type":"string"},{"const":"crossfade","type":"string"}]},"assetId":{"type":"string"},"from":{"anyOf":[{"type":"null"},{"type":"string"}]},"volume":{"type":"number"},"fade":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["action","assetId","from","volume","fade","loop"],"additionalProperties":false}},"id":{"type":"string"},"mode":{"anyOf":[{"const":"cinematic","type":"string"},{"const":"interactive","type":"string"},{"const":"conversation","type":"string"}]},"conversation":{"type":"object","properties":{"actor":{"type":"string"},"profileId":{"type":"string"}},"required":["actor","profileId"],"additionalProperties":false},"cinematic":{"anyOf":[{"type":"null"},{"type":"string"}]},"control":{"anyOf":[{"type":"null"},{"type":"string"}]},"camera":{"anyOf":[{"const":"third-person","type":"string"},{"const":"first-person","type":"string"},{"const":"overhead","type":"string"},{"const":"overview","type":"string"}]},"userCamera":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"followers":{"type":"array","items":{"type":"object","properties":{"actor":{"type":"string"},"target":{"type":"string"},"distance":{"type":"number"},"delay":{"type":"number"},"speed":{"type":"number"}},"required":["actor","target","distance","delay","speed"],"additionalProperties":false}}},"required":["id","mode","cinematic","control","camera","userCamera","followers"],"additionalProperties":false}},"transitions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"from":{"type":"string"},"to":{"type":"string"},"event":{"type":"string"},"subject":{"anyOf":[{"type":"null"},{"type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"once":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","from","to","event","subject","target","once"],"additionalProperties":false}}},"required":["schema","version","compiler","worldSceneId","worldSourceHash","sourceHash","bindings","initial","states","transitions"],"additionalProperties":false}},"required":["source","document","direction"],"additionalProperties":false}]}},"required":["version","screenplays","draft","accepted"],"additionalProperties":false} |
| schema | yes | {"const":"quay.project","type":"string"} |
| schemaVersion | yes | {"const":"2.0.0-draft.1","type":"string"} |
| projectId | yes | {"type":"string"} |
| revision | yes | {"type":"number"} |
| createdAt | yes | {"type":"string"} |
| updatedAt | yes | {"type":"string"} |
| draft | yes | {"type":"object","properties":{"source":{"type":"string"},"sourceHash":{"type":"string"},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"info","type":"string"},{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"message":{"type":"string"},"span":{"anyOf":[{"type":"null"},{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["code","severity","message","span","identity"],"additionalProperties":false}}},"required":["source","sourceHash","diagnostics"],"additionalProperties":false} |
| accepted | yes | {"anyOf":[{"type":"null"},{"type":"object","properties":{"source":{"type":"string"},"sourceHash":{"type":"string"},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"dependencies":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"manifestId":{"type":"string"},"analysisRevision":{"type":"string"},"contentHash":{"type":"string"}},"required":["assetId","manifestId","analysisRevision","contentHash"],"additionalProperties":false}},"versions":{"type":"object","properties":{"compiler":{"const":"quay.compiler/1","type":"string"},"layout":{"anyOf":[{"const":"quay.legacy-layout-adapter/1","type":"string"},{"const":"quay.semantic-layout/1","type":"string"},{"const":"quay.semantic-layout/2","type":"string"}]},"policy":{"anyOf":[{"const":"quay.static-policy/1","type":"string"},{"const":"quay.physical-policy/1","type":"string"}]}},"required":["compiler","layout","policy"],"additionalProperties":false},"scene":{"type":"object","properties":{"wright":{"type":"object","properties":{"version":{"const":"wright.resolved/1","type":"string"},"topology":{"type":"object","properties":{"version":{"const":"wright.world/1","type":"string"},"identity":{"type":"string"},"rooms":{"type":"array","items":{"type":"object","properties":{"furnishing":{"type":"object","properties":{"roomProgram":{"type":"object","properties":{"repair":{"type":"object","properties":{"stage":{"const":"semantic","type":"string"},"attempts":{"type":"number"},"strategy":{"anyOf":[{"const":"none","type":"string"},{"const":"bounded-semantic-revision","type":"string"}]},"initialFailures":{"type":"array","items":{"type":"string"}},"finalState":{"const":"accepted","type":"string"},"relaxedConstraints":{"type":"array","items":{"type":"string"}}},"required":["stage","attempts","strategy","initialFailures","finalState","relaxedConstraints"],"additionalProperties":false},"enrichment":{"type":"object","properties":{"provider":{"type":"string"},"model":{"type":"string"},"version":{"type":"string"}},"required":["provider","model","version"],"additionalProperties":false},"intent":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"archetypeSnapshot":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["intent","archetypeSnapshot","bindings"],"additionalProperties":false},"version":{"const":"qway.furnishing/1","type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"needs":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"category":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"center","type":"string"},{"const":"auto","type":"string"},{"const":"perimeter","type":"string"}]},"relation":{"anyOf":[{"type":"null"},{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"near-window","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"instances":{"type":"array","items":{"type":"array","items":{"type":"string"}}}},"required":["identity","category","quantity","capacity","assetAlias","placement","relation","target","instances"],"additionalProperties":false}}},"required":["version","purpose","capacity","style","needs"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"label":{"type":"string","maxLength":200},"level":{"anyOf":[{"type":"null"},{"type":"string"}]},"parent":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"backdrop":{"anyOf":[{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},{"type":"object","properties":{"north":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"south":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"east":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"west":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false}},"required":[],"additionalProperties":false}]}},"required":["identity","alias","label","level","parent","size","frame"],"additionalProperties":false}},"levels":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"label":{"type":"string"}},"required":["identity","label"],"additionalProperties":false}},"portals":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"from":{"type":"string"},"to":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","from","to","frame","width","height","traversable","door"],"additionalProperties":false}},"entrances":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"room":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","room","frame","width","height","traversable","door"],"additionalProperties":false}},"membership":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["version","identity","rooms","levels","portals","membership"],"additionalProperties":false},"worldFrames":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false}},"localPoses":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["position","quaternion","scale"],"additionalProperties":false}},"programVerification":{"type":"object","properties":{"policy":{"anyOf":[{"const":"qway.room-program-geometry/1","type":"string"},{"const":"qway.room-program-geometry/2","type":"string"},{"const":"qway.room-program-geometry/3","type":"string"}]},"actor":{"type":"object","properties":{"radiusM":{"type":"number"},"heightM":{"type":"number"}},"required":["radiusM","heightM"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"archetypeRevision":{"type":"string"},"layout":{"type":"object","properties":{"policy":{"const":"qway.room-program-layout/1","type":"string"},"strategy":{"const":"bounded-geometric-search","type":"string"},"candidateBudget":{"type":"number"},"candidatesTested":{"type":"number"},"passesPerformed":{"type":"number"},"initialRules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]}},"required":["reference","status"],"additionalProperties":false}},"changedInstances":{"type":"array","items":{"type":"string"}},"relaxedConstraints":{"type":"array","items":{"type":"string"}},"termination":{"anyOf":[{"const":"stationary","type":"string"},{"const":"budget-exhausted","type":"string"},{"const":"pass-limit","type":"string"},{"const":"zero-score","type":"string"}]}},"required":["policy","strategy","candidateBudget","candidatesTested","passesPerformed","initialRules","changedInstances","relaxedConstraints","termination"],"additionalProperties":false},"inventory":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"requestedUnits":{"type":"number"},"resolvedUnits":{"type":"number"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]}},"required":["reference","priority","requestedUnits","resolvedUnits","status"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000},"pairs":{"type":"array","items":{"type":"object","properties":{"subject":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000},"residuals":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["subject","target","status","message","residuals"],"additionalProperties":false}}},"required":["reference","kind","priority","strength","status","message","pairs"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"requested":{"type":"number"},"verified":{"type":"number"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000}},"required":["reference","kind","priority","requested","verified","status","message"],"additionalProperties":false}}},"required":["room","archetypeRevision","inventory","rules","architecture"],"additionalProperties":false}}},"required":["policy","actor","rooms"],"additionalProperties":false},"verification":{"type":"object","properties":{"policy":{"const":"wright.portal-geometry/1","type":"string"},"actor":{"type":"object","properties":{"radius":{"type":"number"},"height":{"type":"number"}},"required":["radius","height"],"additionalProperties":false},"portals":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"requestedAperture":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]},"actorPassage":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]}},"required":["identity","requestedAperture","actorPassage"],"additionalProperties":false}},"entrances":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"requestedAperture":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]},"actorPassage":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]}},"required":["identity","requestedAperture","actorPassage"],"additionalProperties":false}},"circulation":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"ready","type":"string"},{"const":"unresolved","type":"string"},{"const":"not-requested","type":"string"}]},"entryCount":{"type":"number"},"reachableSamples":{"type":"number"},"routeOutcomes":{"type":"array","items":{"type":"string"}}},"required":["room","status","entryCount","reachableSamples","routeOutcomes"],"additionalProperties":false}},"navigationBoxes":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"array","items":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false}}}},"required":["policy","actor","portals","circulation","navigationBoxes"],"additionalProperties":false},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]},"message":{"type":"string"}},"required":["code","severity","identity","message"],"additionalProperties":false}}},"required":["version","topology","worldFrames","localPoses","diagnostics"],"additionalProperties":false},"schema":{"const":"quay.scene","type":"string"},"schemaVersion":{"const":"2.0.0-draft.1","type":"string"},"semantic":{"type":"object","properties":{"materials":{"type":"array","items":{"type":"object","properties":{"version":{"const":"quay.material/1","type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"category":{"anyOf":[{"const":"glass","type":"string"},{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]},"shader":{"anyOf":[{"const":"unlit","type":"string"},{"const":"standard","type":"string"}]},"color":{"type":"string"},"roughness":{"type":"number"},"metalness":{"type":"number"},"emissive":{"type":"string"},"emissiveIntensity":{"type":"number"},"opacity":{"type":"number"},"alphaMode":{"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]},"alphaCutoff":{"type":"number"},"side":{"anyOf":[{"const":"back","type":"string"},{"const":"front","type":"string"},{"const":"double","type":"string"}]},"preset":{"anyOf":[{"type":"null"},{"type":"string"}]},"maps":{"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}}},"required":["version","identity","alias","label","description","category","shader","color","roughness","metalness","emissive","emissiveIntensity","opacity","alphaMode","alphaCutoff","side","preset","maps"],"additionalProperties":false}},"assetPolicy":{"const":"project-user-standard","type":"string"},"composition":{"const":"quay.room-composition/1","type":"string"},"version":{"const":"quay.semantic/1","type":"string"},"sceneId":{"type":"string"},"name":{"type":"string"},"seed":{"type":"number"},"room":{"type":"object","properties":{"identity":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["identity","size"],"additionalProperties":false},"profile":{"anyOf":[{"const":"static","type":"string"},{"const":"physical","type":"string"}]},"objects":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"region":{"anyOf":[{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"actor":{"type":"object","properties":{"policy":{"const":"quay.actor-box/1","type":"string"},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"eye":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"manipulationOrigin":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"reachM":{"type":"number"}},"required":["policy","size","eye","manipulationOrigin","reachM"],"additionalProperties":false},"animation":{"type":"object","properties":{"policy":{"const":"quay.animation/1","type":"string"},"clipIndex":{"type":"number"},"clipName":{"anyOf":[{"type":"null"},{"type":"string"}]},"mode":{"anyOf":[{"const":"in-place","type":"string"},{"const":"articulated","type":"string"}]},"speed":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"offsetSeconds":{"type":"number"}},"required":["policy","clipIndex","clipName","mode","speed","loop","offsetSeconds"],"additionalProperties":false},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"orientation":{"type":"object","properties":{"policy":{"anyOf":[{"const":"quay.orientation/1","type":"string"},{"const":"quay.orientation/2","type":"string"}]},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"up":{"anyOf":[{"type":"null"},{"type":"string"}]},"front":{"anyOf":[{"type":"null"},{"type":"string"}]},"confidence":{"type":"number"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["policy","quaternion","up","front","confidence","evidence"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"notes":{"type":"string","maxLength":2000},"assetId":{"type":"string"},"manifestId":{"type":"string"},"role":{"type":"string"},"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"pose":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":[],"additionalProperties":false},"size":{"anyOf":[{"type":"null"},{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}]},"sizing":{"type":"object","properties":{"measurement":{"type":"object","properties":{"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"}]},"targetM":{"type":"number"},"sourceReferenceM":{"type":"number"},"method":{"anyOf":[{"const":"measured-bounds","type":"string"},{"const":"rig-shoulder-envelope-approximation/1","type":"string"}]},"confidence":{"type":"number"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["reference","targetM","sourceReferenceM","method","confidence","evidence"],"additionalProperties":false},"policy":{"const":"quay.sizing/1","type":"string"},"measuredDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"orientedDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"chosenDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"finalSceneDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"uniformScale":{"type":"number"},"profile":{"anyOf":[{"type":"null"},{"type":"object","properties":{"schema":{"const":"quay.archetype","type":"string"},"schemaVersion":{"const":"1.0.0","type":"string"},"profileId":{"type":"string"},"revision":{"type":"number"},"parentId":{"anyOf":[{"type":"null"},{"type":"string"}]},"semanticClass":{"type":"string"},"status":{"anyOf":[{"const":"accepted","type":"string"},{"const":"suggested","type":"string"},{"const":"rejected","type":"string"},{"const":"user-corrected","type":"string"}]},"dimensions":{"type":"object","properties":{"width":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"height":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"depth":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]}},"required":["width","height","depth"],"additionalProperties":false},"preferredDimension":{"anyOf":[{"type":"null"},{"const":"width","type":"string"},{"const":"height","type":"string"},{"const":"depth","type":"string"}]},"grounding":{"anyOf":[{"const":"architectural","type":"string"},{"const":"unknown","type":"string"},{"const":"floor","type":"string"},{"const":"support","type":"string"}]},"orientation":{"type":"object","properties":{"up":{"anyOf":[{"type":"null"},{"const":"+Y","type":"string"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Y","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]},"forward":{"anyOf":[{"type":"null"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]}},"required":["up","forward"],"additionalProperties":false},"affordances":{"type":"array","items":{"type":"string"}},"clearances":{"type":"object","properties":{"usableSideM":{"anyOf":[{"type":"null"},{"type":"number"}]},"circulationM":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["usableSideM","circulationM"],"additionalProperties":false},"relationHints":{"type":"array","items":{"type":"string"}},"provenance":{"type":"object","properties":{"source":{"anyOf":[{"const":"standard","type":"string"},{"const":"curated","type":"string"},{"const":"ai_inferred","type":"string"},{"const":"user_confirmed","type":"string"},{"const":"project_specific","type":"string"}]},"producer":{"type":"string"},"model":{"anyOf":[{"type":"null"},{"type":"string"}]},"inferenceVersion":{"type":"string"},"requestedClass":{"anyOf":[{"type":"null"},{"type":"string"}]},"confidence":{"type":"number"},"createdAt":{"type":"string"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["source","producer","model","inferenceVersion","requestedClass","confidence","createdAt","evidence"],"additionalProperties":false}},"required":["schema","schemaVersion","profileId","revision","parentId","semanticClass","status","dimensions","preferredDimension","grounding","orientation","affordances","clearances","relationHints","provenance"],"additionalProperties":false}]},"source":{"anyOf":[{"const":"archetype","type":"string"},{"const":"instance","type":"string"},{"const":"conservative-fallback","type":"string"}]},"plausibility":{"anyOf":[{"const":"unknown","type":"string"},{"const":"plausible","type":"string"},{"const":"implausible","type":"string"}]},"diagnostics":{"type":"array","items":{"type":"string"}}},"required":["policy","measuredDimensions","orientedDimensions","chosenDimensions","uniformScale","profile","source","plausibility","diagnostics"],"additionalProperties":false},"architecture":{"type":"object","properties":{"boundary":{"anyOf":[{"const":"back","type":"string"},{"const":"front","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"}]},"section":{"anyOf":[{"const":"full","type":"string"},{"const":"opening-left","type":"string"},{"const":"opening-right","type":"string"},{"const":"opening-header","type":"string"},{"const":"opening-sill","type":"string"}]},"opening":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["boundary","section","opening"],"additionalProperties":false},"physics":{"type":"object","properties":{"motion":{"anyOf":[{"const":"static","type":"string"},{"const":"dynamic","type":"string"},{"const":"kinematic","type":"string"}]},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"},{"const":"sensor","type":"string"}]},"controller":{"anyOf":[{"const":"none","type":"string"},{"const":"character","type":"string"}]},"collider":{"anyOf":[{"type":"null"},{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"component","type":"string"},{"const":"surface","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false}]},"shape":{"anyOf":[{"const":"auto","type":"string"},{"const":"box","type":"string"},{"const":"convex-hull","type":"string"},{"const":"decomposition","type":"string"},{"const":"triangle-mesh","type":"string"}]},"massKg":{"anyOf":[{"type":"null"},{"type":"number"}]},"friction":{"anyOf":[{"type":"null"},{"type":"number"}]},"restitution":{"anyOf":[{"type":"null"},{"type":"number"}]},"provenance":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"const":"instance","type":"string"},{"const":"asset-override","type":"string"},{"const":"profile","type":"string"},{"const":"inference","type":"string"},{"const":"fallback","type":"string"}]}}},"required":["motion","collision","controller","collider","massKg","friction","restitution","provenance"],"additionalProperties":false},"interaction":{"type":"object","properties":{"capabilities":{"type":"array","items":{"anyOf":[{"const":"animate","type":"string"},{"const":"grab","type":"string"},{"const":"open","type":"string"},{"const":"close","type":"string"},{"const":"toggle","type":"string"},{"const":"walk","type":"string"}]}},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"cooldownSeconds":{"type":"number"}},"required":["capabilities","enabled","cooldownSeconds"],"additionalProperties":false},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","label","assetId","manifestId","role","visible","pose","size","physics","interaction","span"],"additionalProperties":false}},"wallImages":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"assetId":{"type":"string"},"wallInstanceId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"surfaceOffset":{"type":"number"},"preserveAspectRatio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","label","assetId","wallInstanceId","uri","sha256","byteLength","mediaType","displayName","position","size","surfaceOffset","preserveAspectRatio","span"],"additionalProperties":false}},"interactiveLabels":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string"},"parentObjectId":{"type":"string"},"text":{"type":"string","maxLength":200},"icon":{"anyOf":[{"type":"null"},{"type":"string"}]},"anchor":{"anyOf":[{"const":"center","type":"string"},{"const":"custom","type":"string"},{"const":"front","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"},{"const":"above","type":"string"}]},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"maxDistance":{"anyOf":[{"type":"null"},{"type":"number"}]},"billboard":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"theme":{"anyOf":[{"const":"warm","type":"string"},{"const":"cool","type":"string"},{"const":"default","type":"string"}]},"action":{"anyOf":[{"type":"object","properties":{"kind":{"const":"none","type":"string"}},"required":["kind"],"additionalProperties":false},{"type":"object","properties":{"kind":{"anyOf":[{"const":"html","type":"string"},{"const":"pdf","type":"string"},{"const":"audio","type":"string"},{"const":"video","type":"string"}]},"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"type":"string"},"displayName":{"type":"string"},"title":{"anyOf":[{"type":"null"},{"type":"string"}]},"posterUri":{"anyOf":[{"type":"null"},{"type":"string"}]},"captionsUri":{"anyOf":[{"type":"null"},{"type":"string"}]},"autoplay":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"muted":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"volume":{"type":"number"},"restartOnOpen":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"startSeconds":{"type":"number"},"endSeconds":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["kind","assetId","uri","sha256","byteLength","mediaType","displayName","title","posterUri","captionsUri","autoplay","loop","muted","volume","restartOnOpen","startSeconds","endSeconds"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"ridley","type":"string"},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external-link","type":"string"},"url":{"type":"string","maxLength":2048}},"required":["kind","url"],"additionalProperties":false}]},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","parentObjectId","text","icon","anchor","offset","maxDistance","billboard","theme","action","span"],"additionalProperties":false}},"relations":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"inside","type":"string"},{"const":"against","type":"string"},{"const":"attached-to","type":"string"},{"const":"keep-clear","type":"string"},{"const":"reachable-from","type":"string"}]},"subject":{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"component","type":"string"},{"const":"surface","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false},"target":{"anyOf":[{"type":"null"},{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"component","type":"string"},{"const":"surface","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false}]},"temporal":{"anyOf":[{"const":"initial","type":"string"},{"const":"monitor","type":"string"},{"const":"maintain","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"weight":{"type":"number"},"parameters":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"sourceCommand":{"type":"string"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","kind","subject","target","temporal","strength","weight","parameters","sourceCommand","span"],"additionalProperties":false}},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"dependencies":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"manifestId":{"type":"string"},"analysisRevision":{"type":"string"},"contentHash":{"type":"string"}},"required":["assetId","manifestId","analysisRevision","contentHash"],"additionalProperties":false}},"versions":{"type":"object","properties":{"compiler":{"const":"quay.compiler/1","type":"string"},"layout":{"anyOf":[{"const":"quay.legacy-layout-adapter/1","type":"string"},{"const":"quay.semantic-layout/1","type":"string"},{"const":"quay.semantic-layout/2","type":"string"}]},"policy":{"anyOf":[{"const":"quay.static-policy/1","type":"string"},{"const":"quay.physical-policy/1","type":"string"}]}},"required":["compiler","layout","policy"],"additionalProperties":false}},"required":["version","sceneId","name","seed","room","profile","objects","relations","bindings","dependencies","versions"],"additionalProperties":false},"projection":{"type":"object","properties":{"materials":{"type":"array","items":{"type":"object","properties":{"version":{"const":"quay.material/1","type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"category":{"anyOf":[{"const":"glass","type":"string"},{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]},"shader":{"anyOf":[{"const":"unlit","type":"string"},{"const":"standard","type":"string"}]},"color":{"type":"string"},"roughness":{"type":"number"},"metalness":{"type":"number"},"emissive":{"type":"string"},"emissiveIntensity":{"type":"number"},"opacity":{"type":"number"},"alphaMode":{"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]},"alphaCutoff":{"type":"number"},"side":{"anyOf":[{"const":"back","type":"string"},{"const":"front","type":"string"},{"const":"double","type":"string"}]},"preset":{"anyOf":[{"type":"null"},{"type":"string"}]},"maps":{"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}}},"required":["version","identity","alias","label","description","category","shader","color","roughness","metalness","emissive","emissiveIntensity","opacity","alphaMode","alphaCutoff","side","preset","maps"],"additionalProperties":false}},"schema":{"const":"quay.scene","type":"string"},"schemaVersion":{"const":"1.0.0","type":"string"},"sceneId":{"type":"string"},"revision":{"type":"number"},"name":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"units":{"const":"metres","type":"string"},"coordinateSystem":{"const":"right-handed-y-up-negative-z-forward","type":"string"},"seed":{"type":"number"},"environment":{"type":"object","properties":{"room":{"type":"object","properties":{"width":{"type":"number"},"depth":{"type":"number"},"height":{"type":"number"},"floorY":{"type":"number"}},"required":["width","depth","height","floorY"],"additionalProperties":false},"background":{"type":"string"},"fog":{"anyOf":[{"type":"null"},{"type":"object","properties":{"color":{"type":"string"},"near":{"type":"number"},"far":{"type":"number"}},"required":["color","near","far"],"additionalProperties":false}]},"floor":{"type":"object","properties":{"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"color":{"type":"string"},"receiveShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"gridVisible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["visible","color","receiveShadow","gridVisible"],"additionalProperties":false},"lights":{"type":"array","items":{"type":"object","properties":{"type":{"anyOf":[{"const":"ambient","type":"string"},{"const":"hemisphere","type":"string"},{"const":"directional","type":"string"},{"const":"point","type":"string"}]},"color":{"type":"string"},"groundColor":{"type":"string"},"intensity":{"type":"number"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"castShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["type","color","intensity","position","castShadow"],"additionalProperties":false}}},"required":["room","background","fog","floor","lights"],"additionalProperties":false},"assets":{"type":"array","items":{"type":"object","properties":{"library":{"type":"object","properties":{"version":{"const":"quay.asset-library/1","type":"string"},"alias":{"type":"string"},"scope":{"anyOf":[{"const":"project","type":"string"},{"const":"standard","type":"string"},{"const":"user","type":"string"}]},"projectId":{"anyOf":[{"type":"null"},{"type":"string"}]},"origin":{"type":"object","properties":{"provider":{"type":"string"},"originalAssetId":{"type":"string"},"originalUrl":{"anyOf":[{"type":"null"},{"type":"string"}]},"author":{"anyOf":[{"type":"null"},{"type":"string"}]},"license":{"type":"string"},"attributionRequired":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"originalFilename":{"type":"string"},"downloadedAt":{"type":"string"},"contentHash":{"type":"string"},"sourceHash":{"type":"string"}},"required":["provider","originalAssetId","originalUrl","author","license","attributionRequired","originalFilename","downloadedAt","contentHash","sourceHash"],"additionalProperties":false},"semantics":{"type":"object","properties":{"taxonomy":{"const":"quay.asset-taxonomy/1","type":"string"},"category":{"type":"string"},"styles":{"type":"array","items":{"type":"string"}},"roomTypes":{"type":"array","items":{"type":"string"}},"affordances":{"type":"array","items":{"type":"string"}},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"confidence":{"type":"number"},"state":{"anyOf":[{"const":"accepted","type":"string"},{"const":"unknown","type":"string"},{"const":"suggested","type":"string"}]},"producer":{"type":"string"},"model":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["taxonomy","category","styles","roomTypes","affordances","capacity","confidence","state","producer","model"],"additionalProperties":false},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"archetypeId":{"anyOf":[{"type":"null"},{"type":"string"}]},"cost":{"type":"object","properties":{"triangles":{"anyOf":[{"type":"null"},{"type":"number"}]},"materials":{"anyOf":[{"type":"null"},{"type":"number"}]},"textureBytes":{"anyOf":[{"type":"null"},{"type":"number"}]},"texturePixels":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["triangles","materials","textureBytes","texturePixels"],"additionalProperties":false}},"required":["version","alias","scope","projectId","origin","semantics","manifestId","archetypeId","cost"],"additionalProperties":false},"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"const":"model/gltf-binary","type":"string"},"displayName":{"type":"string"},"description":{"type":"string"},"category":{"type":"string"},"canonicalSize":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"placement":{"anyOf":[{"const":"floor_only","type":"string"},{"const":"support_only","type":"string"},{"const":"floor_or_support","type":"string"}]},"supportsObjects":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"wallAlignment":{"anyOf":[{"type":"null"},{"const":"center","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"}]},"availability":{"anyOf":[{"const":"local","type":"string"},{"const":"global","type":"string"}]},"roomId":{"anyOf":[{"type":"null"},{"type":"string"}]},"supportSurfaces":{"type":"array","items":{"type":"object","properties":{"surfaceId":{"type":"string"},"label":{"type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"normal":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"source":{"anyOf":[{"const":"bounds","type":"string"},{"const":"mesh","type":"string"},{"const":"manual","type":"string"}]}},"required":["surfaceId","label","center","normal","size","source"],"additionalProperties":false}}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName","description","category","canonicalSize","normalization","placement","supportsObjects","supportSurfaces"],"additionalProperties":false}},"imageAssets":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false}},"instances":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"instanceId":{"type":"string"},"assetId":{"type":"string"},"name":{"type":"string"},"transform":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["position","quaternion","scale"],"additionalProperties":false},"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"castShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"receiveShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"locked":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"placement":{"type":"object","properties":{"source":{"anyOf":[{"const":"manual","type":"string"},{"const":"solver","type":"string"},{"const":"imported","type":"string"}]},"supportingInstanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"supportSurfaceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"solverStatus":{"anyOf":[{"const":"unresolved","type":"string"},{"const":"fallback","type":"string"},{"const":"placed","type":"string"}]}},"required":["source","supportingInstanceId","supportSurfaceId","solverStatus"],"additionalProperties":false},"tags":{"type":"array","items":{"type":"string"}},"wallImage":{"type":"object","properties":{"wallInstanceId":{"type":"string"},"assetId":{"type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"surfaceOffset":{"type":"number"},"preserveAspectRatio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"surface":{"anyOf":[{"const":"floor","type":"string"},{"const":"wall","type":"string"}]}},"required":["wallInstanceId","assetId","position","size","surfaceOffset","preserveAspectRatio"],"additionalProperties":false}},"required":["instanceId","assetId","name","transform","visible","castShadow","receiveShadow","locked","placement","tags"],"additionalProperties":false}},"relations":{"type":"array","items":{"type":"object","properties":{"relationId":{"type":"string"},"type":{"anyOf":[{"const":"ON","type":"string"},{"const":"NEAR","type":"string"},{"const":"LEFT_OF","type":"string"},{"const":"RIGHT_OF","type":"string"},{"const":"IN_FRONT_OF","type":"string"},{"const":"BEHIND","type":"string"},{"const":"FACING","type":"string"},{"const":"CENTERED_ON","type":"string"},{"const":"ALIGNED_WITH","type":"string"},{"const":"AGAINST_WALL","type":"string"},{"const":"KEEP_CLEAR_OF","type":"string"}]},"subjectInstanceId":{"type":"string"},"targetInstanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"status":{"anyOf":[{"const":"satisfied","type":"string"},{"const":"unresolved","type":"string"},{"const":"degraded","type":"string"}]},"message":{"type":"string"}},"required":["relationId","type","subjectInstanceId","targetInstanceId","strength","status","message"],"additionalProperties":false}},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"info","type":"string"},{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"message":{"type":"string"},"instanceIds":{"type":"array","items":{"type":"string"}},"relationId":{"anyOf":[{"type":"null"},{"type":"string"}]},"measurements":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["code","severity","message","instanceIds","relationId"],"additionalProperties":false}},"unplacedInstanceIds":{"type":"array","items":{"type":"string"}},"camera":{"type":"object","properties":{"type":{"const":"perspective","type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"target":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"up":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"fovDegrees":{"type":"number"},"near":{"type":"number"},"far":{"type":"number"}},"required":["type","position","target","up","fovDegrees","near","far"],"additionalProperties":false},"provenance":{"type":"object","properties":{"createdBy":{"anyOf":[{"const":"quay","type":"string"},{"const":"import","type":"string"}]},"planner":{"anyOf":[{"type":"null"},{"type":"object","properties":{"provider":{"anyOf":[{"const":"openai","type":"string"},{"const":"fake","type":"string"}]},"model":{"type":"string"},"promptTemplateVersion":{"type":"string"},"requestId":{"type":"string"}},"required":["provider","model","promptTemplateVersion","requestId"],"additionalProperties":false}]},"layoutEngineVersion":{"type":"string"},"threeVersion":{"type":"string"},"sourcePrompt":{"type":"string"}},"required":["createdBy","planner","layoutEngineVersion","threeVersion","sourcePrompt"],"additionalProperties":false}},"required":["schema","schemaVersion","sceneId","revision","name","createdAt","updatedAt","units","coordinateSystem","seed","environment","assets","instances","relations","diagnostics","unplacedInstanceIds","camera","provenance"],"additionalProperties":false},"evaluations":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string"},"residuals":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["identity","status","message","residuals"],"additionalProperties":false}},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"info","type":"string"},{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"message":{"type":"string"},"span":{"anyOf":[{"type":"null"},{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["code","severity","message","span","identity"],"additionalProperties":false}},"provenance":{"type":"object","properties":{"sourceHash":{"type":"string"},"versions":{"type":"object","properties":{"compiler":{"const":"quay.compiler/1","type":"string"},"layout":{"anyOf":[{"const":"quay.legacy-layout-adapter/1","type":"string"},{"const":"quay.semantic-layout/1","type":"string"},{"const":"quay.semantic-layout/2","type":"string"}]},"policy":{"anyOf":[{"const":"quay.static-policy/1","type":"string"},{"const":"quay.physical-policy/1","type":"string"}]}},"required":["compiler","layout","policy"],"additionalProperties":false},"dependencies":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"manifestId":{"type":"string"},"analysisRevision":{"type":"string"},"contentHash":{"type":"string"}},"required":["assetId","manifestId","analysisRevision","contentHash"],"additionalProperties":false}}},"required":["sourceHash","versions","dependencies"],"additionalProperties":false},"readiness":{"const":"static-preview","type":"string"},"physics":{"type":"object","properties":{"version":{"const":"quay.physics-preparation/1","type":"string"},"ready":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"gravity":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"stepSeconds":{"type":"number"},"maxCatchUpSteps":{"type":"number"},"bodies":{"type":"array","items":{"type":"object","properties":{"instanceId":{"type":"string"},"motion":{"anyOf":[{"const":"static","type":"string"},{"const":"dynamic","type":"string"},{"const":"kinematic","type":"string"}]},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"},{"const":"sensor","type":"string"}]},"controller":{"anyOf":[{"const":"none","type":"string"},{"const":"character","type":"string"}]},"role":{"type":"string"},"canGrab":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"massKg":{"type":"number"},"friction":{"type":"number"},"restitution":{"type":"number"},"colliders":{"type":"array","items":{"type":"object","properties":{"shape":{"anyOf":[{"type":"object","properties":{"kind":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["kind","center","halfExtents"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"convex","type":"string"},"vertices":{"type":"array","items":{"type":"number"}}},"required":["kind","vertices"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"triangle-mesh","type":"string"},"vertices":{"type":"array","items":{"type":"number"}},"indices":{"type":"array","items":{"type":"number"}}},"required":["kind","vertices","indices"],"additionalProperties":false}]},"volumeM3":{"type":"number"},"evidence":{"type":"string"},"approximate":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["shape","volumeM3","evidence","approximate"],"additionalProperties":false}}},"required":["instanceId","motion","collision","controller","role","canGrab","massKg","friction","restitution","colliders"],"additionalProperties":false}},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"instanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"message":{"type":"string"}},"required":["code","severity","instanceId","message"],"additionalProperties":false}}},"required":["version","ready","gravity","stepSeconds","maxCatchUpSteps","bodies","diagnostics"],"additionalProperties":false}},"required":["schema","schemaVersion","semantic","projection","evaluations","diagnostics","provenance","readiness"],"additionalProperties":false}},"required":["source","sourceHash","bindings","dependencies","versions","scene"],"additionalProperties":false}]} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"rams": {
"type": "object",
"properties": {
"source": {
"type": "string"
},
"config": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"presentation": {
"type": "object",
"properties": {
"template": {
"const": "portfolio",
"type": "string"
},
"monogram": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"stableRoomId": {
"type": "string"
},
"slug": {
"type": "string"
},
"canonicalPath": {
"type": "string"
},
"navigationTitle": {
"type": "string"
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"seoTitle": {
"type": "string"
},
"seoDescription": {
"type": "string"
},
"html": {
"type": "string"
}
},
"required": [
"stableRoomId",
"slug",
"canonicalPath",
"navigationTitle",
"title",
"subtitle",
"seoTitle",
"seoDescription",
"html"
],
"additionalProperties": false
}
},
"welcomeAudio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"landscapeOnMobile": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"introState": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"template",
"monogram",
"rooms",
"welcomeAudio",
"landscapeOnMobile",
"introState"
],
"additionalProperties": false
},
"version": {
"const": "rams.site/1",
"type": "string"
},
"title": {
"type": "string"
},
"locale": {
"anyOf": [
{
"const": "it",
"type": "string"
},
{
"const": "en",
"type": "string"
}
]
},
"navigation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
},
"footer": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
},
"branding": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"text",
"links",
"branding"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"descriptionSource": {
"anyOf": [
{
"const": "generated",
"type": "string"
},
{
"const": "authored",
"type": "string"
}
]
},
"image": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"summary",
"description",
"descriptionSource",
"image",
"actions"
],
"additionalProperties": false
}
},
"roomInfo": {
"anyOf": [
{
"const": "card",
"type": "string"
},
{
"const": "panel",
"type": "string"
},
{
"const": "chat",
"type": "string"
},
{
"const": "none",
"type": "string"
}
]
},
"overlays": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "text",
"type": "string"
},
{
"const": "project",
"type": "string"
},
{
"const": "about",
"type": "string"
},
{
"const": "gallery",
"type": "string"
},
{
"const": "embed",
"type": "string"
},
{
"const": "html",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "component",
"type": "string"
}
]
},
"text": {
"type": "string"
},
"images": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"fragment": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"html": {
"type": "string"
},
"css": {
"type": "string"
},
"script": {
"type": "string"
},
"security": {
"anyOf": [
{
"const": "safe",
"type": "string"
},
{
"const": "controlled-script",
"type": "string"
}
]
}
},
"required": [
"html",
"css",
"script",
"security"
],
"additionalProperties": false
}
]
},
"component": {
"anyOf": [
{
"type": "null"
},
{
"const": "chat",
"type": "string"
},
{
"const": "rooms",
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"kind",
"text",
"images",
"url",
"fragment",
"component",
"actions"
],
"additionalProperties": false
}
},
"pages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "text",
"type": "string"
},
{
"const": "project",
"type": "string"
},
{
"const": "about",
"type": "string"
},
{
"const": "gallery",
"type": "string"
},
{
"const": "embed",
"type": "string"
},
{
"const": "html",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "component",
"type": "string"
}
]
},
"text": {
"type": "string"
},
"images": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"fragment": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"html": {
"type": "string"
},
"css": {
"type": "string"
},
"script": {
"type": "string"
},
"security": {
"anyOf": [
{
"const": "safe",
"type": "string"
},
{
"const": "controlled-script",
"type": "string"
}
]
}
},
"required": [
"html",
"css",
"script",
"security"
],
"additionalProperties": false
}
]
},
"component": {
"anyOf": [
{
"type": "null"
},
{
"const": "chat",
"type": "string"
},
{
"const": "rooms",
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"kind",
"text",
"images",
"url",
"fragment",
"component",
"actions"
],
"additionalProperties": false
}
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"alt": {
"type": "string"
},
"data": {
"type": "string"
}
},
"required": [
"id",
"alt",
"data"
],
"additionalProperties": false
}
},
"theme": {
"type": "object",
"properties": {
"mode": {
"anyOf": [
{
"const": "dark",
"type": "string"
},
{
"const": "light",
"type": "string"
},
{
"const": "system",
"type": "string"
}
]
},
"font": {
"anyOf": [
{
"const": "system",
"type": "string"
},
{
"const": "serif",
"type": "string"
},
{
"const": "mono",
"type": "string"
}
]
},
"fontSize": {
"type": "number"
},
"spacing": {
"type": "number"
},
"radius": {
"type": "number"
},
"background": {
"type": "string"
},
"foreground": {
"type": "string"
},
"accent": {
"type": "string"
},
"navigation": {
"anyOf": [
{
"const": "solid",
"type": "string"
},
{
"const": "glass",
"type": "string"
}
]
},
"footer": {
"anyOf": [
{
"const": "compact",
"type": "string"
},
{
"const": "expanded",
"type": "string"
}
]
},
"overlay": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "side",
"type": "string"
}
]
},
"transitions": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"logo": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"mode",
"font",
"fontSize",
"spacing",
"radius",
"background",
"foreground",
"accent",
"navigation",
"footer",
"overlay",
"transitions",
"logo"
],
"additionalProperties": false
},
"contact": {
"type": "object",
"properties": {
"endpoint": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"alternative": {
"type": "string"
},
"privacy": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"label": {
"type": "string"
},
"required": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"label",
"required"
],
"additionalProperties": false
}
},
"honeypot": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"endpoint",
"alternative",
"privacy",
"fields",
"honeypot"
],
"additionalProperties": false
},
"chat": {
"type": "object",
"properties": {
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"welcome": {
"type": "string"
}
},
"required": [
"enabled",
"welcome"
],
"additionalProperties": false
},
"security": {
"type": "object",
"properties": {
"embedOrigins": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"embedOrigins"
],
"additionalProperties": false
},
"deploy": {
"type": "object",
"properties": {
"target": {
"const": "static",
"type": "string"
},
"basePath": {
"type": "string"
},
"profiles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"transport": {
"anyOf": [
{
"const": "local",
"type": "string"
},
{
"const": "ssh",
"type": "string"
},
{
"const": "sftp",
"type": "string"
},
{
"const": "rsync",
"type": "string"
},
{
"const": "scp",
"type": "string"
},
{
"const": "ftp",
"type": "string"
},
{
"const": "ftps",
"type": "string"
},
{
"const": "custom",
"type": "string"
}
]
},
"host": {
"type": "string"
},
"port": {
"type": "number"
},
"username": {
"type": "string"
},
"destination": {
"type": "string"
},
"credentialRef": {
"type": "string"
},
"strategy": {
"anyOf": [
{
"const": "atomic",
"type": "string"
},
{
"const": "directory",
"type": "string"
}
]
},
"buildProfile": {
"const": "production",
"type": "string"
},
"preDeploy": {
"const": "verify",
"type": "string"
},
"postDeploy": {
"const": "healthcheck",
"type": "string"
},
"healthCheck": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"expectedStatus": {
"type": "number"
},
"expectedText": {
"type": "string"
}
},
"required": [
"url",
"expectedStatus",
"expectedText"
],
"additionalProperties": false
},
"timeout": {
"type": "number"
},
"keepReleases": {
"type": "number"
},
"compression": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"clean": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"passive": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"tls": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"name",
"transport",
"host",
"port",
"username",
"destination",
"credentialRef",
"strategy",
"buildProfile",
"preDeploy",
"postDeploy",
"healthCheck",
"timeout",
"keepReleases",
"compression",
"clean",
"passive",
"tls"
],
"additionalProperties": false
}
}
},
"required": [
"target",
"basePath"
],
"additionalProperties": false
}
},
"required": [
"version",
"title",
"locale",
"navigation",
"footer",
"rooms",
"roomInfo",
"overlays",
"pages",
"assets",
"theme",
"contact",
"chat",
"security",
"deploy"
],
"additionalProperties": false
}
]
},
"error": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"source",
"config",
"error"
],
"additionalProperties": false
},
"wright": {
"type": "object",
"properties": {
"version": {
"const": "wright.world/1",
"type": "string"
},
"identity": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"furnishing": {
"type": "object",
"properties": {
"roomProgram": {
"type": "object",
"properties": {
"repair": {
"type": "object",
"properties": {
"stage": {
"const": "semantic",
"type": "string"
},
"attempts": {
"type": "number"
},
"strategy": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "bounded-semantic-revision",
"type": "string"
}
]
},
"initialFailures": {
"type": "array",
"items": {
"type": "string"
}
},
"finalState": {
"const": "accepted",
"type": "string"
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"stage",
"attempts",
"strategy",
"initialFailures",
"finalState",
"relaxedConstraints"
],
"additionalProperties": false
},
"enrichment": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"model": {
"type": "string"
},
"version": {
"type": "string"
}
},
"required": [
"provider",
"model",
"version"
],
"additionalProperties": false
},
"intent": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"archetypeSnapshot": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"intent",
"archetypeSnapshot",
"bindings"
],
"additionalProperties": false
},
"version": {
"const": "qway.furnishing/1",
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"category": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"relation": {
"anyOf": [
{
"type": "null"
},
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "near-window",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"instances": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"identity",
"category",
"quantity",
"capacity",
"assetAlias",
"placement",
"relation",
"target",
"instances"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"purpose",
"capacity",
"style",
"needs"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"label": {
"type": "string",
"maxLength": 200
},
"level": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"parent": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"backdrop": {
"anyOf": [
{
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"north": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"south": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"east": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"west": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}
]
}
},
"required": [
"identity",
"alias",
"label",
"level",
"parent",
"size",
"frame"
],
"additionalProperties": false
}
},
"levels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"identity",
"label"
],
"additionalProperties": false
}
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"from",
"to",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"room": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"room",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"membership": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"version",
"identity",
"rooms",
"levels",
"portals",
"membership"
],
"additionalProperties": false
},
"ridley": {
"type": "object",
"properties": {
"personas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.persona/1",
"type": "string"
},
"personaId": {
"type": "string"
},
"profileId": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"revision": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"sha256": {
"type": "string"
},
"description": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"instructions": {
"type": "string"
},
"knowledge": {
"type": "string"
},
"speakingStyle": {
"type": "string"
},
"language": {
"type": "string"
},
"allowedTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"forbiddenTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"emotionalBaseline": {
"type": "string"
},
"memory": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "session",
"type": "string"
}
]
},
"maxTurns": {
"type": "number"
},
"maxHistoryChars": {
"type": "number"
}
},
"required": [
"name",
"role",
"instructions",
"knowledge",
"speakingStyle",
"language",
"allowedTopics",
"forbiddenTopics",
"emotionalBaseline",
"memory",
"maxTurns",
"maxHistoryChars"
],
"additionalProperties": false
}
},
"required": [
"version",
"personaId",
"profileId",
"parentId",
"revision",
"createdAt",
"sha256",
"description"
],
"additionalProperties": false
}
},
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}
},
"version": {
"const": "ridley.project/1",
"type": "string"
},
"screenplays": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string",
"maxLength": 200
},
"text": {
"type": "string",
"maxLength": 65536
}
},
"required": [
"id",
"title",
"text"
],
"additionalProperties": false
}
},
"styleProfile": {
"type": "object",
"properties": {
"styles": {
"type": "array",
"items": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "surreal",
"type": "string"
},
{
"const": "documentary",
"type": "string"
},
{
"const": "elegant",
"type": "string"
},
{
"const": "playful",
"type": "string"
},
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "cold",
"type": "string"
},
{
"const": "technological",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "theatrical",
"type": "string"
},
{
"const": "high-contrast",
"type": "string"
},
{
"const": "soft-contrast",
"type": "string"
}
]
}
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "soft",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
}
]
}
},
"required": [
"room"
],
"additionalProperties": false
}
}
},
"required": [
"styles"
],
"additionalProperties": false
},
"draft": {
"type": "object",
"properties": {
"source": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "info",
"type": "string"
},
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"span": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"code",
"severity",
"message",
"span",
"identity"
],
"additionalProperties": false
}
}
},
"required": [
"source",
"sourceHash",
"diagnostics"
],
"additionalProperties": false
},
"accepted": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"source": {
"type": "string"
},
"document": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.cinematic",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.compiler/1",
"type": "string"
},
"worldSceneId": {
"type": "string"
},
"worldSourceHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"direction": {
"type": "object",
"properties": {
"schema": {
"const": "quay.room-direction",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.direction/1",
"type": "string"
},
"manual": {
"const": "ridley.direction-manual/1",
"type": "string"
},
"styleProfile": {
"type": "object",
"properties": {
"styles": {
"type": "array",
"items": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "surreal",
"type": "string"
},
{
"const": "documentary",
"type": "string"
},
{
"const": "elegant",
"type": "string"
},
{
"const": "playful",
"type": "string"
},
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "cold",
"type": "string"
},
{
"const": "technological",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "theatrical",
"type": "string"
},
{
"const": "high-contrast",
"type": "string"
},
{
"const": "soft-contrast",
"type": "string"
}
]
}
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "soft",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
}
]
}
},
"required": [
"room"
],
"additionalProperties": false
}
}
},
"required": [
"styles"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intent": {
"type": "object",
"properties": {
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "soft",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
}
]
}
},
"required": [
"intensity",
"mood",
"hero",
"motion",
"contrast"
],
"additionalProperties": false
},
"resolved": {
"type": "object",
"properties": {
"lightingPreset": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "dramatic-hero",
"type": "string"
}
]
},
"atmospherePreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "subtle-depth",
"type": "string"
},
{
"const": "haze",
"type": "string"
}
]
},
"postProcessingPreset": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "hero",
"type": "string"
}
]
},
"cameraEntryPreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "settle",
"type": "string"
},
{
"const": "slow-reveal",
"type": "string"
},
{
"const": "hero-reveal",
"type": "string"
}
]
},
"explorationPreset": {
"const": "free-stable",
"type": "string"
},
"ambientMotion": {
"type": "array",
"items": {
"type": "string"
}
},
"performance": {
"type": "object",
"properties": {
"cinematicHigh": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"balanced": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"performance": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
}
},
"required": [
"cinematicHigh",
"balanced",
"performance"
],
"additionalProperties": false
}
},
"required": [
"lightingPreset",
"atmospherePreset",
"postProcessingPreset",
"cameraEntryPreset",
"explorationPreset",
"ambientMotion",
"performance"
],
"additionalProperties": false
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"event": {
"anyOf": [
{
"const": "wright.room.enter",
"type": "string"
},
{
"const": "wright.room.leave",
"type": "string"
},
{
"const": "qway.object.near",
"type": "string"
},
{
"const": "ridley.dialogue.start",
"type": "string"
},
{
"const": "ridley.dialogue.end",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"const": "hero",
"type": "string"
},
{
"const": "entry",
"type": "string"
},
{
"const": "exploration",
"type": "string"
},
{
"const": "dialogue",
"type": "string"
},
{
"const": "exit",
"type": "string"
}
]
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"event",
"target",
"preset",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"intent",
"resolved",
"rules"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"manual",
"styleProfile",
"rooms"
],
"additionalProperties": false
},
"sequences": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"duration": {
"type": "number"
},
"cues": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "shot",
"type": "string"
},
"type": {
"anyOf": [
{
"const": "extreme-closeup",
"type": "string"
},
{
"const": "closeup",
"type": "string"
},
{
"const": "medium-closeup",
"type": "string"
},
{
"const": "medium",
"type": "string"
},
{
"const": "american",
"type": "string"
},
{
"const": "full",
"type": "string"
},
{
"const": "long",
"type": "string"
},
{
"const": "extreme-long",
"type": "string"
},
{
"const": "two-shot",
"type": "string"
},
{
"const": "over-the-shoulder",
"type": "string"
},
{
"const": "pov",
"type": "string"
},
{
"const": "establishing",
"type": "string"
},
{
"const": "insert",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"shoulder": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"movement": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "pan",
"type": "string"
},
{
"const": "tilt",
"type": "string"
},
{
"const": "dolly",
"type": "string"
},
{
"const": "truck",
"type": "string"
},
{
"const": "pedestal",
"type": "string"
},
{
"const": "orbit",
"type": "string"
},
{
"const": "zoom",
"type": "string"
},
{
"const": "follow",
"type": "string"
},
{
"const": "crane",
"type": "string"
}
]
},
"amount": {
"type": "number"
},
"transition": {
"anyOf": [
{
"const": "cut",
"type": "string"
},
{
"const": "smooth",
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"type",
"subjects",
"shoulder",
"movement",
"amount",
"transition"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"anyOf": [
{
"const": "dialogue",
"type": "string"
},
{
"const": "subtitle",
"type": "string"
},
{
"const": "narration",
"type": "string"
}
]
},
"actor": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"text": {
"type": "string"
},
"speech": {
"type": "object",
"properties": {
"model": {
"const": "gpt-4o-mini-tts-2025-12-15",
"type": "string"
},
"voice": {
"type": "string",
"enum": [
"alloy",
"ash",
"ballad",
"coral",
"echo",
"fable",
"nova",
"onyx",
"sage",
"shimmer",
"verse",
"marin",
"cedar"
]
},
"language": {
"type": "string",
"pattern": "^[a-z]{2,3}(-[A-Za-z]{2,8})?$"
},
"instructions": {
"type": "string",
"maxLength": 2000
},
"speed": {
"type": "number",
"minimum": 0.25,
"maximum": 4
}
},
"required": [
"model",
"voice",
"language",
"instructions",
"speed"
],
"additionalProperties": false
},
"speechAudio": {
"type": "string",
"pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"actor",
"text"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "action",
"type": "string"
},
"actor": {
"type": "string"
},
"action": {
"anyOf": [
{
"const": "look-at",
"type": "string"
},
{
"const": "move-to",
"type": "string"
},
{
"const": "animate",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"clip": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"persistence": {
"anyOf": [
{
"const": "temporary",
"type": "string"
},
{
"const": "runtime",
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"actor",
"action",
"target",
"clip",
"persistence"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "emit",
"type": "string"
},
"event": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"event",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "music",
"type": "string"
},
"command": {
"type": "object",
"properties": {
"action": {
"anyOf": [
{
"const": "play",
"type": "string"
},
{
"const": "stop",
"type": "string"
},
{
"const": "crossfade",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"from": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
},
"fade": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"action",
"assetId",
"from",
"volume",
"fade",
"loop"
],
"additionalProperties": false
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"command"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "sfx",
"type": "string"
},
"assetId": {
"type": "string"
},
"spatial": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind",
"assetId",
"spatial",
"volume"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"start": {
"type": "number"
},
"duration": {
"type": "number"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
},
"kind": {
"const": "return",
"type": "string"
}
},
"required": [
"id",
"start",
"duration",
"span",
"kind"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"id",
"duration",
"cues"
],
"additionalProperties": false
}
},
"triggers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"subject": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"event": {
"anyOf": [
{
"const": "near",
"type": "string"
},
{
"const": "qway.object.enter",
"type": "string"
},
{
"const": "qway.object.leave",
"type": "string"
},
{
"const": "qway.relation.changed",
"type": "string"
},
{
"const": "qway.interaction",
"type": "string"
},
{
"const": "qway.trigger",
"type": "string"
},
{
"const": "ridley.complete",
"type": "string"
}
]
},
"distance": {
"type": "number"
},
"cinematic": {
"type": "string"
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"subject",
"target",
"event",
"distance",
"cinematic",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"worldSceneId",
"worldSourceHash",
"sourceHash",
"bindings",
"sequences",
"triggers"
],
"additionalProperties": false
}
]
},
"direction": {
"type": "object",
"properties": {
"schema": {
"const": "quay.room-direction",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.direction/1",
"type": "string"
},
"manual": {
"const": "ridley.direction-manual/1",
"type": "string"
},
"styleProfile": {
"type": "object",
"properties": {
"styles": {
"type": "array",
"items": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "surreal",
"type": "string"
},
{
"const": "documentary",
"type": "string"
},
{
"const": "elegant",
"type": "string"
},
{
"const": "playful",
"type": "string"
},
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "cold",
"type": "string"
},
{
"const": "technological",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "theatrical",
"type": "string"
},
{
"const": "high-contrast",
"type": "string"
},
{
"const": "soft-contrast",
"type": "string"
}
]
}
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "soft",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
}
]
}
},
"required": [
"room"
],
"additionalProperties": false
}
}
},
"required": [
"styles"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"intent": {
"type": "object",
"properties": {
"intensity": {
"anyOf": [
{
"const": 0,
"type": "number"
},
{
"const": 3,
"type": "number"
},
{
"const": 4,
"type": "number"
},
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
},
"mood": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "mysterious",
"type": "string"
},
{
"const": "energetic",
"type": "string"
},
{
"const": "contemplative",
"type": "string"
}
]
},
"hero": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"motion": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "restrained",
"type": "string"
},
{
"const": "active",
"type": "string"
}
]
},
"contrast": {
"anyOf": [
{
"const": "soft",
"type": "string"
},
{
"const": "natural",
"type": "string"
},
{
"const": "dramatic",
"type": "string"
}
]
}
},
"required": [
"intensity",
"mood",
"hero",
"motion",
"contrast"
],
"additionalProperties": false
},
"resolved": {
"type": "object",
"properties": {
"lightingPreset": {
"anyOf": [
{
"const": "monumental",
"type": "string"
},
{
"const": "warm",
"type": "string"
},
{
"const": "intimate",
"type": "string"
},
{
"const": "neutral",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "clinical",
"type": "string"
},
{
"const": "dramatic-hero",
"type": "string"
}
]
},
"atmospherePreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "subtle-depth",
"type": "string"
},
{
"const": "haze",
"type": "string"
}
]
},
"postProcessingPreset": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "hero",
"type": "string"
}
]
},
"cameraEntryPreset": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "settle",
"type": "string"
},
{
"const": "slow-reveal",
"type": "string"
},
{
"const": "hero-reveal",
"type": "string"
}
]
},
"explorationPreset": {
"const": "free-stable",
"type": "string"
},
"ambientMotion": {
"type": "array",
"items": {
"type": "string"
}
},
"performance": {
"type": "object",
"properties": {
"cinematicHigh": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"balanced": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
},
"performance": {
"anyOf": [
{
"const": "minimal",
"type": "string"
},
{
"const": "balanced",
"type": "string"
},
{
"const": "high",
"type": "string"
}
]
}
},
"required": [
"cinematicHigh",
"balanced",
"performance"
],
"additionalProperties": false
}
},
"required": [
"lightingPreset",
"atmospherePreset",
"postProcessingPreset",
"cameraEntryPreset",
"explorationPreset",
"ambientMotion",
"performance"
],
"additionalProperties": false
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"event": {
"anyOf": [
{
"const": "wright.room.enter",
"type": "string"
},
{
"const": "wright.room.leave",
"type": "string"
},
{
"const": "qway.object.near",
"type": "string"
},
{
"const": "ridley.dialogue.start",
"type": "string"
},
{
"const": "ridley.dialogue.end",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"const": "hero",
"type": "string"
},
{
"const": "entry",
"type": "string"
},
{
"const": "exploration",
"type": "string"
},
{
"const": "dialogue",
"type": "string"
},
{
"const": "exit",
"type": "string"
}
]
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"event",
"target",
"preset",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"intent",
"resolved",
"rules"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"manual",
"styleProfile",
"rooms"
],
"additionalProperties": false
},
"experience": {
"type": "object",
"properties": {
"personas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.persona/1",
"type": "string"
},
"personaId": {
"type": "string"
},
"profileId": {
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"revision": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"sha256": {
"type": "string"
},
"description": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"role": {
"type": "string"
},
"instructions": {
"type": "string"
},
"knowledge": {
"type": "string"
},
"speakingStyle": {
"type": "string"
},
"language": {
"type": "string"
},
"allowedTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"forbiddenTopics": {
"type": "array",
"items": {
"type": "string"
}
},
"emotionalBaseline": {
"type": "string"
},
"memory": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "session",
"type": "string"
}
]
},
"maxTurns": {
"type": "number"
},
"maxHistoryChars": {
"type": "number"
}
},
"required": [
"name",
"role",
"instructions",
"knowledge",
"speakingStyle",
"language",
"allowedTopics",
"forbiddenTopics",
"emotionalBaseline",
"memory",
"maxTurns",
"maxHistoryChars"
],
"additionalProperties": false
}
},
"required": [
"version",
"personaId",
"profileId",
"parentId",
"revision",
"createdAt",
"sha256",
"description"
],
"additionalProperties": false
}
},
"npcs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"profileId": {
"type": "string"
}
},
"required": [
"actor",
"profileId"
],
"additionalProperties": false
}
},
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "ridley.audio/1",
"type": "string"
},
"assetId": {
"type": "string"
},
"displayName": {
"type": "string"
},
"sha256": {
"type": "string"
},
"uri": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "audio/wav",
"type": "string"
},
{
"const": "audio/mpeg",
"type": "string"
}
]
},
"durationSeconds": {
"type": "number"
},
"sampleRate": {
"type": "number"
},
"channels": {
"anyOf": [
{
"const": 1,
"type": "number"
},
{
"const": 2,
"type": "number"
}
]
}
},
"required": [
"version",
"assetId",
"displayName",
"sha256",
"uri",
"byteLength",
"mediaType",
"durationSeconds",
"sampleRate",
"channels"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.experience",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"compiler": {
"const": "ridley.experience/1",
"type": "string"
},
"worldSceneId": {
"type": "string"
},
"worldSourceHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"initial": {
"type": "string"
},
"states": {
"type": "array",
"items": {
"type": "object",
"properties": {
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"action": {
"anyOf": [
{
"const": "play",
"type": "string"
},
{
"const": "stop",
"type": "string"
},
{
"const": "crossfade",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"from": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"volume": {
"type": "number"
},
"fade": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"action",
"assetId",
"from",
"volume",
"fade",
"loop"
],
"additionalProperties": false
}
},
"id": {
"type": "string"
},
"mode": {
"anyOf": [
{
"const": "cinematic",
"type": "string"
},
{
"const": "interactive",
"type": "string"
},
{
"const": "conversation",
"type": "string"
}
]
},
"conversation": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"profileId": {
"type": "string"
}
},
"required": [
"actor",
"profileId"
],
"additionalProperties": false
},
"cinematic": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"control": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"camera": {
"anyOf": [
{
"const": "third-person",
"type": "string"
},
{
"const": "first-person",
"type": "string"
},
{
"const": "overhead",
"type": "string"
},
{
"const": "overview",
"type": "string"
}
]
},
"userCamera": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"followers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"actor": {
"type": "string"
},
"target": {
"type": "string"
},
"distance": {
"type": "number"
},
"delay": {
"type": "number"
},
"speed": {
"type": "number"
}
},
"required": [
"actor",
"target",
"distance",
"delay",
"speed"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"mode",
"cinematic",
"control",
"camera",
"userCamera",
"followers"
],
"additionalProperties": false
}
},
"transitions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"event": {
"type": "string"
},
"subject": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"once": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"from",
"to",
"event",
"subject",
"target",
"once"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"compiler",
"worldSceneId",
"worldSourceHash",
"sourceHash",
"bindings",
"initial",
"states",
"transitions"
],
"additionalProperties": false
}
},
"required": [
"source",
"document",
"direction"
],
"additionalProperties": false
}
]
}
},
"required": [
"version",
"screenplays",
"draft",
"accepted"
],
"additionalProperties": false
},
"schema": {
"const": "quay.project",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.1",
"type": "string"
},
"projectId": {
"type": "string"
},
"revision": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"draft": {
"type": "object",
"properties": {
"source": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "info",
"type": "string"
},
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"span": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"code",
"severity",
"message",
"span",
"identity"
],
"additionalProperties": false
}
}
},
"required": [
"source",
"sourceHash",
"diagnostics"
],
"additionalProperties": false
},
"accepted": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"source": {
"type": "string"
},
"sourceHash": {
"type": "string"
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"analysisRevision": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"assetId",
"manifestId",
"analysisRevision",
"contentHash"
],
"additionalProperties": false
}
},
"versions": {
"type": "object",
"properties": {
"compiler": {
"const": "quay.compiler/1",
"type": "string"
},
"layout": {
"anyOf": [
{
"const": "quay.legacy-layout-adapter/1",
"type": "string"
},
{
"const": "quay.semantic-layout/1",
"type": "string"
},
{
"const": "quay.semantic-layout/2",
"type": "string"
}
]
},
"policy": {
"anyOf": [
{
"const": "quay.static-policy/1",
"type": "string"
},
{
"const": "quay.physical-policy/1",
"type": "string"
}
]
}
},
"required": [
"compiler",
"layout",
"policy"
],
"additionalProperties": false
},
"scene": {
"type": "object",
"properties": {
"wright": {
"type": "object",
"properties": {
"version": {
"const": "wright.resolved/1",
"type": "string"
},
"topology": {
"type": "object",
"properties": {
"version": {
"const": "wright.world/1",
"type": "string"
},
"identity": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"furnishing": {
"type": "object",
"properties": {
"roomProgram": {
"type": "object",
"properties": {
"repair": {
"type": "object",
"properties": {
"stage": {
"const": "semantic",
"type": "string"
},
"attempts": {
"type": "number"
},
"strategy": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "bounded-semantic-revision",
"type": "string"
}
]
},
"initialFailures": {
"type": "array",
"items": {
"type": "string"
}
},
"finalState": {
"const": "accepted",
"type": "string"
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"stage",
"attempts",
"strategy",
"initialFailures",
"finalState",
"relaxedConstraints"
],
"additionalProperties": false
},
"enrichment": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"model": {
"type": "string"
},
"version": {
"type": "string"
}
},
"required": [
"provider",
"model",
"version"
],
"additionalProperties": false
},
"intent": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"archetypeSnapshot": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"intent",
"archetypeSnapshot",
"bindings"
],
"additionalProperties": false
},
"version": {
"const": "qway.furnishing/1",
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"category": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "auto",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"relation": {
"anyOf": [
{
"type": "null"
},
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "near-window",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"instances": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"identity",
"category",
"quantity",
"capacity",
"assetAlias",
"placement",
"relation",
"target",
"instances"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"purpose",
"capacity",
"style",
"needs"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"label": {
"type": "string",
"maxLength": 200
},
"level": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"parent": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"backdrop": {
"anyOf": [
{
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"north": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"south": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"east": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"west": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}
]
}
},
"required": [
"identity",
"alias",
"label",
"level",
"parent",
"size",
"frame"
],
"additionalProperties": false
}
},
"levels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"identity",
"label"
],
"additionalProperties": false
}
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"from",
"to",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"room": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"room",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"membership": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"version",
"identity",
"rooms",
"levels",
"portals",
"membership"
],
"additionalProperties": false
},
"worldFrames": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
}
},
"localPoses": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"position",
"quaternion",
"scale"
],
"additionalProperties": false
}
},
"programVerification": {
"type": "object",
"properties": {
"policy": {
"anyOf": [
{
"const": "qway.room-program-geometry/1",
"type": "string"
},
{
"const": "qway.room-program-geometry/2",
"type": "string"
},
{
"const": "qway.room-program-geometry/3",
"type": "string"
}
]
},
"actor": {
"type": "object",
"properties": {
"radiusM": {
"type": "number"
},
"heightM": {
"type": "number"
}
},
"required": [
"radiusM",
"heightM"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"layout": {
"type": "object",
"properties": {
"policy": {
"const": "qway.room-program-layout/1",
"type": "string"
},
"strategy": {
"const": "bounded-geometric-search",
"type": "string"
},
"candidateBudget": {
"type": "number"
},
"candidatesTested": {
"type": "number"
},
"passesPerformed": {
"type": "number"
},
"initialRules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
}
},
"required": [
"reference",
"status"
],
"additionalProperties": false
}
},
"changedInstances": {
"type": "array",
"items": {
"type": "string"
}
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
},
"termination": {
"anyOf": [
{
"const": "stationary",
"type": "string"
},
{
"const": "budget-exhausted",
"type": "string"
},
{
"const": "pass-limit",
"type": "string"
},
{
"const": "zero-score",
"type": "string"
}
]
}
},
"required": [
"policy",
"strategy",
"candidateBudget",
"candidatesTested",
"passesPerformed",
"initialRules",
"changedInstances",
"relaxedConstraints",
"termination"
],
"additionalProperties": false
},
"inventory": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"requestedUnits": {
"type": "number"
},
"resolvedUnits": {
"type": "number"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
}
},
"required": [
"reference",
"priority",
"requestedUnits",
"resolvedUnits",
"status"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
},
"pairs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"subject": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
},
"residuals": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"subject",
"target",
"status",
"message",
"residuals"
],
"additionalProperties": false
}
}
},
"required": [
"reference",
"kind",
"priority",
"strength",
"status",
"message",
"pairs"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"requested": {
"type": "number"
},
"verified": {
"type": "number"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"reference",
"kind",
"priority",
"requested",
"verified",
"status",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"archetypeRevision",
"inventory",
"rules",
"architecture"
],
"additionalProperties": false
}
}
},
"required": [
"policy",
"actor",
"rooms"
],
"additionalProperties": false
},
"verification": {
"type": "object",
"properties": {
"policy": {
"const": "wright.portal-geometry/1",
"type": "string"
},
"actor": {
"type": "object",
"properties": {
"radius": {
"type": "number"
},
"height": {
"type": "number"
}
},
"required": [
"radius",
"height"
],
"additionalProperties": false
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"requestedAperture": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
},
"actorPassage": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
}
},
"required": [
"identity",
"requestedAperture",
"actorPassage"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"requestedAperture": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
},
"actorPassage": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
}
},
"required": [
"identity",
"requestedAperture",
"actorPassage"
],
"additionalProperties": false
}
},
"circulation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "ready",
"type": "string"
},
{
"const": "unresolved",
"type": "string"
},
{
"const": "not-requested",
"type": "string"
}
]
},
"entryCount": {
"type": "number"
},
"reachableSamples": {
"type": "number"
},
"routeOutcomes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"room",
"status",
"entryCount",
"reachableSamples",
"routeOutcomes"
],
"additionalProperties": false
}
},
"navigationBoxes": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
}
}
},
"required": [
"policy",
"actor",
"portals",
"circulation",
"navigationBoxes"
],
"additionalProperties": false
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"severity",
"identity",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"topology",
"worldFrames",
"localPoses",
"diagnostics"
],
"additionalProperties": false
},
"schema": {
"const": "quay.scene",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.1",
"type": "string"
},
"semantic": {
"type": "object",
"properties": {
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "glass",
"type": "string"
},
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "standard",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "back",
"type": "string"
},
{
"const": "front",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}
},
"assetPolicy": {
"const": "project-user-standard",
"type": "string"
},
"composition": {
"const": "quay.room-composition/1",
"type": "string"
},
"version": {
"const": "quay.semantic/1",
"type": "string"
},
"sceneId": {
"type": "string"
},
"name": {
"type": "string"
},
"seed": {
"type": "number"
},
"room": {
"type": "object",
"properties": {
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"identity",
"size"
],
"additionalProperties": false
},
"profile": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "physical",
"type": "string"
}
]
},
"objects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"region": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"actor": {
"type": "object",
"properties": {
"policy": {
"const": "quay.actor-box/1",
"type": "string"
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"eye": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"manipulationOrigin": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"reachM": {
"type": "number"
}
},
"required": [
"policy",
"size",
"eye",
"manipulationOrigin",
"reachM"
],
"additionalProperties": false
},
"animation": {
"type": "object",
"properties": {
"policy": {
"const": "quay.animation/1",
"type": "string"
},
"clipIndex": {
"type": "number"
},
"clipName": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"mode": {
"anyOf": [
{
"const": "in-place",
"type": "string"
},
{
"const": "articulated",
"type": "string"
}
]
},
"speed": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"offsetSeconds": {
"type": "number"
}
},
"required": [
"policy",
"clipIndex",
"clipName",
"mode",
"speed",
"loop",
"offsetSeconds"
],
"additionalProperties": false
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"orientation": {
"type": "object",
"properties": {
"policy": {
"anyOf": [
{
"const": "quay.orientation/1",
"type": "string"
},
{
"const": "quay.orientation/2",
"type": "string"
}
]
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"up": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"front": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"policy",
"quaternion",
"up",
"front",
"confidence",
"evidence"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"notes": {
"type": "string",
"maxLength": 2000
},
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"role": {
"type": "string"
},
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"pose": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [],
"additionalProperties": false
},
"size": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
]
},
"sizing": {
"type": "object",
"properties": {
"measurement": {
"type": "object",
"properties": {
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
}
]
},
"targetM": {
"type": "number"
},
"sourceReferenceM": {
"type": "number"
},
"method": {
"anyOf": [
{
"const": "measured-bounds",
"type": "string"
},
{
"const": "rig-shoulder-envelope-approximation/1",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"reference",
"targetM",
"sourceReferenceM",
"method",
"confidence",
"evidence"
],
"additionalProperties": false
},
"policy": {
"const": "quay.sizing/1",
"type": "string"
},
"measuredDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"orientedDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"chosenDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"finalSceneDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"uniformScale": {
"type": "number"
},
"profile": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"schema": {
"const": "quay.archetype",
"type": "string"
},
"schemaVersion": {
"const": "1.0.0",
"type": "string"
},
"profileId": {
"type": "string"
},
"revision": {
"type": "number"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"semanticClass": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "suggested",
"type": "string"
},
{
"const": "rejected",
"type": "string"
},
{
"const": "user-corrected",
"type": "string"
}
]
},
"dimensions": {
"type": "object",
"properties": {
"width": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"height": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"depth": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
}
},
"required": [
"width",
"height",
"depth"
],
"additionalProperties": false
},
"preferredDimension": {
"anyOf": [
{
"type": "null"
},
{
"const": "width",
"type": "string"
},
{
"const": "height",
"type": "string"
},
{
"const": "depth",
"type": "string"
}
]
},
"grounding": {
"anyOf": [
{
"const": "architectural",
"type": "string"
},
{
"const": "unknown",
"type": "string"
},
{
"const": "floor",
"type": "string"
},
{
"const": "support",
"type": "string"
}
]
},
"orientation": {
"type": "object",
"properties": {
"up": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Y",
"type": "string"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Y",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
},
"forward": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
}
},
"required": [
"up",
"forward"
],
"additionalProperties": false
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"clearances": {
"type": "object",
"properties": {
"usableSideM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"circulationM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"usableSideM",
"circulationM"
],
"additionalProperties": false
},
"relationHints": {
"type": "array",
"items": {
"type": "string"
}
},
"provenance": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "curated",
"type": "string"
},
{
"const": "ai_inferred",
"type": "string"
},
{
"const": "user_confirmed",
"type": "string"
},
{
"const": "project_specific",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"inferenceVersion": {
"type": "string"
},
"requestedClass": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"source",
"producer",
"model",
"inferenceVersion",
"requestedClass",
"confidence",
"createdAt",
"evidence"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"profileId",
"revision",
"parentId",
"semanticClass",
"status",
"dimensions",
"preferredDimension",
"grounding",
"orientation",
"affordances",
"clearances",
"relationHints",
"provenance"
],
"additionalProperties": false
}
]
},
"source": {
"anyOf": [
{
"const": "archetype",
"type": "string"
},
{
"const": "instance",
"type": "string"
},
{
"const": "conservative-fallback",
"type": "string"
}
]
},
"plausibility": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "plausible",
"type": "string"
},
{
"const": "implausible",
"type": "string"
}
]
},
"diagnostics": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"policy",
"measuredDimensions",
"orientedDimensions",
"chosenDimensions",
"uniformScale",
"profile",
"source",
"plausibility",
"diagnostics"
],
"additionalProperties": false
},
"architecture": {
"type": "object",
"properties": {
"boundary": {
"anyOf": [
{
"const": "back",
"type": "string"
},
{
"const": "front",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
}
]
},
"section": {
"anyOf": [
{
"const": "full",
"type": "string"
},
{
"const": "opening-left",
"type": "string"
},
{
"const": "opening-right",
"type": "string"
},
{
"const": "opening-header",
"type": "string"
},
{
"const": "opening-sill",
"type": "string"
}
]
},
"opening": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"boundary",
"section",
"opening"
],
"additionalProperties": false
},
"physics": {
"type": "object",
"properties": {
"motion": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "dynamic",
"type": "string"
},
{
"const": "kinematic",
"type": "string"
}
]
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
},
{
"const": "sensor",
"type": "string"
}
]
},
"controller": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "character",
"type": "string"
}
]
},
"collider": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
}
]
},
"shape": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "box",
"type": "string"
},
{
"const": "convex-hull",
"type": "string"
},
{
"const": "decomposition",
"type": "string"
},
{
"const": "triangle-mesh",
"type": "string"
}
]
},
"massKg": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"friction": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"restitution": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"provenance": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"const": "instance",
"type": "string"
},
{
"const": "asset-override",
"type": "string"
},
{
"const": "profile",
"type": "string"
},
{
"const": "inference",
"type": "string"
},
{
"const": "fallback",
"type": "string"
}
]
}
}
},
"required": [
"motion",
"collision",
"controller",
"collider",
"massKg",
"friction",
"restitution",
"provenance"
],
"additionalProperties": false
},
"interaction": {
"type": "object",
"properties": {
"capabilities": {
"type": "array",
"items": {
"anyOf": [
{
"const": "animate",
"type": "string"
},
{
"const": "grab",
"type": "string"
},
{
"const": "open",
"type": "string"
},
{
"const": "close",
"type": "string"
},
{
"const": "toggle",
"type": "string"
},
{
"const": "walk",
"type": "string"
}
]
}
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"cooldownSeconds": {
"type": "number"
}
},
"required": [
"capabilities",
"enabled",
"cooldownSeconds"
],
"additionalProperties": false
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"label",
"assetId",
"manifestId",
"role",
"visible",
"pose",
"size",
"physics",
"interaction",
"span"
],
"additionalProperties": false
}
},
"wallImages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"assetId": {
"type": "string"
},
"wallInstanceId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"surfaceOffset": {
"type": "number"
},
"preserveAspectRatio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"label",
"assetId",
"wallInstanceId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio",
"span"
],
"additionalProperties": false
}
},
"interactiveLabels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"parentObjectId": {
"type": "string"
},
"text": {
"type": "string",
"maxLength": 200
},
"icon": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"anchor": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "custom",
"type": "string"
},
{
"const": "front",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
},
{
"const": "above",
"type": "string"
}
]
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"maxDistance": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"billboard": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"theme": {
"anyOf": [
{
"const": "warm",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "default",
"type": "string"
}
]
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "none",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "html",
"type": "string"
},
{
"const": "pdf",
"type": "string"
},
{
"const": "audio",
"type": "string"
},
{
"const": "video",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"type": "string"
},
"displayName": {
"type": "string"
},
"title": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"posterUri": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"captionsUri": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"autoplay": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"muted": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"volume": {
"type": "number"
},
"restartOnOpen": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"startSeconds": {
"type": "number"
},
"endSeconds": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"kind",
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"title",
"posterUri",
"captionsUri",
"autoplay",
"loop",
"muted",
"volume",
"restartOnOpen",
"startSeconds",
"endSeconds"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "ridley",
"type": "string"
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external-link",
"type": "string"
},
"url": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
}
]
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"parentObjectId",
"text",
"icon",
"anchor",
"offset",
"maxDistance",
"billboard",
"theme",
"action",
"span"
],
"additionalProperties": false
}
},
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "inside",
"type": "string"
},
{
"const": "against",
"type": "string"
},
{
"const": "attached-to",
"type": "string"
},
{
"const": "keep-clear",
"type": "string"
},
{
"const": "reachable-from",
"type": "string"
}
]
},
"subject": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
}
]
},
"temporal": {
"anyOf": [
{
"const": "initial",
"type": "string"
},
{
"const": "monitor",
"type": "string"
},
{
"const": "maintain",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"weight": {
"type": "number"
},
"parameters": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"sourceCommand": {
"type": "string"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"kind",
"subject",
"target",
"temporal",
"strength",
"weight",
"parameters",
"sourceCommand",
"span"
],
"additionalProperties": false
}
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"analysisRevision": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"assetId",
"manifestId",
"analysisRevision",
"contentHash"
],
"additionalProperties": false
}
},
"versions": {
"type": "object",
"properties": {
"compiler": {
"const": "quay.compiler/1",
"type": "string"
},
"layout": {
"anyOf": [
{
"const": "quay.legacy-layout-adapter/1",
"type": "string"
},
{
"const": "quay.semantic-layout/1",
"type": "string"
},
{
"const": "quay.semantic-layout/2",
"type": "string"
}
]
},
"policy": {
"anyOf": [
{
"const": "quay.static-policy/1",
"type": "string"
},
{
"const": "quay.physical-policy/1",
"type": "string"
}
]
}
},
"required": [
"compiler",
"layout",
"policy"
],
"additionalProperties": false
}
},
"required": [
"version",
"sceneId",
"name",
"seed",
"room",
"profile",
"objects",
"relations",
"bindings",
"dependencies",
"versions"
],
"additionalProperties": false
},
"projection": {
"type": "object",
"properties": {
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "glass",
"type": "string"
},
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "standard",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "back",
"type": "string"
},
{
"const": "front",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.scene",
"type": "string"
},
"schemaVersion": {
"const": "1.0.0",
"type": "string"
},
"sceneId": {
"type": "string"
},
"revision": {
"type": "number"
},
"name": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"units": {
"const": "metres",
"type": "string"
},
"coordinateSystem": {
"const": "right-handed-y-up-negative-z-forward",
"type": "string"
},
"seed": {
"type": "number"
},
"environment": {
"type": "object",
"properties": {
"room": {
"type": "object",
"properties": {
"width": {
"type": "number"
},
"depth": {
"type": "number"
},
"height": {
"type": "number"
},
"floorY": {
"type": "number"
}
},
"required": [
"width",
"depth",
"height",
"floorY"
],
"additionalProperties": false
},
"background": {
"type": "string"
},
"fog": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"color": {
"type": "string"
},
"near": {
"type": "number"
},
"far": {
"type": "number"
}
},
"required": [
"color",
"near",
"far"
],
"additionalProperties": false
}
]
},
"floor": {
"type": "object",
"properties": {
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"color": {
"type": "string"
},
"receiveShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"gridVisible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"visible",
"color",
"receiveShadow",
"gridVisible"
],
"additionalProperties": false
},
"lights": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"anyOf": [
{
"const": "ambient",
"type": "string"
},
{
"const": "hemisphere",
"type": "string"
},
{
"const": "directional",
"type": "string"
},
{
"const": "point",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"groundColor": {
"type": "string"
},
"intensity": {
"type": "number"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"castShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"type",
"color",
"intensity",
"position",
"castShadow"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"background",
"fog",
"floor",
"lights"
],
"additionalProperties": false
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"library": {
"type": "object",
"properties": {
"version": {
"const": "quay.asset-library/1",
"type": "string"
},
"alias": {
"type": "string"
},
"scope": {
"anyOf": [
{
"const": "project",
"type": "string"
},
{
"const": "standard",
"type": "string"
},
{
"const": "user",
"type": "string"
}
]
},
"projectId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"origin": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"originalAssetId": {
"type": "string"
},
"originalUrl": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"author": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"license": {
"type": "string"
},
"attributionRequired": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"originalFilename": {
"type": "string"
},
"downloadedAt": {
"type": "string"
},
"contentHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
}
},
"required": [
"provider",
"originalAssetId",
"originalUrl",
"author",
"license",
"attributionRequired",
"originalFilename",
"downloadedAt",
"contentHash",
"sourceHash"
],
"additionalProperties": false
},
"semantics": {
"type": "object",
"properties": {
"taxonomy": {
"const": "quay.asset-taxonomy/1",
"type": "string"
},
"category": {
"type": "string"
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"roomTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"confidence": {
"type": "number"
},
"state": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "unknown",
"type": "string"
},
{
"const": "suggested",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"taxonomy",
"category",
"styles",
"roomTypes",
"affordances",
"capacity",
"confidence",
"state",
"producer",
"model"
],
"additionalProperties": false
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"archetypeId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"cost": {
"type": "object",
"properties": {
"triangles": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"materials": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"textureBytes": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"texturePixels": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"triangles",
"materials",
"textureBytes",
"texturePixels"
],
"additionalProperties": false
}
},
"required": [
"version",
"alias",
"scope",
"projectId",
"origin",
"semantics",
"manifestId",
"archetypeId",
"cost"
],
"additionalProperties": false
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"const": "model/gltf-binary",
"type": "string"
},
"displayName": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"type": "string"
},
"canonicalSize": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"placement": {
"anyOf": [
{
"const": "floor_only",
"type": "string"
},
{
"const": "support_only",
"type": "string"
},
{
"const": "floor_or_support",
"type": "string"
}
]
},
"supportsObjects": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"wallAlignment": {
"anyOf": [
{
"type": "null"
},
{
"const": "center",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
}
]
},
"availability": {
"anyOf": [
{
"const": "local",
"type": "string"
},
{
"const": "global",
"type": "string"
}
]
},
"roomId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"supportSurfaces": {
"type": "array",
"items": {
"type": "object",
"properties": {
"surfaceId": {
"type": "string"
},
"label": {
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"normal": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"source": {
"anyOf": [
{
"const": "bounds",
"type": "string"
},
{
"const": "mesh",
"type": "string"
},
{
"const": "manual",
"type": "string"
}
]
}
},
"required": [
"surfaceId",
"label",
"center",
"normal",
"size",
"source"
],
"additionalProperties": false
}
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"description",
"category",
"canonicalSize",
"normalization",
"placement",
"supportsObjects",
"supportSurfaces"
],
"additionalProperties": false
}
},
"imageAssets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
}
},
"instances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"instanceId": {
"type": "string"
},
"assetId": {
"type": "string"
},
"name": {
"type": "string"
},
"transform": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"position",
"quaternion",
"scale"
],
"additionalProperties": false
},
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"castShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"receiveShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"locked": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"placement": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"const": "manual",
"type": "string"
},
{
"const": "solver",
"type": "string"
},
{
"const": "imported",
"type": "string"
}
]
},
"supportingInstanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"supportSurfaceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"solverStatus": {
"anyOf": [
{
"const": "unresolved",
"type": "string"
},
{
"const": "fallback",
"type": "string"
},
{
"const": "placed",
"type": "string"
}
]
}
},
"required": [
"source",
"supportingInstanceId",
"supportSurfaceId",
"solverStatus"
],
"additionalProperties": false
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"wallImage": {
"type": "object",
"properties": {
"wallInstanceId": {
"type": "string"
},
"assetId": {
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"surfaceOffset": {
"type": "number"
},
"preserveAspectRatio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"surface": {
"anyOf": [
{
"const": "floor",
"type": "string"
},
{
"const": "wall",
"type": "string"
}
]
}
},
"required": [
"wallInstanceId",
"assetId",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio"
],
"additionalProperties": false
}
},
"required": [
"instanceId",
"assetId",
"name",
"transform",
"visible",
"castShadow",
"receiveShadow",
"locked",
"placement",
"tags"
],
"additionalProperties": false
}
},
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"relationId": {
"type": "string"
},
"type": {
"anyOf": [
{
"const": "ON",
"type": "string"
},
{
"const": "NEAR",
"type": "string"
},
{
"const": "LEFT_OF",
"type": "string"
},
{
"const": "RIGHT_OF",
"type": "string"
},
{
"const": "IN_FRONT_OF",
"type": "string"
},
{
"const": "BEHIND",
"type": "string"
},
{
"const": "FACING",
"type": "string"
},
{
"const": "CENTERED_ON",
"type": "string"
},
{
"const": "ALIGNED_WITH",
"type": "string"
},
{
"const": "AGAINST_WALL",
"type": "string"
},
{
"const": "KEEP_CLEAR_OF",
"type": "string"
}
]
},
"subjectInstanceId": {
"type": "string"
},
"targetInstanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "satisfied",
"type": "string"
},
{
"const": "unresolved",
"type": "string"
},
{
"const": "degraded",
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"relationId",
"type",
"subjectInstanceId",
"targetInstanceId",
"strength",
"status",
"message"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "info",
"type": "string"
},
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"instanceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"relationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"measurements": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"code",
"severity",
"message",
"instanceIds",
"relationId"
],
"additionalProperties": false
}
},
"unplacedInstanceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"camera": {
"type": "object",
"properties": {
"type": {
"const": "perspective",
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"target": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"up": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"fovDegrees": {
"type": "number"
},
"near": {
"type": "number"
},
"far": {
"type": "number"
}
},
"required": [
"type",
"position",
"target",
"up",
"fovDegrees",
"near",
"far"
],
"additionalProperties": false
},
"provenance": {
"type": "object",
"properties": {
"createdBy": {
"anyOf": [
{
"const": "quay",
"type": "string"
},
{
"const": "import",
"type": "string"
}
]
},
"planner": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"provider": {
"anyOf": [
{
"const": "openai",
"type": "string"
},
{
"const": "fake",
"type": "string"
}
]
},
"model": {
"type": "string"
},
"promptTemplateVersion": {
"type": "string"
},
"requestId": {
"type": "string"
}
},
"required": [
"provider",
"model",
"promptTemplateVersion",
"requestId"
],
"additionalProperties": false
}
]
},
"layoutEngineVersion": {
"type": "string"
},
"threeVersion": {
"type": "string"
},
"sourcePrompt": {
"type": "string"
}
},
"required": [
"createdBy",
"planner",
"layoutEngineVersion",
"threeVersion",
"sourcePrompt"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"sceneId",
"revision",
"name",
"createdAt",
"updatedAt",
"units",
"coordinateSystem",
"seed",
"environment",
"assets",
"instances",
"relations",
"diagnostics",
"unplacedInstanceIds",
"camera",
"provenance"
],
"additionalProperties": false
},
"evaluations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"residuals": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"identity",
"status",
"message",
"residuals"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "info",
"type": "string"
},
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"span": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"code",
"severity",
"message",
"span",
"identity"
],
"additionalProperties": false
}
},
"provenance": {
"type": "object",
"properties": {
"sourceHash": {
"type": "string"
},
"versions": {
"type": "object",
"properties": {
"compiler": {
"const": "quay.compiler/1",
"type": "string"
},
"layout": {
"anyOf": [
{
"const": "quay.legacy-layout-adapter/1",
"type": "string"
},
{
"const": "quay.semantic-layout/1",
"type": "string"
},
{
"const": "quay.semantic-layout/2",
"type": "string"
}
]
},
"policy": {
"anyOf": [
{
"const": "quay.static-policy/1",
"type": "string"
},
{
"const": "quay.physical-policy/1",
"type": "string"
}
]
}
},
"required": [
"compiler",
"layout",
"policy"
],
"additionalProperties": false
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"analysisRevision": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"assetId",
"manifestId",
"analysisRevision",
"contentHash"
],
"additionalProperties": false
}
}
},
"required": [
"sourceHash",
"versions",
"dependencies"
],
"additionalProperties": false
},
"readiness": {
"const": "static-preview",
"type": "string"
},
"physics": {
"type": "object",
"properties": {
"version": {
"const": "quay.physics-preparation/1",
"type": "string"
},
"ready": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"gravity": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"stepSeconds": {
"type": "number"
},
"maxCatchUpSteps": {
"type": "number"
},
"bodies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"instanceId": {
"type": "string"
},
"motion": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "dynamic",
"type": "string"
},
{
"const": "kinematic",
"type": "string"
}
]
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
},
{
"const": "sensor",
"type": "string"
}
]
},
"controller": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "character",
"type": "string"
}
]
},
"role": {
"type": "string"
},
"canGrab": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"massKg": {
"type": "number"
},
"friction": {
"type": "number"
},
"restitution": {
"type": "number"
},
"colliders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shape": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"kind",
"center",
"halfExtents"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "convex",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"kind",
"vertices"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "triangle-mesh",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
},
"indices": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"kind",
"vertices",
"indices"
],
"additionalProperties": false
}
]
},
"volumeM3": {
"type": "number"
},
"evidence": {
"type": "string"
},
"approximate": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"shape",
"volumeM3",
"evidence",
"approximate"
],
"additionalProperties": false
}
}
},
"required": [
"instanceId",
"motion",
"collision",
"controller",
"role",
"canGrab",
"massKg",
"friction",
"restitution",
"colliders"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"instanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"severity",
"instanceId",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"ready",
"gravity",
"stepSeconds",
"maxCatchUpSteps",
"bodies",
"diagnostics"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"semantic",
"projection",
"evaluations",
"diagnostics",
"provenance",
"readiness"
],
"additionalProperties": false
}
},
"required": [
"source",
"sourceHash",
"bindings",
"dependencies",
"versions",
"scene"
],
"additionalProperties": false
}
]
}
},
"required": [
"schema",
"schemaVersion",
"projectId",
"revision",
"createdAt",
"updatedAt",
"draft",
"accepted"
],
"additionalProperties": false
}rams.schema.json
| Root property | Required | Constraint |
|---|---|---|
| presentation | no | {"type":"object","properties":{"template":{"const":"portfolio","type":"string"},"monogram":{"type":"string"},"rooms":{"type":"array","items":{"type":"object","properties":{"stableRoomId":{"type":"string"},"slug":{"type":"string"},"canonicalPath":{"type":"string"},"navigationTitle":{"type":"string"},"title":{"type":"string"},"subtitle":{"type":"string"},"seoTitle":{"type":"string"},"seoDescription":{"type":"string"},"html":{"type":"string"}},"required":["stableRoomId","slug","canonicalPath","navigationTitle","title","subtitle","seoTitle","seoDescription","html"],"additionalProperties":false}},"welcomeAudio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"landscapeOnMobile":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"introState":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["template","monogram","rooms","welcomeAudio","landscapeOnMobile","introState"],"additionalProperties":false} |
| version | yes | {"const":"rams.site/1","type":"string"} |
| title | yes | {"type":"string"} |
| locale | yes | {"anyOf":[{"const":"it","type":"string"},{"const":"en","type":"string"}]} |
| navigation | yes | {"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}} |
| footer | yes | {"type":"object","properties":{"text":{"type":"string"},"links":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}},"branding":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["text","links","branding"],"additionalProperties":false} |
| rooms | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string"},"description":{"type":"string"},"descriptionSource":{"anyOf":[{"const":"generated","type":"string"},{"const":"authored","type":"string"}]},"image":{"anyOf":[{"type":"null"},{"type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","summary","description","descriptionSource","image","actions"],"additionalProperties":false}} |
| roomInfo | yes | {"anyOf":[{"const":"card","type":"string"},{"const":"panel","type":"string"},{"const":"chat","type":"string"},{"const":"none","type":"string"}]} |
| overlays | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"kind":{"anyOf":[{"const":"text","type":"string"},{"const":"project","type":"string"},{"const":"about","type":"string"},{"const":"gallery","type":"string"},{"const":"embed","type":"string"},{"const":"html","type":"string"},{"const":"contact","type":"string"},{"const":"component","type":"string"}]},"text":{"type":"string"},"images":{"type":"array","items":{"type":"string"}},"url":{"anyOf":[{"type":"null"},{"type":"string"}]},"fragment":{"anyOf":[{"type":"null"},{"type":"object","properties":{"html":{"type":"string"},"css":{"type":"string"},"script":{"type":"string"},"security":{"anyOf":[{"const":"safe","type":"string"},{"const":"controlled-script","type":"string"}]}},"required":["html","css","script","security"],"additionalProperties":false}]},"component":{"anyOf":[{"type":"null"},{"const":"chat","type":"string"},{"const":"rooms","type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","kind","text","images","url","fragment","component","actions"],"additionalProperties":false}} |
| pages | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"kind":{"anyOf":[{"const":"text","type":"string"},{"const":"project","type":"string"},{"const":"about","type":"string"},{"const":"gallery","type":"string"},{"const":"embed","type":"string"},{"const":"html","type":"string"},{"const":"contact","type":"string"},{"const":"component","type":"string"}]},"text":{"type":"string"},"images":{"type":"array","items":{"type":"string"}},"url":{"anyOf":[{"type":"null"},{"type":"string"}]},"fragment":{"anyOf":[{"type":"null"},{"type":"object","properties":{"html":{"type":"string"},"css":{"type":"string"},"script":{"type":"string"},"security":{"anyOf":[{"const":"safe","type":"string"},{"const":"controlled-script","type":"string"}]}},"required":["html","css","script","security"],"additionalProperties":false}]},"component":{"anyOf":[{"type":"null"},{"const":"chat","type":"string"},{"const":"rooms","type":"string"}]},"actions":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"action":{"anyOf":[{"type":"object","properties":{"kind":{"anyOf":[{"const":"navigate","type":"string"},{"const":"focus","type":"string"},{"const":"overlay","type":"string"},{"const":"page","type":"string"},{"const":"info","type":"string"},{"const":"world-action","type":"string"},{"const":"cinematic","type":"string"}]},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external","type":"string"},"url":{"type":"string"}},"required":["kind","url"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"back","type":"string"}},"required":["kind"],"additionalProperties":false}]}},"required":["label","action"],"additionalProperties":false}}},"required":["id","title","kind","text","images","url","fragment","component","actions"],"additionalProperties":false}} |
| assets | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"alt":{"type":"string"},"data":{"type":"string"}},"required":["id","alt","data"],"additionalProperties":false}} |
| theme | yes | {"type":"object","properties":{"mode":{"anyOf":[{"const":"dark","type":"string"},{"const":"light","type":"string"},{"const":"system","type":"string"}]},"font":{"anyOf":[{"const":"system","type":"string"},{"const":"serif","type":"string"},{"const":"mono","type":"string"}]},"fontSize":{"type":"number"},"spacing":{"type":"number"},"radius":{"type":"number"},"background":{"type":"string"},"foreground":{"type":"string"},"accent":{"type":"string"},"navigation":{"anyOf":[{"const":"solid","type":"string"},{"const":"glass","type":"string"}]},"footer":{"anyOf":[{"const":"compact","type":"string"},{"const":"expanded","type":"string"}]},"overlay":{"anyOf":[{"const":"center","type":"string"},{"const":"side","type":"string"}]},"transitions":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"logo":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["mode","font","fontSize","spacing","radius","background","foreground","accent","navigation","footer","overlay","transitions","logo"],"additionalProperties":false} |
| contact | yes | {"type":"object","properties":{"endpoint":{"anyOf":[{"type":"null"},{"type":"string"}]},"alternative":{"type":"string"},"privacy":{"type":"string"},"fields":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"required":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","label","required"],"additionalProperties":false}},"honeypot":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["endpoint","alternative","privacy","fields","honeypot"],"additionalProperties":false} |
| chat | yes | {"type":"object","properties":{"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"welcome":{"type":"string"}},"required":["enabled","welcome"],"additionalProperties":false} |
| security | yes | {"type":"object","properties":{"embedOrigins":{"type":"array","items":{"type":"string"}}},"required":["embedOrigins"],"additionalProperties":false} |
| deploy | yes | {"type":"object","properties":{"target":{"const":"static","type":"string"},"basePath":{"type":"string"},"profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"transport":{"anyOf":[{"const":"local","type":"string"},{"const":"ssh","type":"string"},{"const":"sftp","type":"string"},{"const":"rsync","type":"string"},{"const":"scp","type":"string"},{"const":"ftp","type":"string"},{"const":"ftps","type":"string"},{"const":"custom","type":"string"}]},"host":{"type":"string"},"port":{"type":"number"},"username":{"type":"string"},"destination":{"type":"string"},"credentialRef":{"type":"string"},"strategy":{"anyOf":[{"const":"atomic","type":"string"},{"const":"directory","type":"string"}]},"buildProfile":{"const":"production","type":"string"},"preDeploy":{"const":"verify","type":"string"},"postDeploy":{"const":"healthcheck","type":"string"},"healthCheck":{"type":"object","properties":{"url":{"type":"string"},"expectedStatus":{"type":"number"},"expectedText":{"type":"string"}},"required":["url","expectedStatus","expectedText"],"additionalProperties":false},"timeout":{"type":"number"},"keepReleases":{"type":"number"},"compression":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"clean":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"passive":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"tls":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["id","name","transport","host","port","username","destination","credentialRef","strategy","buildProfile","preDeploy","postDeploy","healthCheck","timeout","keepReleases","compression","clean","passive","tls"],"additionalProperties":false}}},"required":["target","basePath"],"additionalProperties":false} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"presentation": {
"type": "object",
"properties": {
"template": {
"const": "portfolio",
"type": "string"
},
"monogram": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"stableRoomId": {
"type": "string"
},
"slug": {
"type": "string"
},
"canonicalPath": {
"type": "string"
},
"navigationTitle": {
"type": "string"
},
"title": {
"type": "string"
},
"subtitle": {
"type": "string"
},
"seoTitle": {
"type": "string"
},
"seoDescription": {
"type": "string"
},
"html": {
"type": "string"
}
},
"required": [
"stableRoomId",
"slug",
"canonicalPath",
"navigationTitle",
"title",
"subtitle",
"seoTitle",
"seoDescription",
"html"
],
"additionalProperties": false
}
},
"welcomeAudio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"landscapeOnMobile": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"introState": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"template",
"monogram",
"rooms",
"welcomeAudio",
"landscapeOnMobile",
"introState"
],
"additionalProperties": false
},
"version": {
"const": "rams.site/1",
"type": "string"
},
"title": {
"type": "string"
},
"locale": {
"anyOf": [
{
"const": "it",
"type": "string"
},
{
"const": "en",
"type": "string"
}
]
},
"navigation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
},
"footer": {
"type": "object",
"properties": {
"text": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
},
"branding": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"text",
"links",
"branding"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"summary": {
"type": "string"
},
"description": {
"type": "string"
},
"descriptionSource": {
"anyOf": [
{
"const": "generated",
"type": "string"
},
{
"const": "authored",
"type": "string"
}
]
},
"image": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"summary",
"description",
"descriptionSource",
"image",
"actions"
],
"additionalProperties": false
}
},
"roomInfo": {
"anyOf": [
{
"const": "card",
"type": "string"
},
{
"const": "panel",
"type": "string"
},
{
"const": "chat",
"type": "string"
},
{
"const": "none",
"type": "string"
}
]
},
"overlays": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "text",
"type": "string"
},
{
"const": "project",
"type": "string"
},
{
"const": "about",
"type": "string"
},
{
"const": "gallery",
"type": "string"
},
{
"const": "embed",
"type": "string"
},
{
"const": "html",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "component",
"type": "string"
}
]
},
"text": {
"type": "string"
},
"images": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"fragment": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"html": {
"type": "string"
},
"css": {
"type": "string"
},
"script": {
"type": "string"
},
"security": {
"anyOf": [
{
"const": "safe",
"type": "string"
},
{
"const": "controlled-script",
"type": "string"
}
]
}
},
"required": [
"html",
"css",
"script",
"security"
],
"additionalProperties": false
}
]
},
"component": {
"anyOf": [
{
"type": "null"
},
{
"const": "chat",
"type": "string"
},
{
"const": "rooms",
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"kind",
"text",
"images",
"url",
"fragment",
"component",
"actions"
],
"additionalProperties": false
}
},
"pages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "text",
"type": "string"
},
{
"const": "project",
"type": "string"
},
{
"const": "about",
"type": "string"
},
{
"const": "gallery",
"type": "string"
},
{
"const": "embed",
"type": "string"
},
{
"const": "html",
"type": "string"
},
{
"const": "contact",
"type": "string"
},
{
"const": "component",
"type": "string"
}
]
},
"text": {
"type": "string"
},
"images": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"fragment": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"html": {
"type": "string"
},
"css": {
"type": "string"
},
"script": {
"type": "string"
},
"security": {
"anyOf": [
{
"const": "safe",
"type": "string"
},
{
"const": "controlled-script",
"type": "string"
}
]
}
},
"required": [
"html",
"css",
"script",
"security"
],
"additionalProperties": false
}
]
},
"component": {
"anyOf": [
{
"type": "null"
},
{
"const": "chat",
"type": "string"
},
{
"const": "rooms",
"type": "string"
}
]
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "navigate",
"type": "string"
},
{
"const": "focus",
"type": "string"
},
{
"const": "overlay",
"type": "string"
},
{
"const": "page",
"type": "string"
},
{
"const": "info",
"type": "string"
},
{
"const": "world-action",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
}
]
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "back",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
}
]
}
},
"required": [
"label",
"action"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"kind",
"text",
"images",
"url",
"fragment",
"component",
"actions"
],
"additionalProperties": false
}
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"alt": {
"type": "string"
},
"data": {
"type": "string"
}
},
"required": [
"id",
"alt",
"data"
],
"additionalProperties": false
}
},
"theme": {
"type": "object",
"properties": {
"mode": {
"anyOf": [
{
"const": "dark",
"type": "string"
},
{
"const": "light",
"type": "string"
},
{
"const": "system",
"type": "string"
}
]
},
"font": {
"anyOf": [
{
"const": "system",
"type": "string"
},
{
"const": "serif",
"type": "string"
},
{
"const": "mono",
"type": "string"
}
]
},
"fontSize": {
"type": "number"
},
"spacing": {
"type": "number"
},
"radius": {
"type": "number"
},
"background": {
"type": "string"
},
"foreground": {
"type": "string"
},
"accent": {
"type": "string"
},
"navigation": {
"anyOf": [
{
"const": "solid",
"type": "string"
},
{
"const": "glass",
"type": "string"
}
]
},
"footer": {
"anyOf": [
{
"const": "compact",
"type": "string"
},
{
"const": "expanded",
"type": "string"
}
]
},
"overlay": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "side",
"type": "string"
}
]
},
"transitions": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"logo": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"mode",
"font",
"fontSize",
"spacing",
"radius",
"background",
"foreground",
"accent",
"navigation",
"footer",
"overlay",
"transitions",
"logo"
],
"additionalProperties": false
},
"contact": {
"type": "object",
"properties": {
"endpoint": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"alternative": {
"type": "string"
},
"privacy": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"label": {
"type": "string"
},
"required": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"label",
"required"
],
"additionalProperties": false
}
},
"honeypot": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"endpoint",
"alternative",
"privacy",
"fields",
"honeypot"
],
"additionalProperties": false
},
"chat": {
"type": "object",
"properties": {
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"welcome": {
"type": "string"
}
},
"required": [
"enabled",
"welcome"
],
"additionalProperties": false
},
"security": {
"type": "object",
"properties": {
"embedOrigins": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"embedOrigins"
],
"additionalProperties": false
},
"deploy": {
"type": "object",
"properties": {
"target": {
"const": "static",
"type": "string"
},
"basePath": {
"type": "string"
},
"profiles": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"transport": {
"anyOf": [
{
"const": "local",
"type": "string"
},
{
"const": "ssh",
"type": "string"
},
{
"const": "sftp",
"type": "string"
},
{
"const": "rsync",
"type": "string"
},
{
"const": "scp",
"type": "string"
},
{
"const": "ftp",
"type": "string"
},
{
"const": "ftps",
"type": "string"
},
{
"const": "custom",
"type": "string"
}
]
},
"host": {
"type": "string"
},
"port": {
"type": "number"
},
"username": {
"type": "string"
},
"destination": {
"type": "string"
},
"credentialRef": {
"type": "string"
},
"strategy": {
"anyOf": [
{
"const": "atomic",
"type": "string"
},
{
"const": "directory",
"type": "string"
}
]
},
"buildProfile": {
"const": "production",
"type": "string"
},
"preDeploy": {
"const": "verify",
"type": "string"
},
"postDeploy": {
"const": "healthcheck",
"type": "string"
},
"healthCheck": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"expectedStatus": {
"type": "number"
},
"expectedText": {
"type": "string"
}
},
"required": [
"url",
"expectedStatus",
"expectedText"
],
"additionalProperties": false
},
"timeout": {
"type": "number"
},
"keepReleases": {
"type": "number"
},
"compression": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"clean": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"passive": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"tls": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"id",
"name",
"transport",
"host",
"port",
"username",
"destination",
"credentialRef",
"strategy",
"buildProfile",
"preDeploy",
"postDeploy",
"healthCheck",
"timeout",
"keepReleases",
"compression",
"clean",
"passive",
"tls"
],
"additionalProperties": false
}
}
},
"required": [
"target",
"basePath"
],
"additionalProperties": false
}
},
"required": [
"version",
"title",
"locale",
"navigation",
"footer",
"rooms",
"roomInfo",
"overlays",
"pages",
"assets",
"theme",
"contact",
"chat",
"security",
"deploy"
],
"additionalProperties": false
}RidleySuggestion
Download ridley-edits.schema.json
| Root property | Required | Constraint |
|---|---|---|
| operations | yes | {"items":{"anyOf":[{"$ref":"#/$defs/ShotEdit"},{"$ref":"#/$defs/TextEdit"},{"$ref":"#/$defs/ActionEdit"},{"$ref":"#/$defs/SignalEdit"},{"$ref":"#/$defs/TriggerEdit"},{"$ref":"#/$defs/RemoveCueEdit"},{"$ref":"#/$defs/ExperienceStateEdit"},{"$ref":"#/$defs/ExperienceTransitionEdit"},{"$ref":"#/$defs/MusicEdit"},{"$ref":"#/$defs/SfxEdit"}]},"maxItems":32,"title":"Operations","type":"array"} |
| warnings | yes | {"items":{"maxLength":240,"type":"string"},"maxItems":8,"title":"Warnings","type":"array"} |
Complete schema including nested definitions
{
"$defs": {
"ActionEdit": {
"additionalProperties": false,
"properties": {
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"duration": {
"exclusiveMinimum": 0,
"maximum": 3600,
"title": "Duration",
"type": "number"
},
"kind": {
"const": "action",
"title": "Kind",
"type": "string"
},
"actor": {
"format": "uuid",
"title": "Actor",
"type": "string"
},
"action": {
"enum": [
"look-at",
"move-to",
"animate"
],
"title": "Action",
"type": "string"
},
"target": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"clip": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"title": "Clip"
},
"persistence": {
"enum": [
"temporary",
"runtime"
],
"title": "Persistence",
"type": "string"
}
},
"required": [
"film",
"id",
"at",
"duration",
"kind",
"actor",
"action",
"target",
"clip",
"persistence"
],
"title": "ActionEdit",
"type": "object"
},
"ConversationPolicy": {
"additionalProperties": false,
"properties": {
"actor": {
"format": "uuid",
"title": "Actor",
"type": "string"
},
"profileId": {
"format": "uuid",
"title": "Profileid",
"type": "string"
}
},
"required": [
"actor",
"profileId"
],
"title": "ConversationPolicy",
"type": "object"
},
"ExperienceStateEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "experience-state",
"title": "Kind",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"mode": {
"enum": [
"interactive",
"cinematic",
"conversation"
],
"title": "Mode",
"type": "string"
},
"conversation": {
"anyOf": [
{
"$ref": "#/$defs/ConversationPolicy"
},
{
"type": "null"
}
],
"default": null
},
"cinematic": {
"anyOf": [
{
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Cinematic"
},
"control": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Control"
},
"camera": {
"enum": [
"third-person",
"first-person",
"overhead",
"overview"
],
"title": "Camera",
"type": "string"
},
"userCamera": {
"title": "Usercamera",
"type": "boolean"
},
"followers": {
"items": {
"$ref": "#/$defs/FollowPolicy"
},
"maxItems": 64,
"title": "Followers",
"type": "array"
},
"audio": {
"items": {
"$ref": "#/$defs/MusicPolicy"
},
"maxItems": 64,
"title": "Audio",
"type": "array"
}
},
"required": [
"kind",
"id",
"mode",
"cinematic",
"control",
"camera",
"userCamera",
"followers",
"audio"
],
"title": "ExperienceStateEdit",
"type": "object"
},
"ExperienceTransitionEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "experience-transition",
"title": "Kind",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"from": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "From",
"type": "string"
},
"to": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "To",
"type": "string"
},
"event": {
"pattern": "^[A-Za-z_][A-Za-z0-9_.:-]{0,99}$",
"title": "Event",
"type": "string"
},
"subject": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Subject"
},
"target": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"once": {
"title": "Once",
"type": "boolean"
}
},
"required": [
"kind",
"id",
"from",
"to",
"event",
"subject",
"target",
"once"
],
"title": "ExperienceTransitionEdit",
"type": "object"
},
"FollowPolicy": {
"additionalProperties": false,
"properties": {
"actor": {
"format": "uuid",
"title": "Actor",
"type": "string"
},
"target": {
"format": "uuid",
"title": "Target",
"type": "string"
},
"distance": {
"maximum": 20,
"minimum": 0.1,
"title": "Distance",
"type": "number"
},
"delay": {
"maximum": 60,
"minimum": 0,
"title": "Delay",
"type": "number"
},
"speed": {
"exclusiveMinimum": 0,
"maximum": 5,
"title": "Speed",
"type": "number"
}
},
"required": [
"actor",
"target",
"distance",
"delay",
"speed"
],
"title": "FollowPolicy",
"type": "object"
},
"MusicEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "music",
"title": "Kind",
"type": "string"
},
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"command": {
"$ref": "#/$defs/MusicPolicy"
}
},
"required": [
"kind",
"film",
"id",
"at",
"command"
],
"title": "MusicEdit",
"type": "object"
},
"MusicPolicy": {
"additionalProperties": false,
"properties": {
"action": {
"enum": [
"play",
"stop",
"crossfade"
],
"title": "Action",
"type": "string"
},
"assetId": {
"format": "uuid",
"title": "Assetid",
"type": "string"
},
"from": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "From"
},
"volume": {
"maximum": 1,
"minimum": 0,
"title": "Volume",
"type": "number"
},
"fade": {
"maximum": 30,
"minimum": 0,
"title": "Fade",
"type": "number"
},
"loop": {
"title": "Loop",
"type": "boolean"
}
},
"required": [
"action",
"assetId",
"from",
"volume",
"fade",
"loop"
],
"title": "MusicPolicy",
"type": "object"
},
"RemoveCueEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "remove-cue",
"title": "Kind",
"type": "string"
},
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
}
},
"required": [
"kind",
"film",
"id"
],
"title": "RemoveCueEdit",
"type": "object"
},
"SfxEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "sfx",
"title": "Kind",
"type": "string"
},
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"assetId": {
"format": "uuid",
"title": "Assetid",
"type": "string"
},
"spatial": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Spatial"
},
"volume": {
"maximum": 1,
"minimum": 0,
"title": "Volume",
"type": "number"
}
},
"required": [
"kind",
"film",
"id",
"at",
"assetId",
"spatial",
"volume"
],
"title": "SfxEdit",
"type": "object"
},
"ShotEdit": {
"additionalProperties": false,
"properties": {
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"duration": {
"exclusiveMinimum": 0,
"maximum": 3600,
"title": "Duration",
"type": "number"
},
"kind": {
"const": "shot",
"title": "Kind",
"type": "string"
},
"shotType": {
"enum": [
"extreme-closeup",
"closeup",
"medium-closeup",
"medium",
"american",
"full",
"long",
"extreme-long",
"two-shot",
"over-the-shoulder",
"pov",
"establishing",
"insert"
],
"title": "Shottype",
"type": "string"
},
"subjects": {
"items": {
"format": "uuid",
"type": "string"
},
"maxItems": 8,
"minItems": 1,
"title": "Subjects",
"type": "array"
},
"shoulder": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Shoulder"
},
"movement": {
"enum": [
"static",
"pan",
"tilt",
"dolly",
"truck",
"pedestal",
"orbit",
"zoom",
"follow",
"crane"
],
"title": "Movement",
"type": "string"
},
"amount": {
"maximum": 1,
"minimum": -1,
"title": "Amount",
"type": "number"
},
"transition": {
"enum": [
"cut",
"smooth"
],
"title": "Transition",
"type": "string"
}
},
"required": [
"film",
"id",
"at",
"duration",
"kind",
"shotType",
"subjects",
"shoulder",
"movement",
"amount",
"transition"
],
"title": "ShotEdit",
"type": "object"
},
"SignalEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"enum": [
"emit",
"return"
],
"title": "Kind",
"type": "string"
},
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"event": {
"anyOf": [
{
"pattern": "^[A-Za-z_][A-Za-z0-9_.-]{0,99}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Event"
},
"target": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
}
},
"required": [
"kind",
"film",
"id",
"at",
"event",
"target"
],
"title": "SignalEdit",
"type": "object"
},
"TextEdit": {
"additionalProperties": false,
"properties": {
"film": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Film",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"at": {
"maximum": 3600,
"minimum": 0,
"title": "At",
"type": "number"
},
"duration": {
"exclusiveMinimum": 0,
"maximum": 3600,
"title": "Duration",
"type": "number"
},
"kind": {
"enum": [
"dialogue",
"subtitle",
"narration"
],
"title": "Kind",
"type": "string"
},
"actor": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Actor"
},
"text": {
"maxLength": 4000,
"minLength": 1,
"title": "Text",
"type": "string"
}
},
"required": [
"film",
"id",
"at",
"duration",
"kind",
"actor",
"text"
],
"title": "TextEdit",
"type": "object"
},
"TriggerEdit": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "trigger",
"title": "Kind",
"type": "string"
},
"id": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Id",
"type": "string"
},
"subject": {
"format": "uuid",
"title": "Subject",
"type": "string"
},
"target": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"event": {
"enum": [
"near",
"qway.object.enter",
"qway.object.leave",
"qway.relation.changed",
"qway.interaction",
"qway.trigger",
"ridley.complete"
],
"title": "Event",
"type": "string"
},
"distance": {
"exclusiveMinimum": 0,
"maximum": 100,
"title": "Distance",
"type": "number"
},
"cinematic": {
"pattern": "^[A-Za-z_][A-Za-z0-9_-]{0,99}$",
"title": "Cinematic",
"type": "string"
},
"once": {
"title": "Once",
"type": "boolean"
}
},
"required": [
"kind",
"id",
"subject",
"target",
"event",
"distance",
"cinematic",
"once"
],
"title": "TriggerEdit",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"operations": {
"items": {
"anyOf": [
{
"$ref": "#/$defs/ShotEdit"
},
{
"$ref": "#/$defs/TextEdit"
},
{
"$ref": "#/$defs/ActionEdit"
},
{
"$ref": "#/$defs/SignalEdit"
},
{
"$ref": "#/$defs/TriggerEdit"
},
{
"$ref": "#/$defs/RemoveCueEdit"
},
{
"$ref": "#/$defs/ExperienceStateEdit"
},
{
"$ref": "#/$defs/ExperienceTransitionEdit"
},
{
"$ref": "#/$defs/MusicEdit"
},
{
"$ref": "#/$defs/SfxEdit"
}
]
},
"maxItems": 32,
"title": "Operations",
"type": "array"
},
"warnings": {
"items": {
"maxLength": 240,
"type": "string"
},
"maxItems": 8,
"title": "Warnings",
"type": "array"
}
},
"required": [
"operations",
"warnings"
],
"title": "RidleySuggestion",
"type": "object"
}RoomProgram
Download room-program.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"qway.room-program/1","title":"Version","type":"string"} |
| archetype | yes | {"pattern":"^[a-z][a-z0-9_.-]{0,99}$","title":"Archetype","type":"string"} |
| archetypeRevision | yes | {"maxLength":100,"minLength":1,"title":"Archetyperevision","type":"string"} |
| purpose | yes | {"pattern":"^[a-z][a-z0-9_.-]{0,99}$","title":"Purpose","type":"string"} |
| capacity | yes | {"maximum":64,"minimum":1,"title":"Capacity","type":"integer"} |
| style | yes | {"maxLength":100,"title":"Style","type":"string"} |
| zones | yes | {"items":{"$ref":"#/$defs/FunctionalZone"},"maxItems":32,"minItems":1,"title":"Zones","type":"array"} |
| needs | yes | {"items":{"$ref":"#/$defs/ProgramNeed"},"maxItems":64,"title":"Needs","type":"array"} |
| rules | yes | {"items":{"$ref":"#/$defs/ProgramRule"},"maxItems":128,"title":"Rules","type":"array"} |
| architecture | yes | {"items":{"$ref":"#/$defs/ArchitecturalNeed"},"maxItems":32,"title":"Architecture","type":"array"} |
| exclusions | yes | {"items":{"$ref":"#/$defs/ProgramExclusion"},"maxItems":64,"title":"Exclusions","type":"array"} |
| uncertainties | yes | {"items":{"type":"string"},"maxItems":32,"title":"Uncertainties","type":"array"} |
Complete schema including nested definitions
{
"$defs": {
"ArchitecturalNeed": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"kind": {
"enum": [
"window",
"portal",
"wall-run",
"open-center",
"natural-light",
"ceiling-light"
],
"title": "Kind",
"type": "string"
},
"quantity": {
"maximum": 16,
"minimum": 1,
"title": "Quantity",
"type": "integer"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"title": "ArchitecturalNeed",
"type": "object"
},
"ExplicitProgramEvidence": {
"additionalProperties": false,
"properties": {
"origin": {
"const": "explicit",
"title": "Origin",
"type": "string"
},
"confidence": {
"maximum": 1,
"minimum": 0,
"title": "Confidence",
"type": "number"
},
"explanation": {
"maxLength": 500,
"minLength": 1,
"title": "Explanation",
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"title": "ExplicitProgramEvidence",
"type": "object"
},
"FunctionalZone": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"purpose": {
"maxLength": 100,
"minLength": 1,
"title": "Purpose",
"type": "string"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
}
},
"required": [
"reference",
"purpose",
"priority"
],
"title": "FunctionalZone",
"type": "object"
},
"ProgramEvidence": {
"additionalProperties": false,
"properties": {
"origin": {
"enum": [
"explicit",
"archetype",
"inferred"
],
"title": "Origin",
"type": "string"
},
"confidence": {
"maximum": 1,
"minimum": 0,
"title": "Confidence",
"type": "number"
},
"explanation": {
"maxLength": 500,
"minLength": 1,
"title": "Explanation",
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"title": "ProgramEvidence",
"type": "object"
},
"ProgramExclusion": {
"additionalProperties": false,
"properties": {
"category": {
"pattern": "^[a-z][a-z0-9_-]*\\.[a-z][a-z0-9_.-]{0,79}$",
"title": "Category",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ExplicitProgramEvidence"
}
},
"required": [
"category",
"evidence"
],
"title": "ProgramExclusion",
"type": "object"
},
"ProgramNeed": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"category": {
"pattern": "^[a-z][a-z0-9_-]*\\.[a-z][a-z0-9_.-]{0,79}$",
"title": "Category",
"type": "string"
},
"zone": {
"maxLength": 80,
"title": "Zone",
"type": "string"
},
"quantity": {
"maximum": 64,
"minimum": 1,
"title": "Quantity",
"type": "integer"
},
"capacity": {
"anyOf": [
{
"maximum": 64,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"title": "Capacity"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"assetAlias": {
"anyOf": [
{
"pattern": "^[a-z0-9][a-z0-9_.-]{0,99}$",
"type": "string"
},
{
"type": "null"
}
],
"title": "Assetalias"
},
"placement": {
"enum": [
"auto",
"center",
"perimeter"
],
"title": "Placement",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"title": "ProgramNeed",
"type": "object"
},
"ProgramRule": {
"additionalProperties": false,
"properties": {
"reference": {
"pattern": "^[A-Za-z][A-Za-z0-9_-]{0,79}$",
"title": "Reference",
"type": "string"
},
"kind": {
"enum": [
"on",
"seating",
"beside",
"facing",
"near-window",
"wall-alignment",
"interior",
"access",
"visibility",
"clearance",
"circulation",
"minimum-dimensions",
"unsupported"
],
"title": "Kind",
"type": "string"
},
"subjects": {
"items": {
"type": "string"
},
"maxItems": 64,
"title": "Subjects",
"type": "array"
},
"target": {
"anyOf": [
{
"maxLength": 80,
"type": "string"
},
{
"type": "null"
}
],
"title": "Target"
},
"priority": {
"enum": [
"required",
"recommended",
"optional"
],
"title": "Priority",
"type": "string"
},
"strength": {
"enum": [
"hard",
"soft"
],
"title": "Strength",
"type": "string"
},
"clearanceM": {
"anyOf": [
{
"maximum": 100,
"minimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"title": "Clearancem"
},
"description": {
"maxLength": 500,
"minLength": 1,
"title": "Description",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/ProgramEvidence"
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"title": "ProgramRule",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"version": {
"const": "qway.room-program/1",
"title": "Version",
"type": "string"
},
"archetype": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Archetype",
"type": "string"
},
"archetypeRevision": {
"maxLength": 100,
"minLength": 1,
"title": "Archetyperevision",
"type": "string"
},
"purpose": {
"pattern": "^[a-z][a-z0-9_.-]{0,99}$",
"title": "Purpose",
"type": "string"
},
"capacity": {
"maximum": 64,
"minimum": 1,
"title": "Capacity",
"type": "integer"
},
"style": {
"maxLength": 100,
"title": "Style",
"type": "string"
},
"zones": {
"items": {
"$ref": "#/$defs/FunctionalZone"
},
"maxItems": 32,
"minItems": 1,
"title": "Zones",
"type": "array"
},
"needs": {
"items": {
"$ref": "#/$defs/ProgramNeed"
},
"maxItems": 64,
"title": "Needs",
"type": "array"
},
"rules": {
"items": {
"$ref": "#/$defs/ProgramRule"
},
"maxItems": 128,
"title": "Rules",
"type": "array"
},
"architecture": {
"items": {
"$ref": "#/$defs/ArchitecturalNeed"
},
"maxItems": 32,
"title": "Architecture",
"type": "array"
},
"exclusions": {
"items": {
"$ref": "#/$defs/ProgramExclusion"
},
"maxItems": 64,
"title": "Exclusions",
"type": "array"
},
"uncertainties": {
"items": {
"type": "string"
},
"maxItems": 32,
"title": "Uncertainties",
"type": "array"
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"title": "RoomProgram",
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema"
}scene-v2.schema.json
| Root property | Required | Constraint |
|---|---|---|
| wright | no | {"type":"object","properties":{"version":{"const":"wright.resolved/1","type":"string"},"topology":{"type":"object","properties":{"version":{"const":"wright.world/1","type":"string"},"identity":{"type":"string"},"rooms":{"type":"array","items":{"type":"object","properties":{"furnishing":{"type":"object","properties":{"roomProgram":{"type":"object","properties":{"repair":{"type":"object","properties":{"stage":{"const":"semantic","type":"string"},"attempts":{"type":"number"},"strategy":{"anyOf":[{"const":"none","type":"string"},{"const":"bounded-semantic-revision","type":"string"}]},"initialFailures":{"type":"array","items":{"type":"string"}},"finalState":{"const":"accepted","type":"string"},"relaxedConstraints":{"type":"array","items":{"type":"string"}}},"required":["stage","attempts","strategy","initialFailures","finalState","relaxedConstraints"],"additionalProperties":false},"enrichment":{"type":"object","properties":{"provider":{"type":"string"},"model":{"type":"string"},"version":{"type":"string"}},"required":["provider","model","version"],"additionalProperties":false},"intent":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"archetypeSnapshot":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["intent","archetypeSnapshot","bindings"],"additionalProperties":false},"version":{"const":"qway.furnishing/1","type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"needs":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"category":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"relation":{"anyOf":[{"type":"null"},{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"near-window","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"instances":{"type":"array","items":{"type":"array","items":{"type":"string"}}}},"required":["identity","category","quantity","capacity","assetAlias","placement","relation","target","instances"],"additionalProperties":false}}},"required":["version","purpose","capacity","style","needs"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"label":{"type":"string","maxLength":200},"level":{"anyOf":[{"type":"null"},{"type":"string"}]},"parent":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"backdrop":{"anyOf":[{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},{"type":"object","properties":{"north":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"south":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"east":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"west":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false}},"required":[],"additionalProperties":false}]}},"required":["identity","alias","label","level","parent","size","frame"],"additionalProperties":false}},"levels":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"label":{"type":"string"}},"required":["identity","label"],"additionalProperties":false}},"portals":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"from":{"type":"string"},"to":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","from","to","frame","width","height","traversable","door"],"additionalProperties":false}},"entrances":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"room":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","room","frame","width","height","traversable","door"],"additionalProperties":false}},"membership":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["version","identity","rooms","levels","portals","membership"],"additionalProperties":false},"worldFrames":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false}},"localPoses":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["position","quaternion","scale"],"additionalProperties":false}},"programVerification":{"type":"object","properties":{"policy":{"anyOf":[{"const":"qway.room-program-geometry/1","type":"string"},{"const":"qway.room-program-geometry/2","type":"string"},{"const":"qway.room-program-geometry/3","type":"string"}]},"actor":{"type":"object","properties":{"radiusM":{"type":"number"},"heightM":{"type":"number"}},"required":["radiusM","heightM"],"additionalProperties":false},"rooms":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"archetypeRevision":{"type":"string"},"layout":{"type":"object","properties":{"policy":{"const":"qway.room-program-layout/1","type":"string"},"strategy":{"const":"bounded-geometric-search","type":"string"},"candidateBudget":{"type":"number"},"candidatesTested":{"type":"number"},"passesPerformed":{"type":"number"},"initialRules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]}},"required":["reference","status"],"additionalProperties":false}},"changedInstances":{"type":"array","items":{"type":"string"}},"relaxedConstraints":{"type":"array","items":{"type":"string"}},"termination":{"anyOf":[{"const":"stationary","type":"string"},{"const":"budget-exhausted","type":"string"},{"const":"pass-limit","type":"string"},{"const":"zero-score","type":"string"}]}},"required":["policy","strategy","candidateBudget","candidatesTested","passesPerformed","initialRules","changedInstances","relaxedConstraints","termination"],"additionalProperties":false},"inventory":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"requestedUnits":{"type":"number"},"resolvedUnits":{"type":"number"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]}},"required":["reference","priority","requestedUnits","resolvedUnits","status"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000},"pairs":{"type":"array","items":{"type":"object","properties":{"subject":{"type":"string"},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000},"residuals":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["subject","target","status","message","residuals"],"additionalProperties":false}}},"required":["reference","kind","priority","strength","status","message","pairs"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"requested":{"type":"number"},"verified":{"type":"number"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string","maxLength":2000}},"required":["reference","kind","priority","requested","verified","status","message"],"additionalProperties":false}}},"required":["room","archetypeRevision","inventory","rules","architecture"],"additionalProperties":false}}},"required":["policy","actor","rooms"],"additionalProperties":false},"verification":{"type":"object","properties":{"policy":{"const":"wright.portal-geometry/1","type":"string"},"actor":{"type":"object","properties":{"radius":{"type":"number"},"height":{"type":"number"}},"required":["radius","height"],"additionalProperties":false},"portals":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"requestedAperture":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]},"actorPassage":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]}},"required":["identity","requestedAperture","actorPassage"],"additionalProperties":false}},"entrances":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"requestedAperture":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]},"actorPassage":{"anyOf":[{"const":"unknown","type":"string"},{"const":"clear","type":"string"},{"const":"collision","type":"string"}]}},"required":["identity","requestedAperture","actorPassage"],"additionalProperties":false}},"circulation":{"type":"array","items":{"type":"object","properties":{"room":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"ready","type":"string"},{"const":"unresolved","type":"string"},{"const":"not-requested","type":"string"}]},"entryCount":{"type":"number"},"reachableSamples":{"type":"number"},"routeOutcomes":{"type":"array","items":{"type":"string"}}},"required":["room","status","entryCount","reachableSamples","routeOutcomes"],"additionalProperties":false}},"navigationBoxes":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"array","items":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false}}}},"required":["policy","actor","portals","circulation","navigationBoxes"],"additionalProperties":false},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]},"message":{"type":"string"}},"required":["code","severity","identity","message"],"additionalProperties":false}}},"required":["version","topology","worldFrames","localPoses","diagnostics"],"additionalProperties":false} |
| schema | yes | {"const":"quay.scene","type":"string"} |
| schemaVersion | yes | {"const":"2.0.0-draft.1","type":"string"} |
| semantic | yes | {"type":"object","properties":{"materials":{"type":"array","items":{"type":"object","properties":{"version":{"const":"quay.material/1","type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"category":{"anyOf":[{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"glass","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]},"shader":{"anyOf":[{"const":"unlit","type":"string"},{"const":"standard","type":"string"}]},"color":{"type":"string"},"roughness":{"type":"number"},"metalness":{"type":"number"},"emissive":{"type":"string"},"emissiveIntensity":{"type":"number"},"opacity":{"type":"number"},"alphaMode":{"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]},"alphaCutoff":{"type":"number"},"side":{"anyOf":[{"const":"front","type":"string"},{"const":"back","type":"string"},{"const":"double","type":"string"}]},"preset":{"anyOf":[{"type":"null"},{"type":"string"}]},"maps":{"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}}},"required":["version","identity","alias","label","description","category","shader","color","roughness","metalness","emissive","emissiveIntensity","opacity","alphaMode","alphaCutoff","side","preset","maps"],"additionalProperties":false}},"assetPolicy":{"const":"project-user-standard","type":"string"},"composition":{"const":"quay.room-composition/1","type":"string"},"version":{"const":"quay.semantic/1","type":"string"},"sceneId":{"type":"string"},"name":{"type":"string"},"seed":{"type":"number"},"room":{"type":"object","properties":{"identity":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["identity","size"],"additionalProperties":false},"profile":{"anyOf":[{"const":"static","type":"string"},{"const":"physical","type":"string"}]},"objects":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"region":{"anyOf":[{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"actor":{"type":"object","properties":{"policy":{"const":"quay.actor-box/1","type":"string"},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"eye":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"manipulationOrigin":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"reachM":{"type":"number"}},"required":["policy","size","eye","manipulationOrigin","reachM"],"additionalProperties":false},"animation":{"type":"object","properties":{"policy":{"const":"quay.animation/1","type":"string"},"clipIndex":{"type":"number"},"clipName":{"anyOf":[{"type":"null"},{"type":"string"}]},"mode":{"anyOf":[{"const":"in-place","type":"string"},{"const":"articulated","type":"string"}]},"speed":{"type":"number"},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"offsetSeconds":{"type":"number"}},"required":["policy","clipIndex","clipName","mode","speed","loop","offsetSeconds"],"additionalProperties":false},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"orientation":{"type":"object","properties":{"policy":{"anyOf":[{"const":"quay.orientation/1","type":"string"},{"const":"quay.orientation/2","type":"string"}]},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"up":{"anyOf":[{"type":"null"},{"type":"string"}]},"front":{"anyOf":[{"type":"null"},{"type":"string"}]},"confidence":{"type":"number"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["policy","quaternion","up","front","confidence","evidence"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"notes":{"type":"string","maxLength":2000},"assetId":{"type":"string"},"manifestId":{"type":"string"},"role":{"type":"string"},"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"pose":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":[],"additionalProperties":false},"size":{"anyOf":[{"type":"null"},{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}]},"sizing":{"type":"object","properties":{"measurement":{"type":"object","properties":{"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"}]},"targetM":{"type":"number"},"sourceReferenceM":{"type":"number"},"method":{"anyOf":[{"const":"measured-bounds","type":"string"},{"const":"rig-shoulder-envelope-approximation/1","type":"string"}]},"confidence":{"type":"number"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["reference","targetM","sourceReferenceM","method","confidence","evidence"],"additionalProperties":false},"policy":{"const":"quay.sizing/1","type":"string"},"measuredDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"orientedDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"chosenDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"finalSceneDimensions":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"uniformScale":{"type":"number"},"profile":{"anyOf":[{"type":"null"},{"type":"object","properties":{"schema":{"const":"quay.archetype","type":"string"},"schemaVersion":{"const":"1.0.0","type":"string"},"profileId":{"type":"string"},"revision":{"type":"number"},"parentId":{"anyOf":[{"type":"null"},{"type":"string"}]},"semanticClass":{"type":"string"},"status":{"anyOf":[{"const":"accepted","type":"string"},{"const":"suggested","type":"string"},{"const":"rejected","type":"string"},{"const":"user-corrected","type":"string"}]},"dimensions":{"type":"object","properties":{"width":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"height":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]},"depth":{"anyOf":[{"type":"null"},{"type":"object","properties":{"minM":{"type":"number"},"typicalM":{"type":"number"},"maxM":{"type":"number"},"reference":{"anyOf":[{"const":"whole-bounds","type":"string"},{"const":"withers","type":"string"},{"const":"seat","type":"string"},{"const":"worktop","type":"string"},{"const":"opening","type":"string"}]}},"required":["minM","typicalM","maxM","reference"],"additionalProperties":false}]}},"required":["width","height","depth"],"additionalProperties":false},"preferredDimension":{"anyOf":[{"type":"null"},{"const":"width","type":"string"},{"const":"height","type":"string"},{"const":"depth","type":"string"}]},"grounding":{"anyOf":[{"const":"architectural","type":"string"},{"const":"unknown","type":"string"},{"const":"floor","type":"string"},{"const":"support","type":"string"}]},"orientation":{"type":"object","properties":{"up":{"anyOf":[{"type":"null"},{"const":"+Y","type":"string"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Y","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]},"forward":{"anyOf":[{"type":"null"},{"const":"+Z","type":"string"},{"const":"+X","type":"string"},{"const":"-Z","type":"string"},{"const":"-X","type":"string"}]}},"required":["up","forward"],"additionalProperties":false},"affordances":{"type":"array","items":{"type":"string"}},"clearances":{"type":"object","properties":{"usableSideM":{"anyOf":[{"type":"null"},{"type":"number"}]},"circulationM":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["usableSideM","circulationM"],"additionalProperties":false},"relationHints":{"type":"array","items":{"type":"string"}},"provenance":{"type":"object","properties":{"source":{"anyOf":[{"const":"standard","type":"string"},{"const":"curated","type":"string"},{"const":"ai_inferred","type":"string"},{"const":"user_confirmed","type":"string"},{"const":"project_specific","type":"string"}]},"producer":{"type":"string"},"model":{"anyOf":[{"type":"null"},{"type":"string"}]},"inferenceVersion":{"type":"string"},"requestedClass":{"anyOf":[{"type":"null"},{"type":"string"}]},"confidence":{"type":"number"},"createdAt":{"type":"string"},"evidence":{"type":"array","items":{"type":"string"}}},"required":["source","producer","model","inferenceVersion","requestedClass","confidence","createdAt","evidence"],"additionalProperties":false}},"required":["schema","schemaVersion","profileId","revision","parentId","semanticClass","status","dimensions","preferredDimension","grounding","orientation","affordances","clearances","relationHints","provenance"],"additionalProperties":false}]},"source":{"anyOf":[{"const":"archetype","type":"string"},{"const":"instance","type":"string"},{"const":"conservative-fallback","type":"string"}]},"plausibility":{"anyOf":[{"const":"unknown","type":"string"},{"const":"plausible","type":"string"},{"const":"implausible","type":"string"}]},"diagnostics":{"type":"array","items":{"type":"string"}}},"required":["policy","measuredDimensions","orientedDimensions","chosenDimensions","uniformScale","profile","source","plausibility","diagnostics"],"additionalProperties":false},"architecture":{"type":"object","properties":{"boundary":{"anyOf":[{"const":"front","type":"string"},{"const":"back","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"}]},"section":{"anyOf":[{"const":"full","type":"string"},{"const":"opening-left","type":"string"},{"const":"opening-right","type":"string"},{"const":"opening-header","type":"string"},{"const":"opening-sill","type":"string"}]},"opening":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["boundary","section","opening"],"additionalProperties":false},"physics":{"type":"object","properties":{"motion":{"anyOf":[{"const":"static","type":"string"},{"const":"dynamic","type":"string"},{"const":"kinematic","type":"string"}]},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"},{"const":"sensor","type":"string"}]},"controller":{"anyOf":[{"const":"none","type":"string"},{"const":"character","type":"string"}]},"collider":{"anyOf":[{"type":"null"},{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"surface","type":"string"},{"const":"component","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false}]},"shape":{"anyOf":[{"const":"auto","type":"string"},{"const":"box","type":"string"},{"const":"convex-hull","type":"string"},{"const":"decomposition","type":"string"},{"const":"triangle-mesh","type":"string"}]},"massKg":{"anyOf":[{"type":"null"},{"type":"number"}]},"friction":{"anyOf":[{"type":"null"},{"type":"number"}]},"restitution":{"anyOf":[{"type":"null"},{"type":"number"}]},"provenance":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"const":"instance","type":"string"},{"const":"asset-override","type":"string"},{"const":"profile","type":"string"},{"const":"inference","type":"string"},{"const":"fallback","type":"string"}]}}},"required":["motion","collision","controller","collider","massKg","friction","restitution","provenance"],"additionalProperties":false},"interaction":{"type":"object","properties":{"capabilities":{"type":"array","items":{"anyOf":[{"const":"grab","type":"string"},{"const":"open","type":"string"},{"const":"close","type":"string"},{"const":"toggle","type":"string"},{"const":"walk","type":"string"},{"const":"animate","type":"string"}]}},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"cooldownSeconds":{"type":"number"}},"required":["capabilities","enabled","cooldownSeconds"],"additionalProperties":false},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","label","assetId","manifestId","role","visible","pose","size","physics","interaction","span"],"additionalProperties":false}},"wallImages":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"assetId":{"type":"string"},"wallInstanceId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"surfaceOffset":{"type":"number"},"preserveAspectRatio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","label","assetId","wallInstanceId","uri","sha256","byteLength","mediaType","displayName","position","size","surfaceOffset","preserveAspectRatio","span"],"additionalProperties":false}},"interactiveLabels":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string"},"parentObjectId":{"type":"string"},"text":{"type":"string","maxLength":200},"icon":{"anyOf":[{"type":"null"},{"type":"string"}]},"anchor":{"anyOf":[{"const":"center","type":"string"},{"const":"front","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"},{"const":"above","type":"string"},{"const":"custom","type":"string"}]},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"maxDistance":{"anyOf":[{"type":"null"},{"type":"number"}]},"billboard":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"theme":{"anyOf":[{"const":"default","type":"string"},{"const":"cool","type":"string"},{"const":"warm","type":"string"}]},"action":{"anyOf":[{"type":"object","properties":{"kind":{"const":"none","type":"string"}},"required":["kind"],"additionalProperties":false},{"type":"object","properties":{"kind":{"anyOf":[{"const":"pdf","type":"string"},{"const":"html","type":"string"},{"const":"audio","type":"string"},{"const":"video","type":"string"}]},"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"type":"string"},"displayName":{"type":"string"},"title":{"anyOf":[{"type":"null"},{"type":"string"}]},"posterUri":{"anyOf":[{"type":"null"},{"type":"string"}]},"captionsUri":{"anyOf":[{"type":"null"},{"type":"string"}]},"autoplay":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"loop":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"muted":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"volume":{"type":"number"},"restartOnOpen":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"startSeconds":{"type":"number"},"endSeconds":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["kind","assetId","uri","sha256","byteLength","mediaType","displayName","title","posterUri","captionsUri","autoplay","loop","muted","volume","restartOnOpen","startSeconds","endSeconds"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"ridley","type":"string"},"target":{"type":"string"}},"required":["kind","target"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"external-link","type":"string"},"url":{"type":"string","maxLength":2048}},"required":["kind","url"],"additionalProperties":false}]},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","alias","parentObjectId","text","icon","anchor","offset","maxDistance","billboard","theme","action","span"],"additionalProperties":false}},"relations":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"inside","type":"string"},{"const":"against","type":"string"},{"const":"attached-to","type":"string"},{"const":"keep-clear","type":"string"},{"const":"reachable-from","type":"string"}]},"subject":{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"surface","type":"string"},{"const":"component","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false},"target":{"anyOf":[{"type":"null"},{"type":"object","properties":{"identity":{"type":"string"},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"featureId":{"anyOf":[{"type":"null"},{"type":"string"}]},"kind":{"anyOf":[{"const":"object","type":"string"},{"const":"surface","type":"string"},{"const":"component","type":"string"},{"const":"collider","type":"string"}]}},"required":["identity","manifestId","featureId","kind"],"additionalProperties":false}]},"temporal":{"anyOf":[{"const":"initial","type":"string"},{"const":"monitor","type":"string"},{"const":"maintain","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"weight":{"type":"number"},"parameters":{"type":"object","properties":{},"required":[],"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"array","items":{"type":"number"}}]}},"sourceCommand":{"type":"string"},"span":{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}},"required":["identity","kind","subject","target","temporal","strength","weight","parameters","sourceCommand","span"],"additionalProperties":false}},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}},"dependencies":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"manifestId":{"type":"string"},"analysisRevision":{"type":"string"},"contentHash":{"type":"string"}},"required":["assetId","manifestId","analysisRevision","contentHash"],"additionalProperties":false}},"versions":{"type":"object","properties":{"compiler":{"const":"quay.compiler/1","type":"string"},"layout":{"anyOf":[{"const":"quay.legacy-layout-adapter/1","type":"string"},{"const":"quay.semantic-layout/1","type":"string"},{"const":"quay.semantic-layout/2","type":"string"}]},"policy":{"anyOf":[{"const":"quay.static-policy/1","type":"string"},{"const":"quay.physical-policy/1","type":"string"}]}},"required":["compiler","layout","policy"],"additionalProperties":false}},"required":["version","sceneId","name","seed","room","profile","objects","relations","bindings","dependencies","versions"],"additionalProperties":false} |
| projection | yes | {"type":"object","properties":{"materials":{"type":"array","items":{"type":"object","properties":{"version":{"const":"quay.material/1","type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"category":{"anyOf":[{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"glass","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]},"shader":{"anyOf":[{"const":"unlit","type":"string"},{"const":"standard","type":"string"}]},"color":{"type":"string"},"roughness":{"type":"number"},"metalness":{"type":"number"},"emissive":{"type":"string"},"emissiveIntensity":{"type":"number"},"opacity":{"type":"number"},"alphaMode":{"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]},"alphaCutoff":{"type":"number"},"side":{"anyOf":[{"const":"front","type":"string"},{"const":"back","type":"string"},{"const":"double","type":"string"}]},"preset":{"anyOf":[{"type":"null"},{"type":"string"}]},"maps":{"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}}},"required":["version","identity","alias","label","description","category","shader","color","roughness","metalness","emissive","emissiveIntensity","opacity","alphaMode","alphaCutoff","side","preset","maps"],"additionalProperties":false}},"schema":{"const":"quay.scene","type":"string"},"schemaVersion":{"const":"1.0.0","type":"string"},"sceneId":{"type":"string"},"revision":{"type":"number"},"name":{"type":"string"},"createdAt":{"type":"string"},"updatedAt":{"type":"string"},"units":{"const":"metres","type":"string"},"coordinateSystem":{"const":"right-handed-y-up-negative-z-forward","type":"string"},"seed":{"type":"number"},"environment":{"type":"object","properties":{"room":{"type":"object","properties":{"width":{"type":"number"},"depth":{"type":"number"},"height":{"type":"number"},"floorY":{"type":"number"}},"required":["width","depth","height","floorY"],"additionalProperties":false},"background":{"type":"string"},"fog":{"anyOf":[{"type":"null"},{"type":"object","properties":{"color":{"type":"string"},"near":{"type":"number"},"far":{"type":"number"}},"required":["color","near","far"],"additionalProperties":false}]},"floor":{"type":"object","properties":{"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"color":{"type":"string"},"receiveShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"gridVisible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["visible","color","receiveShadow","gridVisible"],"additionalProperties":false},"lights":{"type":"array","items":{"type":"object","properties":{"type":{"anyOf":[{"const":"ambient","type":"string"},{"const":"hemisphere","type":"string"},{"const":"directional","type":"string"},{"const":"point","type":"string"}]},"color":{"type":"string"},"groundColor":{"type":"string"},"intensity":{"type":"number"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"castShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["type","color","intensity","position","castShadow"],"additionalProperties":false}}},"required":["room","background","fog","floor","lights"],"additionalProperties":false},"assets":{"type":"array","items":{"type":"object","properties":{"library":{"type":"object","properties":{"version":{"const":"quay.asset-library/1","type":"string"},"alias":{"type":"string"},"scope":{"anyOf":[{"const":"standard","type":"string"},{"const":"user","type":"string"},{"const":"project","type":"string"}]},"projectId":{"anyOf":[{"type":"null"},{"type":"string"}]},"origin":{"type":"object","properties":{"provider":{"type":"string"},"originalAssetId":{"type":"string"},"originalUrl":{"anyOf":[{"type":"null"},{"type":"string"}]},"author":{"anyOf":[{"type":"null"},{"type":"string"}]},"license":{"type":"string"},"attributionRequired":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"originalFilename":{"type":"string"},"downloadedAt":{"type":"string"},"contentHash":{"type":"string"},"sourceHash":{"type":"string"}},"required":["provider","originalAssetId","originalUrl","author","license","attributionRequired","originalFilename","downloadedAt","contentHash","sourceHash"],"additionalProperties":false},"semantics":{"type":"object","properties":{"taxonomy":{"const":"quay.asset-taxonomy/1","type":"string"},"category":{"type":"string"},"styles":{"type":"array","items":{"type":"string"}},"roomTypes":{"type":"array","items":{"type":"string"}},"affordances":{"type":"array","items":{"type":"string"}},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"confidence":{"type":"number"},"state":{"anyOf":[{"const":"accepted","type":"string"},{"const":"unknown","type":"string"},{"const":"suggested","type":"string"}]},"producer":{"type":"string"},"model":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["taxonomy","category","styles","roomTypes","affordances","capacity","confidence","state","producer","model"],"additionalProperties":false},"manifestId":{"anyOf":[{"type":"null"},{"type":"string"}]},"archetypeId":{"anyOf":[{"type":"null"},{"type":"string"}]},"cost":{"type":"object","properties":{"triangles":{"anyOf":[{"type":"null"},{"type":"number"}]},"materials":{"anyOf":[{"type":"null"},{"type":"number"}]},"textureBytes":{"anyOf":[{"type":"null"},{"type":"number"}]},"texturePixels":{"anyOf":[{"type":"null"},{"type":"number"}]}},"required":["triangles","materials","textureBytes","texturePixels"],"additionalProperties":false}},"required":["version","alias","scope","projectId","origin","semantics","manifestId","archetypeId","cost"],"additionalProperties":false},"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"const":"model/gltf-binary","type":"string"},"displayName":{"type":"string"},"description":{"type":"string"},"category":{"type":"string"},"canonicalSize":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"placement":{"anyOf":[{"const":"floor_only","type":"string"},{"const":"support_only","type":"string"},{"const":"floor_or_support","type":"string"}]},"supportsObjects":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"wallAlignment":{"anyOf":[{"type":"null"},{"const":"center","type":"string"},{"const":"left","type":"string"},{"const":"right","type":"string"}]},"availability":{"anyOf":[{"const":"global","type":"string"},{"const":"local","type":"string"}]},"roomId":{"anyOf":[{"type":"null"},{"type":"string"}]},"supportSurfaces":{"type":"array","items":{"type":"object","properties":{"surfaceId":{"type":"string"},"label":{"type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"normal":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"source":{"anyOf":[{"const":"bounds","type":"string"},{"const":"mesh","type":"string"},{"const":"manual","type":"string"}]}},"required":["surfaceId","label","center","normal","size","source"],"additionalProperties":false}}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName","description","category","canonicalSize","normalization","placement","supportsObjects","supportSurfaces"],"additionalProperties":false}},"imageAssets":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false}},"instances":{"type":"array","items":{"type":"object","properties":{"materialId":{"type":"string"},"normalization":{"type":"object","properties":{"rawBounds":{"type":"object","properties":{"min":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"max":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["min","max"],"additionalProperties":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"baseOffset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"forwardCorrection":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["rawBounds","scale","baseOffset","forwardCorrection"],"additionalProperties":false},"instanceId":{"type":"string"},"assetId":{"type":"string"},"name":{"type":"string"},"transform":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false},"scale":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["position","quaternion","scale"],"additionalProperties":false},"visible":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"castShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"receiveShadow":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"locked":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"placement":{"type":"object","properties":{"source":{"anyOf":[{"const":"manual","type":"string"},{"const":"solver","type":"string"},{"const":"imported","type":"string"}]},"supportingInstanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"supportSurfaceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"solverStatus":{"anyOf":[{"const":"unresolved","type":"string"},{"const":"fallback","type":"string"},{"const":"placed","type":"string"}]}},"required":["source","supportingInstanceId","supportSurfaceId","solverStatus"],"additionalProperties":false},"tags":{"type":"array","items":{"type":"string"}},"wallImage":{"type":"object","properties":{"wallInstanceId":{"type":"string"},"assetId":{"type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"surfaceOffset":{"type":"number"},"preserveAspectRatio":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"surface":{"anyOf":[{"const":"floor","type":"string"},{"const":"wall","type":"string"}]}},"required":["wallInstanceId","assetId","position","size","surfaceOffset","preserveAspectRatio"],"additionalProperties":false}},"required":["instanceId","assetId","name","transform","visible","castShadow","receiveShadow","locked","placement","tags"],"additionalProperties":false}},"relations":{"type":"array","items":{"type":"object","properties":{"relationId":{"type":"string"},"type":{"anyOf":[{"const":"ON","type":"string"},{"const":"NEAR","type":"string"},{"const":"LEFT_OF","type":"string"},{"const":"RIGHT_OF","type":"string"},{"const":"IN_FRONT_OF","type":"string"},{"const":"BEHIND","type":"string"},{"const":"FACING","type":"string"},{"const":"CENTERED_ON","type":"string"},{"const":"ALIGNED_WITH","type":"string"},{"const":"AGAINST_WALL","type":"string"},{"const":"KEEP_CLEAR_OF","type":"string"}]},"subjectInstanceId":{"type":"string"},"targetInstanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"status":{"anyOf":[{"const":"satisfied","type":"string"},{"const":"unresolved","type":"string"},{"const":"degraded","type":"string"}]},"message":{"type":"string"}},"required":["relationId","type","subjectInstanceId","targetInstanceId","strength","status","message"],"additionalProperties":false}},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"},{"const":"info","type":"string"}]},"message":{"type":"string"},"instanceIds":{"type":"array","items":{"type":"string"}},"relationId":{"anyOf":[{"type":"null"},{"type":"string"}]},"measurements":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["code","severity","message","instanceIds","relationId"],"additionalProperties":false}},"unplacedInstanceIds":{"type":"array","items":{"type":"string"}},"camera":{"type":"object","properties":{"type":{"const":"perspective","type":"string"},"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"target":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"up":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"fovDegrees":{"type":"number"},"near":{"type":"number"},"far":{"type":"number"}},"required":["type","position","target","up","fovDegrees","near","far"],"additionalProperties":false},"provenance":{"type":"object","properties":{"createdBy":{"anyOf":[{"const":"quay","type":"string"},{"const":"import","type":"string"}]},"planner":{"anyOf":[{"type":"null"},{"type":"object","properties":{"provider":{"anyOf":[{"const":"openai","type":"string"},{"const":"fake","type":"string"}]},"model":{"type":"string"},"promptTemplateVersion":{"type":"string"},"requestId":{"type":"string"}},"required":["provider","model","promptTemplateVersion","requestId"],"additionalProperties":false}]},"layoutEngineVersion":{"type":"string"},"threeVersion":{"type":"string"},"sourcePrompt":{"type":"string"}},"required":["createdBy","planner","layoutEngineVersion","threeVersion","sourcePrompt"],"additionalProperties":false}},"required":["schema","schemaVersion","sceneId","revision","name","createdAt","updatedAt","units","coordinateSystem","seed","environment","assets","instances","relations","diagnostics","unplacedInstanceIds","camera","provenance"],"additionalProperties":false} |
| evaluations | yes | {"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"status":{"anyOf":[{"const":"unsupported","type":"string"},{"const":"satisfied","type":"string"},{"const":"failed","type":"string"},{"const":"unknown","type":"string"}]},"message":{"type":"string"},"residuals":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"number"}}},"required":["identity","status","message","residuals"],"additionalProperties":false}} |
| diagnostics | yes | {"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"},{"const":"info","type":"string"}]},"message":{"type":"string"},"span":{"anyOf":[{"type":"null"},{"type":"object","properties":{"start":{"type":"number"},"end":{"type":"number"},"line":{"type":"number"},"column":{"type":"number"}},"required":["start","end","line","column"],"additionalProperties":false}]},"identity":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["code","severity","message","span","identity"],"additionalProperties":false}} |
| provenance | yes | {"type":"object","properties":{"sourceHash":{"type":"string"},"versions":{"type":"object","properties":{"compiler":{"const":"quay.compiler/1","type":"string"},"layout":{"anyOf":[{"const":"quay.legacy-layout-adapter/1","type":"string"},{"const":"quay.semantic-layout/1","type":"string"},{"const":"quay.semantic-layout/2","type":"string"}]},"policy":{"anyOf":[{"const":"quay.static-policy/1","type":"string"},{"const":"quay.physical-policy/1","type":"string"}]}},"required":["compiler","layout","policy"],"additionalProperties":false},"dependencies":{"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string"},"manifestId":{"type":"string"},"analysisRevision":{"type":"string"},"contentHash":{"type":"string"}},"required":["assetId","manifestId","analysisRevision","contentHash"],"additionalProperties":false}}},"required":["sourceHash","versions","dependencies"],"additionalProperties":false} |
| readiness | yes | {"const":"static-preview","type":"string"} |
| physics | no | {"type":"object","properties":{"version":{"const":"quay.physics-preparation/1","type":"string"},"ready":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"gravity":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"stepSeconds":{"type":"number"},"maxCatchUpSteps":{"type":"number"},"bodies":{"type":"array","items":{"type":"object","properties":{"instanceId":{"type":"string"},"motion":{"anyOf":[{"const":"static","type":"string"},{"const":"dynamic","type":"string"},{"const":"kinematic","type":"string"}]},"collision":{"anyOf":[{"const":"none","type":"string"},{"const":"solid","type":"string"},{"const":"sensor","type":"string"}]},"controller":{"anyOf":[{"const":"none","type":"string"},{"const":"character","type":"string"}]},"role":{"type":"string"},"canGrab":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"massKg":{"type":"number"},"friction":{"type":"number"},"restitution":{"type":"number"},"colliders":{"type":"array","items":{"type":"object","properties":{"shape":{"anyOf":[{"type":"object","properties":{"kind":{"const":"box","type":"string"},"center":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"halfExtents":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false}},"required":["kind","center","halfExtents"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"convex","type":"string"},"vertices":{"type":"array","items":{"type":"number"}}},"required":["kind","vertices"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"triangle-mesh","type":"string"},"vertices":{"type":"array","items":{"type":"number"}},"indices":{"type":"array","items":{"type":"number"}}},"required":["kind","vertices","indices"],"additionalProperties":false}]},"volumeM3":{"type":"number"},"evidence":{"type":"string"},"approximate":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]}},"required":["shape","volumeM3","evidence","approximate"],"additionalProperties":false}}},"required":["instanceId","motion","collision","controller","role","canGrab","massKg","friction","restitution","colliders"],"additionalProperties":false}},"diagnostics":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"severity":{"anyOf":[{"const":"error","type":"string"},{"const":"warning","type":"string"}]},"instanceId":{"anyOf":[{"type":"null"},{"type":"string"}]},"message":{"type":"string"}},"required":["code","severity","instanceId","message"],"additionalProperties":false}}},"required":["version","ready","gravity","stepSeconds","maxCatchUpSteps","bodies","diagnostics"],"additionalProperties":false} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"wright": {
"type": "object",
"properties": {
"version": {
"const": "wright.resolved/1",
"type": "string"
},
"topology": {
"type": "object",
"properties": {
"version": {
"const": "wright.world/1",
"type": "string"
},
"identity": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"furnishing": {
"type": "object",
"properties": {
"roomProgram": {
"type": "object",
"properties": {
"repair": {
"type": "object",
"properties": {
"stage": {
"const": "semantic",
"type": "string"
},
"attempts": {
"type": "number"
},
"strategy": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "bounded-semantic-revision",
"type": "string"
}
]
},
"initialFailures": {
"type": "array",
"items": {
"type": "string"
}
},
"finalState": {
"const": "accepted",
"type": "string"
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"stage",
"attempts",
"strategy",
"initialFailures",
"finalState",
"relaxedConstraints"
],
"additionalProperties": false
},
"enrichment": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"model": {
"type": "string"
},
"version": {
"type": "string"
}
},
"required": [
"provider",
"model",
"version"
],
"additionalProperties": false
},
"intent": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"archetypeSnapshot": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"intent",
"archetypeSnapshot",
"bindings"
],
"additionalProperties": false
},
"version": {
"const": "qway.furnishing/1",
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"category": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"relation": {
"anyOf": [
{
"type": "null"
},
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "near-window",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"instances": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"identity",
"category",
"quantity",
"capacity",
"assetAlias",
"placement",
"relation",
"target",
"instances"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"purpose",
"capacity",
"style",
"needs"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"label": {
"type": "string",
"maxLength": 200
},
"level": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"parent": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"backdrop": {
"anyOf": [
{
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"north": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"south": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"east": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"west": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}
]
}
},
"required": [
"identity",
"alias",
"label",
"level",
"parent",
"size",
"frame"
],
"additionalProperties": false
}
},
"levels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"identity",
"label"
],
"additionalProperties": false
}
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"from",
"to",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"room": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"room",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"membership": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"version",
"identity",
"rooms",
"levels",
"portals",
"membership"
],
"additionalProperties": false
},
"worldFrames": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
}
},
"localPoses": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"position",
"quaternion",
"scale"
],
"additionalProperties": false
}
},
"programVerification": {
"type": "object",
"properties": {
"policy": {
"anyOf": [
{
"const": "qway.room-program-geometry/1",
"type": "string"
},
{
"const": "qway.room-program-geometry/2",
"type": "string"
},
{
"const": "qway.room-program-geometry/3",
"type": "string"
}
]
},
"actor": {
"type": "object",
"properties": {
"radiusM": {
"type": "number"
},
"heightM": {
"type": "number"
}
},
"required": [
"radiusM",
"heightM"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"layout": {
"type": "object",
"properties": {
"policy": {
"const": "qway.room-program-layout/1",
"type": "string"
},
"strategy": {
"const": "bounded-geometric-search",
"type": "string"
},
"candidateBudget": {
"type": "number"
},
"candidatesTested": {
"type": "number"
},
"passesPerformed": {
"type": "number"
},
"initialRules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
}
},
"required": [
"reference",
"status"
],
"additionalProperties": false
}
},
"changedInstances": {
"type": "array",
"items": {
"type": "string"
}
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
},
"termination": {
"anyOf": [
{
"const": "stationary",
"type": "string"
},
{
"const": "budget-exhausted",
"type": "string"
},
{
"const": "pass-limit",
"type": "string"
},
{
"const": "zero-score",
"type": "string"
}
]
}
},
"required": [
"policy",
"strategy",
"candidateBudget",
"candidatesTested",
"passesPerformed",
"initialRules",
"changedInstances",
"relaxedConstraints",
"termination"
],
"additionalProperties": false
},
"inventory": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"requestedUnits": {
"type": "number"
},
"resolvedUnits": {
"type": "number"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
}
},
"required": [
"reference",
"priority",
"requestedUnits",
"resolvedUnits",
"status"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
},
"pairs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"subject": {
"type": "string"
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
},
"residuals": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"subject",
"target",
"status",
"message",
"residuals"
],
"additionalProperties": false
}
}
},
"required": [
"reference",
"kind",
"priority",
"strength",
"status",
"message",
"pairs"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"requested": {
"type": "number"
},
"verified": {
"type": "number"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string",
"maxLength": 2000
}
},
"required": [
"reference",
"kind",
"priority",
"requested",
"verified",
"status",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"archetypeRevision",
"inventory",
"rules",
"architecture"
],
"additionalProperties": false
}
}
},
"required": [
"policy",
"actor",
"rooms"
],
"additionalProperties": false
},
"verification": {
"type": "object",
"properties": {
"policy": {
"const": "wright.portal-geometry/1",
"type": "string"
},
"actor": {
"type": "object",
"properties": {
"radius": {
"type": "number"
},
"height": {
"type": "number"
}
},
"required": [
"radius",
"height"
],
"additionalProperties": false
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"requestedAperture": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
},
"actorPassage": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
}
},
"required": [
"identity",
"requestedAperture",
"actorPassage"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"requestedAperture": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
},
"actorPassage": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "clear",
"type": "string"
},
{
"const": "collision",
"type": "string"
}
]
}
},
"required": [
"identity",
"requestedAperture",
"actorPassage"
],
"additionalProperties": false
}
},
"circulation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "ready",
"type": "string"
},
{
"const": "unresolved",
"type": "string"
},
{
"const": "not-requested",
"type": "string"
}
]
},
"entryCount": {
"type": "number"
},
"reachableSamples": {
"type": "number"
},
"routeOutcomes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"room",
"status",
"entryCount",
"reachableSamples",
"routeOutcomes"
],
"additionalProperties": false
}
},
"navigationBoxes": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
}
}
}
},
"required": [
"policy",
"actor",
"portals",
"circulation",
"navigationBoxes"
],
"additionalProperties": false
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"severity",
"identity",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"topology",
"worldFrames",
"localPoses",
"diagnostics"
],
"additionalProperties": false
},
"schema": {
"const": "quay.scene",
"type": "string"
},
"schemaVersion": {
"const": "2.0.0-draft.1",
"type": "string"
},
"semantic": {
"type": "object",
"properties": {
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "glass",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "standard",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "front",
"type": "string"
},
{
"const": "back",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}
},
"assetPolicy": {
"const": "project-user-standard",
"type": "string"
},
"composition": {
"const": "quay.room-composition/1",
"type": "string"
},
"version": {
"const": "quay.semantic/1",
"type": "string"
},
"sceneId": {
"type": "string"
},
"name": {
"type": "string"
},
"seed": {
"type": "number"
},
"room": {
"type": "object",
"properties": {
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"identity",
"size"
],
"additionalProperties": false
},
"profile": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "physical",
"type": "string"
}
]
},
"objects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"region": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"actor": {
"type": "object",
"properties": {
"policy": {
"const": "quay.actor-box/1",
"type": "string"
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"eye": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"manipulationOrigin": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"reachM": {
"type": "number"
}
},
"required": [
"policy",
"size",
"eye",
"manipulationOrigin",
"reachM"
],
"additionalProperties": false
},
"animation": {
"type": "object",
"properties": {
"policy": {
"const": "quay.animation/1",
"type": "string"
},
"clipIndex": {
"type": "number"
},
"clipName": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"mode": {
"anyOf": [
{
"const": "in-place",
"type": "string"
},
{
"const": "articulated",
"type": "string"
}
]
},
"speed": {
"type": "number"
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"offsetSeconds": {
"type": "number"
}
},
"required": [
"policy",
"clipIndex",
"clipName",
"mode",
"speed",
"loop",
"offsetSeconds"
],
"additionalProperties": false
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"orientation": {
"type": "object",
"properties": {
"policy": {
"anyOf": [
{
"const": "quay.orientation/1",
"type": "string"
},
{
"const": "quay.orientation/2",
"type": "string"
}
]
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"up": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"front": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"policy",
"quaternion",
"up",
"front",
"confidence",
"evidence"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"notes": {
"type": "string",
"maxLength": 2000
},
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"role": {
"type": "string"
},
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"pose": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [],
"additionalProperties": false
},
"size": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
]
},
"sizing": {
"type": "object",
"properties": {
"measurement": {
"type": "object",
"properties": {
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
}
]
},
"targetM": {
"type": "number"
},
"sourceReferenceM": {
"type": "number"
},
"method": {
"anyOf": [
{
"const": "measured-bounds",
"type": "string"
},
{
"const": "rig-shoulder-envelope-approximation/1",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"reference",
"targetM",
"sourceReferenceM",
"method",
"confidence",
"evidence"
],
"additionalProperties": false
},
"policy": {
"const": "quay.sizing/1",
"type": "string"
},
"measuredDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"orientedDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"chosenDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"finalSceneDimensions": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"uniformScale": {
"type": "number"
},
"profile": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"schema": {
"const": "quay.archetype",
"type": "string"
},
"schemaVersion": {
"const": "1.0.0",
"type": "string"
},
"profileId": {
"type": "string"
},
"revision": {
"type": "number"
},
"parentId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"semanticClass": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "suggested",
"type": "string"
},
{
"const": "rejected",
"type": "string"
},
{
"const": "user-corrected",
"type": "string"
}
]
},
"dimensions": {
"type": "object",
"properties": {
"width": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"height": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
},
"depth": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"minM": {
"type": "number"
},
"typicalM": {
"type": "number"
},
"maxM": {
"type": "number"
},
"reference": {
"anyOf": [
{
"const": "whole-bounds",
"type": "string"
},
{
"const": "withers",
"type": "string"
},
{
"const": "seat",
"type": "string"
},
{
"const": "worktop",
"type": "string"
},
{
"const": "opening",
"type": "string"
}
]
}
},
"required": [
"minM",
"typicalM",
"maxM",
"reference"
],
"additionalProperties": false
}
]
}
},
"required": [
"width",
"height",
"depth"
],
"additionalProperties": false
},
"preferredDimension": {
"anyOf": [
{
"type": "null"
},
{
"const": "width",
"type": "string"
},
{
"const": "height",
"type": "string"
},
{
"const": "depth",
"type": "string"
}
]
},
"grounding": {
"anyOf": [
{
"const": "architectural",
"type": "string"
},
{
"const": "unknown",
"type": "string"
},
{
"const": "floor",
"type": "string"
},
{
"const": "support",
"type": "string"
}
]
},
"orientation": {
"type": "object",
"properties": {
"up": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Y",
"type": "string"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Y",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
},
"forward": {
"anyOf": [
{
"type": "null"
},
{
"const": "+Z",
"type": "string"
},
{
"const": "+X",
"type": "string"
},
{
"const": "-Z",
"type": "string"
},
{
"const": "-X",
"type": "string"
}
]
}
},
"required": [
"up",
"forward"
],
"additionalProperties": false
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"clearances": {
"type": "object",
"properties": {
"usableSideM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"circulationM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"usableSideM",
"circulationM"
],
"additionalProperties": false
},
"relationHints": {
"type": "array",
"items": {
"type": "string"
}
},
"provenance": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "curated",
"type": "string"
},
{
"const": "ai_inferred",
"type": "string"
},
{
"const": "user_confirmed",
"type": "string"
},
{
"const": "project_specific",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"inferenceVersion": {
"type": "string"
},
"requestedClass": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"createdAt": {
"type": "string"
},
"evidence": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"source",
"producer",
"model",
"inferenceVersion",
"requestedClass",
"confidence",
"createdAt",
"evidence"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"profileId",
"revision",
"parentId",
"semanticClass",
"status",
"dimensions",
"preferredDimension",
"grounding",
"orientation",
"affordances",
"clearances",
"relationHints",
"provenance"
],
"additionalProperties": false
}
]
},
"source": {
"anyOf": [
{
"const": "archetype",
"type": "string"
},
{
"const": "instance",
"type": "string"
},
{
"const": "conservative-fallback",
"type": "string"
}
]
},
"plausibility": {
"anyOf": [
{
"const": "unknown",
"type": "string"
},
{
"const": "plausible",
"type": "string"
},
{
"const": "implausible",
"type": "string"
}
]
},
"diagnostics": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"policy",
"measuredDimensions",
"orientedDimensions",
"chosenDimensions",
"uniformScale",
"profile",
"source",
"plausibility",
"diagnostics"
],
"additionalProperties": false
},
"architecture": {
"type": "object",
"properties": {
"boundary": {
"anyOf": [
{
"const": "front",
"type": "string"
},
{
"const": "back",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
}
]
},
"section": {
"anyOf": [
{
"const": "full",
"type": "string"
},
{
"const": "opening-left",
"type": "string"
},
{
"const": "opening-right",
"type": "string"
},
{
"const": "opening-header",
"type": "string"
},
{
"const": "opening-sill",
"type": "string"
}
]
},
"opening": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"boundary",
"section",
"opening"
],
"additionalProperties": false
},
"physics": {
"type": "object",
"properties": {
"motion": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "dynamic",
"type": "string"
},
{
"const": "kinematic",
"type": "string"
}
]
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
},
{
"const": "sensor",
"type": "string"
}
]
},
"controller": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "character",
"type": "string"
}
]
},
"collider": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
}
]
},
"shape": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "box",
"type": "string"
},
{
"const": "convex-hull",
"type": "string"
},
{
"const": "decomposition",
"type": "string"
},
{
"const": "triangle-mesh",
"type": "string"
}
]
},
"massKg": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"friction": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"restitution": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"provenance": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"const": "instance",
"type": "string"
},
{
"const": "asset-override",
"type": "string"
},
{
"const": "profile",
"type": "string"
},
{
"const": "inference",
"type": "string"
},
{
"const": "fallback",
"type": "string"
}
]
}
}
},
"required": [
"motion",
"collision",
"controller",
"collider",
"massKg",
"friction",
"restitution",
"provenance"
],
"additionalProperties": false
},
"interaction": {
"type": "object",
"properties": {
"capabilities": {
"type": "array",
"items": {
"anyOf": [
{
"const": "grab",
"type": "string"
},
{
"const": "open",
"type": "string"
},
{
"const": "close",
"type": "string"
},
{
"const": "toggle",
"type": "string"
},
{
"const": "walk",
"type": "string"
},
{
"const": "animate",
"type": "string"
}
]
}
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"cooldownSeconds": {
"type": "number"
}
},
"required": [
"capabilities",
"enabled",
"cooldownSeconds"
],
"additionalProperties": false
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"label",
"assetId",
"manifestId",
"role",
"visible",
"pose",
"size",
"physics",
"interaction",
"span"
],
"additionalProperties": false
}
},
"wallImages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"assetId": {
"type": "string"
},
"wallInstanceId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"surfaceOffset": {
"type": "number"
},
"preserveAspectRatio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"label",
"assetId",
"wallInstanceId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio",
"span"
],
"additionalProperties": false
}
},
"interactiveLabels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"parentObjectId": {
"type": "string"
},
"text": {
"type": "string",
"maxLength": 200
},
"icon": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"anchor": {
"anyOf": [
{
"const": "center",
"type": "string"
},
{
"const": "front",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
},
{
"const": "above",
"type": "string"
},
{
"const": "custom",
"type": "string"
}
]
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"maxDistance": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"billboard": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"theme": {
"anyOf": [
{
"const": "default",
"type": "string"
},
{
"const": "cool",
"type": "string"
},
{
"const": "warm",
"type": "string"
}
]
},
"action": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "none",
"type": "string"
}
},
"required": [
"kind"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"const": "pdf",
"type": "string"
},
{
"const": "html",
"type": "string"
},
{
"const": "audio",
"type": "string"
},
{
"const": "video",
"type": "string"
}
]
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"type": "string"
},
"displayName": {
"type": "string"
},
"title": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"posterUri": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"captionsUri": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"autoplay": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"loop": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"muted": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"volume": {
"type": "number"
},
"restartOnOpen": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"startSeconds": {
"type": "number"
},
"endSeconds": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"kind",
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"title",
"posterUri",
"captionsUri",
"autoplay",
"loop",
"muted",
"volume",
"restartOnOpen",
"startSeconds",
"endSeconds"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "ridley",
"type": "string"
},
"target": {
"type": "string"
}
},
"required": [
"kind",
"target"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "external-link",
"type": "string"
},
"url": {
"type": "string",
"maxLength": 2048
}
},
"required": [
"kind",
"url"
],
"additionalProperties": false
}
]
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"alias",
"parentObjectId",
"text",
"icon",
"anchor",
"offset",
"maxDistance",
"billboard",
"theme",
"action",
"span"
],
"additionalProperties": false
}
},
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "inside",
"type": "string"
},
{
"const": "against",
"type": "string"
},
{
"const": "attached-to",
"type": "string"
},
{
"const": "keep-clear",
"type": "string"
},
{
"const": "reachable-from",
"type": "string"
}
]
},
"subject": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"featureId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"kind": {
"anyOf": [
{
"const": "object",
"type": "string"
},
{
"const": "surface",
"type": "string"
},
{
"const": "component",
"type": "string"
},
{
"const": "collider",
"type": "string"
}
]
}
},
"required": [
"identity",
"manifestId",
"featureId",
"kind"
],
"additionalProperties": false
}
]
},
"temporal": {
"anyOf": [
{
"const": "initial",
"type": "string"
},
{
"const": "monitor",
"type": "string"
},
{
"const": "maintain",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"weight": {
"type": "number"
},
"parameters": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "array",
"items": {
"type": "number"
}
}
]
}
},
"sourceCommand": {
"type": "string"
},
"span": {
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
},
"required": [
"identity",
"kind",
"subject",
"target",
"temporal",
"strength",
"weight",
"parameters",
"sourceCommand",
"span"
],
"additionalProperties": false
}
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"analysisRevision": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"assetId",
"manifestId",
"analysisRevision",
"contentHash"
],
"additionalProperties": false
}
},
"versions": {
"type": "object",
"properties": {
"compiler": {
"const": "quay.compiler/1",
"type": "string"
},
"layout": {
"anyOf": [
{
"const": "quay.legacy-layout-adapter/1",
"type": "string"
},
{
"const": "quay.semantic-layout/1",
"type": "string"
},
{
"const": "quay.semantic-layout/2",
"type": "string"
}
]
},
"policy": {
"anyOf": [
{
"const": "quay.static-policy/1",
"type": "string"
},
{
"const": "quay.physical-policy/1",
"type": "string"
}
]
}
},
"required": [
"compiler",
"layout",
"policy"
],
"additionalProperties": false
}
},
"required": [
"version",
"sceneId",
"name",
"seed",
"room",
"profile",
"objects",
"relations",
"bindings",
"dependencies",
"versions"
],
"additionalProperties": false
},
"projection": {
"type": "object",
"properties": {
"materials": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "glass",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "standard",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "front",
"type": "string"
},
{
"const": "back",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}
},
"schema": {
"const": "quay.scene",
"type": "string"
},
"schemaVersion": {
"const": "1.0.0",
"type": "string"
},
"sceneId": {
"type": "string"
},
"revision": {
"type": "number"
},
"name": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"units": {
"const": "metres",
"type": "string"
},
"coordinateSystem": {
"const": "right-handed-y-up-negative-z-forward",
"type": "string"
},
"seed": {
"type": "number"
},
"environment": {
"type": "object",
"properties": {
"room": {
"type": "object",
"properties": {
"width": {
"type": "number"
},
"depth": {
"type": "number"
},
"height": {
"type": "number"
},
"floorY": {
"type": "number"
}
},
"required": [
"width",
"depth",
"height",
"floorY"
],
"additionalProperties": false
},
"background": {
"type": "string"
},
"fog": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"color": {
"type": "string"
},
"near": {
"type": "number"
},
"far": {
"type": "number"
}
},
"required": [
"color",
"near",
"far"
],
"additionalProperties": false
}
]
},
"floor": {
"type": "object",
"properties": {
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"color": {
"type": "string"
},
"receiveShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"gridVisible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"visible",
"color",
"receiveShadow",
"gridVisible"
],
"additionalProperties": false
},
"lights": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"anyOf": [
{
"const": "ambient",
"type": "string"
},
{
"const": "hemisphere",
"type": "string"
},
{
"const": "directional",
"type": "string"
},
{
"const": "point",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"groundColor": {
"type": "string"
},
"intensity": {
"type": "number"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"castShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"type",
"color",
"intensity",
"position",
"castShadow"
],
"additionalProperties": false
}
}
},
"required": [
"room",
"background",
"fog",
"floor",
"lights"
],
"additionalProperties": false
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"library": {
"type": "object",
"properties": {
"version": {
"const": "quay.asset-library/1",
"type": "string"
},
"alias": {
"type": "string"
},
"scope": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "user",
"type": "string"
},
{
"const": "project",
"type": "string"
}
]
},
"projectId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"origin": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"originalAssetId": {
"type": "string"
},
"originalUrl": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"author": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"license": {
"type": "string"
},
"attributionRequired": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"originalFilename": {
"type": "string"
},
"downloadedAt": {
"type": "string"
},
"contentHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
}
},
"required": [
"provider",
"originalAssetId",
"originalUrl",
"author",
"license",
"attributionRequired",
"originalFilename",
"downloadedAt",
"contentHash",
"sourceHash"
],
"additionalProperties": false
},
"semantics": {
"type": "object",
"properties": {
"taxonomy": {
"const": "quay.asset-taxonomy/1",
"type": "string"
},
"category": {
"type": "string"
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"roomTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"confidence": {
"type": "number"
},
"state": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "unknown",
"type": "string"
},
{
"const": "suggested",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"taxonomy",
"category",
"styles",
"roomTypes",
"affordances",
"capacity",
"confidence",
"state",
"producer",
"model"
],
"additionalProperties": false
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"archetypeId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"cost": {
"type": "object",
"properties": {
"triangles": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"materials": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"textureBytes": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"texturePixels": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"triangles",
"materials",
"textureBytes",
"texturePixels"
],
"additionalProperties": false
}
},
"required": [
"version",
"alias",
"scope",
"projectId",
"origin",
"semantics",
"manifestId",
"archetypeId",
"cost"
],
"additionalProperties": false
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"const": "model/gltf-binary",
"type": "string"
},
"displayName": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"type": "string"
},
"canonicalSize": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"placement": {
"anyOf": [
{
"const": "floor_only",
"type": "string"
},
{
"const": "support_only",
"type": "string"
},
{
"const": "floor_or_support",
"type": "string"
}
]
},
"supportsObjects": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"wallAlignment": {
"anyOf": [
{
"type": "null"
},
{
"const": "center",
"type": "string"
},
{
"const": "left",
"type": "string"
},
{
"const": "right",
"type": "string"
}
]
},
"availability": {
"anyOf": [
{
"const": "global",
"type": "string"
},
{
"const": "local",
"type": "string"
}
]
},
"roomId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"supportSurfaces": {
"type": "array",
"items": {
"type": "object",
"properties": {
"surfaceId": {
"type": "string"
},
"label": {
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"normal": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"source": {
"anyOf": [
{
"const": "bounds",
"type": "string"
},
{
"const": "mesh",
"type": "string"
},
{
"const": "manual",
"type": "string"
}
]
}
},
"required": [
"surfaceId",
"label",
"center",
"normal",
"size",
"source"
],
"additionalProperties": false
}
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"description",
"category",
"canonicalSize",
"normalization",
"placement",
"supportsObjects",
"supportSurfaces"
],
"additionalProperties": false
}
},
"imageAssets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
}
},
"instances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"materialId": {
"type": "string"
},
"normalization": {
"type": "object",
"properties": {
"rawBounds": {
"type": "object",
"properties": {
"min": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"max": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"min",
"max"
],
"additionalProperties": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"baseOffset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"forwardCorrection": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"additionalProperties": false
},
"instanceId": {
"type": "string"
},
"assetId": {
"type": "string"
},
"name": {
"type": "string"
},
"transform": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
},
"scale": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"position",
"quaternion",
"scale"
],
"additionalProperties": false
},
"visible": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"castShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"receiveShadow": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"locked": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"placement": {
"type": "object",
"properties": {
"source": {
"anyOf": [
{
"const": "manual",
"type": "string"
},
{
"const": "solver",
"type": "string"
},
{
"const": "imported",
"type": "string"
}
]
},
"supportingInstanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"supportSurfaceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"solverStatus": {
"anyOf": [
{
"const": "unresolved",
"type": "string"
},
{
"const": "fallback",
"type": "string"
},
{
"const": "placed",
"type": "string"
}
]
}
},
"required": [
"source",
"supportingInstanceId",
"supportSurfaceId",
"solverStatus"
],
"additionalProperties": false
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"wallImage": {
"type": "object",
"properties": {
"wallInstanceId": {
"type": "string"
},
"assetId": {
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"surfaceOffset": {
"type": "number"
},
"preserveAspectRatio": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"surface": {
"anyOf": [
{
"const": "floor",
"type": "string"
},
{
"const": "wall",
"type": "string"
}
]
}
},
"required": [
"wallInstanceId",
"assetId",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio"
],
"additionalProperties": false
}
},
"required": [
"instanceId",
"assetId",
"name",
"transform",
"visible",
"castShadow",
"receiveShadow",
"locked",
"placement",
"tags"
],
"additionalProperties": false
}
},
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"relationId": {
"type": "string"
},
"type": {
"anyOf": [
{
"const": "ON",
"type": "string"
},
{
"const": "NEAR",
"type": "string"
},
{
"const": "LEFT_OF",
"type": "string"
},
{
"const": "RIGHT_OF",
"type": "string"
},
{
"const": "IN_FRONT_OF",
"type": "string"
},
{
"const": "BEHIND",
"type": "string"
},
{
"const": "FACING",
"type": "string"
},
{
"const": "CENTERED_ON",
"type": "string"
},
{
"const": "ALIGNED_WITH",
"type": "string"
},
{
"const": "AGAINST_WALL",
"type": "string"
},
{
"const": "KEEP_CLEAR_OF",
"type": "string"
}
]
},
"subjectInstanceId": {
"type": "string"
},
"targetInstanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"status": {
"anyOf": [
{
"const": "satisfied",
"type": "string"
},
{
"const": "unresolved",
"type": "string"
},
{
"const": "degraded",
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"relationId",
"type",
"subjectInstanceId",
"targetInstanceId",
"strength",
"status",
"message"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
},
{
"const": "info",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"instanceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"relationId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"measurements": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"code",
"severity",
"message",
"instanceIds",
"relationId"
],
"additionalProperties": false
}
},
"unplacedInstanceIds": {
"type": "array",
"items": {
"type": "string"
}
},
"camera": {
"type": "object",
"properties": {
"type": {
"const": "perspective",
"type": "string"
},
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"target": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"up": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"fovDegrees": {
"type": "number"
},
"near": {
"type": "number"
},
"far": {
"type": "number"
}
},
"required": [
"type",
"position",
"target",
"up",
"fovDegrees",
"near",
"far"
],
"additionalProperties": false
},
"provenance": {
"type": "object",
"properties": {
"createdBy": {
"anyOf": [
{
"const": "quay",
"type": "string"
},
{
"const": "import",
"type": "string"
}
]
},
"planner": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"provider": {
"anyOf": [
{
"const": "openai",
"type": "string"
},
{
"const": "fake",
"type": "string"
}
]
},
"model": {
"type": "string"
},
"promptTemplateVersion": {
"type": "string"
},
"requestId": {
"type": "string"
}
},
"required": [
"provider",
"model",
"promptTemplateVersion",
"requestId"
],
"additionalProperties": false
}
]
},
"layoutEngineVersion": {
"type": "string"
},
"threeVersion": {
"type": "string"
},
"sourcePrompt": {
"type": "string"
}
},
"required": [
"createdBy",
"planner",
"layoutEngineVersion",
"threeVersion",
"sourcePrompt"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"sceneId",
"revision",
"name",
"createdAt",
"updatedAt",
"units",
"coordinateSystem",
"seed",
"environment",
"assets",
"instances",
"relations",
"diagnostics",
"unplacedInstanceIds",
"camera",
"provenance"
],
"additionalProperties": false
},
"evaluations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"status": {
"anyOf": [
{
"const": "unsupported",
"type": "string"
},
{
"const": "satisfied",
"type": "string"
},
{
"const": "failed",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"residuals": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "number"
}
}
},
"required": [
"identity",
"status",
"message",
"residuals"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
},
{
"const": "info",
"type": "string"
}
]
},
"message": {
"type": "string"
},
"span": {
"anyOf": [
{
"type": "null"
},
{
"type": "object",
"properties": {
"start": {
"type": "number"
},
"end": {
"type": "number"
},
"line": {
"type": "number"
},
"column": {
"type": "number"
}
},
"required": [
"start",
"end",
"line",
"column"
],
"additionalProperties": false
}
]
},
"identity": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"code",
"severity",
"message",
"span",
"identity"
],
"additionalProperties": false
}
},
"provenance": {
"type": "object",
"properties": {
"sourceHash": {
"type": "string"
},
"versions": {
"type": "object",
"properties": {
"compiler": {
"const": "quay.compiler/1",
"type": "string"
},
"layout": {
"anyOf": [
{
"const": "quay.legacy-layout-adapter/1",
"type": "string"
},
{
"const": "quay.semantic-layout/1",
"type": "string"
},
{
"const": "quay.semantic-layout/2",
"type": "string"
}
]
},
"policy": {
"anyOf": [
{
"const": "quay.static-policy/1",
"type": "string"
},
{
"const": "quay.physical-policy/1",
"type": "string"
}
]
}
},
"required": [
"compiler",
"layout",
"policy"
],
"additionalProperties": false
},
"dependencies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"manifestId": {
"type": "string"
},
"analysisRevision": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"assetId",
"manifestId",
"analysisRevision",
"contentHash"
],
"additionalProperties": false
}
}
},
"required": [
"sourceHash",
"versions",
"dependencies"
],
"additionalProperties": false
},
"readiness": {
"const": "static-preview",
"type": "string"
},
"physics": {
"type": "object",
"properties": {
"version": {
"const": "quay.physics-preparation/1",
"type": "string"
},
"ready": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"gravity": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"stepSeconds": {
"type": "number"
},
"maxCatchUpSteps": {
"type": "number"
},
"bodies": {
"type": "array",
"items": {
"type": "object",
"properties": {
"instanceId": {
"type": "string"
},
"motion": {
"anyOf": [
{
"const": "static",
"type": "string"
},
{
"const": "dynamic",
"type": "string"
},
{
"const": "kinematic",
"type": "string"
}
]
},
"collision": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "solid",
"type": "string"
},
{
"const": "sensor",
"type": "string"
}
]
},
"controller": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "character",
"type": "string"
}
]
},
"role": {
"type": "string"
},
"canGrab": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"massKg": {
"type": "number"
},
"friction": {
"type": "number"
},
"restitution": {
"type": "number"
},
"colliders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"shape": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "box",
"type": "string"
},
"center": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"halfExtents": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
}
},
"required": [
"kind",
"center",
"halfExtents"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "convex",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"kind",
"vertices"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "triangle-mesh",
"type": "string"
},
"vertices": {
"type": "array",
"items": {
"type": "number"
}
},
"indices": {
"type": "array",
"items": {
"type": "number"
}
}
},
"required": [
"kind",
"vertices",
"indices"
],
"additionalProperties": false
}
]
},
"volumeM3": {
"type": "number"
},
"evidence": {
"type": "string"
},
"approximate": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
}
},
"required": [
"shape",
"volumeM3",
"evidence",
"approximate"
],
"additionalProperties": false
}
}
},
"required": [
"instanceId",
"motion",
"collision",
"controller",
"role",
"canGrab",
"massKg",
"friction",
"restitution",
"colliders"
],
"additionalProperties": false
}
},
"diagnostics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"severity": {
"anyOf": [
{
"const": "error",
"type": "string"
},
{
"const": "warning",
"type": "string"
}
]
},
"instanceId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"severity",
"instanceId",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"ready",
"gravity",
"stepSeconds",
"maxCatchUpSteps",
"bodies",
"diagnostics"
],
"additionalProperties": false
}
},
"required": [
"schema",
"schemaVersion",
"semantic",
"projection",
"evaluations",
"diagnostics",
"provenance",
"readiness"
],
"additionalProperties": false
}QUAY SceneDocument
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.scene"} |
| schemaVersion | yes | {"const":"1.0.0"} |
| sceneId | yes | {"type":"string","format":"uuid"} |
| revision | yes | {"type":"integer","minimum":0} |
| name | yes | {"type":"string","minLength":1,"maxLength":200} |
| createdAt | yes | {"type":"string","format":"date-time"} |
| updatedAt | yes | {"type":"string","format":"date-time"} |
| units | yes | {"const":"metres"} |
| coordinateSystem | yes | {"const":"right-handed-y-up-negative-z-forward"} |
| seed | yes | {"type":"integer","minimum":0,"maximum":4294967295} |
| environment | yes | {"$ref":"#/$defs/environment"} |
| assets | yes | {"type":"array","maxItems":500,"items":{"$ref":"#/$defs/asset"}} |
| imageAssets | no | {"type":"array","maxItems":1000,"items":{"$ref":"#/$defs/imageAsset"}} |
| instances | yes | {"type":"array","maxItems":2000,"items":{"$ref":"#/$defs/instance"}} |
| relations | yes | {"type":"array","maxItems":5000,"items":{"$ref":"#/$defs/resolvedRelation"}} |
| diagnostics | yes | {"type":"array","maxItems":1000,"items":{"$ref":"#/$defs/diagnostic"}} |
| unplacedInstanceIds | yes | {"type":"array","maxItems":2000,"uniqueItems":true,"items":{"type":"string","format":"uuid"}} |
| camera | yes | {"$ref":"#/$defs/camera"} |
| provenance | yes | {"$ref":"#/$defs/provenance"} |
| materials | no | {"type":"array","maxItems":1000,"items":{"type":"object","properties":{"version":{"const":"quay.material/1","type":"string"},"identity":{"type":"string"},"alias":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"category":{"anyOf":[{"const":"generic","type":"string"},{"const":"wood","type":"string"},{"const":"metal","type":"string"},{"const":"stone","type":"string"},{"const":"concrete","type":"string"},{"const":"ceramic","type":"string"},{"const":"fabric","type":"string"},{"const":"glass","type":"string"},{"const":"paper","type":"string"},{"const":"plastic","type":"string"},{"const":"paint","type":"string"}]},"shader":{"anyOf":[{"const":"standard","type":"string"},{"const":"unlit","type":"string"}]},"color":{"type":"string"},"roughness":{"type":"number"},"metalness":{"type":"number"},"emissive":{"type":"string"},"emissiveIntensity":{"type":"number"},"opacity":{"type":"number"},"alphaMode":{"anyOf":[{"const":"opaque","type":"string"},{"const":"mask","type":"string"},{"const":"blend","type":"string"}]},"alphaCutoff":{"type":"number"},"side":{"anyOf":[{"const":"front","type":"string"},{"const":"back","type":"string"},{"const":"double","type":"string"}]},"preset":{"anyOf":[{"type":"null"},{"type":"string"}]},"maps":{"type":"array","items":{"type":"object","properties":{"slot":{"anyOf":[{"const":"color","type":"string"},{"const":"normal","type":"string"},{"const":"roughness","type":"string"},{"const":"metalness","type":"string"},{"const":"emissive","type":"string"},{"const":"occlusion","type":"string"},{"const":"alpha","type":"string"}]},"image":{"type":"object","properties":{"assetId":{"type":"string"},"uri":{"type":"string"},"sha256":{"type":"string"},"byteLength":{"type":"number"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"displayName":{"type":"string"}},"required":["assetId","uri","sha256","byteLength","mediaType","displayName"],"additionalProperties":false},"repeat":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"offset":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"}],"minItems":2,"maxItems":2,"items":false},"rotation":{"type":"number"},"wrap":{"anyOf":[{"const":"repeat","type":"string"},{"const":"clamp","type":"string"},{"const":"mirror","type":"string"}]}},"required":["slot","image","repeat","offset","rotation","wrap"],"additionalProperties":false}}},"required":["version","identity","alias","label","description","category","shader","color","roughness","metalness","emissive","emissiveIntensity","opacity","alphaMode","alphaCutoff","side","preset","maps"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://quay.local/schemas/scene.schema.json",
"title": "QUAY SceneDocument",
"type": "object",
"additionalProperties": false,
"required": [
"schema",
"schemaVersion",
"sceneId",
"revision",
"name",
"createdAt",
"updatedAt",
"units",
"coordinateSystem",
"seed",
"environment",
"assets",
"instances",
"relations",
"diagnostics",
"unplacedInstanceIds",
"camera",
"provenance"
],
"properties": {
"schema": {
"const": "quay.scene"
},
"schemaVersion": {
"const": "1.0.0"
},
"sceneId": {
"type": "string",
"format": "uuid"
},
"revision": {
"type": "integer",
"minimum": 0
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"createdAt": {
"type": "string",
"format": "date-time"
},
"updatedAt": {
"type": "string",
"format": "date-time"
},
"units": {
"const": "metres"
},
"coordinateSystem": {
"const": "right-handed-y-up-negative-z-forward"
},
"seed": {
"type": "integer",
"minimum": 0,
"maximum": 4294967295
},
"environment": {
"$ref": "#/$defs/environment"
},
"assets": {
"type": "array",
"maxItems": 500,
"items": {
"$ref": "#/$defs/asset"
}
},
"imageAssets": {
"type": "array",
"maxItems": 1000,
"items": {
"$ref": "#/$defs/imageAsset"
}
},
"instances": {
"type": "array",
"maxItems": 2000,
"items": {
"$ref": "#/$defs/instance"
}
},
"relations": {
"type": "array",
"maxItems": 5000,
"items": {
"$ref": "#/$defs/resolvedRelation"
}
},
"diagnostics": {
"type": "array",
"maxItems": 1000,
"items": {
"$ref": "#/$defs/diagnostic"
}
},
"unplacedInstanceIds": {
"type": "array",
"maxItems": 2000,
"uniqueItems": true,
"items": {
"type": "string",
"format": "uuid"
}
},
"camera": {
"$ref": "#/$defs/camera"
},
"provenance": {
"$ref": "#/$defs/provenance"
},
"materials": {
"type": "array",
"maxItems": 1000,
"items": {
"type": "object",
"properties": {
"version": {
"const": "quay.material/1",
"type": "string"
},
"identity": {
"type": "string"
},
"alias": {
"type": "string"
},
"label": {
"type": "string"
},
"description": {
"type": "string"
},
"category": {
"anyOf": [
{
"const": "generic",
"type": "string"
},
{
"const": "wood",
"type": "string"
},
{
"const": "metal",
"type": "string"
},
{
"const": "stone",
"type": "string"
},
{
"const": "concrete",
"type": "string"
},
{
"const": "ceramic",
"type": "string"
},
{
"const": "fabric",
"type": "string"
},
{
"const": "glass",
"type": "string"
},
{
"const": "paper",
"type": "string"
},
{
"const": "plastic",
"type": "string"
},
{
"const": "paint",
"type": "string"
}
]
},
"shader": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "unlit",
"type": "string"
}
]
},
"color": {
"type": "string"
},
"roughness": {
"type": "number"
},
"metalness": {
"type": "number"
},
"emissive": {
"type": "string"
},
"emissiveIntensity": {
"type": "number"
},
"opacity": {
"type": "number"
},
"alphaMode": {
"anyOf": [
{
"const": "opaque",
"type": "string"
},
{
"const": "mask",
"type": "string"
},
{
"const": "blend",
"type": "string"
}
]
},
"alphaCutoff": {
"type": "number"
},
"side": {
"anyOf": [
{
"const": "front",
"type": "string"
},
{
"const": "back",
"type": "string"
},
{
"const": "double",
"type": "string"
}
]
},
"preset": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"maps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slot": {
"anyOf": [
{
"const": "color",
"type": "string"
},
{
"const": "normal",
"type": "string"
},
{
"const": "roughness",
"type": "string"
},
{
"const": "metalness",
"type": "string"
},
{
"const": "emissive",
"type": "string"
},
{
"const": "occlusion",
"type": "string"
},
{
"const": "alpha",
"type": "string"
}
]
},
"image": {
"type": "object",
"properties": {
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"displayName": {
"type": "string"
}
},
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"additionalProperties": false
},
"repeat": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"offset": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 2,
"maxItems": 2,
"items": false
},
"rotation": {
"type": "number"
},
"wrap": {
"anyOf": [
{
"const": "repeat",
"type": "string"
},
{
"const": "clamp",
"type": "string"
},
{
"const": "mirror",
"type": "string"
}
]
}
},
"required": [
"slot",
"image",
"repeat",
"offset",
"rotation",
"wrap"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"identity",
"alias",
"label",
"description",
"category",
"shader",
"color",
"roughness",
"metalness",
"emissive",
"emissiveIntensity",
"opacity",
"alphaMode",
"alphaCutoff",
"side",
"preset",
"maps"
],
"additionalProperties": false
}
}
},
"$defs": {
"vec3": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"length2": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"positiveLength2": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"positiveVec3": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"quaternion": {
"type": "array",
"minItems": 4,
"maxItems": 4,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"items": false
},
"color": {
"type": "string",
"pattern": "^#[0-9A-Fa-f]{6}$"
},
"bounds": {
"type": "object",
"additionalProperties": false,
"required": [
"min",
"max"
],
"properties": {
"min": {
"$ref": "#/$defs/vec3"
},
"max": {
"$ref": "#/$defs/vec3"
}
}
},
"transform": {
"type": "object",
"additionalProperties": false,
"required": [
"position",
"quaternion",
"scale"
],
"properties": {
"position": {
"$ref": "#/$defs/vec3"
},
"quaternion": {
"$ref": "#/$defs/quaternion"
},
"scale": {
"$ref": "#/$defs/positiveVec3"
}
}
},
"environment": {
"type": "object",
"additionalProperties": false,
"required": [
"room",
"background",
"fog",
"floor",
"lights"
],
"properties": {
"room": {
"type": "object",
"additionalProperties": false,
"required": [
"width",
"depth",
"height",
"floorY"
],
"properties": {
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"depth": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000
},
"floorY": {
"type": "number"
}
}
},
"background": {
"$ref": "#/$defs/color"
},
"fog": {
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"additionalProperties": false,
"required": [
"color",
"near",
"far"
],
"properties": {
"color": {
"$ref": "#/$defs/color"
},
"near": {
"type": "number",
"minimum": 0
},
"far": {
"type": "number",
"exclusiveMinimum": 0
}
}
}
]
},
"floor": {
"type": "object",
"additionalProperties": false,
"required": [
"visible",
"color",
"receiveShadow",
"gridVisible"
],
"properties": {
"visible": {
"type": "boolean"
},
"color": {
"$ref": "#/$defs/color"
},
"receiveShadow": {
"type": "boolean"
},
"gridVisible": {
"type": "boolean"
}
}
},
"lights": {
"type": "array",
"maxItems": 16,
"items": {
"$ref": "#/$defs/light"
}
}
}
},
"light": {
"type": "object",
"additionalProperties": false,
"required": [
"type",
"color",
"intensity",
"position",
"castShadow"
],
"properties": {
"type": {
"enum": [
"ambient",
"hemisphere",
"directional",
"point"
]
},
"color": {
"$ref": "#/$defs/color"
},
"groundColor": {
"$ref": "#/$defs/color"
},
"intensity": {
"type": "number",
"minimum": 0,
"maximum": 100000
},
"position": {
"$ref": "#/$defs/vec3"
},
"castShadow": {
"type": "boolean"
}
}
},
"asset": {
"type": "object",
"additionalProperties": false,
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName",
"description",
"category",
"canonicalSize",
"normalization",
"placement",
"supportsObjects",
"supportSurfaces"
],
"properties": {
"library": {
"type": "object",
"properties": {
"version": {
"const": "quay.asset-library/1",
"type": "string"
},
"alias": {
"type": "string"
},
"scope": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "user",
"type": "string"
},
{
"const": "project",
"type": "string"
}
]
},
"projectId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"origin": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"originalAssetId": {
"type": "string"
},
"originalUrl": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"author": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"license": {
"type": "string"
},
"attributionRequired": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"originalFilename": {
"type": "string"
},
"downloadedAt": {
"type": "string"
},
"contentHash": {
"type": "string"
},
"sourceHash": {
"type": "string"
}
},
"required": [
"provider",
"originalAssetId",
"originalUrl",
"author",
"license",
"attributionRequired",
"originalFilename",
"downloadedAt",
"contentHash",
"sourceHash"
],
"additionalProperties": false
},
"semantics": {
"type": "object",
"properties": {
"taxonomy": {
"const": "quay.asset-taxonomy/1",
"type": "string"
},
"category": {
"type": "string"
},
"styles": {
"type": "array",
"items": {
"type": "string"
}
},
"roomTypes": {
"type": "array",
"items": {
"type": "string"
}
},
"affordances": {
"type": "array",
"items": {
"type": "string"
}
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"confidence": {
"type": "number"
},
"state": {
"anyOf": [
{
"const": "accepted",
"type": "string"
},
{
"const": "suggested",
"type": "string"
},
{
"const": "unknown",
"type": "string"
}
]
},
"producer": {
"type": "string"
},
"model": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"taxonomy",
"category",
"styles",
"roomTypes",
"affordances",
"capacity",
"confidence",
"state",
"producer",
"model"
],
"additionalProperties": false
},
"manifestId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"archetypeId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"cost": {
"type": "object",
"properties": {
"triangles": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"materials": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"textureBytes": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"texturePixels": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
}
},
"required": [
"triangles",
"materials",
"textureBytes",
"texturePixels"
],
"additionalProperties": false
}
},
"required": [
"version",
"alias",
"scope",
"projectId",
"origin",
"semantics",
"manifestId",
"archetypeId",
"cost"
],
"additionalProperties": false
},
"assetId": {
"type": "string",
"format": "uuid"
},
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2048
},
"sha256": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"byteLength": {
"type": "integer",
"minimum": 1
},
"mediaType": {
"const": "model/gltf-binary"
},
"displayName": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"description": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"category": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"canonicalSize": {
"$ref": "#/$defs/positiveVec3"
},
"normalization": {
"type": "object",
"additionalProperties": false,
"required": [
"rawBounds",
"scale",
"baseOffset",
"forwardCorrection"
],
"properties": {
"rawBounds": {
"$ref": "#/$defs/bounds"
},
"scale": {
"$ref": "#/$defs/positiveVec3"
},
"baseOffset": {
"$ref": "#/$defs/vec3"
},
"forwardCorrection": {
"$ref": "#/$defs/quaternion"
}
}
},
"placement": {
"enum": [
"floor_only",
"support_only",
"floor_or_support"
]
},
"supportsObjects": {
"type": "boolean"
},
"wallAlignment": {
"type": [
"string",
"null"
],
"enum": [
"left",
"center",
"right",
null
]
},
"availability": {
"enum": [
"global",
"local"
]
},
"roomId": {
"type": [
"string",
"null"
]
},
"supportSurfaces": {
"type": "array",
"maxItems": 50,
"items": {
"$ref": "#/$defs/supportSurface"
}
}
}
},
"imageAsset": {
"type": "object",
"additionalProperties": false,
"required": [
"assetId",
"uri",
"sha256",
"byteLength",
"mediaType",
"displayName"
],
"properties": {
"assetId": {
"type": "string",
"format": "uuid"
},
"uri": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"sha256": {
"type": "string",
"pattern": "^[0-9a-fA-F]{64}$"
},
"byteLength": {
"type": "integer",
"minimum": 1
},
"mediaType": {
"enum": [
"image/png",
"image/jpeg",
"image/webp"
]
},
"displayName": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
}
},
"supportSurface": {
"type": "object",
"additionalProperties": false,
"required": [
"surfaceId",
"label",
"center",
"normal",
"size",
"source"
],
"properties": {
"surfaceId": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"center": {
"$ref": "#/$defs/vec3"
},
"normal": {
"$ref": "#/$defs/vec3"
},
"size": {
"type": "array",
"minItems": 2,
"maxItems": 2,
"prefixItems": [
{
"type": "number",
"exclusiveMinimum": 0
},
{
"type": "number",
"exclusiveMinimum": 0
}
],
"items": false
},
"source": {
"enum": [
"bounds",
"mesh",
"manual"
]
}
}
},
"instance": {
"type": "object",
"additionalProperties": false,
"required": [
"instanceId",
"assetId",
"name",
"transform",
"visible",
"castShadow",
"receiveShadow",
"locked",
"placement",
"tags"
],
"properties": {
"instanceId": {
"type": "string",
"format": "uuid"
},
"assetId": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"transform": {
"$ref": "#/$defs/transform"
},
"normalization": {
"$ref": "#/$defs/asset/properties/normalization"
},
"wallImage": {
"type": "object",
"additionalProperties": false,
"required": [
"wallInstanceId",
"assetId",
"position",
"size",
"surfaceOffset",
"preserveAspectRatio"
],
"properties": {
"wallInstanceId": {
"type": "string",
"format": "uuid"
},
"assetId": {
"type": "string",
"format": "uuid"
},
"position": {
"$ref": "#/$defs/length2"
},
"size": {
"$ref": "#/$defs/positiveLength2"
},
"surfaceOffset": {
"type": "number",
"minimum": 0
},
"preserveAspectRatio": {
"type": "boolean"
},
"surface": {
"enum": [
"wall",
"floor"
]
}
}
},
"visible": {
"type": "boolean"
},
"castShadow": {
"type": "boolean"
},
"receiveShadow": {
"type": "boolean"
},
"locked": {
"type": "boolean"
},
"placement": {
"type": "object",
"additionalProperties": false,
"required": [
"source",
"supportingInstanceId",
"supportSurfaceId",
"solverStatus"
],
"properties": {
"source": {
"enum": [
"solver",
"manual",
"imported"
]
},
"supportingInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"supportSurfaceId": {
"type": [
"string",
"null"
],
"maxLength": 100
},
"solverStatus": {
"enum": [
"placed",
"fallback",
"unresolved"
]
}
}
},
"tags": {
"type": "array",
"maxItems": 50,
"uniqueItems": true,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"materialId": {
"type": "string",
"format": "uuid"
}
}
},
"resolvedRelation": {
"type": "object",
"additionalProperties": false,
"required": [
"relationId",
"type",
"subjectInstanceId",
"targetInstanceId",
"strength",
"status",
"message"
],
"properties": {
"relationId": {
"type": "string",
"format": "uuid"
},
"type": {
"enum": [
"ON",
"NEAR",
"LEFT_OF",
"RIGHT_OF",
"IN_FRONT_OF",
"BEHIND",
"FACING",
"CENTERED_ON",
"ALIGNED_WITH",
"AGAINST_WALL",
"KEEP_CLEAR_OF"
]
},
"subjectInstanceId": {
"type": "string",
"format": "uuid"
},
"targetInstanceId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"strength": {
"enum": [
"hard",
"soft"
]
},
"status": {
"enum": [
"satisfied",
"degraded",
"unresolved"
]
},
"message": {
"type": "string",
"maxLength": 500
}
}
},
"diagnostic": {
"type": "object",
"additionalProperties": false,
"required": [
"code",
"severity",
"message",
"instanceIds",
"relationId"
],
"properties": {
"code": {
"type": "string",
"pattern": "^[A-Z][A-Z0-9_]{1,63}$"
},
"severity": {
"enum": [
"info",
"warning",
"error"
]
},
"message": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"instanceIds": {
"type": "array",
"maxItems": 50,
"uniqueItems": true,
"items": {
"type": "string",
"format": "uuid"
}
},
"relationId": {
"type": [
"string",
"null"
],
"format": "uuid"
},
"measurements": {
"type": "object",
"additionalProperties": {
"type": "number"
}
}
}
},
"camera": {
"type": "object",
"additionalProperties": false,
"required": [
"type",
"position",
"target",
"up",
"fovDegrees",
"near",
"far"
],
"properties": {
"type": {
"const": "perspective"
},
"position": {
"$ref": "#/$defs/vec3"
},
"target": {
"$ref": "#/$defs/vec3"
},
"up": {
"$ref": "#/$defs/vec3"
},
"fovDegrees": {
"type": "number",
"exclusiveMinimum": 1,
"exclusiveMaximum": 179
},
"near": {
"type": "number",
"exclusiveMinimum": 0
},
"far": {
"type": "number",
"exclusiveMinimum": 0
}
}
},
"provenance": {
"type": "object",
"additionalProperties": false,
"required": [
"createdBy",
"planner",
"layoutEngineVersion",
"threeVersion",
"sourcePrompt"
],
"properties": {
"createdBy": {
"enum": [
"quay",
"import"
]
},
"planner": {
"oneOf": [
{
"type": "null"
},
{
"type": "object",
"additionalProperties": false,
"required": [
"provider",
"model",
"promptTemplateVersion",
"requestId"
],
"properties": {
"provider": {
"enum": [
"openai",
"fake"
]
},
"model": {
"type": "string",
"minLength": 1,
"maxLength": 100
},
"promptTemplateVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"requestId": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
}
}
]
},
"layoutEngineVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"threeVersion": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"sourcePrompt": {
"type": "string",
"maxLength": 4000
}
}
}
}
}worldpack.schema.json
Download worldpack.schema.json
| Root property | Required | Constraint |
|---|---|---|
| schema | yes | {"const":"quay.worldpack","type":"string"} |
| version | yes | {"const":"1.0.0","type":"string"} |
| container | yes | {"const":"zip-store/1","type":"string"} |
| worldId | yes | {"type":"string"} |
| sceneId | yes | {"type":"string"} |
| buildId | yes | {"type":"string"} |
| runtime | yes | {"type":"object","properties":{"scene":{"const":"2.0.0-draft.1","type":"string"},"wright":{"anyOf":[{"type":"null"},{"const":"wright.resolved/1","type":"string"}]},"experience":{"anyOf":[{"type":"null"},{"const":"1.0.0","type":"string"}]},"cinematic":{"anyOf":[{"type":"null"},{"const":"1.0.0","type":"string"}]},"capabilities":{"type":"array","items":{"type":"string"}}},"required":["scene","wright","experience","cinematic","capabilities"],"additionalProperties":false} |
| world | yes | {"type":"string"} |
| topology | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| experience | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| cinematic | yes | {"anyOf":[{"type":"null"},{"type":"string"}]} |
| entry | yes | {"type":"object","properties":{"room":{"type":"string"},"state":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["room","state"],"additionalProperties":false} |
| rooms | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"chunk":{"type":"string"},"adjacent":{"type":"array","items":{"type":"string"}},"objects":{"type":"array","items":{"type":"string"}}},"required":["id","chunk","adjacent","objects"],"additionalProperties":false}} |
| assets | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"resource":{"type":"string"},"scope":{"anyOf":[{"const":"standard","type":"string"},{"const":"user","type":"string"},{"const":"project","type":"string"}]},"projectId":{"anyOf":[{"type":"null"},{"type":"string"}]},"manifestId":{"type":"string"}},"required":["id","resource","scope","projectId","manifestId"],"additionalProperties":false}} |
| audio | yes | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"resource":{"type":"string"}},"required":["id","resource"],"additionalProperties":false}} |
| content | no | {"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"resource":{"type":"string"},"mediaType":{"type":"string"}},"required":["id","resource","mediaType"],"additionalProperties":false}} |
| metadata | yes | {"type":"object","properties":{"licenses":{"type":"string"},"provenance":{"type":"string"},"build":{"type":"string"}},"required":["licenses","provenance","build"],"additionalProperties":false} |
| profiles | no | {"type":"object","properties":{"desktop":{"type":"string"},"mobile":{"type":"string"}},"required":["desktop","mobile"],"additionalProperties":false} |
| rams | no | {"type":"object","properties":{"config":{"type":"string"},"site":{"type":"object","properties":{"entry":{"type":"string"},"files":{"type":"array","items":{"type":"string"}}},"required":["entry","files"],"additionalProperties":false}},"required":["config"],"additionalProperties":false} |
| resources | yes | {"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"hash":{"type":"string"},"bytes":{"type":"number"},"kind":{"anyOf":[{"const":"scene","type":"string"},{"const":"world","type":"string"},{"const":"topology","type":"string"},{"const":"experience","type":"string"},{"const":"cinematic","type":"string"},{"const":"glb","type":"string"},{"const":"audio","type":"string"},{"const":"image","type":"string"},{"const":"content","type":"string"},{"const":"metadata","type":"string"},{"const":"debug","type":"string"},{"const":"rams","type":"string"},{"const":"site","type":"string"}]},"encoding":{"anyOf":[{"const":"json","type":"string"},{"const":"cbor","type":"string"},{"const":"binary","type":"string"}]},"dependencies":{"type":"array","items":{"type":"string"}}},"required":["path","hash","bytes","kind","encoding","dependencies"],"additionalProperties":false}} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"schema": {
"const": "quay.worldpack",
"type": "string"
},
"version": {
"const": "1.0.0",
"type": "string"
},
"container": {
"const": "zip-store/1",
"type": "string"
},
"worldId": {
"type": "string"
},
"sceneId": {
"type": "string"
},
"buildId": {
"type": "string"
},
"runtime": {
"type": "object",
"properties": {
"scene": {
"const": "2.0.0-draft.1",
"type": "string"
},
"wright": {
"anyOf": [
{
"type": "null"
},
{
"const": "wright.resolved/1",
"type": "string"
}
]
},
"experience": {
"anyOf": [
{
"type": "null"
},
{
"const": "1.0.0",
"type": "string"
}
]
},
"cinematic": {
"anyOf": [
{
"type": "null"
},
{
"const": "1.0.0",
"type": "string"
}
]
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"scene",
"wright",
"experience",
"cinematic",
"capabilities"
],
"additionalProperties": false
},
"world": {
"type": "string"
},
"topology": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"experience": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"cinematic": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"entry": {
"type": "object",
"properties": {
"room": {
"type": "string"
},
"state": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"room",
"state"
],
"additionalProperties": false
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"chunk": {
"type": "string"
},
"adjacent": {
"type": "array",
"items": {
"type": "string"
}
},
"objects": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"id",
"chunk",
"adjacent",
"objects"
],
"additionalProperties": false
}
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"resource": {
"type": "string"
},
"scope": {
"anyOf": [
{
"const": "standard",
"type": "string"
},
{
"const": "user",
"type": "string"
},
{
"const": "project",
"type": "string"
}
]
},
"projectId": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"manifestId": {
"type": "string"
}
},
"required": [
"id",
"resource",
"scope",
"projectId",
"manifestId"
],
"additionalProperties": false
}
},
"audio": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"resource": {
"type": "string"
}
},
"required": [
"id",
"resource"
],
"additionalProperties": false
}
},
"content": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"resource": {
"type": "string"
},
"mediaType": {
"type": "string"
}
},
"required": [
"id",
"resource",
"mediaType"
],
"additionalProperties": false
}
},
"metadata": {
"type": "object",
"properties": {
"licenses": {
"type": "string"
},
"provenance": {
"type": "string"
},
"build": {
"type": "string"
}
},
"required": [
"licenses",
"provenance",
"build"
],
"additionalProperties": false
},
"profiles": {
"type": "object",
"properties": {
"desktop": {
"type": "string"
},
"mobile": {
"type": "string"
}
},
"required": [
"desktop",
"mobile"
],
"additionalProperties": false
},
"rams": {
"type": "object",
"properties": {
"config": {
"type": "string"
},
"site": {
"type": "object",
"properties": {
"entry": {
"type": "string"
},
"files": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"entry",
"files"
],
"additionalProperties": false
}
},
"required": [
"config"
],
"additionalProperties": false
},
"resources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string"
},
"hash": {
"type": "string"
},
"bytes": {
"type": "number"
},
"kind": {
"anyOf": [
{
"const": "scene",
"type": "string"
},
{
"const": "world",
"type": "string"
},
{
"const": "topology",
"type": "string"
},
{
"const": "experience",
"type": "string"
},
{
"const": "cinematic",
"type": "string"
},
{
"const": "glb",
"type": "string"
},
{
"const": "audio",
"type": "string"
},
{
"const": "image",
"type": "string"
},
{
"const": "content",
"type": "string"
},
{
"const": "metadata",
"type": "string"
},
{
"const": "debug",
"type": "string"
},
{
"const": "rams",
"type": "string"
},
{
"const": "site",
"type": "string"
}
]
},
"encoding": {
"anyOf": [
{
"const": "json",
"type": "string"
},
{
"const": "cbor",
"type": "string"
},
{
"const": "binary",
"type": "string"
}
]
},
"dependencies": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"path",
"hash",
"bytes",
"kind",
"encoding",
"dependencies"
],
"additionalProperties": false
}
}
},
"required": [
"schema",
"version",
"container",
"worldId",
"sceneId",
"buildId",
"runtime",
"world",
"topology",
"experience",
"cinematic",
"entry",
"rooms",
"assets",
"audio",
"metadata",
"resources"
],
"additionalProperties": false
}wright.schema.json
| Root property | Required | Constraint |
|---|---|---|
| version | yes | {"const":"wright.world/1","type":"string"} |
| identity | yes | {"type":"string"} |
| rooms | yes | {"type":"array","items":{"type":"object","properties":{"furnishing":{"type":"object","properties":{"roomProgram":{"type":"object","properties":{"repair":{"type":"object","properties":{"stage":{"const":"semantic","type":"string"},"attempts":{"type":"number"},"strategy":{"anyOf":[{"const":"none","type":"string"},{"const":"bounded-semantic-revision","type":"string"}]},"initialFailures":{"type":"array","items":{"type":"string"}},"finalState":{"const":"accepted","type":"string"},"relaxedConstraints":{"type":"array","items":{"type":"string"}}},"required":["stage","attempts","strategy","initialFailures","finalState","relaxedConstraints"],"additionalProperties":false},"enrichment":{"type":"object","properties":{"provider":{"type":"string"},"model":{"type":"string"},"version":{"type":"string"}},"required":["provider","model","version"],"additionalProperties":false},"intent":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"archetypeSnapshot":{"type":"object","properties":{"version":{"const":"qway.room-program/1","type":"string"},"archetype":{"type":"string"},"archetypeRevision":{"type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"zones":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"purpose":{"type":"string"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]}},"required":["reference","purpose","priority"],"additionalProperties":false}},"needs":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"category":{"type":"string"},"zone":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","category","zone","quantity","capacity","priority","assetAlias","placement","evidence"],"additionalProperties":false}},"rules":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"beside","type":"string"},{"const":"facing","type":"string"},{"const":"near-window","type":"string"},{"const":"wall-alignment","type":"string"},{"const":"interior","type":"string"},{"const":"access","type":"string"},{"const":"visibility","type":"string"},{"const":"clearance","type":"string"},{"const":"circulation","type":"string"},{"const":"minimum-dimensions","type":"string"},{"const":"unsupported","type":"string"}]},"subjects":{"type":"array","items":{"type":"string"}},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"strength":{"anyOf":[{"const":"hard","type":"string"},{"const":"soft","type":"string"}]},"clearanceM":{"anyOf":[{"type":"null"},{"type":"number"}]},"description":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","subjects","target","priority","strength","clearanceM","description","evidence"],"additionalProperties":false}},"architecture":{"type":"array","items":{"type":"object","properties":{"reference":{"type":"string"},"kind":{"anyOf":[{"const":"window","type":"string"},{"const":"portal","type":"string"},{"const":"wall-run","type":"string"},{"const":"open-center","type":"string"},{"const":"natural-light","type":"string"},{"const":"ceiling-light","type":"string"}]},"quantity":{"type":"number"},"priority":{"anyOf":[{"const":"required","type":"string"},{"const":"recommended","type":"string"},{"const":"optional","type":"string"}]},"evidence":{"type":"object","properties":{"origin":{"anyOf":[{"const":"explicit","type":"string"},{"const":"archetype","type":"string"},{"const":"inferred","type":"string"}]},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["reference","kind","quantity","priority","evidence"],"additionalProperties":false}},"exclusions":{"type":"array","items":{"type":"object","properties":{"category":{"type":"string"},"evidence":{"type":"object","properties":{"origin":{"const":"explicit","type":"string"},"confidence":{"type":"number"},"explanation":{"type":"string"}},"required":["origin","confidence","explanation"],"additionalProperties":false}},"required":["category","evidence"],"additionalProperties":false}},"uncertainties":{"type":"array","items":{"type":"string"}}},"required":["version","archetype","archetypeRevision","purpose","capacity","style","zones","needs","rules","architecture","exclusions","uncertainties"],"additionalProperties":false},"bindings":{"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}}},"required":["intent","archetypeSnapshot","bindings"],"additionalProperties":false},"version":{"const":"qway.furnishing/1","type":"string"},"purpose":{"type":"string"},"capacity":{"type":"number"},"style":{"type":"string"},"needs":{"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"category":{"type":"string"},"quantity":{"type":"number"},"capacity":{"anyOf":[{"type":"null"},{"type":"number"}]},"assetAlias":{"anyOf":[{"type":"null"},{"type":"string"}]},"placement":{"anyOf":[{"const":"auto","type":"string"},{"const":"center","type":"string"},{"const":"perimeter","type":"string"}]},"relation":{"anyOf":[{"type":"null"},{"const":"on","type":"string"},{"const":"seating","type":"string"},{"const":"near-window","type":"string"}]},"target":{"anyOf":[{"type":"null"},{"type":"string"}]},"instances":{"type":"array","items":{"type":"array","items":{"type":"string"}}}},"required":["identity","category","quantity","capacity","assetAlias","placement","relation","target","instances"],"additionalProperties":false}}},"required":["version","purpose","capacity","style","needs"],"additionalProperties":false},"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"label":{"type":"string","maxLength":200},"level":{"anyOf":[{"type":"null"},{"type":"string"}]},"parent":{"anyOf":[{"type":"null"},{"type":"string"}]},"size":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"backdrop":{"anyOf":[{"type":"object","properties":{"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"materialId":{"type":"string"}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},{"type":"object","properties":{"north":{"type":"object","properties":{"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"materialId":{"type":"string"}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"south":{"type":"object","properties":{"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"materialId":{"type":"string"}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"east":{"type":"object","properties":{"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"materialId":{"type":"string"}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false},"west":{"type":"object","properties":{"identity":{"type":"string"},"semantic":{"type":"string","maxLength":200},"source":{"anyOf":[{"type":"object","properties":{"kind":{"const":"image","type":"string"},"assetId":{"type":"string"},"uri":{"type":"string"},"mediaType":{"anyOf":[{"const":"image/png","type":"string"},{"const":"image/jpeg","type":"string"},{"const":"image/webp","type":"string"}]},"sha256":{"type":"string"},"byteLength":{"type":"number"}},"required":["kind","assetId","uri","mediaType","sha256","byteLength"],"additionalProperties":false},{"type":"object","properties":{"kind":{"const":"asset","type":"string"},"uri":{"type":"null"},"assetId":{"type":"string"}},"required":["kind","uri","assetId"],"additionalProperties":false}]},"side":{"anyOf":[{"const":"north","type":"string"},{"const":"south","type":"string"},{"const":"east","type":"string"},{"const":"west","type":"string"}]},"mode":{"const":"architectural","type":"string"},"fit":{"anyOf":[{"const":"cover","type":"string"},{"const":"contain","type":"string"}]},"projection":{"const":"flat","type":"string"},"distance":{"type":"number"},"lighting":{"anyOf":[{"const":"unlit","type":"string"},{"const":"lit","type":"string"}]},"enabled":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"materialId":{"type":"string"}},"required":["identity","semantic","source","side","mode","fit","projection","distance","lighting","enabled"],"additionalProperties":false}},"required":[],"additionalProperties":false}]}},"required":["identity","alias","label","level","parent","size","frame"],"additionalProperties":false}} |
| levels | yes | {"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"label":{"type":"string"}},"required":["identity","label"],"additionalProperties":false}} |
| portals | yes | {"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"from":{"type":"string"},"to":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","from","to","frame","width","height","traversable","door"],"additionalProperties":false}} |
| entrances | no | {"type":"array","items":{"type":"object","properties":{"identity":{"type":"string"},"alias":{"type":"string","maxLength":100},"room":{"type":"string"},"frame":{"type":"object","properties":{"position":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":3,"maxItems":3,"items":false},"quaternion":{"type":"array","prefixItems":[{"type":"number"},{"type":"number"},{"type":"number"},{"type":"number"}],"minItems":4,"maxItems":4,"items":false}},"required":["position","quaternion"],"additionalProperties":false},"width":{"type":"number"},"height":{"type":"number"},"traversable":{"anyOf":[{"const":false,"type":"boolean"},{"const":true,"type":"boolean"}]},"door":{"anyOf":[{"type":"null"},{"type":"string"}]}},"required":["identity","alias","room","frame","width","height","traversable","door"],"additionalProperties":false}} |
| membership | yes | {"type":"object","properties":{},"required":[],"additionalProperties":{"type":"string"}} |
Complete schema including nested definitions
{
"type": "object",
"properties": {
"version": {
"const": "wright.world/1",
"type": "string"
},
"identity": {
"type": "string"
},
"rooms": {
"type": "array",
"items": {
"type": "object",
"properties": {
"furnishing": {
"type": "object",
"properties": {
"roomProgram": {
"type": "object",
"properties": {
"repair": {
"type": "object",
"properties": {
"stage": {
"const": "semantic",
"type": "string"
},
"attempts": {
"type": "number"
},
"strategy": {
"anyOf": [
{
"const": "none",
"type": "string"
},
{
"const": "bounded-semantic-revision",
"type": "string"
}
]
},
"initialFailures": {
"type": "array",
"items": {
"type": "string"
}
},
"finalState": {
"const": "accepted",
"type": "string"
},
"relaxedConstraints": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"stage",
"attempts",
"strategy",
"initialFailures",
"finalState",
"relaxedConstraints"
],
"additionalProperties": false
},
"enrichment": {
"type": "object",
"properties": {
"provider": {
"type": "string"
},
"model": {
"type": "string"
},
"version": {
"type": "string"
}
},
"required": [
"provider",
"model",
"version"
],
"additionalProperties": false
},
"intent": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"archetypeSnapshot": {
"type": "object",
"properties": {
"version": {
"const": "qway.room-program/1",
"type": "string"
},
"archetype": {
"type": "string"
},
"archetypeRevision": {
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"zones": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"purpose": {
"type": "string"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
}
},
"required": [
"reference",
"purpose",
"priority"
],
"additionalProperties": false
}
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"category": {
"type": "string"
},
"zone": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"category",
"zone",
"quantity",
"capacity",
"priority",
"assetAlias",
"placement",
"evidence"
],
"additionalProperties": false
}
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "beside",
"type": "string"
},
{
"const": "facing",
"type": "string"
},
{
"const": "near-window",
"type": "string"
},
{
"const": "wall-alignment",
"type": "string"
},
{
"const": "interior",
"type": "string"
},
{
"const": "access",
"type": "string"
},
{
"const": "visibility",
"type": "string"
},
{
"const": "clearance",
"type": "string"
},
{
"const": "circulation",
"type": "string"
},
{
"const": "minimum-dimensions",
"type": "string"
},
{
"const": "unsupported",
"type": "string"
}
]
},
"subjects": {
"type": "array",
"items": {
"type": "string"
}
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"strength": {
"anyOf": [
{
"const": "hard",
"type": "string"
},
{
"const": "soft",
"type": "string"
}
]
},
"clearanceM": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"description": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"subjects",
"target",
"priority",
"strength",
"clearanceM",
"description",
"evidence"
],
"additionalProperties": false
}
},
"architecture": {
"type": "array",
"items": {
"type": "object",
"properties": {
"reference": {
"type": "string"
},
"kind": {
"anyOf": [
{
"const": "window",
"type": "string"
},
{
"const": "portal",
"type": "string"
},
{
"const": "wall-run",
"type": "string"
},
{
"const": "open-center",
"type": "string"
},
{
"const": "natural-light",
"type": "string"
},
{
"const": "ceiling-light",
"type": "string"
}
]
},
"quantity": {
"type": "number"
},
"priority": {
"anyOf": [
{
"const": "required",
"type": "string"
},
{
"const": "recommended",
"type": "string"
},
{
"const": "optional",
"type": "string"
}
]
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"const": "explicit",
"type": "string"
},
{
"const": "archetype",
"type": "string"
},
{
"const": "inferred",
"type": "string"
}
]
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"reference",
"kind",
"quantity",
"priority",
"evidence"
],
"additionalProperties": false
}
},
"exclusions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"category": {
"type": "string"
},
"evidence": {
"type": "object",
"properties": {
"origin": {
"const": "explicit",
"type": "string"
},
"confidence": {
"type": "number"
},
"explanation": {
"type": "string"
}
},
"required": [
"origin",
"confidence",
"explanation"
],
"additionalProperties": false
}
},
"required": [
"category",
"evidence"
],
"additionalProperties": false
}
},
"uncertainties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"version",
"archetype",
"archetypeRevision",
"purpose",
"capacity",
"style",
"zones",
"needs",
"rules",
"architecture",
"exclusions",
"uncertainties"
],
"additionalProperties": false
},
"bindings": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"intent",
"archetypeSnapshot",
"bindings"
],
"additionalProperties": false
},
"version": {
"const": "qway.furnishing/1",
"type": "string"
},
"purpose": {
"type": "string"
},
"capacity": {
"type": "number"
},
"style": {
"type": "string"
},
"needs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"category": {
"type": "string"
},
"quantity": {
"type": "number"
},
"capacity": {
"anyOf": [
{
"type": "null"
},
{
"type": "number"
}
]
},
"assetAlias": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"placement": {
"anyOf": [
{
"const": "auto",
"type": "string"
},
{
"const": "center",
"type": "string"
},
{
"const": "perimeter",
"type": "string"
}
]
},
"relation": {
"anyOf": [
{
"type": "null"
},
{
"const": "on",
"type": "string"
},
{
"const": "seating",
"type": "string"
},
{
"const": "near-window",
"type": "string"
}
]
},
"target": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"instances": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"identity",
"category",
"quantity",
"capacity",
"assetAlias",
"placement",
"relation",
"target",
"instances"
],
"additionalProperties": false
}
}
},
"required": [
"version",
"purpose",
"capacity",
"style",
"needs"
],
"additionalProperties": false
},
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"label": {
"type": "string",
"maxLength": 200
},
"level": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"parent": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
},
"size": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"backdrop": {
"anyOf": [
{
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"materialId": {
"type": "string"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"north": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"materialId": {
"type": "string"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"south": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"materialId": {
"type": "string"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"east": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"materialId": {
"type": "string"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
},
"west": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"semantic": {
"type": "string",
"maxLength": 200
},
"source": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"const": "image",
"type": "string"
},
"assetId": {
"type": "string"
},
"uri": {
"type": "string"
},
"mediaType": {
"anyOf": [
{
"const": "image/png",
"type": "string"
},
{
"const": "image/jpeg",
"type": "string"
},
{
"const": "image/webp",
"type": "string"
}
]
},
"sha256": {
"type": "string"
},
"byteLength": {
"type": "number"
}
},
"required": [
"kind",
"assetId",
"uri",
"mediaType",
"sha256",
"byteLength"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"kind": {
"const": "asset",
"type": "string"
},
"uri": {
"type": "null"
},
"assetId": {
"type": "string"
}
},
"required": [
"kind",
"uri",
"assetId"
],
"additionalProperties": false
}
]
},
"side": {
"anyOf": [
{
"const": "north",
"type": "string"
},
{
"const": "south",
"type": "string"
},
{
"const": "east",
"type": "string"
},
{
"const": "west",
"type": "string"
}
]
},
"mode": {
"const": "architectural",
"type": "string"
},
"fit": {
"anyOf": [
{
"const": "cover",
"type": "string"
},
{
"const": "contain",
"type": "string"
}
]
},
"projection": {
"const": "flat",
"type": "string"
},
"distance": {
"type": "number"
},
"lighting": {
"anyOf": [
{
"const": "unlit",
"type": "string"
},
{
"const": "lit",
"type": "string"
}
]
},
"enabled": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"materialId": {
"type": "string"
}
},
"required": [
"identity",
"semantic",
"source",
"side",
"mode",
"fit",
"projection",
"distance",
"lighting",
"enabled"
],
"additionalProperties": false
}
},
"required": [],
"additionalProperties": false
}
]
}
},
"required": [
"identity",
"alias",
"label",
"level",
"parent",
"size",
"frame"
],
"additionalProperties": false
}
},
"levels": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"identity",
"label"
],
"additionalProperties": false
}
},
"portals": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"from",
"to",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"entrances": {
"type": "array",
"items": {
"type": "object",
"properties": {
"identity": {
"type": "string"
},
"alias": {
"type": "string",
"maxLength": 100
},
"room": {
"type": "string"
},
"frame": {
"type": "object",
"properties": {
"position": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 3,
"maxItems": 3,
"items": false
},
"quaternion": {
"type": "array",
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"minItems": 4,
"maxItems": 4,
"items": false
}
},
"required": [
"position",
"quaternion"
],
"additionalProperties": false
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"traversable": {
"anyOf": [
{
"const": false,
"type": "boolean"
},
{
"const": true,
"type": "boolean"
}
]
},
"door": {
"anyOf": [
{
"type": "null"
},
{
"type": "string"
}
]
}
},
"required": [
"identity",
"alias",
"room",
"frame",
"width",
"height",
"traversable",
"door"
],
"additionalProperties": false
}
},
"membership": {
"type": "object",
"properties": {},
"required": [],
"additionalProperties": {
"type": "string"
}
}
},
"required": [
"version",
"identity",
"rooms",
"levels",
"portals",
"membership"
],
"additionalProperties": false
}