Skip to content
This repository has been archived by the owner on May 23, 2024. It is now read-only.

Use case: use CAM-KP to "explode" an edge #537

Open
gaurav opened this issue Jul 13, 2022 · 7 comments
Open

Use case: use CAM-KP to "explode" an edge #537

gaurav opened this issue Jul 13, 2022 · 7 comments
Assignees

Comments

@gaurav
Copy link
Member

gaurav commented Jul 13, 2022

Given an edge, can CAM-KP provide a graph that replaces that edge with a series of edges and nodes that describes how that edge is defined in one or more pathways.

Benefits:

  • Explains the relationship between the two nodes
  • Provides additional nodes for follow-up queries
@gaurav
Copy link
Member Author

gaurav commented Jul 19, 2022

Chris things "[X] upregulates/downregulates [geneX]" might be a templated query later this year, so that's what we should be focusing on.

@karafecho
Copy link

Here are two different ARAX queries that you can pull gene-chemical edges or just genes from, as described on slide 8 in this deck:

https://arax.ncats.io/?r=44679
https://arax.ncats.io/?r=52713

@gaurav
Copy link
Member Author

gaurav commented Oct 6, 2022

Unless I'm misunderstanding how TRAPI works (which is very, very likely), there's no way to return what we need to via TRAPI to meet this need, since what we effectively want to ask is, "Is there any connection between [X] and [Y] in any CAM, no matter how many hops".

  • Is that correct?
  • If so, would it be a good idea to make a non-TRAPI API for accessing this information? I was thinking of something like /connect?terms=X:1,Y:2,Z:3 which would return either a custom JSON object or a list of TRAPIResults.
  • Is there the potential for a "creative mode" here for we make connections across CAMs, with all the risks that engenders (CAM 1 says X is related to Y, CAM 2 says Y is related to Z, but we mean Y in the liver in CAM 1 and Y in the kidneys in CAM 2).

@karafecho
Copy link

I'm not sure I'm fully understanding your comment, but essentially, I'm seeking a way to invoke CAMs to better explain the chemical - gene edges in the workflow below. For instance, the current predicate linking biolink:Gene to biolink:ChemicalEntity (or biolink:Drug, Small Molecule) in Paths A and B is biolink:affects, which isn't terribly informative. Can we construct a TRAPI query that targets CAM and returns more informative information, e.g., biolink:ChemicalEntity - biolink:up/downregulates - biolink:Gene? The tissue/cell specificity is not an issue in Path A, but in Path B, you could use the output from the first hop to biolink:GrossAnatomicalStructure to anchor the results, if that makes sense.

image

@karafecho
Copy link

Gaurav, is this issue worth a short meeting to discuss?

@gaurav
Copy link
Member Author

gaurav commented Nov 2, 2022

Hi Kara! I think it's okay to wait until we get the other use case (#536) sorted out before we need to dive deeply into this. However, if you'd like to meet to go over what I've been working on, that would be fine! I'm hoping to have the lookup endpoint (#572) done and backend issues (ExposuresProvider/cam-pipeline#80) fixed by early next week, so sometime next week might be a good time to meeting. Let me know!

@karafecho
Copy link

I agree that this can wait, now that I better understand the plan. Sure, let's meet after the lookup endpoint is active. Thanks!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants