TimeElement

This element intends to bundle all of the various ways of denoting time or age in phenopackets schema. Starting with version 2, other elements will be required to use a TimeElement rather than any of the more specific elements. For instance, the version 1.0 of PhenotypicFeature uses an OntologyClass for the age of onset of the phenotypic feature. Version 2 will replace this with a TimeElement. This will mean that all references to time and age throughout the phenopacket standard are uniform. That this change was needed became obvious when trying to model an acute phenotypic abnormality such as an episode of fever occurring one day before admission to the hospital.

Data model

Definition of the TimeElement element
Field Type Multiplicity Description
gestational_age GestationalAge (one of the options) measure of the age of a pregnancy
age Age (one of the options) represents age as a ISO8601 duration (e.g., P40Y10M05D).
age_range AgeRange (one of the options) indicates that the individual’s age lies within a given range
ontology_class OntologyClass (one of the options) indicates the age of the individual as an ontology class
timestamp Timestamp (one of the options) indicates a specific time
interval TimeInterval (one of the options) indicates an interval of time

Example

The following shows a TimeElement with the Age option.

timeElement:
    age:
        iso8601duration: "P25Y"

Explanations

gestational_age

A measure of the age of a pregnancy. Gestation, defined as the time between conception and birth, is measured in weeks and days from the first day of the last menstrual period. See GestationalAge.

age

This element can be used to represent age as a ISO8601 duration (e.g., P40Y10M05D). See Age.

age_range

This element can be used indicates that the individual’s age lies within a given range, which may be desirable to help preserve privacy. See AgeRange

ontology_class

If an OntologyClass is used to represent the age of onset of a phenotypic feature, then terms for age of onset can be chosen from the Onset subhierarchy of the HPO. See OntologyClass.

timestamp

A Timestamp can be used to represent a specific time. Note that all timestamps in a phenopacket can be shifted by the same amount to help preserve privacy if desired.

interval

This element can be used to represent a specific interval of time. See TimeInterval.