Skip to content

1.0.0

Compare
Choose a tag to compare
@ledsoft ledsoft released this 29 Jun 15:52
· 346 commits to master since this release
62226dc
  • Add support for disabling inference when loading an entity (e.g., when loaded with disable inference query hint) (Enhancement #144).
  • Add API allowing to check whether an attribute value is inferred (Enhancement #141).
  • Support multiple inheritance via interfaces in the object model (Enhancement #157).
  • Add implementation of static metamodel generator (Feature #79).
  • Rework annotation property value storage (Enhancement #175).
  • Dependency updates: RDF4J 4.2.3, Jena 4.8.0, OWL API 5.5.0, AspectJ 1.9.17.

Breaking Changes

  • Removed deprecated Sesame driver (was replaced by RDF4J driver) (#120).
  • Removed deprecated query execution ontology API from EntityManager/Query. Was replaced by a query hint.
  • Reworked storage of annotation property values. From now on, String annotation property values are always stored as string.
    Previously, JOPA attempted to guess if the value was a URI/IRI by parsing the value, which lead to incorrect handling of values containing :.
    Now, only values of type URI/IRI (or entities) will be stored as individuals/resources.
  • The same holds for values of @Properties -- if the field is declared as Map<String, Set<String>>, the values will always be stored as strings. To force JOPA to store the values with appropriate type, use typed properties - Map<URI, Set<Object>>.
  • Require Java 11 or later.

Update Notes

  • RDF4J 4.x dropped support for the SPIN SAIL.
  • RDF4J 4.x client is not compatible with 3.x server (and 4.x server with 3.x client). This is due to the changes in the binary protocol used by RDF4J. This affects GraphDB as well - 10.x or later must be used with 4.x RDF4J clients. Based on this comment, it is possible to work around this issue by setting the system property org.eclipse.rdf4j.rio.binary.format_version to 1. The following table summarizes the compatibility:
RDF4J Server 3.x, GraphDB 8.x, 9.x RDF4J Server 4.x, GraphDB 10.x
RDF4J Client 3.x ✔️ X (works with GraphDB 10.x)
RDF4J Client 4.x X (set org.eclipse.rdf4j.rio.binary.format_version=1 to work around) ✔️