Interface PropertyGraph<ID>

Type Parameters:
ID - type of all identifiers in graph
All Known Subinterfaces:
EventPropertyGraph<ID>
All Known Implementing Classes:
AbstractPropertyGraph, DirectedPropertyGraph, UndirectedPropertyGraph

public interface PropertyGraph<ID>
A graph is composed of vertices and edges. A vertex is able to connect to other vertices through edges. Edges connect two vertices. A graph can be directed or undirected.

Vertices have an id which uniquely identifies the vertex within the graph. Edges have a source and target property which are the ids of the vertex endpoints. Edges are optionally identified.

At all times the graph is valid event when removing connected vertices.

Undirected graphs ignore source/target order in edges.

Once a vertex or edge is removed it can no longer modify the graph or be modified.