From 1f177ddc83878b12b61abe4b9c45656f90a62a9d Mon Sep 17 00:00:00 2001 From: Ryan Ly <310197+rly@users.noreply.github.com> Date: Wed, 21 Jan 2026 13:51:10 -0800 Subject: [PATCH 1/3] Enhance age dataset documentation Expanded documentation for the 'age' dataset, including details on ISO 8601 Duration format and age range representation. Copied from NWB best practices nwbinspector.readthedocs.io/en/dev/best_practices/nwbfile_metadata.html#subject --- core/nwb.file.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/nwb.file.yaml b/core/nwb.file.yaml index 5f135149..f20f5787 100644 --- a/core/nwb.file.yaml +++ b/core/nwb.file.yaml @@ -415,7 +415,13 @@ groups: datasets: - name: age dtype: text - doc: Age of subject. Can be supplied instead of 'date_of_birth'. + doc: "Age of subject. Can be supplied instead of 'date_of_birth'. + The ISO 8601 Duration format is recommended, e.g., 'P90D' for 90 days old. + A timedelta will automatically be converted to The ISO 8601 Duration format. + If the precise age is unknown, an age range can be given by '[lower bound]/[upper bound]' e.g. + 'P10D/P20D' would mean that the age is in between 10 and 20 days. If only the lower bound is known, + then including only the slash after that lower bound can be used to indicate a missing bound. + For instance, 'P90Y/' would indicate that the age is 90 years or older." quantity: '?' attributes: - name: reference From c43ef06126d596b3c972a25f7549294dd5998698 Mon Sep 17 00:00:00 2001 From: Ryan Ly <310197+rly@users.noreply.github.com> Date: Wed, 21 Jan 2026 13:52:25 -0800 Subject: [PATCH 2/3] Add release notes --- docs/format/source/format_release_notes.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/format/source/format_release_notes.rst b/docs/format/source/format_release_notes.rst index 2be07957..d392b2a7 100644 --- a/docs/format/source/format_release_notes.rst +++ b/docs/format/source/format_release_notes.rst @@ -12,6 +12,8 @@ Minor changes that are typically used together for analysis, such as spike sorting. (#659) - Specified that units for ``ElectrodesTable`` coordinate fields (``x``, ``y``, ``z``, ``rel_x``, ``rel_y``, ``rel_z``) should be in microns. (#658) +- Expanded documentation for the ``Subject`` 'age' dataset, including details on ISO 8601 Duration format and + age range representation. 2.9.0 (June 26, 2025) From 4b423295b49faf34a33a1b07b93e372f94443a34 Mon Sep 17 00:00:00 2001 From: Ryan Ly <310197+rly@users.noreply.github.com> Date: Wed, 4 Mar 2026 08:23:09 -0800 Subject: [PATCH 3/3] Apply suggestion from @rly --- core/nwb.file.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/core/nwb.file.yaml b/core/nwb.file.yaml index f20f5787..94ca57a5 100644 --- a/core/nwb.file.yaml +++ b/core/nwb.file.yaml @@ -417,7 +417,6 @@ groups: dtype: text doc: "Age of subject. Can be supplied instead of 'date_of_birth'. The ISO 8601 Duration format is recommended, e.g., 'P90D' for 90 days old. - A timedelta will automatically be converted to The ISO 8601 Duration format. If the precise age is unknown, an age range can be given by '[lower bound]/[upper bound]' e.g. 'P10D/P20D' would mean that the age is in between 10 and 20 days. If only the lower bound is known, then including only the slash after that lower bound can be used to indicate a missing bound.