ソースと宛先の頂点 ID、およびエッジ ラベルを指定して、エッジのプロパティ値を取得しようとしています。
グレムリン端末では、以下が機能しました:
g.V("fromNodeId").outE("edgeLabel").where(inV().hasID("toNodeID")).values("edgeProp")
悲しいことに、groovy では inV() と hasID() が認識されず、それを機能させるための正しいインポートが見つかりません。
試したインポートは次のとおりです。
import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource
import org.apache.tinkerpop.gremlin.process.*
import org.apache.tinkerpop.gremlin.groovy.*
import org.apache.tinkerpop.gremlin.groovy.function.*
import org.apache.tinkerpop.gremlin.groovy.util.*
import org.apache.tinkerpop.gremlin.pipes.filter.*
import org.apache.tinkerpop.gremlin.structure.Edge
import org.apache.tinkerpop.gremlin.structure.Vertex
import org.apache.tinkerpop.gremlin.structure.EdgeTest;
import org.apache.tinkerpop.gremlin.structure.Graph
他のクエリは次のように機能することに注意してください。
String getPropValueByID(Long id, String prop){
def result = []
**g.V(id).values(prop).fill(result)**
if(result.empty) return null
return result.first()
}