Basic Example

To get a better understanding of how to use Gremlex, it would be easier to see what a Gremlin query looks like and how it translates to a Gremlex query.

Gremlin Query


Gremlex Query

|> Graph.v()
|> Graph.has("name", "marko")
|> Graph.out("knows")
|> Graph.out("knows")
|> Graph.values("name")
|> Client.query

Basic Usage

The two main modules that you’ll want to use are Gremlex.Graph and Gremlex.Client.

Gremlex.Graph is the module that hosts all the functions needed to build a Gremlin query. The DSL is a simple set of functions that carries over a graph for every step. Once you’ve defined your query, you can simply call Gremlex.Client.query/1 to perform it.

iex(1)> alias Gremlex.Graph
iex(2)> alias Gremlex.Client
iex(3)> Graph.g() |> Graph.v() |> Client.query
     id: 1,
     label: "person",
     properties: %{age: [29], name: ["marko"]}

Raw Queries

We are still early in development and thus do not have every function supported. For more complex queries, we suggest using Client.query/1.