A Node represents one RDF resource. More...
#include <Soprano/Node>
Public Types | |
| enum | Type { EmptyNode = 0, ResourceNode = 1, LiteralNode = 2, BlankNode = 3 } |
Public Member Functions | |
Constructors | |
| Node () | |
| Node (const QUrl &uri) | |
| Node (const QString &id) | |
| Node (const LiteralValue &value) | |
| SOPRANO_CONSTRUCTOR_DEPRECATED | Node (const LiteralValue &value, const QString &language) |
| Node (const Node &other) | |
| ~Node () | |
Operators | |
| Node & | operator= (const Node &other) |
| Node & | operator= (const QUrl &resource) |
| Node & | operator= (const LiteralValue &literal) |
| bool | operator== (const Node &other) const |
| bool | operator!= (const Node &other) const |
| bool | operator== (const QUrl &uri) const |
| bool | operator== (const LiteralValue &other) const |
| bool | matches (const Node &other) const |
Type information | |
| Type | type () const |
| bool | isEmpty () const |
| bool | isValid () const |
| bool | isLiteral () const |
| bool | isResource () const |
| bool | isBlank () const |
Resource nodes | |
| QUrl | uri () const |
Blank nodes | |
| QString | identifier () const |
Literal nodes | |
| LiteralValue | literal () const |
| QUrl | dataType () const |
| QString | language () const |
Conversion | |
| QString | toString () const |
| QString | toN3 () const |
Static Public Member Functions | |
| static Node | createEmptyNode () |
| static Node | createResourceNode (const QUrl &uri) |
| static Node | createBlankNode (const QString &id) |
| static Node | createLiteralNode (const LiteralValue &value) |
| static SOPRANO_DEPRECATED Node | createLiteralNode (const LiteralValue &value, const QString &language) |
| static QString | resourceToN3 (const QUrl &resource) |
| static QString | blankToN3 (const QString &blank) |
| static QString | literalToN3 (const LiteralValue &literal) |
A Node represents one RDF resource.
Nodes are the cornerstone of RDF data in Soprano. Four Nodes form one Statement and a Model is essentially a set of Statements.
A Node can have one of four types: EmptyNode, ResourceNode, LiteralNode, and BlankNode. Resource nodes are identified through their URI (uri()), literal nodes have a LiteralValue (literal()), and blank nodes have a string identifier.
Empty nodes can be used as wildcards in methods such as Model::listStatements.
Definition at line 53 of file node.h.
| enum Soprano::Node::Type |
| EmptyNode |
An empty node, can be used as a wildcard in commands like Model::listStatements. |
| ResourceNode |
A resource node has a URI which can be accessed via uri() |
| LiteralNode |
A literal node has a literal value and an optional language. |
| BlankNode |
A blank node has an identifier string |
| Soprano::Node::Node | ( | ) |
Default costructor. Creates an empty node.
| Soprano::Node::Node | ( | const QUrl & | uri | ) |
Creates a resource node.
| uri | The URI of the node. If empty the type will be ignored and an empty node will be created. |
| Soprano::Node::Node | ( | const QString & | id | ) | [explicit] |
| Soprano::Node::Node | ( | const LiteralValue & | value | ) |
Creates a literal node.
| value | The value of a node. If empty the node will become an empty node. |
| SOPRANO_CONSTRUCTOR_DEPRECATED Soprano::Node::Node | ( | const LiteralValue & | value, | |
| const QString & | language | |||
| ) |
Creates a literal node.
| value | The value of a node. If empty the node will become an empty node. | |
| language | The language of the literal value. |
| Soprano::Node::Node | ( | const Node & | other | ) |
Copy constructor.
| Soprano::Node::~Node | ( | ) |
Default costructor. Creates an empty node.
Assigns resource to this node and makes it a ResourceNode.
Assigns resource to this node and makes it a ResourceNode.
| Node& Soprano::Node::operator= | ( | const LiteralValue & | literal | ) |
Assigns literal to this node and makes it a LiteralNode.
| bool Soprano::Node::operator== | ( | const Node & | other | ) | const |
Comparision operator.
true if this node and other are equal. | bool Soprano::Node::operator!= | ( | const Node & | other | ) | const |
Comparision operator.
true if this node and other differ. | bool Soprano::Node::operator== | ( | const QUrl & | uri | ) | const |
Comparision operator.
true if this node is a ResourceNode and has URI uri. | bool Soprano::Node::operator== | ( | const LiteralValue & | other | ) | const |
Comparision operator.
true if this node is a LiteralNode and has literal value other. | bool Soprano::Node::matches | ( | const Node & | other | ) | const |
Match this node against template node other. The only difference to operator== is that empty nodes are matched as wildcards, i.e. they match any other node.
Be aware that the following is NOT always true since only other is treated a a wildcard:
// NOT always true:
a.matches(b) == b.matches(a)
true if this node matches other, false if not.| Type Soprano::Node::type | ( | ) | const |
| bool Soprano::Node::isEmpty | ( | ) | const |
true if the node is empty. | bool Soprano::Node::isValid | ( | ) | const |
true if the node is a ResourceNode, LiteralNode or BlankNode. | bool Soprano::Node::isLiteral | ( | ) | const |
true if the node is a LiteralNode. | bool Soprano::Node::isResource | ( | ) | const |
true if the node is a ResourceNode. | bool Soprano::Node::isBlank | ( | ) | const |
true if the node is a BlankNode (anonymous). | QUrl Soprano::Node::uri | ( | ) | const |
| QString Soprano::Node::identifier | ( | ) | const |
Retrieve a blank node's identifier.
| LiteralValue Soprano::Node::literal | ( | ) | const |
| QUrl Soprano::Node::dataType | ( | ) | const |
| QString Soprano::Node::language | ( | ) | const |
Each literal value can have an associated language, thus each property can be stored for different languages. An empty language refers to the default language.
| QString Soprano::Node::toString | ( | ) | const |
Converts the Node to a string.
| QString Soprano::Node::toN3 | ( | ) | const |
Convert a Node into N3 notation to be used in SPARQL graph patterns.
Examples:
<http://soprano.sourceforce.net/> "Hello World"^^<http://www.w3.org/2001/XMLSchema#string> "09-08-1977T17:42.234Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> _:blankNode
| static Node Soprano::Node::createEmptyNode | ( | ) | [static] |
Convenience method to create an empty node. Using this method instead of the default constructor may result in better readable code.
Convenience method to create a resource node. Using this method instead of the constructor may result in better readable code.
| uri | The URI of the node. If empty the type will be ignored and an empty node will be created. |
Convenience method to create a blank node. Using this method instead of the constructor may result in better readable code.
If you need to create a new blank node which is not used in the model yet and, thus, has a unique identifier see Model::createBlankNode().
| id | An identifier for the blank node. |
| static Node Soprano::Node::createLiteralNode | ( | const LiteralValue & | value | ) | [static] |
Convenience method to create a literal node. Using this method instead of the constructor may result in better readable code.
| value | The value of a node. If empty the node will become an empty node. |
| static SOPRANO_DEPRECATED Node Soprano::Node::createLiteralNode | ( | const LiteralValue & | value, | |
| const QString & | language | |||
| ) | [static] |
Convenience method to create a literal node. Using this method instead of the constructor may result in better readable code.
| value | The value of a node. If empty the node will become an empty node. | |
| language | The language of the literal value. |
Format a resource URI as N3 string to be used in SPARQL queries.
Example:
<http://soprano.sourceforce.net/>
Format a blank node identifier as N3 string to be used in SPARQL queries.
Example:
_:blankNode
| static QString Soprano::Node::literalToN3 | ( | const LiteralValue & | literal | ) | [static] |
Format a literal value as N3 string to be used in SPARQL queries.
Examples:
"Hello World"^^<http://www.w3.org/2001/XMLSchema#string> "09-08-1977T17:42.234Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>
1.6.1