Class SparqlConnector
Class for connecting to any SPARQL Endpoint as a read-only Store.
Implements
Inherited Members
Namespace: VDS.RDF.Storage
Assembly: dotNetRdf.dll
Syntax
public class SparqlConnector : IQueryableStorage, IStorageProvider, IStorageCapabilities, IDisposable, IConfigurationSerializable
Remarks
This class is effectively a read-only wrapper around a SparqlRemoteEndpoint using it with it's default settings, if you only need to query an endpoint and require more control over the settings used to access the endpoint you should use that class directly or use the constructors which allow you to provide your own pre-configure SparqlRemoteEndpoint instance.
Unlike other HTTP based connectors this connector does not derive from BaseHttpConnector - if you need to specify proxy information you should do so on the SPARQL Endpoint you are wrapping either by providing a SparqlRemoteEndpoint instance pre-configured with the proxy settings or by accessing the endpoint via the Endpoint property and programmatically adding the settings.
Constructors
| Edit this page View SourceSparqlConnector(Uri)
Creates a new SPARQL Connector which uses the given SPARQL Endpoint.
Declaration
[Obsolete("Replaced by SparqlConnector(SparqlQueryClient)")]
public SparqlConnector(Uri endpointUri)
Parameters
Type | Name | Description |
---|---|---|
Uri | endpointUri | Endpoint URI. |
SparqlConnector(Uri, SparqlConnectorLoadMethod)
Creates a new SPARQL Connector which uses the given SPARQL Endpoint.
Declaration
[Obsolete("Replaced by SparqlConnector(SparqlQueryClient, SparqlConnectorLoadMethod)")]
public SparqlConnector(Uri endpointUri, SparqlConnectorLoadMethod mode)
Parameters
Type | Name | Description |
---|---|---|
Uri | endpointUri | Endpoint URI. |
SparqlConnectorLoadMethod | mode | Load Method to use. |
SparqlConnector(SparqlQueryClient)
Creates a new SPARQL connector which uses the given SPARQL query client.
Declaration
public SparqlConnector(SparqlQueryClient client)
Parameters
Type | Name | Description |
---|---|---|
SparqlQueryClient | client |
SparqlConnector(SparqlQueryClient, SparqlConnectorLoadMethod)
Creates a new SPARQL connector which uses the given SPARQL query client.
Declaration
public SparqlConnector(SparqlQueryClient client, SparqlConnectorLoadMethod mode)
Parameters
Type | Name | Description |
---|---|---|
SparqlQueryClient | client | Query client to use. |
SparqlConnectorLoadMethod | mode | Load method to use. |
SparqlConnector(SparqlRemoteEndpoint)
Creates a new SPARQL Connector which uses the given SPARQL Endpoint.
Declaration
[Obsolete("Replaced by SparqlConnector(SparqlQueryClient)")]
public SparqlConnector(SparqlRemoteEndpoint endpoint)
Parameters
Type | Name | Description |
---|---|---|
SparqlRemoteEndpoint | endpoint | Endpoint. |
SparqlConnector(SparqlRemoteEndpoint, SparqlConnectorLoadMethod)
Creates a new SPARQL Connector which uses the given SPARQL Endpoint.
Declaration
[Obsolete("Replaced by SparqlConnector(SparqlQueryClient, SparqlConnectorLoadMethod)")]
public SparqlConnector(SparqlRemoteEndpoint endpoint, SparqlConnectorLoadMethod mode)
Parameters
Type | Name | Description |
---|---|---|
SparqlRemoteEndpoint | endpoint | Endpoint. |
SparqlConnectorLoadMethod | mode | Load Method to use. |
Fields
| Edit this page View Source_endpoint
Underlying SPARQL query endpoint.
Declaration
protected SparqlRemoteEndpoint _endpoint
Field Value
Type | Description |
---|---|
SparqlRemoteEndpoint |
_mode
Method for loading graphs.
Declaration
protected SparqlConnectorLoadMethod _mode
Field Value
Type | Description |
---|---|
SparqlConnectorLoadMethod |
_timeout
Timeout for endpoints.
Declaration
protected int _timeout
Field Value
Type | Description |
---|---|
int |
Properties
| Edit this page View SourceDeleteSupported
Returns that deleting graphs is not supported.
Declaration
public virtual bool DeleteSupported { get; }
Property Value
Type | Description |
---|---|
bool |
Endpoint
Gets the underlying SparqlRemoteEndpoint which this class is a wrapper around.
Declaration
[TypeConverter(typeof(ExpandableObjectConverter))]
[Obsolete]
public SparqlRemoteEndpoint Endpoint { get; }
Property Value
Type | Description |
---|---|
SparqlRemoteEndpoint |
IOBehaviour
Gets the IO Behaviour of SPARQL Connections.
Declaration
public virtual IOBehaviour IOBehaviour { get; }
Property Value
Type | Description |
---|---|
IOBehaviour |
IsReadOnly
Returns that the Connection is read-only.
Declaration
public virtual bool IsReadOnly { get; }
Property Value
Type | Description |
---|---|
bool |
IsReady
Returns that the Connection is ready.
Declaration
public virtual bool IsReady { get; }
Property Value
Type | Description |
---|---|
bool |
ListGraphsSupported
Returns that listing graphs is supported.
Declaration
public virtual bool ListGraphsSupported { get; }
Property Value
Type | Description |
---|---|
bool |
ParentServer
Gets the parent server (if any).
Declaration
public IStorageServer ParentServer { get; }
Property Value
Type | Description |
---|---|
IStorageServer |
QueryClient
Gets the underlying SparqlQueryClient which this class is a wrapper around.
Declaration
public SparqlQueryClient QueryClient { get; }
Property Value
Type | Description |
---|---|
SparqlQueryClient |
SkipLocalParsing
Controls whether the Query will be parsed locally to accurately determine its Query Type for processing the response.
Declaration
[Obsolete("This property is no longer supported as local query parsing is not supported by this implementation. Clients wishing to ensure that only valid SPARQL is sent to a remote server should apply query parsing before invoking this class.")]
public bool SkipLocalParsing { get; set; }
Property Value
Type | Description |
---|---|
bool |
Remarks
If the endpoint you are connecting to provides extensions to SPARQL syntax which are not permitted by the libraries parser then you may wish to enable this option as otherwise you will not be able to execute such queries.
Timeout
Gets/Sets the HTTP Timeout in milliseconds used for communicating with the SPARQL Endpoint.
Declaration
[Obsolete("This property is only used by the obsolete SparqlRemoteEndpoint-backed implementation.")]
public virtual int Timeout { get; set; }
Property Value
Type | Description |
---|---|
int |
Remarks
This property is only used when using the obsolete SparqlRemoteEndpoint-backed implementation. When using the replacement SparqlQueryClient-backed implementation, timeout is controlled by the HttpClient used by the SparqlQueryClient.
UpdateSupported
Returns that Updates are not supported since this connection is read-only.
Declaration
public virtual bool UpdateSupported { get; }
Property Value
Type | Description |
---|---|
bool |
Methods
| Edit this page View SourceDeleteGraph(string)
Throws an exception as this connector provides a read-only connection.
Declaration
public virtual void DeleteGraph(string graphUri)
Parameters
Type | Name | Description |
---|---|---|
string | graphUri | URI of this Graph to delete. |
Exceptions
Type | Condition |
---|---|
RdfStorageException | Thrown since this connection is read-only so you cannot delete graphs using it. |
DeleteGraph(Uri)
Throws an exception as this connector provides a read-only connection.
Declaration
public virtual void DeleteGraph(Uri graphUri)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | URI of this Graph to delete. |
Exceptions
Type | Condition |
---|---|
RdfStorageException | Thrown since this connection is read-only so you cannot delete graphs using it. |
Dispose()
Disposes of the Connection.
Declaration
public void Dispose()
ListGraphNames()
Gets an enumeration of the names of the graphs in the store.
Declaration
public virtual IEnumerable<string> ListGraphNames()
Returns
Type | Description |
---|---|
IEnumerable<string> |
Remarks
Implementations should implement this method only if they need to provide a custom way of listing Graphs. If the Store for which you are providing a manager can efficiently return the Graphs using a SELECT DISTINCT ?g WHERE { GRAPH ?g { ?s ?p ?o } } query then there should be no need to implement this function.
ListGraphs()
Lists the Graphs in the Store.
Declaration
[Obsolete("Replaced by ListGraphNames()")]
public virtual IEnumerable<Uri> ListGraphs()
Returns
Type | Description |
---|---|
IEnumerable<Uri> |
LoadGraph(IGraph, string)
Loads a Graph from the SPARQL Endpoint.
Declaration
public virtual void LoadGraph(IGraph g, string graphUri)
Parameters
Type | Name | Description |
---|---|---|
IGraph | g | Graph to load into. |
string | graphUri | URI of the Graph to load. |
LoadGraph(IGraph, Uri)
Loads a Graph from the SPARQL Endpoint.
Declaration
public virtual void LoadGraph(IGraph g, Uri graphUri)
Parameters
Type | Name | Description |
---|---|---|
IGraph | g | Graph to load into. |
Uri | graphUri | URI of the Graph to load. |
LoadGraph(IRdfHandler, string)
Loads a Graph from the SPARQL Endpoint.
Declaration
public virtual void LoadGraph(IRdfHandler handler, string graphUri)
Parameters
Type | Name | Description |
---|---|---|
IRdfHandler | handler | RDF Handler. |
string | graphUri | URI of the Graph to load. |
LoadGraph(IRdfHandler, Uri)
Loads a Graph from the SPARQL Endpoint.
Declaration
public virtual void LoadGraph(IRdfHandler handler, Uri graphUri)
Parameters
Type | Name | Description |
---|---|---|
IRdfHandler | handler | RDF Handler. |
Uri | graphUri | URI of the Graph to load. |
Query(string)
Makes a Query against the SPARQL Endpoint.
Declaration
public object Query(string sparqlQuery)
Parameters
Type | Name | Description |
---|---|---|
string | sparqlQuery | SPARQL Query. |
Returns
Type | Description |
---|---|
object |
Query(IRdfHandler, ISparqlResultsHandler, string)
Makes a Query against the SPARQL Endpoint processing the results with an appropriate handler from those provided.
Declaration
public void Query(IRdfHandler rdfHandler, ISparqlResultsHandler resultsHandler, string sparqlQuery)
Parameters
Type | Name | Description |
---|---|---|
IRdfHandler | rdfHandler | RDF Handler. |
ISparqlResultsHandler | resultsHandler | Results Handler. |
string | sparqlQuery | SPARQL Query. |
SaveGraph(IGraph)
Throws an error since this Manager is read-only.
Declaration
public virtual void SaveGraph(IGraph g)
Parameters
Type | Name | Description |
---|---|---|
IGraph | g | Graph to save. |
Exceptions
Type | Condition |
---|---|
RdfStorageException | Always thrown since this Manager provides a read-only connection. |
SerializeConfiguration(ConfigurationSerializationContext)
Serializes the connection's configuration.
Declaration
public virtual void SerializeConfiguration(ConfigurationSerializationContext context)
Parameters
Type | Name | Description |
---|---|---|
ConfigurationSerializationContext | context | Configuration Serialization Context. |
ToString()
Gets a String which gives details of the Connection.
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
string |
Overrides
| Edit this page View SourceUpdateGraph(string, IEnumerable<Triple>, IEnumerable<Triple>)
Throws an error since this Manager is read-only.
Declaration
public virtual void UpdateGraph(string graphUri, IEnumerable<Triple> additions, IEnumerable<Triple> removals)
Parameters
Type | Name | Description |
---|---|---|
string | graphUri | Graph URI. |
IEnumerable<Triple> | additions | Triples to be added. |
IEnumerable<Triple> | removals | Triples to be removed. |
UpdateGraph(Uri, IEnumerable<Triple>, IEnumerable<Triple>)
Throws an error since this Manager is read-only.
Declaration
public virtual void UpdateGraph(Uri graphUri, IEnumerable<Triple> additions, IEnumerable<Triple> removals)
Parameters
Type | Name | Description |
---|---|---|
Uri | graphUri | Graph URI. |
IEnumerable<Triple> | additions | Triples to be added. |
IEnumerable<Triple> | removals | Triples to be removed. |
UpdateGraph(IRefNode, IEnumerable<Triple>, IEnumerable<Triple>)
Throws an error since this Manager is read-only.
Declaration
public virtual void UpdateGraph(IRefNode graphName, IEnumerable<Triple> additions, IEnumerable<Triple> removals)
Parameters
Type | Name | Description |
---|---|---|
IRefNode | graphName | Graph name. |
IEnumerable<Triple> | additions | Triples to be added. |
IEnumerable<Triple> | removals | Triples to be removed. |