Parser Class Reference
from PyKDE4.soprano import *
Inherits: Soprano.Plugin,Soprano::Error::ErrorCache
Namespace: Soprano
Detailed Description
- Abstract class:
- This class can be used as a base class for new classes, but can not be instantiated directly.
\class Parser parser.h Soprano/Parser
Soprano.Parser defines the interface for a Soprano RDF parser plugin.
Each parser plugin may support multiple RDF serializations (supportedSerializations()).
Usage
Using a Parser is straightforward. One starts by getting a plugin that supports the requested RDF data serialization:
Soprano.Parser* p = Soprano.PluginManager.instance()->discoverParserForSerialization( Soprano.SerializationRdfXml );
Then parsing RDF data is done in a single method call resulting in a StatementIterator over the resulting graph (since parsers may support multiple serializations one always needs to provide the serialization type unless a parser plugin support autodetection).
Soprano.StatementIterator it = p->parseFile( "myrdffile.rdf", Soprano.SerializationRdfXml );
\sa soprano_writing_plugins
Methods | |
| __init__ (self, QString name) | |
| Soprano.StatementIterator | parseFile (self, QString filename, QUrl baseUri, Soprano.RdfSerialization serialization, QString userSerialization=QString()) |
| Soprano.StatementIterator | parseStream (self, QTextStream stream, QUrl baseUri, Soprano.RdfSerialization serialization, QString userSerialization=QString()) |
| Soprano.StatementIterator | parseString (self, QString data, QUrl baseUri, Soprano.RdfSerialization serialization, QString userSerialization=QString()) |
| Soprano.RdfSerializations | supportedSerializations (self) |
| QStringList | supportedUserSerializations (self) |
| bool | supportsSerialization (self, Soprano.RdfSerialization s, QString userSerialization=QString()) |
Method Documentation
| __init__ | ( | self, | ||
| QString | name | |||
| ) |
| Soprano.StatementIterator parseFile | ( | self, | ||
| QString | filename, | |||
| QUrl | baseUri, | |||
| Soprano.RdfSerialization | serialization, | |||
| QString | userSerialization=QString() | |||
| ) |
Parse an RDF model which has been serialized in a file, using the supplied baseURI to resolve any relative URI references.
The default implementation simply calls parseStream() on an opened QFile instance.
- Parameters:
-
filename The name (path) of the file to parse
- Parameters:
-
baseUri The base URI to be used for relative references.
- Parameters:
-
serialization The serialization used in the file.
- Parameters:
-
userSerialization If serialization is set to Soprano.SerializationUser this parameter specifies the serialization to use. It allows the extension of the %Soprano Parser interface with new RDF serializations that are not officially supported by %Soprano.
- Returns:
- An iterator that iterates over the result statements.
| Soprano.StatementIterator parseStream | ( | self, | ||
| QTextStream | stream, | |||
| QUrl | baseUri, | |||
| Soprano.RdfSerialization | serialization, | |||
| QString | userSerialization=QString() | |||
| ) |
- Abstract method:
- This method is abstract and can be overridden but not called directly.
Read a serialized RDF model from a test stream, using the supplied baseURI to resolve any relative URI references.
- Parameters:
-
stream The text stream to read the serialized RDF data from.
- Parameters:
-
baseUri The base URI to be used for relative references.
- Parameters:
-
serialization The serialization used for the string data from the stream.
- Parameters:
-
userSerialization If serialization is set to Soprano.SerializationUser this parameter specifies the serialization to use. It allows the extension of the %Soprano Parser interface with new RDF serializations that are not officially supported by %Soprano.
- Returns:
- An iterator that iterates over the result statements.
| Soprano.StatementIterator parseString | ( | self, | ||
| QString | data, | |||
| QUrl | baseUri, | |||
| Soprano.RdfSerialization | serialization, | |||
| QString | userSerialization=QString() | |||
| ) |
Parse an RDF model which has been serialized into a string, using the supplied baseURI to resolve any relative URI references.
The default implementation simply calls parseStream().
- Parameters:
-
data The serialized RDF string.
- Parameters:
-
baseUri The base URI to be used for relative references.
- Parameters:
-
serialization The serialization used for the string data.
- Parameters:
-
userSerialization If serialization is set to Soprano.SerializationUser this parameter specifies the serialization to use. It allows the extension of the %Soprano Parser interface with new RDF serializations that are not officially supported by %Soprano.
- Returns:
- An iterator that iterates over the result statements.
| Soprano.RdfSerializations supportedSerializations | ( | self ) |
- Abstract method:
- This method is abstract and can be overridden but not called directly.
The serialiazation types supported by this parser.
- Returns:
- A combination of Soprano.RdfSerialization types. If the list contains Soprano.SerializationUser the parser supports additional RDF serialiazations not officially supported by %Soprano.
| QStringList supportedUserSerializations | ( | self ) |
A parser can support additional RDF serializations that are not defined in Soprano.RdfSerialization. In that case supportedSerializations() has to include Soprano.SerializationUser.
The default implementation returns an empty list.
- Returns:
- A list of supported user RDF serializations.
| bool supportsSerialization | ( | self, | ||
| Soprano.RdfSerialization | s, | |||
| QString | userSerialization=QString() | |||
| ) |
Check if a plugin supports a specific serialization.
- Parameters:
-
s The requested serialization.
- Parameters:
-
userSerialization If serialization is set to Soprano.SerializationUser this parameter specifies the requested serialization. It allows the extension of the %Soprano Parser interface with new RDF serializations that are not officially supported by %Soprano.
- Returns:
- true if the parser is able to parse RDF data encoded in serialization s, false otherwise.
KDE 4.3 PyKDE API Reference