Interface InferencerConnection
- All Superinterfaces:
AutoCloseable, NotifyingSailConnection, SailConnection
- All Known Implementing Classes:
AbstractForwardChainingInferencerConnection, DedupingInferencerConnection, ElasticsearchStoreConnection, ExtensibleStoreConnection, InferencerConnectionWrapper, LmdbStoreConnection, MemoryStoreConnection, NativeStoreConnection, SailSourceConnection, SchemaCachingRDFSInferencerConnection
An extension of the
SailConnection interface offering methods that can be used by inferencers to store and
remove inferred statements.-
Method Summary
Modifier and TypeMethodDescriptionbooleanaddInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts) Adds an inferred statement to a specific context.voidclearInferred(Resource... contexts) Removes all inferred statements from the specified/all contexts.voidFlushes any pending updates to be processed and the resulting changes to be reported to registeredSailConnectionListeners.booleanremoveInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts) Removes an inferred statement from a specific context.Methods inherited from interface NotifyingSailConnection
addConnectionListener, removeConnectionListenerModifier and TypeMethodDescriptionvoidaddConnectionListener(SailConnectionListener listener) Registers a SailConnection listener with this SailConnection.voidDeregisters a SailConnection listener with this SailConnection.Methods inherited from interface SailConnection
addStatement, addStatement, begin, begin, clear, clearNamespaces, close, commit, endUpdate, evaluate, explain, flush, getComparator, getContextIDs, getNamespace, getNamespaces, getStatements, getStatements, getSupportedOrders, hasStatement, isActive, isOpen, prepare, prepareQuery, removeNamespace, removeStatement, removeStatements, rollback, setNamespace, setTransactionSettings, size, startUpdateModifier and TypeMethodDescriptionvoidaddStatement(Resource subj, IRI pred, Value obj, Resource... contexts) Adds a statement to the store.voidaddStatement(UpdateContext op, Resource subj, IRI pred, Value obj, Resource... contexts) Adds a statement to the store.voidbegin()Begins a transaction requiringSailConnection.commit()orSailConnection.rollback()to be called to close the transaction.voidbegin(IsolationLevel level) Begins a transaction with the specifiedIsolationLevellevel, requiringSailConnection.commit()orSailConnection.rollback()to be called to close the transaction.voidRemoves all statements from the specified/all contexts.voidRemoves all namespace declarations from the repository.voidclose()Closes the connection.voidcommit()Commits any updates that have been performed since the last timeSailConnection.commit()orSailConnection.rollback()was called.voidIndicates that the givenopwill not be used in any call again.CloseableIteration<? extends BindingSet> evaluate(TupleExpr tupleExpr, Dataset dataset, BindingSet bindings, boolean includeInferred) Evaluates the supplied TupleExpr on the data contained in this Sail object, using the (optional) dataset and supplied bindings as input parameters.default Explanationexplain(Explanation.Level level, TupleExpr tupleExpr, Dataset dataset, BindingSet bindings, boolean includeInferred, int timeoutSeconds) Explain how the TupleExpr will be (or has been) executed/evaluated by returning a TupleExpr (which may or may not be the provided TupleExpr) that has gone through zero or more of the stages prior to and also including execution as specified by the provided level.voidflush()Flushes any pending updates and notify changes to listeners as appropriate.default Comparator<Value> Different underlying datastructures may have different ways of ordering statements.CloseableIteration<? extends Resource> Returns the set of all unique context identifiers that are used to store statements.getNamespace(String prefix) Gets the namespace that is associated with the specified prefix, if any.CloseableIteration<? extends Namespace> Gets the namespaces relevant to the data contained in this Sail object.default CloseableIteration<? extends Statement> getStatements(StatementOrder statementOrder, Resource subj, IRI pred, Value obj, boolean includeInferred, Resource... contexts) Gets all statements from the specified contexts that have a specific subject, predicate and/or object.CloseableIteration<? extends Statement> getStatements(Resource subj, IRI pred, Value obj, boolean includeInferred, Resource... contexts) Gets all statements from the specified contexts that have a specific subject, predicate and/or object.default Set<StatementOrder> getSupportedOrders(Resource subj, IRI pred, Value obj, Resource... contexts) The underlying store may support some, but not all, statement orders based on the statement pattern.default booleanhasStatement(Resource subj, IRI pred, Value obj, boolean includeInferred, Resource... contexts) Determines if the store contains any statements from the specified contexts that have a specific subject, predicate and/or object.booleanisActive()Indicates if a transaction is currently active on the connection.booleanisOpen()Checks whether this SailConnection is open.voidprepare()Checks for an error state in the active transaction that would force the transaction to be rolled back.prepareQuery(QueryLanguage ql, Query.QueryType type, String query, String baseURI) Allows the SailConnection to bypass the standard query parser and provide its own internalTupleExprimplementation.voidremoveNamespace(String prefix) Removes a namespace declaration by removing the association between a prefix and a namespace name.voidremoveStatement(UpdateContext op, Resource subj, IRI pred, Value obj, Resource... contexts) Removes all statements matching the specified subject, predicate and object from the repository.voidremoveStatements(Resource subj, IRI pred, Value obj, Resource... contexts) Removes all statements matching the specified subject, predicate and object from the repository.voidrollback()Rolls back the transaction, discarding any uncommitted changes that have been made in this SailConnection.voidsetNamespace(String prefix, String name) Sets the prefix for a namespace.default voidsetTransactionSettings(TransactionSetting... settings) Pass any transaction-specific settings to the SailConnection.longReturns the number of (explicit) statements in the store, or in specific contexts.voidSignals the start of an update operation.
-
Method Details
-
addInferredStatement
boolean addInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException Adds an inferred statement to a specific context.- Parameters:
subj- The subject of the statement to add.pred- The predicate of the statement to add.obj- The object of the statement to add.contexts- The context(s) to add the statement to. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on the entire repository.- Throws:
SailException- If the statement could not be added.IllegalStateException- If the connection has been closed.
-
removeInferredStatement
boolean removeInferredStatement(Resource subj, IRI pred, Value obj, Resource... contexts) throws SailException Removes an inferred statement from a specific context.- Parameters:
subj- The subject of the statement that should be removed.pred- The predicate of the statement that should be removed.obj- The object of the statement that should be removed.contexts- The context(s) from which to remove the statements. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on the entire repository.- Throws:
SailException- If the statement could not be removed.IllegalStateException- If the connection has been closed.
-
clearInferred
Removes all inferred statements from the specified/all contexts. If no contexts are specified the method operates on the entire repository.- Parameters:
contexts- The context(s) from which to remove the statements. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on the entire repository.- Throws:
SailException- If the statements could not be removed.IllegalStateException- If the connection has been closed.
-
flushUpdates
Flushes any pending updates to be processed and the resulting changes to be reported to registeredSailConnectionListeners.- Throws:
SailException- If the updates could not be processed.IllegalStateException- If the connection has been closed.
-