Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update OWLAPI to version 4.5.29 #1200

Merged
merged 8 commits into from
May 13, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Updated `duplicate_exact_syonym` [`report`] query to be case-insensitive and ignore synoyms annotated as abbreviation or acronym synonym types [#1179]
- Extend `--drop-axiom-annotations` option to support value-specific removal of axiom annotations [#1193]
- Add `--enforce-obo-format`, `--exclude-named-classes` and `--include-subclass-of` features to relax command [#1060, #1183]
- Updated OWL API to 3.5.28. This includes a major update to OBO Format which now supports [IDSPACE declarations](https://github.com/owlcs/owlapi/pull/1102) (non-OBO Foundry prefixes).

### Fixed
- '--annotate-with-source true' does not work with extract --method subset [#1160]
Expand Down
14 changes: 8 additions & 6 deletions docs/examples/annotated.obo
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
format-version: 1.2
data-version: https://github.com/ontodev/robot/examples/annotated-1.owl
idspace: foaf http://xmlns.com/foaf/0.1/
idspace: oboInOwl http://www.geneontology.org/formats/oboInOwl#
remark: Comment
remark: Comment from annotations.ttl file.
ontology: https://github.com/ontodev/robot/examples/annotated.owl
Expand Down Expand Up @@ -378,8 +380,8 @@ xref: XAO:0000165
is_a: UBERON:0001851 ! cortex
intersection_of: UBERON:0001851 ! cortex
intersection_of: part_of UBERON:0002369 ! adrenal gland
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/5/5c/Gray1185.png
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Gray1185.png/200px-Gray1185.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/5/5c/Gray1185.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Gray1185.png/200px-Gray1185.png
property_value: homology_notes "All craniates have groups of cells homologous to the mammalian adrenocortical and chromaffin tissues (medulla), but they are scattered in and near the kidneys in fishes. (...) The cortical and chromaffin tissues come together to form adrenal glands in tetrapods.[well established][VHOG]" xsd:string
property_value: taxon_notes "Kardong states that mammals are the first to have distinct cortext and medulla, but this contradicts XAO" xsd:string

Expand Down Expand Up @@ -470,7 +472,7 @@ is_a: UBERON:0002530 ! gland
intersection_of: UBERON:0002530 ! gland
intersection_of: part_of UBERON:0000949 ! endocrine system
relationship: part_of UBERON:0000949 ! endocrine system
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/d/da/Illu_endocrine_system.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/d/da/Illu_endocrine_system.png

[Term]
id: UBERON:0002369
Expand Down Expand Up @@ -515,9 +517,9 @@ xref: XAO:0000164
is_a: UBERON:0006858 ! adrenal/interrenal gland
relationship: part_of UBERON:0000916 ! abdomen
relationship: part_of UBERON:0000949 ! endocrine system
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/9/9d/Illu_endocrine_system_New.png
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Illu_endocrine_system.jpg/200px-Illu_endocrine_system.jpg
property_value: external_definition "Anatomical structure which is found on the surface of the kidney and secretes various hormones including epinephrine, norephinephrine, aldosterone, corticosterone, and cortisol.[AAO]" xsd:string
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/9/9d/Illu_endocrine_system_New.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Illu_endocrine_system.jpg/200px-Illu_endocrine_system.jpg
property_value: function_notes "suprarenal cortex manufactures corticosteroids; suprarenal medulla manufactures epinephrine and norepinephrine; suprarenal medulla receives preganglionic sympathetic innervation from the greater thoracic splanchnic n." xsd:string
property_value: homology_notes "All craniates have groups of cells homologous to the mammalian adrenocortical and chromaffin tissues, but they are scattered in and near the kidneys in fishes. (...) The cortical and chromaffin tissues come together to form adrenal glands in tetrapods.[well established][VHOG]" xsd:string
property_value: taxon_notes "The origin of the adrenal gland is still controversial. It is thought to share the same origin as the kidney and gonads, derived from coelomic epithelium of the urogenital ridge and/or the underlying mesenchyme (Keegan and Hammer, 2002; Morohashi, 1997). We follow Kardong and state homology at the level of the cortex and medulla rather than gland as a whole" xsd:string
Expand Down Expand Up @@ -572,7 +574,7 @@ xref: OpenCyc:Mx4rwP3vyJwpEbGdrcN5Y29ycA
xref: UMLS:C1285092
xref: WikipediaCategory:Glands
is_a: UBERON:0000062 ! organ
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/a/a1/Gray1026.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/a/a1/Gray1026.png
property_value: has_relational_adjective "glandular" xsd:string

[Term]
Expand Down
14 changes: 8 additions & 6 deletions docs/examples/example.obo
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
format-version: 1.2
idspace: foaf http://xmlns.com/foaf/0.1/
idspace: oboInOwl http://www.geneontology.org/formats/oboInOwl#
remark: Comment from annotations.ttl file.
ontology: https://github.com/ontodev/robot/examples/edit.owl
owl-axioms: Prefix(owl:=<http://www.w3.org/2002/07/owl#>)\nPrefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)\nPrefix(xml:=<http://www.w3.org/XML/1998/namespace>)\nPrefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)\nPrefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)\n\n\nOntology(\nDeclaration(Class(<http://purl.obolibrary.org/obo/UBERON_0001062>))\n############################\n# Classes\n############################\n\n# Class: <http://purl.obolibrary.org/obo/UBERON_0001062> (<http://purl.obolibrary.org/obo/UBERON_0001062>)\n\nSubClassOf(<http://purl.obolibrary.org/obo/UBERON_0001062> owl:Thing)\n\n\n)
Expand Down Expand Up @@ -377,8 +379,8 @@ xref: XAO:0000165
is_a: UBERON:0001851 ! cortex
intersection_of: UBERON:0001851 ! cortex
intersection_of: part_of UBERON:0002369 ! adrenal gland
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/5/5c/Gray1185.png
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Gray1185.png/200px-Gray1185.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/5/5c/Gray1185.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/thumb/5/5c/Gray1185.png/200px-Gray1185.png
property_value: homology_notes "All craniates have groups of cells homologous to the mammalian adrenocortical and chromaffin tissues (medulla), but they are scattered in and near the kidneys in fishes. (...) The cortical and chromaffin tissues come together to form adrenal glands in tetrapods.[well established][VHOG]" xsd:string {date_retrieved="2012-09-17", external_class="VHOG:0001481", ontology="VHOG", source="http://bgee.unil.ch/", source="ISBN:978-0030223693 Liem KF, Bemis WE, Walker WF, Grande L, Functional Anatomy of the Vertebrates: An Evolutionary Perspective (2001) p.518 and Figure 15-9"}
property_value: taxon_notes "Kardong states that mammals are the first to have distinct cortext and medulla, but this contradicts XAO" xsd:string

Expand Down Expand Up @@ -469,7 +471,7 @@ is_a: UBERON:0002530 ! gland
intersection_of: UBERON:0002530 ! gland
intersection_of: part_of UBERON:0000949 ! endocrine system
relationship: part_of UBERON:0000949 ! endocrine system
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/d/da/Illu_endocrine_system.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/d/da/Illu_endocrine_system.png

[Term]
id: UBERON:0002369
Expand Down Expand Up @@ -514,9 +516,9 @@ xref: XAO:0000164
is_a: UBERON:0006858 ! adrenal/interrenal gland
relationship: part_of UBERON:0000916 ! abdomen
relationship: part_of UBERON:0000949 ! endocrine system
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/9/9d/Illu_endocrine_system_New.png
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Illu_endocrine_system.jpg/200px-Illu_endocrine_system.jpg
property_value: external_definition "Anatomical structure which is found on the surface of the kidney and secretes various hormones including epinephrine, norephinephrine, aldosterone, corticosterone, and cortisol.[AAO]" xsd:string {date_retrieved="2012-06-20", external_class="AAO:0010551", ontology="AAO", source="AAO:BJB"}
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/9/9d/Illu_endocrine_system_New.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/thumb/c/c6/Illu_endocrine_system.jpg/200px-Illu_endocrine_system.jpg
property_value: function_notes "suprarenal cortex manufactures corticosteroids; suprarenal medulla manufactures epinephrine and norepinephrine; suprarenal medulla receives preganglionic sympathetic innervation from the greater thoracic splanchnic n." xsd:string
property_value: homology_notes "All craniates have groups of cells homologous to the mammalian adrenocortical and chromaffin tissues, but they are scattered in and near the kidneys in fishes. (...) The cortical and chromaffin tissues come together to form adrenal glands in tetrapods.[well established][VHOG]" xsd:string {date_retrieved="2012-09-17", external_class="VHOG:0001141", ontology="VHOG", source="http://bgee.unil.ch/", source="ISBN:978-0030223693 Liem KF, Bemis WE, Walker WF, Grande L, Functional Anatomy of the Vertebrates: An Evolutionary Perspective (2001) p.518 and Figure 15-9"}
property_value: taxon_notes "The origin of the adrenal gland is still controversial. It is thought to share the same origin as the kidney and gonads, derived from coelomic epithelium of the urogenital ridge and/or the underlying mesenchyme (Keegan and Hammer, 2002; Morohashi, 1997). We follow Kardong and state homology at the level of the cortex and medulla rather than gland as a whole" xsd:string
Expand Down Expand Up @@ -572,7 +574,7 @@ xref: OpenCyc:Mx4rwP3vyJwpEbGdrcN5Y29ycA
xref: UMLS:C1285092 {source="ncithesaurus:Gland"}
xref: WikipediaCategory:Glands
is_a: UBERON:0000062 ! organ
property_value: depicted:by http://upload.wikimedia.org/wikipedia/commons/a/a1/Gray1026.png
property_value: foaf:depicted_by http://upload.wikimedia.org/wikipedia/commons/a/a1/Gray1026.png
property_value: has_relational_adjective "glandular" xsd:string

[Term]
Expand Down
10 changes: 5 additions & 5 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-api</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand All @@ -177,7 +177,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-apibinding</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand All @@ -188,7 +188,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-rio</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand All @@ -204,12 +204,12 @@
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.13</version>
<version>1.3.0</version>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine.

But just FYI, it would also be possible to make ROBOT compile against the new OWLAPI without having to drastically bump the versions of the logging libraries (Logback and Log4-over-SLF4J): simply add an explicit dependency to org.slf4j:slf4j-api version 1.7.x.

The reason the build fails if we do not update the logging libraries is because the OWLAPI declares a dependency to org.slf4j:slf4j-api 2.x. ROBOT “inherits” that dependency (since it depends on the OWLAPI), so when we build the robot.jar archive, that archive ends up containing a copy of the slf4j-api 2.x (inherited from the OWLAPI) and a copy of Logback-classic (explicitly declared here as a direct dependency) — and those two versions are not compatible.

But SLF4J-API is strictly backwards compatible. Just because the OWLAPI declares it depends on slf4j-api >= 2.x does not mean it cannot work with slf4j-api 1.x.

So we could explicitly declare slf4j-api 1.7.x as a direct dependency of ROBOT here (alongside Logback-classic and Log4J-over-SLF4J). We would then end up with a robot.jar archive containing only versions of logging libraries that are compatible with each other (SLF4J-API < 2 and Logback-classic < 1.3).

Not saying that we should do that, of course. It is perfectly fine to bump to Logback-classic 1.3 and Log4J-over-SLF4J 2.0. Just mentioning the other possibility.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh thanks @gouttegd I didnt know that!

@jamesaoverton what is your preference? Bumping versions up, or adding this additional (transitive) dependency as a constraint?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @gouttegd for the explanation.

I despise Java logging, which may be clouding my judgement. But I think the simplest thing is just to bump these two dependencies to their latest versions:

This built and passed the test suite for me locally, so I don't see the benefit of adding yet another dependency (slf4j-api) that I don't understand. If I misunderstood something, please let me know.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I despise Java logging

I just spent the last 24 hours debugging issues caused by Java logging libraries, so… I share your feeling! :)

I don't see the benefit of adding yet another dependency (slf4j-api) that I don't understand. If I misunderstood something, please let me know.

Just that ROBOT is already dependent on slf4j-api – it’s just that currently that dependency is an indirect one.

But I fully agree that adding the explicit dependency on slf4j-api just to avoid bumping logback-classic and log4-over-slf4j would have no particular benefit in ROBOT’s case. It would only be useful if for some reason we wanted to keep using older versions of those libraries.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The slf4j upgrade has been removed. Only the logback upgrade remains now.

</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.32</version>
<version>2.0.11</version>
</dependency>
<dependency>
<groupId>au.csiro</groupId>
Expand Down
6 changes: 3 additions & 3 deletions robot-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-api</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand All @@ -97,7 +97,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-apibinding</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand All @@ -108,7 +108,7 @@
<dependency>
<groupId>net.sourceforge.owlapi</groupId>
<artifactId>owlapi-rio</artifactId>
<version>4.5.26</version>
<version>4.5.28</version>
<exclusions>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
Expand Down
Loading