anchor.diff:  | xo.neo4j.embedded | Datastore implementation for embedded Neo4j databases (local directory or in-memory)
   | xo.neo4j.remote   | Datastore implementation for remote Neo4j databases (connection via bolt protocol)
   |====
  +
  +The following dependencies are defined:
   
   [[architecture:Neo4jDatastore]]
   [source,cypher,role=concept,requiresConcepts="maven:MainArtifact",severity=critical]
  
positive.code: 
  ==== Neo4j Datastore
  
  .XO Neo4j Datastore Components
  [options="header"]
  |====
  
negative.code: 
  === Components
  
  The project is structured into several components which are represented by Maven modules. There are two main types of
  components:
  
  Framework::
    The framework represents the datastore agnostic part. It's reponsibility is the implementation of the client API, lifecycle
    management of instances including caching and triggering actions (CRUD) against the datastore interface (SPI).
  Datastore::
    A datastore is an implementation against a concrete technology, e.g. a Neo4j graph database. The main responsibility is
    the execution of the CRUD operations enforced by the datastore interface.
  
  ==== Framework
  
  