Skip to content
jbmusso edited this page Jul 12, 2016 · 204 revisions

Attention: this Wiki hosts an outdated version of the TinkerPop framework and Gremlin language documentation.


Blueprints is a collection of interfaces, implementations, ouplementations, and test suites for the property graph data model. Blueprints is analogous to the JDBC, but for graph databases. As such, it provides a common set of interfaces to allow developers to plug-and-play their graph database backend. Moreover, software written atop Blueprints works over all Blueprints-enabled graph databases. Within the TinkerPop software stack, Blueprints serves as the foundational technology for:

  • Pipes: A lazy, data flow framework
  • Gremlin: A graph traversal language
  • Frames: An object-to-graph mapper
  • Furnace: A graph algorithms package
  • Rexster: A graph server

The documentation herein will provide information regarding the use of Blueprints.1 Please join the Gremlin users group at http://groups.google.com/group/gremlin-users for all TinkerPop related discussions.

Blueprints JavaDoc: 2.6.02.5.02.4.02.3.02.2.02.1.02.0.01.21.11.00.90.80.70.60.50.40.30.20.1
Blueprints WikiDoc: 2.6.02.5.02.4.02.3.02.2.02.1.02.0.0


<dependency>
   <groupId>com.tinkerpop.blueprints</groupId>
   <artifactId>blueprints-core</artifactId>
   <version>2.6.0</version>
</dependency>

Non-Maven users can get the raw release jars from Apache’s Central Repository. Snapshots can be obtained from Sonatype (see Maven Repositories for more information).

Graph graph = new Neo4jGraph("/tmp/my_graph");
Vertex a = graph.addVertex(null);
Vertex b = graph.addVertex(null);
a.setProperty("name","marko");
b.setProperty("name","peter");
Edge e = graph.addEdge(null, a, b, "knows");
e.setProperty("since", 2006);
graph.shutdown();

The Major Differences Between Blueprints 1.x and 2.x

1 Blueprints documentation is up to date with the current Blueprints codebase, not with the latest Blueprints release.