Show / Hide Table of Contents

Class BaseTripleStore

Abstract Base Class for a Triple Store.

Inheritance
object
BaseTripleStore
PersistentTripleStore
SimpleTripleStore
TripleStore
Implements
ITripleStore
IDisposable
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: VDS.RDF
Assembly: dotNetRdf.dll
Syntax
public abstract class BaseTripleStore : ITripleStore, IDisposable

Constructors

| Edit this page View Source

BaseTripleStore(BaseGraphCollection)

Creates a new Base Triple Store.

Declaration
protected BaseTripleStore(BaseGraphCollection graphCollection)
Parameters
Type Name Description
BaseGraphCollection graphCollection

Graph Collection to use.

Fields

| Edit this page View Source

_graphs

Collection of Graphs that comprise the Triple Store.

Declaration
protected BaseGraphCollection _graphs
Field Value
Type Description
BaseGraphCollection

Properties

| Edit this page View Source

Graphs

Gets the Collection of Graphs that comprise this Triple Store.

Declaration
public BaseGraphCollection Graphs { get; }
Property Value
Type Description
BaseGraphCollection
| Edit this page View Source

IsEmpty

Gets whether the Triple Store is empty.

Declaration
public virtual bool IsEmpty { get; }
Property Value
Type Description
bool
| Edit this page View Source

this[Uri?]

Gets the Graph with the given URI.

Declaration
[Obsolete("Replaced by this[IRefNode]")]
public IGraph this[Uri? graphUri] { get; }
Parameters
Type Name Description
Uri graphUri

Graph URI.

Property Value
Type Description
IGraph
| Edit this page View Source

this[IRefNode?]

Gets a graph from the triple store.

Declaration
public 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
| Edit this page View Source

Quads

Gets all the Quads in the Triple Store which are currently loaded in memory.

Declaration
public 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.

| Edit this page View Source

Triples

Gets all the Triples in the Triple Store.

Declaration
public IEnumerable<Triple> Triples { get; }
Property Value
Type Description
IEnumerable<Triple>
| Edit this page View Source

UriFactory

Get the preferred URI factory to use when creating URIs in this store.

Declaration
public abstract IUriFactory UriFactory { get; }
Property Value
Type Description
IUriFactory

Methods

| Edit this page View Source

Add(IGraph)

Adds a Graph into the Triple Store.

Declaration
public virtual bool Add(IGraph g)
Parameters
Type Name Description
IGraph g

Graph to add.

Returns
Type Description
bool
| Edit this page View Source

Add(IGraph, bool)

Adds a Graph into the Triple Store using the chosen Merging Behaviour.

Declaration
public virtual bool Add(IGraph g, bool mergeIfExists)
Parameters
Type Name Description
IGraph g

Graph to add.

bool mergeIfExists

Whether the Graph should be merged with an existing Graph with the same Base Uri.

Returns
Type Description
bool
| Edit this page View Source

Add(IRefNode)

Add a new empty graph with the specified name to the triple store

Declaration
public virtual bool Add(IRefNode graphName)
Parameters
Type Name Description
IRefNode graphName

The name of the graph to add.

Returns
Type Description
bool

True if the execution resulted in a new graph being added to the triplestore, false otherwise.

| Edit this page View Source

AddFromUri(Uri)

Adds a Graph into the Triple Store which is retrieved from the given Uri.

Declaration
public virtual bool AddFromUri(Uri graphUri)
Parameters
Type Name Description
Uri graphUri

Uri of the Graph to load.

Returns
Type Description
bool
| Edit this page View Source

AddFromUri(Uri, bool)

Adds a Graph into the Triple Store which is retrieved from the given Uri using the chosen Merging Behaviour.

Declaration
public virtual bool AddFromUri(Uri graphUri, bool mergeIfExists)
Parameters
Type Name Description
Uri graphUri

Graph to add.

bool mergeIfExists

Whether the Graph should be merged with an existing Graph with the same Base Uri.

Returns
Type Description
bool
| Edit this page View Source

AddFromUri(Uri, bool, Loader)

Adds a Graph into the Triple Store which is retrieved from the given Uri using the chosen Merging Behaviour.

Declaration
public virtual bool AddFromUri(Uri graphUri, bool mergeIfExists, Loader loader)
Parameters
Type Name Description
Uri graphUri

Graph to add.

bool mergeIfExists

Whether the Graph should be merged with an existing Graph with the same Base Uri.

Loader loader

The loader to use to retrieve and parse remote data.

Returns
Type Description
bool
| Edit this page View Source

Assert(Quad)

Assert a quad in the triple store.

Declaration
public 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.

| Edit this page View Source

AttachEventHandlers(IGraph)

Helper method which attaches the Triple Store's Event Handlers to the relevant events of a Graph.

Declaration
protected void AttachEventHandlers(IGraph g)
Parameters
Type Name Description
IGraph g

Graph.

| Edit this page View Source

DetachEventHandlers(IGraph)

Helper method which detaches the Triple Store's Event Handlers from the relevant events of a Graph.

Declaration
protected void DetachEventHandlers(IGraph g)
Parameters
Type Name Description
IGraph g
| Edit this page View Source

Dispose()

Disposes of the Triple Store.

Declaration
public abstract void Dispose()
Remarks

Derived classes must override this to implement required disposal actions.

| Edit this page View Source

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
public 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 allGraphs is true, or only the unnamed graph is allGraphs is false.

bool allGraphs
Returns
Type Description
IEnumerable<Quad>
| Edit this page View Source

GetTriplesFromGraph(IGraph, INode?, INode?, INode?)

Returns an enumeration of the Triples in the specified graph that match the specified node filters.

Declaration
protected virtual IEnumerable<Triple> GetTriplesFromGraph(IGraph graph, INode? s, INode? p, INode? o)
Parameters
Type Name Description
IGraph graph

The graph to return triples from.

INode s

The subject node to filter on, or null to match all subject nodes.

INode p

The predicate node to filter on, or null to match all predicate nodes.

INode o

The object node to filter on, or null to match all object nodes.

Returns
Type Description
IEnumerable<Triple>

An enumeration of the triples that match the specified filter.

| Edit this page View Source

HasGraph(Uri)

Checks whether a Graph with the given Base Uri exists in the Triple Store.

Declaration
[Obsolete("Replaced by HasGraph(IRefNode)")]
public bool HasGraph(Uri graphUri)
Parameters
Type Name Description
Uri graphUri

Graph Uri.

Returns
Type Description
bool

True if the Graph exists in the Triple Store.

| Edit this page View Source

HasGraph(IRefNode?)

Checks whether the graph with the given name is in this triple store.

Declaration
public 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.

| Edit this page View Source

OnGraphAdded(object, GraphEventArgs)

Event Handler which handles the Graph Added event from the underlying Graph Collection and raises the Triple Store's Graph Added event.

Declaration
protected virtual void OnGraphAdded(object sender, GraphEventArgs args)
Parameters
Type Name Description
object sender

Sender.

GraphEventArgs args

Graph Event Arguments.

Remarks

Override this method if your Triple Store implementation wishes to take additional actions when a Graph is added to the Store.

| Edit this page View Source

OnGraphChanged(object, GraphEventArgs)

Event Handler which handles the Changed event of the contained Graphs by raising the Triple Store's Graph Changed event.

Declaration
protected virtual void OnGraphChanged(object sender, GraphEventArgs args)
Parameters
Type Name Description
object sender

Sender.

GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

OnGraphCleared(object, GraphEventArgs)

Event Handler which handles the Cleared event of the contained Graphs by raising the Triple Stores's Graph Cleared event.

Declaration
protected virtual void OnGraphCleared(object sender, GraphEventArgs args)
Parameters
Type Name Description
object sender

Sender.

GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

OnGraphMerged(object, GraphEventArgs)

Event Handler which handles the Merged event of the contained Graphs by raising the Triple Store's Graph Merged event.

Declaration
protected virtual void OnGraphMerged(object sender, GraphEventArgs args)
Parameters
Type Name Description
object sender

Sender.

GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

OnGraphRemoved(object, GraphEventArgs)

Event Handler which handles the Graph Removed event from the underlying Graph Collection and raises the Triple Stores's Graph Removed event.

Declaration
protected virtual void OnGraphRemoved(object sender, GraphEventArgs args)
Parameters
Type Name Description
object sender

Sender.

GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphAdded(GraphEventArgs)

Helper method for raising the Graph Added event manually.

Declaration
protected void RaiseGraphAdded(GraphEventArgs args)
Parameters
Type Name Description
GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphAdded(IGraph)

Helper method for raising the Graph Added event manually.

Declaration
protected void RaiseGraphAdded(IGraph g)
Parameters
Type Name Description
IGraph g

Graph.

| Edit this page View Source

RaiseGraphChanged(GraphEventArgs)

Helper method for raising the Graph Changed event manually.

Declaration
protected void RaiseGraphChanged(GraphEventArgs args)
Parameters
Type Name Description
GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphChanged(IGraph)

Helper method for raising the Graph Changed event manually.

Declaration
protected void RaiseGraphChanged(IGraph g)
Parameters
Type Name Description
IGraph g

Graph.

| Edit this page View Source

RaiseGraphCleared(GraphEventArgs)

Helper method for raising the Graph Cleared event manually.

Declaration
protected void RaiseGraphCleared(GraphEventArgs args)
Parameters
Type Name Description
GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphMerged(GraphEventArgs)

Helper method for raising the Graph Merged event manually.

Declaration
protected void RaiseGraphMerged(GraphEventArgs args)
Parameters
Type Name Description
GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphRemoved(GraphEventArgs)

Helper method for raising the Graph Removed event manually.

Declaration
protected void RaiseGraphRemoved(GraphEventArgs args)
Parameters
Type Name Description
GraphEventArgs args

Graph Event Arguments.

| Edit this page View Source

RaiseGraphRemoved(IGraph)

Helper method for raising the Graph Removed event manually.

Declaration
protected void RaiseGraphRemoved(IGraph g)
Parameters
Type Name Description
IGraph g

Graph.

| Edit this page View Source

Remove(Uri)

Removes a Graph from the Triple Store.

Declaration
[Obsolete("Replaced by Remove(IRefNode)")]
public virtual bool Remove(Uri graphUri)
Parameters
Type Name Description
Uri graphUri

Uri of the Graph to Remove.

Returns
Type Description
bool
| Edit this page View Source

Remove(IRefNode)

Removes a graph from the triple store.

Declaration
public virtual 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.

| Edit this page View Source

Retract(Quad)

Remove a quad from the triple store.

Declaration
public 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 Source

GraphAdded

Event which is raised when a Graph is added

Declaration
public event TripleStoreEventHandler GraphAdded
Event Type
Type Description
TripleStoreEventHandler
| Edit this page View Source

GraphChanged

Event which is raised when a Graphs contents changes

Declaration
public event TripleStoreEventHandler GraphChanged
Event Type
Type Description
TripleStoreEventHandler
| Edit this page View Source

GraphCleared

Event which is raised when a Graph is cleared

Declaration
public event TripleStoreEventHandler GraphCleared
Event Type
Type Description
TripleStoreEventHandler
| Edit this page View Source

GraphMerged

Event which is raised when a Graph has a merge operation performed on it

Declaration
public event TripleStoreEventHandler GraphMerged
Event Type
Type Description
TripleStoreEventHandler
| Edit this page View Source

GraphRemoved

Event which is raised when a Graph is removed

Declaration
public event TripleStoreEventHandler GraphRemoved
Event Type
Type Description
TripleStoreEventHandler

Implements

ITripleStore
IDisposable

Extension Methods

Extensions.ToSafeString(object)
Extensions.AsEnumerable<T>(T)
TripleStoreExtensions.LoadFromEmbeddedResource(ITripleStore, string)
TripleStoreExtensions.LoadFromEmbeddedResource(ITripleStore, string, IStoreReader)
TripleStoreExtensions.LoadFromFile(ITripleStore, string)
TripleStoreExtensions.LoadFromFile(ITripleStore, string, IStoreReader)
TripleStoreExtensions.LoadFromString(ITripleStore, string)
TripleStoreExtensions.LoadFromString(ITripleStore, string, IStoreReader)
TripleStoreExtensions.LoadFromUri(ITripleStore, Uri)
TripleStoreExtensions.LoadFromUri(ITripleStore, Uri, IStoreReader)
TripleStoreExtensions.LoadFromUri(ITripleStore, Uri, IStoreReader, Loader)
TripleStoreExtensions.SaveToFile(ITripleStore, string)
TripleStoreExtensions.SaveToFile(ITripleStore, string, IStoreWriter)
  • Edit this page
  • View Source
In this article
  • Constructors
    • BaseTripleStore(BaseGraphCollection)
  • Fields
    • _graphs
  • Properties
    • Graphs
    • IsEmpty
    • this[Uri?]
    • this[IRefNode?]
    • Quads
    • Triples
    • UriFactory
  • Methods
    • Add(IGraph)
    • Add(IGraph, bool)
    • Add(IRefNode)
    • AddFromUri(Uri)
    • AddFromUri(Uri, bool)
    • AddFromUri(Uri, bool, Loader)
    • Assert(Quad)
    • AttachEventHandlers(IGraph)
    • DetachEventHandlers(IGraph)
    • Dispose()
    • GetQuads(INode?, INode?, INode?, IRefNode?, bool)
    • GetTriplesFromGraph(IGraph, INode?, INode?, INode?)
    • HasGraph(Uri)
    • HasGraph(IRefNode?)
    • OnGraphAdded(object, GraphEventArgs)
    • OnGraphChanged(object, GraphEventArgs)
    • OnGraphCleared(object, GraphEventArgs)
    • OnGraphMerged(object, GraphEventArgs)
    • OnGraphRemoved(object, GraphEventArgs)
    • RaiseGraphAdded(GraphEventArgs)
    • RaiseGraphAdded(IGraph)
    • RaiseGraphChanged(GraphEventArgs)
    • RaiseGraphChanged(IGraph)
    • RaiseGraphCleared(GraphEventArgs)
    • RaiseGraphMerged(GraphEventArgs)
    • RaiseGraphRemoved(GraphEventArgs)
    • RaiseGraphRemoved(IGraph)
    • Remove(Uri)
    • Remove(IRefNode)
    • Retract(Quad)
  • Events
    • GraphAdded
    • GraphChanged
    • GraphCleared
    • GraphMerged
    • GraphRemoved
  • Implements
  • Extension Methods
Back to top Generated by DocFX