ga4gh-beacon / beacon-v2

Unified repository for the GA4GH Beacon v2 API standard
Creative Commons Zero v1.0 Universal
23 stars 20 forks source link

Suggestion: add a 'measuredVariable' to individuals:measures #37

Open joerivandervelde opened 2 years ago

joerivandervelde commented 2 years ago

Suggestion for potential improvement. The individuals:measures object (https://github.com/ga4gh-beacon/beacon-v2/blob/main/models/src/beacon-v2-default-model/common/measurement.yaml) including assayCode with measuredValue(value, unit) and this works well for generic medical examinations like blood pressure, heart rate, C-reactive protein, etc.

However, for *omics measurements (e.g. metabolomics, genomics) this becomes problematic because there is no ontology term to represent every possibility such as "measured the read count for COL7A1 expression" or "number of peptide fragments for NM_001267550.1".

An elegant way to resolve this issue (as we have done in current MOLGENIS EMX2 implementation) is to add a String variable called 'measuredVariable'. The assayCode can then point to a type of omics test which may comprise thousands of variables, and measuredVariable can then point to the specific gene, transcript, metabolite etc that was quantified. This does not break the existing model but adds better omics capabilities to it.

mbaudis commented 2 years ago

@joerivandervelde This is getting very specific - however, it should be covered by complexValue? And in any case - here we've been following Phenopackets, so proposing changes if necessary upstream woule be good.

(FYI: I've changed your link to the src version).