-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
creative-mode "Explain-style" prototype for Pathfinder option (Translator Jan 2024 Relay) #771
Comments
Running Explain-type queries for the imatinib use casesSummary:
imatinib ➡️ asthmaShould go through c-kit, mast cells, and immune cell activation. I used these IDs using SRI Name Resolver: There are direct edges for imatinib ➡️ asthma
First, I ran an Explain-query w/o any intermediates (1 QEdge connecting them):
full response: imatinib-direct-asthma.json click to see query-graph
imatinib ➡️ 1 intermediate ⬅️ asthma
Then, I ran an Explain-query w/ 1 intermediate QNode. full response here: imatinib-inter-asthma-4.json click to see query-graph
Overall
Expected results
intermediate node categories analysisI searched the response using the console logs for the intermediate node categories, and got this list:
Interestingly, Pathway didn't show up at all - BiologicalProcess, MolecularActivity, PhysiologicalProcess, PathologicalProcess all did, before the intersecting of intermediate nodes. Console logs for intermediate node categories
After getting the intersection of intermediate nodes, the final console log for the categories was:
But before then, during the imatinib hop, the categories were:
And during the asthma hop (before the intersecting began), the categories were:
imatinib ➡️ CML (Chronic myelogenous leukemia)Should go through BCR-ABL and cell cycle I used these IDs using SRI Name Resolver: There are direct edges for imatinib ➡️ CML and its descendants
First, I ran an Explain-query w/o any intermediates (1 QEdge connecting them):
full response: imatinib-direct-cml.json click to see query-graph
imatinib ➡️ 1 intermediate ⬅️ CML
Then, I ran an Explain-query w/ 1 intermediate QNode. full response here: imatinib-inter-cml-2.json click to see query-graph
Overall
Expected results
intermediate node categories analysisI searched the response using the console logs for the intermediate node categories, and got this list:
Console logs for intermediate node categories
After getting the intersection of intermediate nodes, the final console log for the categories was:
But before then, during the imatinib hop, the categories were (basically the same as for the imatinib-asthma testing)
And during the CML hop (before the intersecting began), the categories were:
|
Basic implementation ideasEDIT: after discussion with Andrew 1/8. 1. I think the creative-mode query would be like this (click to expand): QNodes aren't set with any biolink-category, the QEdge predicate is set to "related_to"
I think having no QEdge predicate would also make sense, but our current creative-mode won't run when I don't specify a predicate: I get 0 results and the warning log This is for imatinib ➡️ CML (Chronic myelogenous leukemia)
click to see generic templates for 0 and 1 intermediates
Notes:
First template: 0 intermediates
Second template: 1 intermediate
Issues for implementationA. Template-group matching -> Andrew agrees with this
I think Pathfinder queries should only use Pathfinder templates (when both QNodes have 1 ID and
B. Odd bug(?) noticed before winter break
I'm not sure if this will be a problem if we adjust the template-group matching and test again with a Pathfinder-template-group + queries. But before winter break, I noticed that:
C. Problems setting up Pathfinder template-groups
With query-handler's
recreating the problems
First, check out query-handler's
Second, query BTE with this Pathfinder-style query
For me, BTE returned no results and the console log said Third, I changed the templateGroup.json contents to include every biolink category (
Then I tried the same query again. I got status 500 and these console logs:
D. Other implementation issues
|
Data-source note from Andrew: perhaps a Cell marker database (gene <-> cell type and gene <-> tissue) like http://xteam.xbio.top/CellMarker/search.jsp?quickSearchInfo=c-kit would be helpful to add... |
@colleenXu Do you have the data from these queries so we can play with it? |
We don't have a full TRAPI response (running all the templates and merging the results into 1 set). The paths in the result sub-graphs may also be too long for the current UI to handle (> 3 edges, 4 nodes?). You could try working with some of BTE's responses for the individual template-runs (you can ignore the extra notes, that's for our team):
|
Queries ran locally for prototype presentation: https://docs.google.com/presentation/d/1gFFGJGumtHU_ktHKM2FKauTpC-0bvAh-H_ZI49-qDsI/edit?usp=sharing all queries set imatinib as ChemicalEntity, disease as DiseaseOrPhenotypicFeature. I'm assuming BTE's templates would set the template placeholder nodes to these categories - which is how our templates/implementation currently work. We could adjust this to have no "template categories" in the future maybe? (Ran on local instance, main branches + fix-776 branches for workspace/api-response-transform for #776. Also w/o threading or caching.) 1 intermediateimatinib (ChemicalEntity) → NamedThing ← asthma (DiseaseOrPheno)
imatinib-inter-asthma-latest.json
imatinib (ChemicalEntity) → NamedThing ← CML (DiseaseOrPheno)
imatinib-inter-cml-latest.json
Gene → CellSee previous post for imatinib → Gene → Cell ← asthma imatinib (ChemicalEntity) → Gene → Cell ← CML (DiseaseOrPheno)
Gene → PhysiologicalProcess,Pathwayimatinib (ChemicalEntity) → Gene → PhysiologicalProcess,Pathway ← Asthma (DiseaseOrPheno)
imatinib-gene-physiopath-asthma.json
imatinib (ChemicalEntity) → Gene → PhysiologicalProcess, Pathway ← Asthma (DiseaseOrPheno)
imatinib-gene-physiopath-cml.json
|
I did not respond to one of your previous comments, but 3 edges is fine. That is the max though. I look forward to seeing this! |
Closing, pathfinder efforts are now in #794 |
For the Jan 2024 Relay, Translator teams are supposed to bring prototypes for the next-creative-mode choices: Pathfinder and multi-curie. Our team has chosen to focus on Pathfinder.
This issue is for discussing / working on this prototype.
Current assumptions:
The text was updated successfully, but these errors were encountered: