Interface Graph

All Superinterfaces:
Serializable
All Known Implementing Classes:
CoreGraph, JenaGraph

public interface Graph extends Serializable
Interface for graphs.

New types of graphs will be registered using extension points.

Graphs have to be serializable has they will be kept as references in the RelationService bean.

Author:
Anahide Tchertchian
  • Method Details

    • setDescription

      void setDescription(GraphDescription graphDescription)
      Sets the graph description.
    • getNamespaces

      Map<String,String> getNamespaces()
      Returns namespaces for the graph.

      Namespaces are prefix/namespace bindings, as rdf for http://www.w3.org/1999/02/22-rdf-syntax-ns#.

      Returns:
      namespaces map of namespace bindings for the graph
    • add

      void add(Statement statement)
      Adds the statement object to the graph.
      Parameters:
      statement - statement to add
      Since:
      5.5
    • add

      void add(List<Statement> statements)
      Adds given list of Statement objects to the graph.
      Parameters:
      statements - list of Statement instances to add
    • remove

      void remove(Statement statement)
      Removes the statement object from the graph.
      Parameters:
      statement - statement to remove
      Since:
      5.5
    • remove

      void remove(List<Statement> statements)
      Removes given list of Statement objects from the graph.
      Parameters:
      statements - List of Statement instances to remove
    • getStatements

      List<Statement> getStatements()
      Returns all statements in the graph.
      Returns:
      list of Statement instances
    • getStatements

      List<Statement> getStatements(Statement statement)
      Returns all statements in the graph matching the pattern.
      Parameters:
      statement - pattern to match, can hold null nodes as wildcards
      Returns:
      list of Statement instances matching the pattern
    • getStatements

      List<Statement> getStatements(Node subject, Node predicate, Node object)
      Returns all statements in the graph matching the pattern.
      Returns:
      list of Statement instances matching the pattern
      Since:
      5.5
    • getSubjects

      List<Node> getSubjects(Node predicate, Node object)
      Get items matching the statement pattern (null, predicate, object).
      Parameters:
      predicate - predicate pattern, null accepted
      object - object pattern, null accepted
      Returns:
      list of subjects
    • getPredicates

      List<Node> getPredicates(Node subject, Node object)
      Gets items matching the statement pattern (subject, null, object).
      Parameters:
      subject - subject pattern, null accepted
      object - object pattern, null accepted
      Returns:
      list of predicates
    • getObjects

      List<Node> getObjects(Node subject, Node predicate)
      Gets items matching the statement pattern (subject, predicate, null).
      Parameters:
      subject - subject pattern, null accepted
      predicate - predicate pattern, null accepted
      Returns:
      list of node objects
    • hasStatement

      boolean hasStatement(Statement statement)
      Returns true if given statement pattern is in the graph.
      Parameters:
      statement - statement pattern, can use null as wild cards
      Returns:
      true or false
    • hasResource

      boolean hasResource(Resource resource)
      Returns true if given resource appears in any statement of the graph.
      Returns:
      true or false
    • size

      Long size()
      Returns the number of statements in the graph.
      Returns:
      number of statements as a Long
    • clear

      void clear()
      Clears the graph, removing all statements in it.
    • query

      QueryResult query(String queryString, String language, String baseURI)
      Query the graph using a base URI.
      Parameters:
      queryString - the query string
      language - the query language (sparql, rdql,...)
      baseURI - the base URI to use for query
      Returns:
      QueryResult instance
    • queryCount

      int queryCount(String queryString, String language, String baseURI)
      Counts the number of results of a query.
      Parameters:
      queryString - the query string
      language - the query language (sparql, rdql,...)
      baseURI - the base URI to use for query
      Returns:
      the count
    • read

      boolean read(String path, String lang, String base)
      Parses source into the graph.
      Parameters:
      path - path on file system where to take the serialization file
      lang - 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

      boolean read(InputStream in, String lang, String base)
      Parses source into the graph.
      Parameters:
      in - input stream
      lang - 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

      boolean write(String path, String lang, String base)
      Serializes graph.
      Parameters:
      path - path on file system where to put the serialization file
      lang - 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

      boolean write(OutputStream out, String lang, String base)
      Serializes graph.
      Parameters:
      out - output stream
      lang - 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