Setups

Note

TODO: make a nice object diagram for “setups” section

“setups” section

A typical setups section would look like below:

in: “setups.json”
{
    "$schema":      "https://.../amorphys.json#properties/setups",
    "$description": "experimental setups for the foraging-behavior project",

    "postdoc-room": {
        "type": "Setup",
        "description": "the setup for investigation of human foraging behavior.",

        "components": {
            "subject": { "$ref": "subjects.json#animal" },
            "KeisukesDesk": {
                ...
            },
            "fridge": {
                ...
            },
            ...
        },

        "layout": [
            {
                "@context":     "https://.../amorphys-spatial",
                "@id":          { "$ref": "../components/fridge" },
                "left-side-of": { "$ref": "../components/KeisukesDesk" }
            },
            ...
        ]
    }
}
class setups

The setups section of amorphys is a subclass of section, and consists of a mapping of Setup objects.

Multiple Setup objects may be included inside this section, and each of them can be referred to from elsewhere by its key (i.e. "setups/postdoc-room" in the above example).

$description

a recommended string field inherited from the section class.

Setup class

class Setup

Setup is a subclass of Context. A Setup object consists of the following parts, in addition to the standard properties defined in Context:

type

a required string object inherited from Entity. Unless you define any subclasses, this property must be "Setup".

description

a required string description inherited from Entity.

components

a mapping to physical objects (subjects and apparatuses) that comprise the setup. The value part can be either a Spatial instance, or a JSON reference to it.

Note that only Spatial objects can become the value part of this mapping.

layout

an array of spatial relationships between those defined in the components section.

Each Relationship instance must have one and only one spatial restriction in it, but can optionally have the other types of relationship keys.

reference

an optional set of URIs, in string or [ string ], inherited from Entity.