Skip to content
Draft
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
eebdb15
Additional columns for participants.tsv file to cover animal data
ree-gupta May 27, 2024
e6f4325
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] May 27, 2024
793a6d8
Modified age_type requirement level and rearranged columns
ree-gupta May 27, 2024
95804e4
Merge branch 'master' of https://github.com/ree-gupta/bids-specification
ree-gupta May 27, 2024
2f6531b
Update src/schema/objects/columns.yaml
ree-gupta Sep 18, 2024
bb04dc4
Update src/schema/objects/enums.yaml
ree-gupta Sep 18, 2024
8612a98
Applied changes to column definitions and their requirement levels
ree-gupta Mar 17, 2025
cfca31d
Added enum listings for participant age specification
ree-gupta Mar 17, 2025
c558d50
Added enums to columns object for age and lifecycle_stage
ree-gupta Mar 17, 2025
ae2ecab
Apply suggestions from description review
ree-gupta Mar 18, 2025
5135dd4
Apply suggestions from code review
ree-gupta Mar 19, 2025
edbd4b5
Move age_reference from columns definition to metadata definition
ree-gupta Apr 14, 2025
f9e5f68
Add rule for AgeReference in participants.json
ree-gupta Apr 14, 2025
1ad25d4
Merge remote-tracking branch 'origin/master' into pr-1839
yarikoptic May 21, 2025
33895b0
RF: move life_cycle_staget in alphabetical order
yarikoptic May 21, 2025
30f6ec0
ENH: add conditioning recommended by @effigies for AgeReference
yarikoptic May 21, 2025
86ffb22
Remove start_of_death_stage from AgeReference etc + typo fix
yarikoptic May 21, 2025
e7c02b2
Replace bad latin "e.g."
yarikoptic May 21, 2025
f0547cd
Merge branch 'master' into master
effigies May 21, 2025
9aedef1
Update src/schema/objects/columns.yaml
bendichter Jun 12, 2025
761dd5d
Update columns.yaml
lzehl Jun 12, 2025
46cdce4
Update enums.yaml
lzehl Jun 12, 2025
31a72fc
Update metadata.yaml
lzehl Jun 12, 2025
13bbb47
Update columns.yaml
lzehl Jun 12, 2025
b7cbbb9
Update columns.yaml
lzehl Jun 12, 2025
00fb641
Merge branch 'master' into master
lzehl Jun 12, 2025
66b6db0
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jun 12, 2025
0954ee5
Update src/schema/objects/columns.yaml
bendichter Jun 12, 2025
b80dbbb
Update src/schema/objects/columns.yaml
lzehl Jun 12, 2025
193d498
Update src/schema/objects/columns.yaml
bendichter Jun 12, 2025
6a3d382
Update src/schema/objects/columns.yaml
bendichter Jun 12, 2025
f6c4648
Update src/schema/rules/tabular_data/modality_agnostic.yaml
bendichter Jun 12, 2025
d3a22a7
Update src/schema/objects/columns.yaml
bendichter Jun 12, 2025
fc20daf
Update src/schema/objects/columns.yaml
lzehl Jun 12, 2025
e784589
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Jun 12, 2025
e3e0349
Update src/schema/rules/tabular_data/modality_agnostic.yaml
bendichter Jun 12, 2025
31a9cfb
Update src/schema/rules/tabular_data/modality_agnostic.yaml
bendichter Jun 12, 2025
9efd17c
Update src/schema/rules/tabular_data/modality_agnostic.yaml
bendichter Jun 12, 2025
fdc1cc7
Update src/schema/objects/columns.yaml
lzehl Jun 12, 2025
1e775de
Update src/schema/rules/tabular_data/modality_agnostic.yaml
bendichter Jun 12, 2025
ae7b7cf
Merge branch 'bids-standard:master' into master
ree-gupta Jul 30, 2025
28a064f
Update columns.yaml
lzehl Sep 3, 2025
7437e04
Update enums.yaml
lzehl Sep 3, 2025
5610b3d
Update metadata.yaml
lzehl Sep 3, 2025
d39b191
Update metadata.yaml
lzehl Sep 3, 2025
e0aea95
Update enums.yaml
lzehl Sep 3, 2025
3d955e9
Merge branch 'master' into master
ree-gupta Sep 4, 2025
478ccc7
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 4, 2025
a7a31a3
Merge branch 'bids-standard:master' into master
ree-gupta Sep 8, 2025
a308042
Merge remote-tracking branch 'upstream/master'
ree-gupta Sep 8, 2025
285931c
Merge branch 'master' of https://github.com/ree-gupta/bids-specification
ree-gupta Sep 8, 2025
332fd0b
Merge branch 'master' into master
ree-gupta Sep 26, 2025
20d1230
Merge branch 'bids-standard:master' into master
ree-gupta Oct 1, 2025
bb3513c
Make the defintion of age have a more specific attribute AgeReference
ree-gupta Oct 1, 2025
b6a5b37
Switch from a time period term gestation to temporal boundary term LM…
ree-gupta Oct 1, 2025
c739904
Update AgeReference enum to include LMP_Startdate
ree-gupta Oct 1, 2025
43c52fc
Modify the value and display_name to match convention
ree-gupta Oct 1, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions src/schema/objects/columns.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,31 @@ age:
for privacy purposes.
type: number
unit: year
age_category:
name: age_category
display_name: Age category
description: |
For non-numeric description of the age (e.g. developmental stage) a string can be provided.
We RECOMMEND to use the [UBERON life cycle stage](http://purl.obolibrary.org/obo/UBERON_0000105) to specify it.
type: string
age_type:
name: age_type
display_name: Age type
description: |
Type of age measurement (e.g. `postnatal`, `fetal`, `gestational`). If not specified, `postnatal` is assumed.
Copy link
Collaborator

@yarikoptic yarikoptic Jul 17, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is there some ontology or controlled vocab to reference here as well by any chance?

@lzehl says "No!"

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@satra suggested this ontology https://bioportal.bioontology.org/ontologies/FMA/?p=classes&conceptid=http://purl.org/sig/ont/fma/fma312872 (in #1634) however this looks not like a species independent definition (definitions are also very sparse in this ontology)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if age_reference, some time points to consider:

  • fertilization
  • birth
  • gestation
  • ...

it seems we are boiling down to establishing a list of Enums with clear definitions and possibly adding TermURLs for some of them where there is a clear association.

TODO also to formalize such "TermURL" like linking at the level of schema which seems to lack it ATM.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fertilization
UBERON: http://purl.obolibrary.org/obo/GO_0009566
Definition: "The union of gametes of opposite sexes during the process of sexual reproduction to form a zygote. It involves the fusion of the gametic nuclei (karyogamy) and cytoplasm (plasmogamy)."

OR

We suggest a new UBERON term for the life cycle temporal boundaries:
start of embryo stage
UBERON: REQUEST TO ADD
Adapted definition for the usage here: "A life cycle temporal boundary that marks the start of the embryo stage of the organism."


start of neonate stage (synonym: birth)
UBERON: http://purl.obolibrary.org/obo/UBERON_0035946
Definition: "A life cycle temporal boundary that marks the start of the neonate stage of the organism."


Gestation is not covered in UBERON, but we can maybe request to add these terms:

gestational stage (life cycle stage)
UBERON: REQUEST TO ADD
Definition: "A life cycle stage that starts with the first day of the mother's last menstrual period and ends with birth."

start of gestational stage (life cycle boundary)
UBERON: REQUEST TO ADD
Definition: "A life cycle temporal boundary that marks the start of the gestational stage of the organism."

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if age_reference, some time points to consider:

* fertilization

* birth

* gestation

* ...

it seems we are boiling down to establishing a list of Enums with clear definitions and possibly adding TermURLs for some of them where there is a clear association.

TODO also to formalize such "TermURL" like linking at the level of schema which seems to lack it ATM.

Currently the 'TermURL' is a link in the description of the enums, so I am adding it to the overall PR TODO for discussion in the next BEP meeting or otherwise.

type: string
enum:
- $ref: objects.enums.postnatal.value
- $ref: objects.enums.fetal.value
- $ref: objects.enums.gestational.value
birthdate:
name: birthdate
display_name: Birthdate
description: |
Day of birth of the participant. Datetime format and their anonymization are described
in [Units](SPEC_ROOT/common-principles.md#units).
type: string
format: datetime
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we require a time here? This has been a bit cumbersome, as it is often the case that you might know the date of birth but not the exact time. This is pretty common in rodent work.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

agree, if possible it would be nice to allow both: date and datetime
we need to check if date is a supported format in bids

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@yarikoptic found out: date exists already as format.

Copy link

@lzehl lzehl May 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robertoostenveld @effigies could we specify:

format: [ date, datetime ]

edited by @yarikoptic: as datetime mandates to have time component but depending on species, time might not be relevant or known

cardiac:
name: cardiac
display_name: Cardiac measurement
Expand Down
21 changes: 21 additions & 0 deletions src/schema/objects/enums.yaml
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

birth, fertilization and gestation deleted from the enums

Original file line number Diff line number Diff line change
Expand Up @@ -1405,3 +1405,24 @@ microvascular:
display_name: microvascular
description: |
The origin of a tissue: microvascular
postnatal:
value: postnatal
display_name: postnatal
description: |
This is the actual time that has passed since a subject's birth,
also known as “chronological age”.
If age_type is omitted, age is assumed to be this type.
fetal:
value: fetal
display_name: fetal
description: |
Also known as "embryonic age," this measures the age of a
fetus or embryo from the time of conception. It's typically about two weeks
less than the gestational age.
gestational:
value: gestational
display_name: gestational
description: |
This measures the duration of pregnancy from the first day of the
mother's last menstrual period to the current date. This should be included
for experiments where some subjects have not been born.
3 changes: 3 additions & 0 deletions src/schema/rules/tabular_data/modality_agnostic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,9 @@ Participants:
handedness: recommended
strain: recommended
strain_rrid: recommended
birthdate: recommended
age_category: recommended
age_type: optional
index_columns: [participant_id]
additional_columns: allowed

Expand Down