both
Move to both the outgoing and the incoming adjacent vertices, given the edge labels.
Synopsis
both( [edgeLabel] )
      | Syntax conventions | Description | 
|---|---|
| Lowercase and uppercase | Literal keyword. Includes (). | 
                        
Italics | 
                            Variable value. Replace with a user-defined value. | 
[] | 
                            Optional. Square brackets ( [] ) surround
                                optional command arguments. Do not type the square brackets. | 
                        
{} | 
                            Group. Braces ( {} ) identify a group to choose
                                from. Do not type the braces.  | 
                        
 |  | 
                            Or. A vertical bar ( | ) separates alternative
                                elements. Type any one of the elements. Do not type the vertical
                                bar. | 
                        
... | 
                            Repeatable. An ellipsis ( ... ) indicates that
                                you can repeat the syntax element as often as required.  | 
                        
Description
The both() step moves the traversal to both the outgoing and the incoming
        adjacent vertices, given the edge labels. Specifying no edge label will traverse all
        incident edges.
Examples
Get all outgoing and incoming adjacent vertices for all the vertices in the
        graph:
      g.V().both().valueMap()Get all outgoing and incoming adjacent vertices for all the vertices with incident edges
          knows:
    g.V().both('knows).valueMap()