Extensions

The optional extension schemas – OmniProcess, DataTrove, OpenBCI – and what each provides

Studyflow elements ship in layered moddle schemas (see Authoring schemas for the authoring format). The two core schemas – core and cognitive – are always loaded and their elements are documented in Elements. This page catalogs the optional extensions.

Enabling and disabling extensions

Open Settings → Extensions in the modeler to toggle the optional schemas. Disabled schemas are excluded from the palette and not recognized when opening diagrams; reload the page to apply changes. Core schemas cannot be disabled.

Note: Behaverse assessment tasks are no longer a separate extension. BehaverseTask (formerly behaverse:Task) and its BehaverseScene/AgentType enums are now part of the always-loaded cognitive core schema – see Elements.

OmniProcess

Generic data-operation activities for preprocessing and analysis pipelines (see Model a preprocessing pipeline).

  • Transform – apply a function to each element in a data stream.
  • Map – element-wise (1 → 1) transform producing a new stream.
  • FlatMap – one-to-many transform (unnest, expand, explode).
  • Filter – drop items that fail a criterion.
  • Reduce – aggregate a stream to a single value (per group).
  • Compose – bundle several operations into one logical pipeline step.
  • PreprocessfMRI, PreprocessEEG – template-scoped preprocessing types, surfaced only via templates.

Templates: operations that are really “a generic operation plus a function” ship as prefilled templates rather than dedicated types – Group (a Map bound to python://omniprocess.group, grouping key via arguments), Split Data (a Transform bound to scikit-learn’s train_test_split, sizes via arguments), and Anonymize Data (a Map bound to python://omniprocess.anonymize); the implementation function reference is a prefilled default you can repoint at your own function. Plus the neuroimaging prefabs: an fMRIPrep task (PreprocessfMRI with fMRIPrep-style parameters such as output_spaces) and an EEGPrep subprocess (PreprocessEEG with clean_artifacts/ICA parameters).

DataTrove

Large-scale text/data processing pipelines mirroring the DataTrove library.

  • Document – a single data item (text plus metadata).
  • DataFolder – a folder of documents; a dataset or collection.
  • Reader – read data from various formats and yield documents.
  • Writer – write documents to various formats.
  • Extractor – extract text content from raw formats (e.g. HTML).
  • Filter – remove documents based on rules/criteria.
  • Stats – collect statistics on the dataset.
  • Tokens – tokenize data or count tokens.
  • Dedup – deduplication blocks.

OpenBCI

Biosignal acquisition with OpenBCI hardware. The device attribute selects the board – Cyton (8-channel), Cyton + Daisy (16-channel), Ganglion (4-channel), or Galea (the VR headset) – so Galea is one supported device rather than the whole schema.

  • OpenBCISession – pool/container for a complete acquisition session. Carries device (which board), streamProtocol (lsl / brainflow / openbci_gui), modalities (EEG/EMG/ECG/EOG/EDA/PPG/eye-tracking/head-IMU/audio), and electrodeType (dry / wet / hybrid). The VR head-mounted display (vrDevice) appears only when device is galea.
  • OpenBCIRecording – the biosignal dataset produced by a session; specializes studyflow:Dataset with a modality list, eegChannels, and eegSamplingRateHz.

The session phases – mount, impedance check, calibration, baseline, task, unmount, export – are not element types: they are ordinary BPMN tasks preset by the session templates, each carrying its parameters in configurations/documentation.

Templates: a Cyton EEG session (non-VR: mount → impedance → baseline → task → export) and a Galea VR session (mount → impedance → calibration → baseline → VR task → unmount → export).