Skip to main content

Shape

{
  "id":       "<uuid>",
  "authors":  ["<uuid>"],
  "heading":  { /* slugline */ },
  "body":    [ /* elements */ ],
  "cast":    ["<uuid>"],

  "animals": [],
  "extra":   [],
  "locations": [],
  "moods":   [],
  "props":   [],
  "sfx":     [],
  "sounds":  [],
  "tags":    [],
  "vfx":     [],
  "wardrobe": [],

  "contributors": [],
  "meta": {}
}

Required

FieldTypeDescription
iduuidScene identifier.
authorsuuid[] (≥1)Author ids from the root.
headingsluglineStructured scene heading.
bodyarrayOrdered list of elements. May be empty for outlining.

Optional

FieldTypeDescription
contributorsuuid[]Contributors who touched this scene.
castuuid[] uniqueCharacters present in the scene. Projection over body.
animalsslug[] uniqueAny animal taxonomy.
extraslug[] uniqueExtras required.
locationsslug[] uniqueAdditional location tags beyond the heading.
moodsslug[] uniqueMood tags.
propsslug[] uniqueProps.
sfxslug[] uniqueSpecial effects.
soundsslug[] uniqueSound design cues.
tagsslug[] uniqueFree-form editorial tags.
vfxslug[] uniqueVisual effects.
wardrobeslug[] uniqueWardrobe.
metametaExtension.

Breakdown semantics

The ten production taxonomies — animals, extra, locations, moods, props, sfx, sounds, tags, vfx, wardrobe — are each a unique array of slugs. Populated by breakdown tools, they make scheduling, budgeting, and discovery queryable without re-parsing scene text. A prop referenced as "revolver" in scene 3 is the same prop as "revolver" in scene 47 — the slug is the identifier.

cast as a projection

cast is redundant with the character references inside body elements, but is kept as an explicit array so tooling can answer “who is in this scene” without walking the body. It should contain every character uuid referenced by any dialogue or character (cue) element inside body.