Scene

Once the descriptive elements of the parent Document object have been defined, the actual content of the script is contained in an array of re-orderable Scene objects that are primarily numbered by their array index (overridden by numbering attribute if necessary).

The purpose of a Scene object is to define the following information:

  • Setting & Context
  • Ordering
  • Metadata
  • Pre-Production Requirements Data

Structuring

A Scene object is comprised of Heading and array of Element objects , like a cue card (or Bootstrap panel). Each requires:

  • A context (INT/EXT/POV etc)
  • A setting (i.e. location)
  • A sequence (DAY/NIGHT/CONTINUOUS)

The description property allows host application to display a “card” view of collaborator notes.

Note

Crucial to the definition of the scene are attributes for production breakdowns: moods, keywords, cast members, and other pre-prod tags useful to multiple departments, such as wardobe and props. The highlighted and/or noted capitalized elements can be manually or automatically listed for easy retrieval.

Attributes

A Scene is referred to primarily by its index in the scenes array, but also can be called by its number as defined in the production process. It is a container for multiple Element objects.

The Body of a scene is an array of Element objects, which differ according to their type property (action, dialogue etc). Each element can be subject to customised access control policies set by the host application.

Individual Properties

A Scene must include a Heading and a body array. The other attributes are optional and primarily for statistical purposes.

Property Description Type Required
animals Sluggable list of animals present in the scene. array[string] No
body An array of Element objects specifying the scene content. array Yes
cast Sluggable list of characters present in the scene. array[string] No
extra Sluggable list of additional/miscellaneous items present in the scene. array[string] No
heading A Heading object specifying setting/context. object Yes
id Unique identifier for the scene. string Yes
locations Sluggable list of locations present in the scene. array[string] No
meta An arbitrary Meta object of custom values. object No
moods Sluggable list of subjective mood keywords describing the scene. array[string] No
props Sluggable list of props present in the scene. array[string] No
sfx Sluggable list of special FX present in the scene. array[string] No
sounds Sluggable list of sounds, music, and audio present in the scene. array[string] No
tags Sluggable list of all related keywords attached to the scene. array[string] No
vfx Sluggable list of visual FX present in the scene. array[string] No
wardrobe Sluggable list of wardrobe items present in the scene. array[string] No

Collection Properties

A Scene must include an array of authors. All other collections are optional.

Property Description Type Required
authors One or more Author objects. array Yes
contributors One or more Contributor objects. array No

Sub-Objects

Author

An Author describes an original writer of the content.

{
  "id": "01979fca-6ac3-479e-9f33-d89498836eb1",
  "given" : "Frank",
  "family": "Darabont",
  "meta" : {
    "property": "value"
  }
}
Property Description Type Required
family Last/family/surname name of the author. string Yes
given First/given name of the author. string Yes
id Unique identifier for the author. string Yes
meta Arbitrary Meta object of custom properties. object No

Note

An Author is defined as the originator of the content which has being written, which may be reviewed or augmented by a Contributor.


Content

A Content block describes a generic piece of text in multiple languages.

{
  "en": "Some text in English",
  "fr": "Quelques textes en français"
}
Property Description Type Required
[lang] Text in the main language specified in the container. string Yes
[iso] Text in the iso language code specified. string No

Contributor

A Contributor describes any third party who has contributed artistically to the content, such as an editor, director, or script doctor.

{
  "id": "8e0cd67f-f9da-46b8-98b9-16169893b439",
  "given" : "John",
  "family": "Doe",
  "roles" : ["doctor", "editor"],
  "meta" : {
    "property": "value"
  }
}
Property Description Type Required
family Last/family/surname name of the contributor. string Yes
given First/given name of the contributor. string Yes
id Unique identifier for the contributor. string Yes
meta Arbitrary Meta object of custom properties. object No
roles Sluggable list of system roles/groups the contributor belongs to. array [string] No

Note

A Contributor is defined as a person reviewing, augmenting, or enhancing content originated by an Author.


Heading

A Heading describes the setting and context of a scene.

{
  "numbering" : 1,
  "page" : 1,
  "context": {
    "en" : "INT"
  },
  "setting": {
    "en" : "CABIN"
  },
  "sequence": {
    "en" : "NIGHT"
  },
  "description" : {
    "en" : "Notes that appear in Card View go here."
  },
  "meta": {
    "example": "custom property data here"
  }
}
Property Description Type Required
context A Content object specifying INT/EXT/POV etc. object Yes
description A Content object detailing the scene. object No
meta An arbitrary Meta object for providing custom values. object No
numbering Production scene number to display. int No
page Page number the scene should appear on. int No
sequence A Content object specifying DAY/NIGHT etc. string Yes
setting A Content object specifying the location of the scene. string Yes

Note

Valid values for a scene context are I/E, INT, EXT, POV.

Note

Valid values for a scene sequence (time) are DAY, NIGHT, DAWN, DUSK, LATER, MOMENTS LATER, CONTINUOUS, MORNING, AFTERNOON, EVENING, THE NEXT DAY.


Meta

A Meta object describes a generic or custom set of properties and their values.

{
  "something": "Anything you want",
}
Property Description Type Required
[key] Any key name. string No
[value] Any value of any type. mixed No

Scene Example

A blank scene could be expressed as the following:

Example ScreenJSON scene object with simplistic values
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
  "heading": {
    "numbering" : 1,
    "page" : 1,
    "context": {
      "en" : "INT"
    },
    "setting": {
      "en" : "CABIN"
    },
    "sequence": {
      "en" : "NIGHT"
    },
    "description" : {
      "en" : "Notes that appear in Card View go here."
    },
    "meta": {
      "example": "custom property data here"
    }
  },
  "body": [

  ],
  "animals": ["DOG"],
  "authors" : ["01979fca-6ac3-479e-9f33-d89498836eb1"],
  "cast": ["MAN", "WOMAN"],
  "contributors" : ["8e0cd67f-f9da-46b8-98b9-16169893b439"],
  "extra": ["SKY"],
  "id" : "ea20e4ea-6b35-4046-8761-b2203eb80628",
  "locations": ["CABIN", "ROOM"],
  "moods" : ["DARK", "EMPTY", "DRUNK", "HORNY", "URGENT", "FUMBLING", "ROUGH"],
  "props": ["DOOR", "LAMP", "WINDOW", "BED"],
  "sfx": ["MONSTER"],
  "sounds": ["BANG"],
  "tags": ["CABIN", "SEX", "INTRO", "ACT-I"],
  "vfx": ["EXPLOSION"],
  "wardrobe" : ["BLOUSE", "FABRIC"]
}