monarch-initiative / biolink-api

API for linked biological knowledge
https://api.monarchinitiative.org/api/
BSD 3-Clause "New" or "Revised" License
64 stars 25 forks source link

/disease/{id}/phenotypes and phenotype/{id}/diseases not symmetric? #224

Open cbizon opened 6 years ago

cbizon commented 6 years ago

If I look for the phenotypes of MONDO:0015967, I find HP:0000833, but if I look for the diseases of HP:0000833, I don't get MONDO:0015967 back.

cmungall commented 6 years ago

We don't necessarily expect this. A query for S will return associations <S' P O>, where this triple entails <S P O> (i.e. S' is a descendant of S).

So your query for MONDO:0015967 ! rare genetic diabetes mellitus will get back associations like

"object": {
"taxon": {
"label": null,
"id": null
},
"label": "Glucose intolerance",
"id": "HP:0000833"
},
"relation": {
"label": "has phenotype",
"id": "RO:0002200",
"inverse": false
},
"type": null,
"slim": null,
"provided_by": [
"https://data.monarchinitiative.org/ttl/hpoa.ttl"
],
"object_extensions": null,
"subject_extensions": null,
"id": "12f26a68-12ca-41e3-ad91-bd6ed625ba7c",
"evidence_graph": {},
"negated": false,
"qualifiers": null,
"publications": [],
"evidence_types": null,
"subject": {
"taxon": {
"label": null,
"id": null
},
"label": "renal cysts and diabetes syndrome",
"id": "MONDO:0007669"
}

because

     is_a MONDO:0020030 ! rare genetic renal disease
      is_a MONDO:0019721 ! syndromic renal or urinary tract malformation
       is_a MONDO:0007669 ! renal cysts and diabetes syndrome *** 

so in your reciprocal query for HP:0000833 you will get back the specific disease MONDO:0007669

Not sure how best to advertise this in an intuitive way in the swagger and/or payload.

cbizon commented 6 years ago

?OK, thanks for the explanation!


From: Chris Mungall notifications@github.com Sent: Tuesday, September 11, 2018 6:56 PM To: biolink/biolink-api Cc: Chris Bizon; Author Subject: Re: [biolink/biolink-api] /disease/{id}/phenotypes and phenotype/{id}/diseases not symmetric? (#224)

We don't necessarily expect this. A query for S will return associations <S' P O>, where this triple entails (i.e. S' is a descendant of S).

So your query for MONDO:0015967 ! rare genetic diabetes mellitus will get back associations like

"object": { "taxon": { "label": null, "id": null }, "label": "Glucose intolerance", "id": "HP:0000833" }, "relation": { "label": "has phenotype", "id": "RO:0002200", "inverse": false }, "type": null, "slim": null, "provided_by": [ "https://data.monarchinitiative.org/ttl/hpoa.ttl" ], "object_extensions": null, "subject_extensions": null, "id": "12f26a68-12ca-41e3-ad91-bd6ed625ba7c", "evidence_graph": {}, "negated": false, "qualifiers": null, "publications": [], "evidence_types": null, "subject": { "taxon": { "label": null, "id": null }, "label": "renal cysts and diabetes syndrome", "id": "MONDO:0007669" }

because

 is_a MONDO:0020030 ! rare genetic renal disease
  is_a MONDO:0019721 ! syndromic renal or urinary tract malformation
   is_a MONDO:0007669 ! renal cysts and diabetes syndrome ***

so in your reciprocal query for HP:0000833 you will get back the specific disease MONDO:0007669

Not sure how best to advertise this in an intuitive way in the swagger and/or payload.

- You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/biolink/biolink-api/issues/224#issuecomment-420453610, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKPyHjIX4vBeiss9Ukrw2_VXnwy9yug4ks5uaD-CgaJpZM4WjvTF.