Link Search Menu Expand Document

Session model

Table of contents

  1. Introduction
  2. Session fields
    1. Epoch fields
    2. Data acquisition fields
    3. Manipulation data fields
    4. Behavior data fields
  3. Permissions
  4. Session API access

Introduction

A session is a modular construction that provides flexible and standardized descriptions of various aspects of experiments. The session has several direct fields but is primarily described by four modules:

  1. Behavior: Description of the animal subject(s) behavior during the session collection. A behavior is described by two personal attributes: the setup and the behavioral paradigm.
  2. Data acquisition: Description of the data acquisition files. This module is highly flexible and can describe many types of experimental data, such as Extracellular and Intracellular Electrophysiology, 2-photon microscopy, Miniscope, Audio Recordings, and Behavioral Video Recordings. Details are tailored to each experiment type.
  3. Manipulations: Description of any manipulations performed during an experiment. This crucial module documents alterations to the physiological conditions of a recording. It can describe various types of manipulations, such as Optogenetic Stimulation, Micro Perfusion, Pharmacological Injection, Thermal Perturbation, Transcranial Electrical Stimulation, and Ultrasound Stimulation. A manipulation is described by a protocol, typically consisting of the manipulation profile, power, duration, duty cycle, and number of repetitions.
  4. Epochs: Temporal aspects of a session. An epoch is characterized by a name, start and end times relative to the session’s start. Other modules (Experiment Data, Manipulations, and Behavior) can be linked to epochs, allowing for temporal segmentation of a session.

Session fields

FieldDescription
NameName of the session (required; string; max length: 100 characters; must be unique across BrainSTEM). Example: “Memory_Task_Session1”, “PV_Recording_20240313”
ProjectsProjects the session belongs to (required). Learn more about project inheritance here. Example: “Hippocampal Memory Project”
DescriptionA text description of the session. Pictures can be uploaded and inserted through rich text formatting. Example: “Recording session during novel object recognition task…”
Date and time onsetDate and time of the session onset (YYYY-MM-DD format, e.g., “2023-03-22 14:30:00”). Can be left empty
TagsTags for the session. Great for organizational purposes, quick labeling, and filtering. Tags are shared across all users. Example: “behavior”, “recording”, “morning-session”
Data storageDescribes where the data is stored. Example: “Lab Server”, “External Drive 1”
Name used in storageCustom name for the session used in local data storage (string; max length: 200). Example: “ses01_mem_2024”
Extra fieldsAllows you to add extra fields to the session. Values can be strings or numeric. Saved as key-value pairs. Example: {“Room”: “B115”, “Temperature”: “22C”}
Online repositoriesIf this session has been shared in a public repository, link it here. Example: “DANDI:123456”

Epoch fields

FieldDescription
NameName of the epoch (required; string; max length: 100 characters). Example: “Baseline”, “Stimulus_Period”
StartStart time of the epoch, relative to the session onset. Example: “0:00:00”
EndEnd time of the epoch, relative to the session onset. Example: “0:05:00”
BehaviorBehavior associated with the epoch. Example: “Open field exploration”
Data acquisitionData acquisition associated with the epoch. Example: “Calcium imaging”
ManipulationManipulation associated with the epoch. Example: “Optogenetic stimulation”

Data acquisition fields

Please see the dedicated page describing the Data acquisition model.

Manipulation data fields

Please see the dedicated page describing the Manipulations data model.

Behavior data fields

Please see the dedicated page describing the Behavior data model.

Permissions

The session inherits permissions from its associated projects. Data storage is shared through the project groups, and you can only add data storage associated with the same groups as the selected projects. The relationships in modules also depend on the selected projects.

Visit the permissions page to learn more.

Session API access

The API allows for programmable access to sessions. Learn more about the sessions’ fields and data structure on the Session API page.