Summary
The doc string for SpatialSeries.reference_frame in nwb.behavior.yaml only describes the direction use case of SpatialSeries, leaving position users without guidance.
Current doc string
Description defining what exactly 'straight-ahead' means.
Problem
SpatialSeries is used for both direction data (e.g. gaze angle) and position data (e.g. animal location in an enclosure). The type-level doc correctly covers both with examples:
- Direction: "straight-ahead" as a pixel on a monitor
- Position: (0, 0) as the top-left corner of an enclosure
But reference_frame itself only mentions "straight-ahead", which is meaningless for position data. A user storing position coordinates has no schema guidance on how to describe their reference frame.
Proposed fix
Expand the reference_frame doc to cover both use cases, e.g.:
Description of the reference frame for the data. For position data, describe
the origin and orientation of the coordinate system (e.g. '(0, 0) is the
top-left corner of the enclosure, x increases rightward, y increases downward').
For direction data, describe what constitutes straight-ahead or zero angle
(e.g. 'straight-ahead is a pixel on a monitor at (512, 400)').
Optional: To avoid duplication, the main doc string could point to reference_frame dataset
Summary
The
docstring forSpatialSeries.reference_frameinnwb.behavior.yamlonly describes the direction use case ofSpatialSeries, leaving position users without guidance.Current doc string
Problem
SpatialSeriesis used for both direction data (e.g. gaze angle) and position data (e.g. animal location in an enclosure). The type-level doc correctly covers both with examples:But
reference_frameitself only mentions "straight-ahead", which is meaningless for position data. A user storing position coordinates has no schema guidance on how to describe their reference frame.Proposed fix
Expand the
reference_framedoc to cover both use cases, e.g.:Optional: To avoid duplication, the main doc string could point to
reference_framedataset