Soprano::Client::SparqlModel Class Reference

Remote client Model for Http SPARQL end points. More...

#include <Soprano/Client/SparqlModel>

Inheritance diagram for Soprano::Client::SparqlModel:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 SparqlModel (const QString &host=QString(), quint16 port=80, const QString &user=QString(), const QString &password=QString())
 ~SparqlModel ()
Node createBlankNode ()

void setHost (const QString &host, quint16 port=80)
void setUser (const QString &user, const QString &password=QString())
void setPath (const QString &path)

Error::ErrorCode addStatement (const Statement &statement)
Error::ErrorCode removeStatement (const Statement &statement)
Error::ErrorCode removeAllStatements (const Statement &statement)

Soprano::StatementIterator listStatements (const Statement &partial) const
Soprano::Util::AsyncResultlistStatementsAsync (const Statement &statement) const
Soprano::QueryResultIterator executeQuery (const QString &query, Query::QueryLanguage language=Query::QueryLanguageSparql, const QString &userQueryLanguage=QString()) const
Soprano::Util::AsyncResultexecuteQueryAsync (const QString &query, Query::QueryLanguage language=Query::QueryLanguageSparql, const QString &userQueryLanguage=QString()) const
NodeIterator listContexts () const
Soprano::Util::AsyncResultlistContextsAsync () const
bool containsStatement (const Statement &statement) const
bool containsAnyStatement (const Statement &statement) const

int statementCount () const
bool isEmpty () const

Detailed Description

Remote client Model for Http SPARQL end points.

The SparqlModel provides a very simple way of accessing remote SPARQL (SPARQL Protocol and RDF Query Language) web services via Http.

Its usage is simple: set hostname and optionally user credentials, then call the well known Model methods like Model::executeQuery to work with the remote repository.

Author:
Rajeev J Sebastian <rajeev.sebastian@gmail.com>
Sebastian Trueg <trueg@kde.org>
Since:
2.2

Definition at line 50 of file sparqlmodel.h.


Constructor & Destructor Documentation

Soprano::Client::SparqlModel::SparqlModel ( const QString host = QString(),
quint16  port = 80,
const QString user = QString(),
const QString password = QString() 
)

Create a new SparqlModel instance.

Parameters:
host The host to connect to (example: dbpedia.org)
port The port on which to connect the host (most Http services run on port 80.
user The userName in case the host does not allow anonymous access.
password The password for user in case the host does not allow anonymous access.
Soprano::Client::SparqlModel::~SparqlModel (  ) 

Destructor.


Member Function Documentation

void Soprano::Client::SparqlModel::setHost ( const QString host,
quint16  port = 80 
)

Set the host to connect to.

Parameters:
host The host to connect to (example: dbpedia.org)
port The port on which to connect the host (most Http services run on port 80.
void Soprano::Client::SparqlModel::setUser ( const QString user,
const QString password = QString() 
)

Set the user name and password to access the host.

Parameters:
user The userName in case the host does not allow anonymous access.
password The password for user in case the host
void Soprano::Client::SparqlModel::setPath ( const QString path  ) 

Set the path to where the SPARQL endpoint is exposed on the server.

For historical reasons the default path is set to "/sparql".

Since:
2.2.1
Error::ErrorCode Soprano::Client::SparqlModel::addStatement ( const Statement statement  )  [virtual]

Add a statement to the remote model.

This method is realized using the SPARQL/Update language extension. Thus, it will only work on services supporting this extension.

Parameters:
statement The Statement to add.
Returns:
Error::ErrorNone on success and an error code if statement was invalid or an error occured. Check Error::ErrorCache::lastError for detailed error information.

Implements Soprano::Model.

Error::ErrorCode Soprano::Client::SparqlModel::removeStatement ( const Statement statement  )  [virtual]

Removed a statement from the remote model.

This method is realized using the SPARQL/Update language extension. Thus, it will only work on services supporting this extension.

Parameters:
statement The Statement to remove.
Returns:
Error::ErrorNone on success and an error code if statement was invalid or an error occured. Check Error::ErrorCache::lastError for detailed error information.

Implements Soprano::Model.

Error::ErrorCode Soprano::Client::SparqlModel::removeAllStatements ( const Statement statement  )  [virtual]

Remove all statements that match the partial statement. For removing one specific statement see removeStatement().

This method is realized using the SPARQL/Update language extension. Thus, it will only work on services supporting this extension.

Parameters:
statement A possible partially defined statement that serves as a filter for all statements that should be removed.
Returns:
Error::ErrorNone on success and an error code if statement was invalid or an error occured. Check Error::ErrorCache::lastError for detailed error information.

Implements Soprano::Model.

Soprano::StatementIterator Soprano::Client::SparqlModel::listStatements ( const Statement partial  )  const [virtual]

Implements Soprano::Model.

Soprano::Util::AsyncResult* Soprano::Client::SparqlModel::listStatementsAsync ( const Statement statement  )  const

Asyncroneously list statements.

Parameters:
statement The partial Statement to match.
Returns:
an AsyncResult with result type StatementIterator object which will signal when the result is ready.
Since:
2.4
Soprano::QueryResultIterator Soprano::Client::SparqlModel::executeQuery ( const QString query,
Query::QueryLanguage  language = Query::QueryLanguageSparql,
const QString userQueryLanguage = QString() 
) const [virtual]

Execute a query on the SPARQL endpoint.

Parameters:
query The query to evaluate.
language The query language used to encode query. Be aware that the SparqlModel does only support one query language: Query::QueryLanguageSparql.
userQueryLanguage unused since language needs to be set to Query::QueryLanguageSparql.
Returns:
An iterator over all results matching the query, on error an invalid iterator is returned.

Implements Soprano::Model.

Soprano::Util::AsyncResult* Soprano::Client::SparqlModel::executeQueryAsync ( const QString query,
Query::QueryLanguage  language = Query::QueryLanguageSparql,
const QString userQueryLanguage = QString() 
) const

Asyncroneously execute the given query over the Model.

Parameters:
query The query to evaluate.
language The query language used to encode query.
userQueryLanguage If language equals Query::QueryLanguageUser userQueryLanguage defines the language to use.
See also:
executeQuery
Returns:
an AsyncResult with result type QueryResultIterator object which will signal when the result is ready.
NodeIterator Soprano::Client::SparqlModel::listContexts (  )  const [virtual]

Implements Soprano::Model.

Soprano::Util::AsyncResult* Soprano::Client::SparqlModel::listContextsAsync (  )  const

Asyncroneously list all contexts.

Parameters:
statement The partial Statement to match.
Returns:
an AsyncResult with result type NodeIterator object which will signal when the result is ready.
Since:
2.4
bool Soprano::Client::SparqlModel::containsStatement ( const Statement statement  )  const [virtual]

Implements Soprano::Model.

bool Soprano::Client::SparqlModel::containsAnyStatement ( const Statement statement  )  const [virtual]

Implements Soprano::Model.

int Soprano::Client::SparqlModel::statementCount (  )  const [virtual]

Retrieving the number of statements is not supported by the SparqlModel.

Returns:
-1

Implements Soprano::Model.

bool Soprano::Client::SparqlModel::isEmpty (  )  const [virtual]

Not supported by the SparqlModel.

Returns:
false

Implements Soprano::Model.

Node Soprano::Client::SparqlModel::createBlankNode (  )  [virtual]

Creation of blank nodes is not supported by the SparqlModel.

Returns:
an invalid Node

Implements Soprano::Model.


The documentation for this class was generated from the following file:
Generated by  doxygen 1.6.2-20100208