From 58f7d910f431b3529c924a0179a51cab9bd773c4 Mon Sep 17 00:00:00 2001 From: Eric Deutsch Date: Wed, 1 Dec 2021 11:56:50 -0800 Subject: [PATCH 1/3] Propose QEdge.negated and Edge.negated Addresses #281 --- TranslatorReasonerAPI.yaml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/TranslatorReasonerAPI.yaml b/TranslatorReasonerAPI.yaml index ffeb3739..635ba6ee 100644 --- a/TranslatorReasonerAPI.yaml +++ b/TranslatorReasonerAPI.yaml @@ -587,7 +587,7 @@ components: type: object description: >- An edge in the QueryGraph used as an filter pattern specification in a - query. If the optional predicate property is not specified, + query. If the optional predicates property is not specified, it is assumed to be a wildcard match to the target knowledge space. If specified, the ontological inheritance hierarchy associated with the term provided is assumed, such that edge bindings returned may be @@ -600,6 +600,12 @@ components: $ref: '#/components/schemas/BiolinkPredicate' minItems: 1 nullable: true + negated: + type: boolean + description: >- + If set to true, then the query seeks assertions that are + explictly negated. i.e. evidence of absence is required, rather + than absence of evidence. subject: type: string example: https://omim.org/entry/603903 @@ -820,6 +826,11 @@ components: allOf: - $ref: '#/components/schemas/BiolinkPredicate' nullable: true + negated: + type: boolean + description: >- + If set to true, then the assertion is explictly negated with + evidence of absence, rather than absence of evidence. subject: $ref: '#/components/schemas/CURIE' example: OMIM:603903 From e57cd29bdc73556c3e254dfa8fef6db5955a3829 Mon Sep 17 00:00:00 2001 From: Sierra Taylor Moxon Date: Tue, 21 Mar 2023 08:21:54 -0700 Subject: [PATCH 2/3] add negated as a special property in a TRAPI edge --- TranslatorReasonerAPI.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/TranslatorReasonerAPI.yaml b/TranslatorReasonerAPI.yaml index 8c76706d..54285deb 100644 --- a/TranslatorReasonerAPI.yaml +++ b/TranslatorReasonerAPI.yaml @@ -1072,6 +1072,15 @@ components: oneOf: - $ref: '#/components/schemas/CURIE' nullable: false + negated: + description: >- + Indicates whether the statement expressed in an Edge is + negated. If true, the statement is negated. This also + reflects the implementation in Biolink Model for + negating an edge. + type: boolean + nullable: false + default: false attributes: description: A list of additional attributes for this edge items: From 32f1cb4ecf93f5656b38caa5d347bf240c1a50a2 Mon Sep 17 00:00:00 2001 From: Sierra Taylor Moxon Date: Tue, 21 Mar 2023 08:25:42 -0700 Subject: [PATCH 3/3] add a property to meta knowledge edge that is 'can_be_negated' to alert users of this resource to expect negated edges --- TranslatorReasonerAPI.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/TranslatorReasonerAPI.yaml b/TranslatorReasonerAPI.yaml index 54285deb..85bb2970 100644 --- a/TranslatorReasonerAPI.yaml +++ b/TranslatorReasonerAPI.yaml @@ -1277,6 +1277,16 @@ components: description: >- Object node category of this relationship edge. example: biolink:Protein + can_be_negated: + type: boolean + description: >- + Indicates that this edge can be negated in the data source + presenting the edge. The edge property is different here from the + negated property in the Edge object in order to reuse the same edge + in the meta knowledge graph to represent both positive and negated + edges of this type. + example: false + default: false knowledge_types: description: >- A list of knowledge_types that are supported by the service.