Open sstemann opened 3 years ago
imProving Agent doesn't support cyclical queries at this time. Here is the ARAX dev info:
{
"description": "imProving Agent currently only supports linear queries; returning empty message...",
"message": {},
"status": "Query unprocessable",
"validation_result": {
"message": "",
"size": "0.51 kB",
"status": "PASS",
"version": "1.1.1"
}
}
ARAX’s query graph interpreter complains on cyclic queries (by default, it treats edges as undirected). However, the DSL (ARAXi) successfully executes, but finds no results
add_qnode(ids=MONDO:0010161, key=n0)
add_qnode(categories=biolink:Gene, key=n1)
add_qnode(categories=biolink:ChemicalSubstance, key=n2)
add_qedge(subject=n1, object=n0, key=e0)
add_qedge(subject=n1, object=n2, key=e1)
add_qedge(subject=n0, object=n2, key=e2)
expand(kp=RTX-KG2)
overlay(action=compute_ngd, virtual_relation_label=N1, subject_qnode_key=n0, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N2, subject_qnode_key=n1, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N3, subject_qnode_key=n1, object_qnode_key=n0)
resultify()
filter_results(action=limit_number_of_results, max_results=30)
So it appears to be that (at least in the RTX-KG2 KP), there are no paths found satisfying this query. If you remove edges e1
or e2
, you do get results, but not when you require all of them. You can make one of the edges optional via:
add_qnode(ids=MONDO:0010161, key=n0)
add_qnode(categories=biolink:Gene, key=n1)
add_qnode(categories=biolink:ChemicalSubstance, key=n2)
add_qedge(subject=n1, object=n0, key=e0)
add_qedge(subject=n1, object=n2, key=e1)
add_qedge(subject=n0, object=n2, key=e2,option_group_id=b)
expand(kp=RTX-KG2)
overlay(action=compute_ngd, virtual_relation_label=N1, subject_qnode_key=n0, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N2, subject_qnode_key=n1, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N3, subject_qnode_key=n1, object_qnode_key=n0)
resultify()
filter_results(action=limit_number_of_results, max_results=30)
https://arax.ncats.io/?r=15960
Or
add_qnode(ids=MONDO:0010161, key=n0)
add_qnode(categories=biolink:Gene, key=n1)
add_qnode(categories=biolink:ChemicalSubstance, key=n2)
add_qedge(subject=n1, object=n0, key=e0)
add_qedge(subject=n1, object=n2, key=e1 ,option_group_id=a)
add_qedge(subject=n0, object=n2, key=e2)
expand(kp=RTX-KG2)
overlay(action=compute_ngd, virtual_relation_label=N1, subject_qnode_key=n0, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N2, subject_qnode_key=n1, object_qnode_key=n2)
overlay(action=compute_ngd, virtual_relation_label=N3, subject_qnode_key=n1, object_qnode_key=n0)
resultify()
filter_results(action=limit_number_of_results, max_results=30)
The last URL is probably the intended results: https://arax.ncats.io/?r=15961
CAM-KP does not have data on diseases so 0 results are expected. We do have data for edges between genes and chemical substance.
Query: tyroCycle.json PK: 588d1339-1d9e-4684-a62d-d18a712aa887 MONDO:0010161
Results Tracking Sheet