g.E().
hasLabel("hiddenFrom").
inV().
hasLabel("Person").
project("Trial", "Site", "Subject ID").
by(__.out().out().values("tag")).
by(__.out().values("tag")).
by(__.values("localId", "uuid"))Subject ID output only outputs the localId property but not uuid property. When I change by(__.values("localId", "uuid")) to by(__.valueMap("localId", "uuid")) I can get the uuid property value in the output.by() modulators only grab the first item in the traversal provided to it so if you want all of them you need to provide your own reducing operator to convert all the items into a single one. typically this is done with fold(): by(__.values("localId", "uuid").fold())e