Skip to contentScreenplay.Company

Story Source Language

SSL 0.1 is Screenplay.Company’s implemented language for representing and exchanging a creative work. It connects ideas, exact words, characters, scenes, revisions and attributed contributions through stable identities.

Version 0.1 · Working specification. SSL is a working name, not a registered or independently adopted standard. Publication does not establish a specification licence or permanent namespace stewardship. Those decisions, independent implementation and production interchange pilots remain open.

Start with one thought

SSL uses UTF-8 JSON. Save this complete example as minimal.story.json. No custom parser, story template or mandatory character questionnaire is needed.

{
  "language": "ssl/0.1",
  "work": "urn:ssl:demo:work",
  "snapshot": "minimal-1",
  "coverage": {
    "mode": "complete",
    "description": "Complete selected illustrative records, without media bytes or historical revisions."
  },
  "namespaces": {
    "core": "urn:ssl:0.1:core",
    "story": "urn:ssl:0.1:story",
    "film": "urn:ssl:0.1:film",
    "prep": "urn:ssl:0.1:prep",
    "shoot": "urn:ssl:0.1:shoot",
    "post": "urn:ssl:0.1:post",
    "delivery": "urn:ssl:0.1:delivery",
    "local": "urn:ssl:demo:vocabulary"
  },
  "heads": {
    "urn:ssl:demo:idea": 1
  },
  "records": [
    {
      "id": "urn:ssl:demo:idea",
      "rev": 1,
      "kind": "story.fragment",
      "fields": {
        "text": "One thought is enough."
      }
    }
  ]
}

The envelope declares the language version, work, snapshot and namespace meanings. Each record has a stable id, immutable revision rev, a kind and its fields. The heads map selects the current revision; record order does not determine story order.

Follow the language

  1. Read Language for values, records, references and extensible definitions.
  2. Use Vocabulary for shared terms. You can introduce a local kind without waiting for a schema release.
  3. Read Queries and computation to select records, traverse references and calculate deterministic results.
  4. Implement Collaboration protocol for proposals, authority, atomic changes and exact receipt recovery.
  5. Check Conformance before claiming compatibility. Declare the capabilities you support.

Preserve meaning and authority

Keep exact prose intact. Store an interpretation as a separate attributed contribution. Preserve unfamiliar fields and kinds. Distinguish missing values, explicit null, empty collections and unknown knowledge. A document never grants permission to change a work or execute code.

Try a query

This query selects draft scenes from the accompanying lifecycle example. Run it against snapshot demo-1 with an SSL-Q evaluator; it is JSON data, not executable JavaScript.

{
  "language": "ssl-q/0.1",
  "snapshot": "demo-1",
  "from": {
    "kind": "film.scene",
    "as": "scene"
  },
  "steps": [
    {
      "op": "where",
      "test": {
        "call": "core.eq@1",
        "args": [
          {
            "path": [
              "scene",
              "fields",
              "state"
            ]
          },
          {
            "lit": "draft"
          }
        ]
      }
    },
    {
      "op": "select",
      "columns": {
        "id": {
          "path": [
            "scene",
            "id"
          ]
        },
        "title": {
          "path": [
            "scene",
            "fields",
            "title"
          ]
        }
      }
    }
  ]
}

Download the lifecycle document, query, expected result and change proposal. All examples use synthetic material.

Implementation and scope

The runtime and desktop consumer implement SSL 0.1 records, definitions, queries, signed owner authoring, receipt recovery, archives, migration and interchange adapters. Installed write, restart and import qualification remain separate from source conformance. Normal Studio authoring still largely uses native owner operations. See Implementation status for evidence and limits.

Lifecycle vocabulary can describe production and editorial material; it does not mean the Studio currently offers those workspaces. SSL complements specialist formats such as Fountain and OTIO and preserves source payloads and declared losses.

The normative contract is the Language, Queries and Collaboration protocol chapters together with the explicitly normative rules in Vocabulary and Conformance. Research, migration guidance, implementation reports and examples provide context.