KDE 4.2 PyKDE API Reference

- KDE's Python API

# soprano Module

*

## Soprano (aka QRDF) - A modular RDF storage framework

* * %Soprano is a QT-based pluggable framework for RDF storage and parsing. It tries to provide a highly usable * interface to several RDF storage solutions. * * Overview * * %Soprano centers around the Soprano.Model class which represents one storage set. A Soprano.Model is basically a set of * RDF quadruples, i.e. Soprano.Statement. The actual storage is done via Soprano.Backend plugins. All * query operations return Soprano.Iterator instances. Iterator is a explicitely shared class which is very * easy to understand and use. * * %Soprano makes the distinction between two types of Models: Soprano.StorageModel and Soprano.FilterModel. * The former one is intended to be the basic Model which actually stores the data while the latter ones can be * stacked on top of a Soprano.StorageModel to perform certain filter operations. Thes filter operations can range * from very basic things such as disallowing any write operation (Soprano.Util.ReadOnlyModel) to more complex * things such as full text indexing of all literal statements (Soprano.Index.IndexFilterModel) or exporting * the Model via D-Bus (Soprano.Server.DBusExportModel). * * Apart from storage %Soprano provides a system for RDF parser and serializer plugins. For more details on parsing * or serializing RDF data see the Soprano.Parser and Soprano.Serializer classes. * * %Soprano comes with a builtin Server and Client implementations allowing to build remote repositories quickly. * Soprano.Client.SparqlModel provides a client to arbitrary SPARQL (SPARQL Protocol and RDF Query Language) * Http services. * * Quickstart * * Create an RDF Model: * *

##

##

     * Soprano.Model* model = Soprano.createModel();
     * \endcode
     *
     * Fill it with statements:
     *
     * \code
     * model->addStatement( Soprano.Statement( QUrl( "http://mysite.org/data#A"), Soprano.Vocabulary.RDFS.label(), Soprano.LiteralValue( "A test resource" ) ) );
     * \endcode
     *
     * Read the data back:
     *
     * \code
     * Soprano.StatementIterator it = model->listStatements();
     * while( it.next() ) {
     *    displayStatement( *it );
     * }
     * \endcode
     *
     * Query the data:
     *
     * \code
     * Soprano.QueryResultIterator it = model->executeQuery( "select ?r where { ?r ?p ?o . }", Soprano.Query.QueryLanguageSparql );
     * while( it.next() ) {
     *    displayResult( it.binding( "r" ) );
     * }
     * \endcode
     *
     * \section contents Contents
     *
     * The following sections contain further information on the usage of %Soprano.
     *
     * \li \ref soprano_storage
     * \li \ref soprano_misc
     * \li \ref soprano_error_handling
     * \li \ref soprano_writing_plugins
     * \li \ref Soprano.Server
     * \li \ref Soprano.Client
     * \li \ref soprano_devel_tools
    Namespaces

      G  Soprano.Query   Soprano::Vocabulary.RDF
    global   Soprano.Server   Soprano::Vocabulary.RDFS
      S  Soprano.Util   Soprano::Vocabulary.SIL
    Soprano   Soprano.Vocabulary   Soprano::Vocabulary.Xesam
    Soprano.Client   Soprano::Vocabulary.NAO   Soprano::Vocabulary.XMLSchema
    Soprano.Error   Soprano::Vocabulary.NRL
    Soprano.Inference   Soprano::Vocabulary.OWL

    Class Index

      A  Error (Soprano.Error)     Q
    AsyncModel (Soprano.Util)   ErrorCache (Soprano.Error)   QueryResultIterator (Soprano)
    AsyncResult (Soprano.Util)     F  QueryResultIterator (Soprano)
      B  FilterModel (Soprano)     R
    Backend (Soprano)     I  RdfSchemaModel (Soprano)
    BackendSetting (Soprano)   InferenceModel (Soprano.Inference)   ReadOnlyModel (Soprano.Util)
    BindingSet (Soprano)   IteratorBackend (Soprano)   Rule (Soprano.Inference)
      D    L  RuleParser (Soprano.Inference)
    DBusClient (Soprano.Client)   LiteralValue (Soprano)   RuleSet (Soprano.Inference)
    DBusClient (Soprano.Client)   LocalSocketClient (Soprano.Client)     S
    DBusExportIterator (Soprano.Server)   Locator (Soprano.Error)   Serializer (Soprano)
    DBusExportIterator (Soprano.Server)     M  ServerCore (Soprano.Server)
    DBusExportModel (Soprano.Server)   Model (Soprano)   SignalCacheModel (Soprano.Util)
    DBusExportModel (Soprano.Server)   MutexModel (Soprano.Util)   SimpleNodeIterator (Soprano.Util)
    DBusModel (Soprano.Client)     N  SimpleStatementIterator (Soprano.Util)
    DBusModel (Soprano.Client)   Node (Soprano)   SparqlModel (Soprano.Client)
    DBusNodeIterator (Soprano.Client)   NodeIterator (Soprano)   Statement (Soprano)
    DBusNodeIterator (Soprano.Client)   NodeIterator (Soprano)   StatementIterator (Soprano)
    DBusQueryResultIterator (Soprano.Client)   NodePattern (Soprano.Inference)   StatementIterator (Soprano)
    DBusQueryResultIterator (Soprano.Client)     P  StatementPattern (Soprano.Inference)
    DBusStatementIterator (Soprano.Client)   Parser (Soprano)   StorageModel (Soprano)
    DBusStatementIterator (Soprano.Client)   ParserError (Soprano.Error)     T
    DummyModel (Soprano.Util)   Plugin (Soprano)   TcpClient (Soprano.Client)
      E  PluginManager (Soprano)