Open lopierra opened 1 year ago
this might change in future if transformer/schematic changes, so might not be relevant
This is indeed a symptom of LinkML and schematic being out of sync. Those properties are in the model, but we define the mapping between them in the transformer because if schematic gets an object in the range (e.g. Participant hasStudy Study) then it puts all the Study attributes in the manifest for Participant even though the only desired one is StudyCode.
Schematic is working on a fix for this so it is only temporary. I Think we should keep this ticket alive until that happens so we can be reminded to remove it when the fix is implemented in schematic.
Thanks!
We also need to include the Global IDs for participants, samples, etc. now since the FHIR team is using those. Maybe we could consider renaming to hasStudyCode
, hasParticipantGlobalId
, hasParticipantExternalId
, etc. when we revisit.
Currently the specific mappings for
hasParticipant
,hasBiospecimen
,hasStudy
, andhasDatafile
are only found in schematic_json_transformer.py and not in the model itself, but this is confusing to external users (e.g. Eric from FHIR team)How these are defined in YAML, e.g.:
How they are defined in transformer: