Interface ITripleStore
Interface for Triple Stores.
Inherited Members
Namespace: VDS.RDF
Assembly: dotNetRdf.dll
Syntax
public interface ITripleStore : IDisposable
Remarks
A Triple Store may be a representation of some storage backed actual store or just a temporary collection of Graphs created for working with. Note that an implementation is not required to provide a definitive view of a Triple Store and may only provide a limited/partial snapshot of the underlying store. Check the documentation for the various implementations to see what type of view of a Triple Store they actually provide.
Properties
| Edit this page View SourceGraphs
Gets the Graph Collection of Graphs in this Triple Store.
Declaration
BaseGraphCollection Graphs { get; }
Property Value
Type | Description |
---|---|
BaseGraphCollection |
IsEmpty
Gets whether a TripleStore is Empty.
Declaration
bool IsEmpty { get; }
Property Value
Type | Description |
---|---|
bool |
this[Uri]
Gets a Graph from the Triple Store;.
Declaration
[Obsolete("Replaced by this[IRefNode]")]
IGraph this[Uri graphUri] { get; }
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Graph URI. |
Property Value
Type | Description |
---|---|
IGraph |
this[IRefNode?]
Gets a graph from the triple store.
Declaration
IGraph this[IRefNode? graphName] { get; }
Parameters
Type | Name | Description |
---|---|---|
IRefNode | graphName | The name of the graph to be retrieved. May be null to retrieve the default (unnamed) graph. |
Property Value
Type | Description |
---|---|
IGraph |
Quads
Gets all the Quads in the Triple Store which are currently loaded in memory.
Declaration
IEnumerable<Quad> Quads { get; }
Property Value
Type | Description |
---|---|
IEnumerable<Quad> |
Remarks
Since a Triple Store object may represent only a snapshot of the underlying Store evaluating this enumerator may only return some of the Quads in the Store and may depending on specific Triple Store return nothing.
Triples
Gets all the Triples in the Triple Store which are currently loaded in memory (see remarks).
Declaration
IEnumerable<Triple> Triples { get; }
Property Value
Type | Description |
---|---|
IEnumerable<Triple> |
Remarks
Since a Triple Store object may represent only a snapshot of the underlying Store evaluating this enumerator may only return some of the Triples in the Store and may depending on specific Triple Store return nothing.
UriFactory
Get the preferred URI factory to use when creating URIs in this store.
Declaration
IUriFactory UriFactory { get; }
Property Value
Type | Description |
---|---|
IUriFactory |
Methods
| Edit this page View SourceAdd(IGraph)
Adds a Graph into the Triple Store.
Declaration
bool Add(IGraph g)
Parameters
Type | Name | Description |
---|---|---|
IGraph | g | Graph to add. |
Returns
Type | Description |
---|---|
bool |
Add(IGraph, bool)
Adds a Graph into the Triple Store.
Declaration
bool Add(IGraph g, bool mergeIfExists)
Parameters
Type | Name | Description |
---|---|---|
IGraph | g | Graph to add. |
bool | mergeIfExists | Controls whether the Graph should be merged with an existing Graph of the same Uri if it already exists in the Triple Store. |
Returns
Type | Description |
---|---|
bool |
Add(IRefNode?)
Adds an empty graph with the specified name to the triple store.
Declaration
bool Add(IRefNode? graphName)
Parameters
Type | Name | Description |
---|---|---|
IRefNode | graphName |
Returns
Type | Description |
---|---|
bool | True if a new graph was added, false otherwise. |
AddFromUri(Uri)
Adds a Graph into the Triple Store by dereferencing the Graph Uri to get the RDF and then load the resulting Graph into the Triple Store.
Declaration
bool AddFromUri(Uri graphUri)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Uri of the Graph to be added. |
Returns
Type | Description |
---|---|
bool |
AddFromUri(Uri, bool)
Adds a Graph into the Triple Store by dereferencing the Graph Uri to get the RDF and then load the resulting Graph into the Triple Store.
Declaration
bool AddFromUri(Uri graphUri, bool mergeIfExists)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Uri of the Graph to be added. |
bool | mergeIfExists | Controls whether the Graph should be merged with an existing Graph of the same Uri if it already exists in the Triple Store. |
Returns
Type | Description |
---|---|
bool |
AddFromUri(Uri, bool, Loader)
Adds a Graph into the Triple Store by dereferencing the Graph Uri to get the RDF and then load the resulting Graph into the Triple Store.
Declaration
bool AddFromUri(Uri graphUri, bool mergeIfExists, Loader loader)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Uri of the Graph to be added. |
bool | mergeIfExists | Controls whether the Graph should be merged with an existing Graph of the same Uri if it already exists in the Triple Store. |
Loader | loader | The loader to use for retrieving and parsing the graph data. |
Returns
Type | Description |
---|---|
bool |
Assert(Quad)
Assert a quad in the triple store.
Declaration
void Assert(Quad quad)
Parameters
Type | Name | Description |
---|---|---|
Quad | quad | The quad to be added. |
Remarks
If the quad's graph is not currently in the triple store, a new graph will be added.
GetQuads(INode?, INode?, INode?, IRefNode?, bool)
Return an enumeration of all quads in the store that match the specified subject, predicate, object and/or graph.
Declaration
IEnumerable<Quad> GetQuads(INode? s = null, INode? p = null, INode? o = null, IRefNode? g = null, bool allGraphs = true)
Parameters
Type | Name | Description |
---|---|---|
INode | s | The subject node to match. Null matches all subject nodes. |
INode | p | The predicate node to match. Null matches all predicate nodes. |
INode | o | The object node to match. Null matches all object nodes. |
IRefNode | g | The graph to match. Null matches all graphs if |
bool | allGraphs |
Returns
Type | Description |
---|---|
IEnumerable<Quad> |
HasGraph(Uri)
Checks whether the Graph with the given Uri is in this Triple Store.
Declaration
[Obsolete("Replaced by HasGraph(IRefNode)")]
bool HasGraph(Uri graphUri)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Graph Uri. |
Returns
Type | Description |
---|---|
bool |
HasGraph(IRefNode?)
Checks whether the graph with the given name is in this triple store.
Declaration
bool HasGraph(IRefNode? graphName)
Parameters
Type | Name | Description |
---|---|---|
IRefNode | graphName | The name of the graph to check for. |
Returns
Type | Description |
---|---|
bool | True if this store contains a graph with the specified name, false otherwise. |
Remarks
Pass null forgraphName
to check for the default (unnamed) graph.
Remove(Uri?)
Removes a Graph from the Triple Store.
Declaration
[Obsolete("Replaced by Remove(IRefNode)")]
bool Remove(Uri? graphUri)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Graph Uri of the Graph to remove. |
Returns
Type | Description |
---|---|
bool |
Remove(IRefNode?)
Removes a graph from the triple store.
Declaration
bool Remove(IRefNode? graphName)
Parameters
Type | Name | Description |
---|---|---|
IRefNode | graphName | The name of the graph to remove. |
Returns
Type | Description |
---|---|
bool | True if the operation removed a graph, false if no matching graph was found to remove. |
Retract(Quad)
Remove a quad from the triple store.
Declaration
void Retract(Quad quad)
Parameters
Type | Name | Description |
---|---|---|
Quad | quad | The quad to be removed. |
Remarks
If the quad's graph is not currently in the triple store, this operation will make no modification to the triple store. Otherwise it will invoke the Retract method on the graph.
Events
| Edit this page View SourceGraphAdded
Event which is raised when a Graph is added
Declaration
event TripleStoreEventHandler? GraphAdded
Event Type
Type | Description |
---|---|
TripleStoreEventHandler |
GraphChanged
Event which is raised when a Graphs contents changes
Declaration
event TripleStoreEventHandler? GraphChanged
Event Type
Type | Description |
---|---|
TripleStoreEventHandler |
GraphCleared
Event which is raised when a Graph is cleared
Declaration
event TripleStoreEventHandler? GraphCleared
Event Type
Type | Description |
---|---|
TripleStoreEventHandler |
GraphMerged
Event which is raised when a Graph has a merge operation performed on it
Declaration
event TripleStoreEventHandler? GraphMerged
Event Type
Type | Description |
---|---|
TripleStoreEventHandler |
GraphRemoved
Event which is raised when a Graph is removed
Declaration
event TripleStoreEventHandler? GraphRemoved
Event Type
Type | Description |
---|---|
TripleStoreEventHandler |