GraphRecall

Trait GraphRecall 

Source
pub trait GraphRecall: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn add_node(&self, node: &GraphNode) -> Result<(), CapabilityError>;
    fn add_edge(&self, edge: &GraphEdge) -> Result<(), CapabilityError>;
    fn traverse(
        &self,
        query: &GraphQuery,
    ) -> Result<GraphResult, CapabilityError>;
    fn find_nodes(
        &self,
        label: &str,
        properties: Option<&Value>,
    ) -> Result<Vec<GraphNode>, CapabilityError>;
    fn get_node(&self, id: &str) -> Result<Option<GraphNode>, CapabilityError>;
    fn delete_node(&self, id: &str) -> Result<(), CapabilityError>;
    fn clear(&self) -> Result<(), CapabilityError>;
}
Expand description

Trait for graph stores that enable knowledge graph operations.

Graph stores capture structured relationships between entities. Like vector stores, they are caches that can be rebuilt.

Required Methods§

Source

fn name(&self) -> &str

Name of this graph store.

Source

fn add_node(&self, node: &GraphNode) -> Result<(), CapabilityError>

Add a node to the graph.

§Errors

Returns error if operation fails.

Source

fn add_edge(&self, edge: &GraphEdge) -> Result<(), CapabilityError>

Add an edge between nodes.

§Errors

Returns error if operation fails.

Source

fn traverse(&self, query: &GraphQuery) -> Result<GraphResult, CapabilityError>

Query the graph by traversal.

§Errors

Returns error if query fails.

Source

fn find_nodes( &self, label: &str, properties: Option<&Value>, ) -> Result<Vec<GraphNode>, CapabilityError>

Find nodes by label and properties.

§Errors

Returns error if query fails.

Source

fn get_node(&self, id: &str) -> Result<Option<GraphNode>, CapabilityError>

Get a node by ID.

§Errors

Returns error if query fails.

Source

fn delete_node(&self, id: &str) -> Result<(), CapabilityError>

Delete a node and its edges.

§Errors

Returns error if deletion fails.

Source

fn clear(&self) -> Result<(), CapabilityError>

Clear all nodes and edges.

§Errors

Returns error if clear fails.

Implementors§