Class JenaGraph
java.lang.Object
org.nuxeo.ecm.platform.relations.jena.JenaGraph
- All Implemented Interfaces:
Serializable
,Graph
Jena plugin for NXRelations.
Graph implementation using the Jena framework.
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static final class
Class holding graph and connection so that we can close the connection after having used the graph. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds given list of Statement objects to the graph.void
Adds the statement object to the graph.void
clear()
Clears the graph, removing all statements in it.Returns namespaces for the graph.getObjects
(Node subject, Node predicate) Gets items matching the statement pattern (subject, predicate, null).getPredicates
(Node subject, Node object) Gets items matching the statement pattern (subject, null, object).Returns all statements in the graph.getStatements
(Node subject, Node predicate, Node object) Returns all statements in the graph matching the pattern.getStatements
(Statement statement) Returns all statements in the graph matching the pattern.getSubjects
(Node predicate, Node object) Get items matching the statement pattern (null, predicate, object).boolean
hasResource
(Resource resource) Returns true if given resource appears in any statement of the graph.boolean
hasStatement
(Statement statement) Returns true if given statement pattern is in the graph.protected JenaGraph.GraphConnection
Generates the Jena graph using options.protected JenaGraph.GraphConnection
openGraph
(boolean forceReload) Gets the Jena graph using options.Query the graph using a base URI.int
queryCount
(String queryString, String language, String baseURI) Counts the number of results of a query.boolean
read
(InputStream in, String lang, String base) Parses source into the graph.boolean
Parses source into the graph.void
Removes given list of Statement objects from the graph.void
Removes the statement object from the graph.void
setDescription
(GraphDescription graphDescription) Sets the graph description.void
setNamespaces
(Map<String, String> namespaces) protected void
setOptions
(Map<String, String> options) size()
Returns the number of statements in the graph.boolean
write
(OutputStream out, String lang, String base) Serializes graph.boolean
Serializes graph.
-
Constructor Details
-
JenaGraph
public JenaGraph()
-
-
Method Details
-
openGraph
Generates the Jena graph using options.- Returns:
- the Jena graph (model)
-
openGraph
Gets the Jena graph using options.The Jena "Convenient" reification style is used when opening models: it allows to ignore reification quadlets when calling the statements list.
- Parameters:
forceReload
- boolean stating if the jena graph has to be reloaded using options- Returns:
- the Jena graph (model)
-
setDescription
Description copied from interface:Graph
Sets the graph description.- Specified by:
setDescription
in interfaceGraph
-
setOptions
-
setNamespaces
-
getNamespaces
Description copied from interface:Graph
Returns namespaces for the graph.Namespaces are prefix/namespace bindings, as rdf for http://www.w3.org/1999/02/22-rdf-syntax-ns#.
- Specified by:
getNamespaces
in interfaceGraph
- Returns:
- namespaces map of namespace bindings for the graph
-
add
Description copied from interface:Graph
Adds the statement object to the graph. -
add
Description copied from interface:Graph
Adds given list of Statement objects to the graph. -
remove
Description copied from interface:Graph
Removes the statement object from the graph. -
remove
Description copied from interface:Graph
Removes given list of Statement objects from the graph. -
getStatements
Description copied from interface:Graph
Returns all statements in the graph.- Specified by:
getStatements
in interfaceGraph
- Returns:
- list of Statement instances
-
getStatements
Description copied from interface:Graph
Returns all statements in the graph matching the pattern.- Specified by:
getStatements
in interfaceGraph
- Returns:
- list of Statement instances matching the pattern
-
getStatements
Description copied from interface:Graph
Returns all statements in the graph matching the pattern.- Specified by:
getStatements
in interfaceGraph
- Parameters:
statement
- pattern to match, can hold null nodes as wildcards- Returns:
- list of Statement instances matching the pattern
-
getSubjects
Description copied from interface:Graph
Get items matching the statement pattern (null, predicate, object).- Specified by:
getSubjects
in interfaceGraph
- Parameters:
predicate
- predicate pattern, null acceptedobject
- object pattern, null accepted- Returns:
- list of subjects
-
getPredicates
Description copied from interface:Graph
Gets items matching the statement pattern (subject, null, object).- Specified by:
getPredicates
in interfaceGraph
- Parameters:
subject
- subject pattern, null acceptedobject
- object pattern, null accepted- Returns:
- list of predicates
-
getObjects
Description copied from interface:Graph
Gets items matching the statement pattern (subject, predicate, null).- Specified by:
getObjects
in interfaceGraph
- Parameters:
subject
- subject pattern, null acceptedpredicate
- predicate pattern, null accepted- Returns:
- list of node objects
-
hasStatement
Description copied from interface:Graph
Returns true if given statement pattern is in the graph.- Specified by:
hasStatement
in interfaceGraph
- Parameters:
statement
- statement pattern, can use null as wild cards- Returns:
- true or false
-
hasResource
Description copied from interface:Graph
Returns true if given resource appears in any statement of the graph.- Specified by:
hasResource
in interfaceGraph
- Returns:
- true or false
-
size
Returns the number of statements in the graph.XXX AT: this size may not be equal to the number of statements retrieved via getStatements() because it counts each statement property.
-
clear
public void clear()Description copied from interface:Graph
Clears the graph, removing all statements in it. -
query
Description copied from interface:Graph
Query the graph using a base URI. -
queryCount
Description copied from interface:Graph
Counts the number of results of a query.- Specified by:
queryCount
in interfaceGraph
- Parameters:
queryString
- the query stringlanguage
- the query language (sparql, rdql,...)baseURI
- the base URI to use for query- Returns:
- the count
-
read
Description copied from interface:Graph
Parses source into the graph.- Specified by:
read
in interfaceGraph
- Parameters:
in
- input streamlang
- format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".base
- base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.- Returns:
- true on success, else false
-
read
Description copied from interface:Graph
Parses source into the graph.- Specified by:
read
in interfaceGraph
- Parameters:
path
- path on file system where to take the serialization filelang
- format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".base
- base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.- Returns:
- true on success, else false
-
write
Description copied from interface:Graph
Serializes graph.- Specified by:
write
in interfaceGraph
- Parameters:
out
- output streamlang
- format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".base
- base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.- Returns:
- true on success, else false
-
write
Description copied from interface:Graph
Serializes graph.- Specified by:
write
in interfaceGraph
- Parameters:
path
- path on file system where to put the serialization filelang
- format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".base
- base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.- Returns:
- true on success, else false
-