langchain_community.graphs.rdf_graph.RdfGraph¶

class langchain_community.graphs.rdf_graph.RdfGraph(source_file: Optional[str] = None, serialization: Optional[str] = 'ttl', query_endpoint: Optional[str] = None, update_endpoint: Optional[str] = None, standard: Optional[str] = 'rdf', local_copy: Optional[str] = None, graph_kwargs: Optional[Dict] = None)[source]¶

RDFlib wrapper for graph operations.

Modes: * local: Local file - can be queried and changed * online: Online file - can only be queried, changes can be stored locally * store: Triple store - can be queried and changed if update_endpoint available Together with a source file, the serialization should be specified.

Security note: Make sure that the database connection uses credentials

that are narrowly-scoped to only include necessary permissions. Failure to do so may result in data corruption or loss, since the calling code may attempt commands that would result in deletion, mutation of data if appropriately prompted or reading sensitive data if such data is present in the database. The best way to guard against such negative outcomes is to (as appropriate) limit the permissions granted to the credentials used with this tool.

See https://python.langchain.com/docs/security for more information.

Set up the RDFlib graph

Parameters
  • source_file (Optional[str]) – either a path for a local file or a URL

  • serialization (Optional[str]) – serialization of the input

  • query_endpoint (Optional[str]) – SPARQL endpoint for queries, read access

  • update_endpoint (Optional[str]) – SPARQL endpoint for UPDATE queries, write access

  • standard (Optional[str]) – RDF, RDFS, or OWL

  • local_copy (Optional[str]) – new local copy for storing changes

  • graph_kwargs (Optional[Dict]) – Additional rdflib.Graph specific kwargs

that will be used to initialize it, if query_endpoint is provided.

Attributes

get_schema

Returns the schema of the graph database.

Methods

__init__([source_file, serialization, ...])

Set up the RDFlib graph

load_schema()

Load the graph schema information.

query(query)

Query the graph.

update(query)

Update the graph.

__init__(source_file: Optional[str] = None, serialization: Optional[str] = 'ttl', query_endpoint: Optional[str] = None, update_endpoint: Optional[str] = None, standard: Optional[str] = 'rdf', local_copy: Optional[str] = None, graph_kwargs: Optional[Dict] = None) None[source]¶

Set up the RDFlib graph

Parameters
  • source_file (Optional[str]) – either a path for a local file or a URL

  • serialization (Optional[str]) – serialization of the input

  • query_endpoint (Optional[str]) – SPARQL endpoint for queries, read access

  • update_endpoint (Optional[str]) – SPARQL endpoint for UPDATE queries, write access

  • standard (Optional[str]) – RDF, RDFS, or OWL

  • local_copy (Optional[str]) – new local copy for storing changes

  • graph_kwargs (Optional[Dict]) – Additional rdflib.Graph specific kwargs

Return type

None

that will be used to initialize it, if query_endpoint is provided.

load_schema() None[source]¶

Load the graph schema information.

Return type

None

query(query: str) List[rdflib.query.ResultRow][source]¶

Query the graph.

Parameters

query (str) –

Return type

List[rdflib.query.ResultRow]

update(query: str) None[source]¶

Update the graph.

Parameters

query (str) –

Return type

None

Examples using RdfGraph¶