Graph 获取一个顶点及其标签、属性、入/出顶点及其属性?

Graph 获取一个顶点及其标签、属性、入/出顶点及其属性?,graph,gremlin,tinkerpop3,amazon-neptune,Graph,Gremlin,Tinkerpop3,Amazon Neptune,如何通过name属性找到顶点并获取: 1.将传入边上的顶点(带有标签和属性)关联到此顶点? 2.将输出边上的顶点(带有标签和属性)关联到此顶点? 在单个查询中 我知道.twitter()和.otherV()都可以这样做,我可以使用.valueMap()和.label()来获取元数据和属性,但是的结果(从服务器收到的响应)是的。twitter()或.otherV()没有明确指出和识别哪些是传入的顶点,哪些是传出的顶点 为了能够区分两者,我打电话给: *g.V().has('name','abcd'

如何通过
name
属性找到顶点并获取:
1.将传入边上的顶点(带有标签和属性)关联到此顶点?
2.将输出边上的顶点(带有标签和属性)关联到此顶点?
在单个查询中

我知道
.twitter()
.otherV()
都可以这样做,我可以使用
.valueMap()
.label()
来获取元数据和属性,但是
的结果(从服务器收到的响应)是
的。twitter()
.otherV()
没有明确指出和识别哪些是传入的顶点,哪些是传出的顶点

为了能够区分两者,我打电话给:
*
g.V().has('name','abcd').in().values('name')
用于索引
*
g.V().has('name','abcd').out().value('name')
用于outdegrees

*
g.V().has('name','abcd').union(label(),valueMap())
用于元数据


清楚地知道什么样的响应属于什么集合,特别是在indegrees和outdegrees的情况下。但这是低效的,会导致对服务器进行3次单独的调用。

在这种情况下,您应该使用
project

g.V().has('name', 'josh').
  project('properties', 'out', 'in').
    by(valueMap().
        with(WithOptions.tokens)).
    by(out().values('name').fold()).
    by(__.in().values('name').fold())

示例:

谢谢@noam621。
.with(WithOptions.tokens)
做什么?我的客户机在这方面出错了:
脚本评估错误-响应消息:没有这样的属性:WithOptions for class:Script112885)
返回
id
标签,而不仅仅是属性。您也可以使用不推荐的
valueMap(true)