2017-06-06 75 views
0

這是在gremlin-scala中。我曾在某頂點遍歷(這是什麼「_」代表如下:Gremlin:選擇邊緣共享屬性的頂點

_.as("vertex").outE().as("outEdge").in().inE().as("inEdge") 
.select("inEdge","outEdge").by("fullName") 
.where("inEdge", P.eq("outEdge")).select("vertex") 

但我得到一個錯誤的。至於以後引用。在()(「outEdge」)聲明:

Error:(55, 40) Cannot prove that org.apache.tinkerpop.gremlin.structure.Edge <:< gremlin.scala.Vertex. 

誰能幫我弄清楚是怎麼回事錯在這裏,更重要的是,這是找頂點具有在其邊緣相匹配的屬性的正確方法是什麼?

在感謝提前。

回答

2

我認爲語法不正確。變化:

_.as("vertex").outE().as("outEdge").in() 

_.as("vertex").outE().as("outEdge").inV() 

當你做outE()你是一個優勢,所以你必須經過的一個頂點這將是inV()(頂點相鄰你開始的地方),要麼,outV() (從你穿過的起點開始的頂點outE()bothV()這將產生兩個邊的兩端的頂點

我認爲你的比較屬性的方法ES是有道理的。其他人可能會發布一種方法來進一步簡化。

相關問題