The below query to Tier 0 causes nearly nonsense responses, clearly due to one of the subclass query forms being applied incorrectly.
Retriever should NEVER seek subclasses of an unpinned node.
curl -X POST \
https://dev.retriever.biothings.io/query \
-H 'Content-Type: application/json' \
--data '{
"parameters": {
"timeout": -1,
"tiers": [
0
]
},
"message": {
"query_graph": {
"nodes": {
"n0": {
"ids": [
"CHEBI:2666"
]
},
"n1": {
"categories": [
"biolink:PhenotypicFeature"
]
}
},
"edges": {
"e0": {
"object": "n0",
"subject": "n1",
"predicates": [
"biolink:related_to_at_instance_level"
]
}
}
}
}
}'
This is the dgraph query payload (with some formatting for readability):
{
q0_node_n0(func: eq(vN_id, "CHEBI:2666")) @cascade(vN_id) {
expand(vN_Node) in_edges_e0: ~vN_object @filter(eq(vN_predicate_ancestors, "related_to_at_instance_level")) @cascade(vN_predicate, vN_subject) {
expand(vN_Edge) { vN_sources expand(vN_Source) }
node_n1: vN_subject @filter(eq(vN_category, "PhenotypicFeature")) @cascade(vN_id) { expand(vN_Node) }
} out_edges-symmetric_e0: ~vN_subject @filter(eq(vN_predicate_ancestors, "related_to_at_instance_level")) @cascade(vN_predicate, vN_object) {
expand(vN_Edge) { vN_sources expand(vN_Source) }
node_n1: vN_object @filter(eq(vN_category, "PhenotypicFeature")) @cascade(vN_id) { expand(vN_Node) }
} out_edges-subclassObjB_e0: ~vN_subject @filter(eq(vN_predicate_ancestors, "related_to_at_instance_level")) @cascade(vN_predicate, vN_object) {
expand(vN_Edge) { vN_sources expand(vN_Source) }
node_intermediate_n1: vN_object @filter(has(vN_id)) @cascade(vN_id, ~vN_subject) {
expand(vN_Node) out_edges-subclassObjB-tail_e0: ~vN_subject @filter(eq(vN_predicate_ancestors, "subclass_of")) @cascade(vN_predicate, vN_object) {
expand(vN_Edge) { vN_sources expand(vN_Source) }
node_n1: vN_object @filter(eq(vN_category, "PhenotypicFeature")) @cascade(vN_id) { expand(vN_Node) }
}
}
}
}
}
The below query to Tier 0 causes nearly nonsense responses, clearly due to one of the subclass query forms being applied incorrectly.
Retriever should NEVER seek subclasses of an unpinned node.
This is the dgraph query payload (with some formatting for readability):