From 07d9acb2ff9dcd8b8f194d66b7305931002145f6 Mon Sep 17 00:00:00 2001 From: Kevin Schaper Date: Mon, 13 Jan 2025 09:36:58 -0800 Subject: [PATCH] add original predicate to model --- backend/src/monarch_py/datamodels/model.py | 10 ++++++++++ backend/src/monarch_py/datamodels/model.yaml | 6 ++++++ frontend/src/api/model.ts | 2 ++ frontend/src/pages/node/AssociationsTable.vue | 18 ++++++++++++++++++ 4 files changed, 36 insertions(+) diff --git a/backend/src/monarch_py/datamodels/model.py b/backend/src/monarch_py/datamodels/model.py index b093c635..4e54c8c9 100644 --- a/backend/src/monarch_py/datamodels/model.py +++ b/backend/src/monarch_py/datamodels/model.py @@ -477,6 +477,11 @@ class Association(ConfiguredBaseModel): ..., json_schema_extra={"linkml_meta": {"alias": "predicate", "domain_of": ["Association", "CompactAssociation"]}}, ) + original_predicate: Optional[str] = Field( + None, + description="""used to hold the original relation/predicate that an external knowledge source uses before transformation to match the biolink-model specification.""", + json_schema_extra={"linkml_meta": {"alias": "original_predicate", "domain_of": ["Association"]}}, + ) object: str = Field( ..., json_schema_extra={"linkml_meta": {"alias": "object", "domain_of": ["Association", "CompactAssociation"]}} ) @@ -1243,6 +1248,11 @@ class DirectionalAssociation(Association): ..., json_schema_extra={"linkml_meta": {"alias": "predicate", "domain_of": ["Association", "CompactAssociation"]}}, ) + original_predicate: Optional[str] = Field( + None, + description="""used to hold the original relation/predicate that an external knowledge source uses before transformation to match the biolink-model specification.""", + json_schema_extra={"linkml_meta": {"alias": "original_predicate", "domain_of": ["Association"]}}, + ) object: str = Field( ..., json_schema_extra={"linkml_meta": {"alias": "object", "domain_of": ["Association", "CompactAssociation"]}} ) diff --git a/backend/src/monarch_py/datamodels/model.yaml b/backend/src/monarch_py/datamodels/model.yaml index 602399c7..9da15db8 100644 --- a/backend/src/monarch_py/datamodels/model.yaml +++ b/backend/src/monarch_py/datamodels/model.yaml @@ -37,6 +37,7 @@ classes: - subject_taxon - subject_taxon_label - predicate + - original_predicate - object - original_object - object_namespace @@ -562,6 +563,11 @@ slots: range: string original_object: range: string + original_predicate: + range: string + description: >- + used to hold the original relation/predicate that an external knowledge + source uses before transformation to match the biolink-model specification. original_subject: range: string pathway: diff --git a/frontend/src/api/model.ts b/frontend/src/api/model.ts index d055530d..5a3827d1 100644 --- a/frontend/src/api/model.ts +++ b/frontend/src/api/model.ts @@ -126,6 +126,8 @@ export interface Association { subject_taxon?: string, subject_taxon_label?: string, predicate: string, + /** used to hold the original relation/predicate that an external knowledge source uses before transformation to match the biolink-model specification. */ + original_predicate?: string, object: string, original_object?: string, /** The namespace/prefix of the object entity */ diff --git a/frontend/src/pages/node/AssociationsTable.vue b/frontend/src/pages/node/AssociationsTable.vue index 99be842a..c1b449b2 100644 --- a/frontend/src/pages/node/AssociationsTable.vue +++ b/frontend/src/pages/node/AssociationsTable.vue @@ -80,6 +80,19 @@ /> + +