BaseGraphStorage

class BaseGraphStorage(ABC):

An abstract base class for graph storage systems.

get_client

def get_client(self):

Get the underlying graph storage client.

get_schema

def get_schema(self):

Get the schema of the graph storage

get_structured_schema

def get_structured_schema(self):

Get the structured schema of the graph storage

refresh_schema

def refresh_schema(self):

Refreshes the graph schema information.

add_triplet

def add_triplet(
    self,
    subj: str,
    obj: str,
    rel: str
):

Adds a relationship (triplet) between two entities in the database.

Parameters:

  • subj (str): The identifier for the subject entity.
  • obj (str): The identifier for the object entity.
  • rel (str): The relationship between the subject and object.

delete_triplet

def delete_triplet(
    self,
    subj: str,
    obj: str,
    rel: str
):

Deletes a specific triplet from the graph, comprising a subject, object and relationship.

Parameters:

  • subj (str): The identifier for the subject entity.
  • obj (str): The identifier for the object entity.
  • rel (str): The relationship between the subject and object.

query

def query(self, query: str, params: Optional[Dict[str, Any]] = None):

Query the graph store with statement and parameters.

Parameters:

  • query (str): The query to be executed.
  • params (Optional[Dict[str, Any]]): A dictionary of parameters to be used in the query. Defaults to None.

Returns:

List[Dict[str, Any]]: A list of dictionaries, each dictionary represents a row of results from the query.