Skip to content

Changelog 📰

Unreleased

Added

  • Add empty annotation index warning for BERTMap, related to issue #18.
  • Add check_consistency() at deeponto.onto.Ontology.
  • Add a warning message for empty vocab at deeponto.onto.OntologyVerbaliser.

...

v0.8.8 (2023 October)

Added

  • Add object property domain/range verbalisation at deeponto.onto.OntologyVerbaliser.
  • Add new reasoner type "struct" (Structural Reasoner) at deeponto.onto.OntologyReasoner.
  • Add load_reasoner() method at deeponto.onto.OntologyReasoner for convenience of changing the reasoner type and remove reload_reasoner() method as it is a special case of load_reasoner().
  • Add rdflib into the dependencies for building graph-related features.
  • Add deeponto.onto.taxonomy for building the taxonomy over ontologies and potentially other structured data.

Changed

  • Change printing to appropriate logging (gradually).
  • Change read_table_mappings() method at deeponto.align.mapping from using dataframe.iterrows() to dataframe.itertuples() which is much more efficient.
  • Change the default lowcasing argument of deeponto.utils.process_annotation_literal() to False.
  • Change the default logging level of slf4j to warn to prevent tons of printing at ELK (issue (#13)[https://github.com/KRR-Oxford/DeepOnto/issues/13]).

v0.8.7 (2023 September)

Added

  • Add the OAEI evaluation code for the main track global matching, local ranking, and the special sub-track bio-llm at deeponto.align.oaei.
  • Add reasoner_type argument at deeponto.onto.OntologyReasoner, now supporting hermit (default) and elk.
  • Add get_all_axioms() method at deeponto.onto.Ontology.
  • Add get_iri() method at deeponto.onto.Ontology.

  • Add new features into deeponto.onto.OntologyVerbaliser including:

  • verbalise_object_property_subsumption() for object property subsumption axioms.

  • property chain verbalisation at verbalise_class_expression().
  • verbalise_class_subsumption() for class subsumption axioms;
  • verbalise_class_equivalence() for class equivalence axioms;
  • verbalise_class_assertion() for class assertion axioms;
  • verbalise_relation_assertion() for relation assertion axioms;
  • auto-correction option for fixing entity names.
  • keep_iri option for keeping entity IRIs.
  • add_quantifier_word option for adding quantifier words as in the Manchester syntax.

  • Add get_assertion_axioms() method at deeponto.onto.Ontology.

  • Add get_axiom_type() method at deeponto.onto.Ontology.
  • Add owl_individuals attribute at deeponto.onto.Ontology.

Changed

  • Change get_owl_objects() method to be anonymous as it is only used for creating pre-processed entity index at deeponto.onto.Ontology.
  • Change get_owl_object_from_iri() method to get_owl_object() at deeponto.onto.Ontology.
  • Change the log level of the ELK reasoner to ERROR.

Fixed

v0.8.5 (2023 September)

Added

  • Add set_seed() method at deeponto.utils.

Changed

  • Change the layout of all utility methods by making them stand-alone instead of static methods.
  • Change the .verbalise_class_expression() method by adding an option to keep entity IRIs without verbalising them using .vocabs at deeponto.onto.OntologyVerbaliser.
  • Change default apply_lowercasing value to False for both .get_annotations() and .build_annotation_index() methods at deeponto.onto.Ontology.
  • Change the method .get_owl_object_annotations() to .get_annotations() at deeponto.onto.Ontology.
  • Change the LogMap debugger memory options for BERTMap's mapping repair.
  • Change the default jar command timeout to 1 hour.

Fixed

  • Fix duplicate logging in running BERTMap due to progapagation.

v0.8.4 (2023 July)

Added

  • Add specific check of use_in_alignment annotation in BERTMap for the OAEI.
  • Add OAEI utilities at deeponto.align.oaei.

Changed

  • Change the read_table_mappings method to allow None for threshold.

Fixed

  • Fix BERTMap error and add corresponding warning when an input ontology has no sibling class group, related to Issue #10.
  • Fix BERTMap error and add corresponding warning when an input ontology has some class with no label (annotation), related to Issue #10.

v0.8.3 (2023 July)

Changed

  • Change the mapping extension from using reasoner to direct assertions.
  • Change the name of pruning function in deeponto.onto.OntologyPruner.
  • Change the verbalisation function by setting quantifier words as optional (by default not adding).
  • Change sibing retrieval from using reasoner to direct assertions.

Fixed

  • Fix the minor bug for the f1 and MRR method in deeponto.align.evaluation.AlignmentEvaluator.

v0.8.0 (2023 June)

Added

  • Add the ontology normaliser at deeponto.onto.OntologyNormaliser.
  • Add the ontology projector at deeponto.onto.OntologyProjector.

Changed

  • Change the dependency transformers to transformers[torch].

v0.7.5 (2023 June)

Changed

  • Change Java dependencies from using lib from mowl to direct import.
  • Change get_owl_object_annotations by adding uniqify at the end to preserve the order.

Fixed

  • Fix BERTMap's non-synonym sampling when the class labels are not available using the try-catch block.

v0.7.0 (2023 April)

Added

  • Add the BERTSubs module at deeponto.subs.bertsubs; its inter-ontology setting is also imported at deeponto.align.bertsubs.

Changed

  • Move the pruning functionality into deeponto.onto.OntologyPruner as a separate module.
  • Amend JVM checking before displaying the JVM memory prompt from importing deeponto.onto.Ontology; if started already, skip this step.
  • Change the function get_owl_object_annotations at deeponto.onto.Ontology by preserving the relative order of annotation retrieval, i.e., create set first and use the .add() function instead of casting the list into set in the end.

Fixed

  • Fix the function check_deprecated at deeponto.onto.Ontology by adding a check for the \(\texttt{owl:deprecated}\) annotation property -- if this property does not exist in the current ontology, return False (not deprecated).

v0.6.1 (2023 April)

Added

  • Add the method remove_axiom for removing an axiom from the ontology at deeponto.onto.Ontology (note that the counterpart add_axiom has already been available).
  • Add the method check_named_entity for checking if an entity is named at deeponto.onto.Ontology.
  • Add the method get_subsumption_axioms for getting subsumption axioms subject to different entity types at deeponto.onto.Ontology.
  • Add the method get_asserted_complex_classes for getting all complex classes that occur in ontology (subsumption and/or equivalence) axioms at deeponto.onto.Ontology.
  • Add the methods get_asserted_parents and get_asserted_children for getting asserted parent and children for a given entity at deeponto.onto.Ontology.
  • Add the method check_deprecation for checking an owl object's deprecation (annotated) at deeponto.onto.Ontology.

Changed

  • Move the spacy en_core_web_sm download into the initialisation of OntologyVerbaliser.
  • Change the method of getting equivalence axioms by adding support to different entity types at deeponto.onto.Ontology.
  • Rename the methods of getting inferred super-entities and sub-entities at deeponto.onto.OntologyReasoner:
  • super_entities_of \(\rightarrow\) get_inferred_super_entities
  • sub_entities_of \(\rightarrow\) get_inferred_sub_entities

Fixed

  • Fix the top and bottom data property iris (from "https:" to "http:") at deeponto.onto.Ontology.

v0.6.0 (2023 Mar)

  • Add the OntoLAMA module at deeponto.lama.
  • Add the verb auto-correction and more precise documentation for deeponto.onto.verbalisation.

v0.5.x (2023 Jan - Feb)

  • Add the preliminary ontology verbalisation module at deeponto.onto.verbalisation.
  • Fix PyPI issues based on the new code layout.
  • Change code layout to the src/ layout.
  • Rebuild the whole package based on the OWLAPI.
  • Remove owlready2 from the essential dependencies.

Deprecated (before 2023)

The code before v0.5.0 is no longer available.


Last update: November 23, 2023
Created: March 31, 2023
GitHub: @Lawhy   Personal Page: yuanhe.wiki