Skip to content

Migration: v0.21.0 → v0.22.0

Status: Applies when upgrading from v0.21.0 to tagged v0.22.0.

Summary

v0.22.0 completes OWL 2 authoring (EPIC-002 / PAR-OWL-001): HasKey, DisjointUnion, inverse/equivalent/disjoint properties, property hierarchy, negative assertions, Same/DifferentIndividual, datatype entities and definitions, axiom annotations, expanded Manchester (not, value, Self, OneOf, data restrictions), and XML mutate parity for the expanded PatchOp set.

What changed for editors

  • New Inspector sections: HasKey, DisjointUnion, Inverse, Same/Different, Negative object property assertions; listed axioms support remove + nested axiom-annotation remove
  • Catalog / getEntity projects v0.22 axiom families onto EntityDetail cards (SameIndividual still also projected as owl:sameAs annotations for rename detection)
  • Manchester accepts not, value, Self, {…}, xsd-driven data restrictions, and full DataRange payloads for datatype definitions
  • create_entity supports kind: "datatype"
  • XML (RDF/XML / OWL/XML) write-back accepts the expanded op catalog including axiom annotations and complex DataRanges (prefixes remain Turtle-only)
  • Turtle DifferentIndividuals add/remove uses owl:AllDifferent + owl:distinctMembers (Protégé-compatible), not pairwise owl:differentFrom

New patch operations (snake_case)

Family Ops
Keys add_has_key / remove_has_key
DisjointUnion add_disjoint_union / remove_disjoint_union
RBox add_inverse_object_properties, equivalent/disjoint object & data properties, add_sub_object_property_of, add_sub_data_property_of (+ removes)
ABox add_negative_object_property_assertion, add_negative_data_property_assertion, add_same_individual, add_different_individuals (+ removes)
Datatypes add_datatype_definition / remove_datatype_definition
Axiom annotations add_axiom_annotation / remove_axiom_annotation (axiom_op, subject_iri, optional related_iri, predicate, value)

Full tables: patch-reference · OWL2_AUTHORING_GAPS

What did not change

  • JSON-LD / TriG / N-Triples remain read-only
  • Refactor apply remains Turtle-only
  • SWRL / reasoning parity / DL Query are not in v0.22 (see roadmap v0.23–v0.24)
  • XML remains semantic re-serialize (ADR-0021), not byte-identical to Protégé

Upgrade steps

  1. Bump OntoCode extension and ontocore CLI to 0.23.0
  2. Existing patch JSON remains valid; new ops are additive
  3. Re-index workspaces after upgrade if you rely on new axiom families in the catalog
  • Changelog: 0.22.0
  • Parity: PAR-OWL-001 / #248
  • Fixtures: examples/protege-roundtrip/owl2-keys.ttl, owl2-abox.ttl