Behaviour Json
Here we detail the json-schema for the custom json based file format needed to import data into Antelop from a NWB file.
schema = {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"specification": {"type": "string", "const": "antelop-behaviour"},
"version": {"type": "string"},
"reference_point": {"type": "string"},
"features": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"source": {
"type": "object",
"properties": {
"source_type": {
"type": "string",
"enum": [
"acquisition",
"stimulus",
"processing",
"deeplabcut",
],
},
"module": {"type": "string"},
"video": {"type": "string"},
},
"required": ["source_type"],
},
"ownership": {
"type": "object",
"properties": {
"ownership": {
"type": "string",
"enum": ["world", "self"],
},
"animal": {"type": "integer"},
},
"required": ["ownership"],
},
"data_type": {
"type": "string",
"enum": ["digital", "analog", "interval", "kinematics"],
},
"coordinates": {
"type": "array",
"minItems": 3,
"maxItems": 3,
"items": {"type": "number"},
},
"description": {"type": "string"},
},
"required": ["name", "source", "data_type", "description"],
},
},
"videos": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {"type": "string"},
"description": {"type": "string"},
"format": {"type": "string", "enum": ["avi", "mp4", "mov"]},
"reference_point": {"type": "string"},
},
"required": ["name", "description", "format"],
},
},
},
"required": ["specification", "version", "reference_point", "features"],
}