# Package org.eclipse.rdf4j.model

The RDF Model API

The core RDF model interfaces are organized in the following hierarchy:

            Value          Statement       Model
           /     \
          /       \
       Resource  Literal
         /  \
        /    \
      IRI   BNode

An individual RDF triple or statement is represented by the `Statement` interface. Collections of RDF statements are represented by the `Model` interface.

Creation of new Model elements (`IRI`, `Literal`, `BNode`, `Statement`) is done by means of a `ValueFactory`.

See Also:
  RDF4J model documentation

- Interface Summary
  Interface | Description
  --- | ---
  BNode | An RDF-1.1 blank node (aka bnode, aka anonymous node).
  IRI | An Internationalized Resource Identifier (IRI).
  Literal | An RDF-1.1 literal consisting of a label (the lexical value), a datatype, and optionally a language tag.
  Model | An RDF Model, represented as a `Set` of `Statement`s with predictable iteration order.
  ModelFactory | Factory to create empty `Model` implementations.
  Namespace | A namespace, consisting of a namespace name and a prefix that has been assigned to it.
  NamespaceAware | An interface that is used to signify that something is able to provide `Namespace` information, in addition to `Statement`s.
  Resource | The supertype of all RDF resources (IRIs and blank nodes).
  Statement | An RDF statement, with optional associated context.
  Triple | An RDF-star embedded triple.
  Value | The supertype of all RDF model objects (URIs, blank nodes and literals).
  ValueFactory | A factory for creating `IRIs`, `blank nodes`, `literals` and `statements` based on the RDF-1.1 Concepts and Abstract Syntax, a W3C Recommendation.

- Class Summary
  Class | Description
  --- | ---
  AbstractModelPerformanceTest |
  AbstractModelTest | Deprecated. since 3.5.0.
  ModelNamespacesTest | An abstract test class to test the handling of namespaces by `Model` implementations.
  ModelTest | Abstract test suite for implementations of the `Model` interface