Soprano::NRLModel Class Reference

Model filter that enforces NRL cardinality rules. More...

#include <Soprano/NRLModel>

Inheritance diagram for Soprano::NRLModel:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 NRLModel ()
 NRLModel (Model *parent)
 ~NRLModel ()
void setIgnoreContext (bool b)
bool ignoreContext () const
Error::ErrorCode addNrlStatement (const Statement &s)
QUrl createGraph (const QUrl &type, QUrl *metadataGraph=0)
Error::ErrorCode removeGraph (const QUrl &graph)

Detailed Description

Model filter that enforces NRL cardinality rules.

The NRLModel enforces NRL cardinality rules. That means predicates with a cardinality of maximum 1 are always udpated while statements that define predicates with a maximum cardinality bigger than 1 are rejected once the maximum is reached (future versions might remove an earlier defined statement based on the time the old statements were added).

Thus, at the moment NRLModel is mostly usable for handling properties with a maximum cardinality of 1.

THE API AND EVEN THE COMPLETE CLASS IS SUBJECT TO CHANGE!

Author:
Sebastian Trueg <trueg@kde.org>
See also:
Vocabulary::NRL

Definition at line 53 of file nrlmodel.h.


Constructor & Destructor Documentation

Soprano::NRLModel::NRLModel (  ) 
Soprano::NRLModel::NRLModel ( Model parent  ) 
Soprano::NRLModel::~NRLModel (  ) 

Member Function Documentation

void Soprano::NRLModel::setIgnoreContext ( bool  b  ) 

When enforcing the NRL cardinality rules NRLModel can either ignore the context of statements or treat different contexts as separate sets, each resetting the cardinality.

Parameters:
b If true (the default) NRLModel does ignore the context when enforcing rules. If false the NRL rules can be violated across contexts.
See also:
ignoreContext()
bool Soprano::NRLModel::ignoreContext (  )  const
Returns:
true if contexts should be ignored when enforcing NRL rules.
See also:
setIgnoreContext()
Error::ErrorCode Soprano::NRLModel::addNrlStatement ( const Statement s  ) 

Add a statement.

Parameters:
s The statement containing the property to be set. If the predicate has NRL cardinality restrictions existing statements will be updated. Otherwise this method has the same effect as Model::addStatement().

Adding a statement that defines a predicate with a maximum cardinality bigger than 1 which has already been reached fails with an error.

Returns:
Error::ErrorNone on success.
QUrl Soprano::NRLModel::createGraph ( const QUrl type,
QUrl metadataGraph = 0 
)

Create a new graph of type type.

This will actually create two graphs: the requested one and its metadata graph which will already contain basic metadata like creation date.

Returns:
The URI of the newly created graph.
Since:
2.3
Error::ErrorCode Soprano::NRLModel::removeGraph ( const QUrl graph  ) 

Remove a complete graph including its metadata graph

This method can be seen as the counterpart to createGraph

Since:
2.3

The documentation for this class was generated from the following file:

Generated on 1 Oct 2010 for Soprano by  doxygen 1.6.1