Implementation
Packages and role outputs
Keep scenario content, publication identity, and product records distinct.
Format definition
Define a portable package and enforce role-specific information release in generated outputs.
Scenario standard · Execution capabilities
Parameters
package.manifest
{ documentPath: string, assetIds: Asset ID[], digest: string }
Required
Archive manifest points to scenario.json and its asset manifest. Digest is SHA-256 of the exact UTF-8 scenario.json bytes, not a claim of clinical correctness or semantic content identity.
outputs.views[]
object
Optional; omitted means unspecified
Explicit content selection filtered by audience. Learner views exclude facilitator-only content even when named in includeIds.
Behavior and validation
- A portable archive contains scenario.json, manifest.json, and assets/. Reject duplicate entry names and path traversal before extraction. Package mechanics remain distinct from content revision identity.
- Digest verification covers exactly the packaged UTF-8 bytes of scenario.json and is a package-integrity check. It must not be reused as semantic content identity.
- Static learner briefs include only initial learner-visible content. Run-time views additionally require satisfied disclosure and result availability. Hidden content must not be sent to the learner browser or embedded in its downloadable source.
- Actual learner identity, scores, cue delivery records, session dates, and event history stay outside scenario content. Outputs identify scenarioId and revision so the delivered view can be traced.
Shared format conventions · All format elements · Download specification
The scenario document
A plain .usim download contains the canonical JSON document directly. Import preserves its scenario identity, content and references. Workspace publications, delivery records and run state remain separate.
Use the schema download to check structure and the semantic rules to check references. Execution capabilities are checked before a run. Archive packaging is a separate consumer capability.
Four products, one foundation
| Product | Scenario relationship | Included capability |
|---|---|---|
| Builder | Authors, validates, publishes, and renders | Output tools |
| Marketplace | Discovers, distributes, and reuses | Shared content and modules |
| Center | Coordinates scenario requirements | Local delivery preparation |
| Campus | Runs a fixed revision for learning | Classroom |