|
@@ -196,20 +196,20 @@ class ModelverseState(object):
|
|
|
return (None, status.FAIL_RDICT_OOB)
|
|
|
|
|
|
q = """
|
|
|
- SELECT ?value
|
|
|
+ SELECT ?value_node
|
|
|
WHERE {
|
|
|
- ?main_edge MV:hasSource _:%s .
|
|
|
- ?main_edge MV:hasTarget ?value_node .
|
|
|
- ?value_node MV:hasValue ?value .
|
|
|
+ ?main_edge MV:hasSource _:%s ;
|
|
|
+ MV:hasTarget ?value_node .
|
|
|
+ ?attr_edge MV:hasSource ?main_edge ;
|
|
|
+ MV:hasTarget ?attr_node .
|
|
|
+ ?attr_node MV:hasValue '%s' .
|
|
|
}
|
|
|
- """ % (node)
|
|
|
+ """ % (node, json.dumps(value))
|
|
|
print(q)
|
|
|
result = self.graph.query(q)
|
|
|
- print(len(result))
|
|
|
- print([i for i in result])
|
|
|
if len(result) == 0:
|
|
|
return (None, status.FAIL_RDICT_NOT_FOUND)
|
|
|
- return (result[0], status.SUCCESS)
|
|
|
+ return (list(result)[0][0], status.SUCCESS)
|
|
|
|
|
|
def read_dict_keys(self, node):
|
|
|
if not isinstance(node, rdflib.BNode):
|