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

Issue #1191 jagadish 20210625 #1192

Merged
merged 8 commits into from Aug 12, 2022
Merged

Conversation

turbomam
Copy link
Contributor

Looking forward to the review process!

I have left two terms from #1191 out of the robot template execution, because @cmungall and I still had some questions after a brief meeting we had yesterday. See https://docs.google.com/spreadsheets/d/12GICSjx2s3Ey0Crv9uMdkW8unt3LxPcOS2_u7EMAr38/edit#gid=1778038570

@pbuttigieg
Copy link
Member

pbuttigieg commented Aug 10, 2022

DL Profile error, likely synchronous to @wdduncan's issue #1072 and @matentzn's fix #1307 (EDIT: no, seems different, focused on declarations)

@pbuttigieg
Copy link
Member

From robot validate-profile --profile DL --input envo-edit.owl -vvv

OWL 2 DL Profile Report: Ontology and imports closure NOT in profile. The following violations are present:
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019412> "envoPolar")]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019332> "envoPolar")]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019409> "envoPolar")]
Use of undeclared annotation property: <http://purl.org/dc/elements/1.1/title> in annotation [Annotation(<http://purl.org/dc/elements/1.1/title> "ENVO Bridge Axioms") in null]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000040> [SubClassOf(<http://purl.obolibrary.org/obo/CHEBI_36342> <http://purl.obolibrary.org/obo/BFO_0000040>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIR
I(<null>))]
Use of undeclared annotation property: <http://purl.org/dc/elements/1.1/creator> in annotation [Annotation(<http://purl.org/dc/elements/1.1/creator> "http://orcid.org/0000-0002-6601-2165") in null]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000040> [SubClassOf(<http://purl.obolibrary.org/obo/CHEBI_24431> <http://purl.obolibrary.org/obo/BFO_0000040>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIR
I(<null>))]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019331> "envoPolar")]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/PCO_0000002> "envoPolar")]
Use of undeclared object property: <http://purl.obolibrary.org/obo/RO_0002303> [SubClassOf(<http://purl.obolibrary.org/obo/PCO_0000001> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002303> <http://purl.obolibrary.org/obo/ENVO_01000739>)) in OntologyID(Ontolog
yIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0015948> "envoPolar")]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0015979> "envoPolar")]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019414> "envoPolar")]
Use of undeclared class: <http://purl.obolibrary.org/obo/UBERON_0000061> [SubClassOf(<http://purl.obolibrary.org/obo/FAO_0000001> <http://purl.obolibrary.org/obo/UBERON_0000061>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) Ver
sionIRI(<null>))]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/GO_0019411> "envoPolar")]
Use of undeclared object property: <http://purl.obolibrary.org/obo/RO_0000056> [SubClassOf(<http://purl.obolibrary.org/obo/PATO_0001739> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000052> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/BFO_0000002> Obj
ectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000056> <http://purl.obolibrary.org/obo/ENVO_01001023>)))) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared annotation property: <http://purl.org/dc/terms/license> in annotation [Annotation(<http://purl.org/dc/terms/license> "https://creativecommons.org/publicdomain/zero/1.0/") in null]
Use of undeclared annotation property: <http://usefulinc.com/ns/doap#GitRepository> in annotation [Annotation(<http://usefulinc.com/ns/doap#GitRepository> "https://github.com/EnvironmentOntology/envo/"^^xsd:anyURI) in null]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000002> [SubClassOf(<http://purl.obolibrary.org/obo/PATO_0001739> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000052> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/BFO_0000002> ObjectSomeVa
luesFrom(<http://purl.obolibrary.org/obo/RO_0000056> <http://purl.obolibrary.org/obo/ENVO_01001023>)))) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared object property: <http://purl.obolibrary.org/obo/RO_0000052> [SubClassOf(<http://purl.obolibrary.org/obo/PATO_0001739> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000052> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/BFO_0000002> Obj
ectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000056> <http://purl.obolibrary.org/obo/ENVO_01001023>)))) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared class: <http://purl.obolibrary.org/obo/ENVO_01000739> [SubClassOf(<http://purl.obolibrary.org/obo/PCO_0000001> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0002303> <http://purl.obolibrary.org/obo/ENVO_01000739>)) in OntologyID(OntologyIRI(<h
ttp://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared annotation property: <http://purl.org/dc/elements/1.1/description> in annotation [Annotation(<http://purl.org/dc/elements/1.1/description> "Bridge module that injects axioms connects external ontologies to upper ontology classes") in null]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000004> [SubClassOf(<http://purl.obolibrary.org/obo/UBERON_0001062> <http://purl.obolibrary.org/obo/BFO_0000004>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) Versio
nIRI(<null>))]
Use of undeclared class: <http://purl.obolibrary.org/obo/ENVO_01001023> [SubClassOf(<http://purl.obolibrary.org/obo/PATO_0001739> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/RO_0000052> ObjectIntersectionOf(<http://purl.obolibrary.org/obo/BFO_0000002> ObjectSome
ValuesFrom(<http://purl.obolibrary.org/obo/RO_0000056> <http://purl.obolibrary.org/obo/ENVO_01001023>)))) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI(<null>))]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000040> [SubClassOf(<http://purl.obolibrary.org/obo/UBERON_0000465> <http://purl.obolibrary.org/obo/BFO_0000040>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) Versio
nIRI(<null>))]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000040> [SubClassOf(<http://purl.obolibrary.org/obo/PO_0025131> <http://purl.obolibrary.org/obo/BFO_0000040>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIRI
(<null>))]
Use of undeclared class: <http://purl.obolibrary.org/obo/BFO_0000040> [SubClassOf(<http://purl.obolibrary.org/obo/NCBITaxon_1> <http://purl.obolibrary.org/obo/BFO_0000040>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo/imports/envo_bridge.owl>) VersionIR
I(<null>))]
Use of undeclared annotation property: <http://www.geneontology.org/formats/oboInOwl#inSubset> in annotation [Annotation(<http://www.geneontology.org/formats/oboInOwl#inSubset> "envoPolar") in AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#inSubset> <h
ttp://purl.obolibrary.org/obo/CHEBI_76413> "envoPolar")]
Use of undeclared annotation property: <http://xmlns.com/foaf/0.1/homepage> in annotation [Annotation(<http://xmlns.com/foaf/0.1/homepage> "http://environmentontology.org/"^^xsd:anyURI) in null]
Use of undeclared annotation property: <http://usefulinc.com/ns/doap#bug-database> in annotation [Annotation(<http://usefulinc.com/ns/doap#bug-database> "https://github.com/EnvironmentOntology/envo/issues/"^^xsd:anyURI) in null]

PROFILE VIOLATION ERROR http://purl.obolibrary.org/obo/envo.owl violates profile DL
For details see: http://robot.obolibrary.org/validate-profile#profile-violation-error
java.lang.Exception: validate-profile#PROFILE VIOLATION ERROR http://purl.obolibrary.org/obo/envo.owl violates profile DL
        at org.obolibrary.robot.ValidateProfileCommand.execute(ValidateProfileCommand.java:115)
        at org.obolibrary.robot.CommandManager.executeCommand(CommandManager.java:244)
        at org.obolibrary.robot.CommandManager.execute(CommandManager.java:188)
        at org.obolibrary.robot.CommandManager.main(CommandManager.java:135)
        at org.obolibrary.robot.CommandLineInterface.main(CommandLineInterface.java:61)


@pbuttigieg
Copy link
Member

pbuttigieg commented Aug 10, 2022

Not sure what's the issue. Quick scan reveals the following:

I'm looking for Declaration statements like:

Declaration(AnnotationProperty(<http://purl.org/dc/elements/1.1/description>))

These are declared:

These are not declared, however:

Do these have to be in the

############################
#   Annotation Properties
############################

block as well @matentzn ? #inSubset is in both, but still produces an error.

@pbuttigieg
Copy link
Member

@turbomam sorting out merge errors as we get this PR in line with the master branch. I'll review the class content when the technical errors are sorted out.

@kaiiam
Copy link
Contributor

kaiiam commented Aug 10, 2022

Also the .gitignore file probably shouldn't be modified here.

As for the errors when I look at the CI check I think what's failing is perhaps this:

IRI is relative: 0000-0002-6670-9157 [AnnotationAssertion(<http://www.geneontology.org/formats/oboInOwl#created_by> <http://purl.obolibrary.org/obo/ENVO_03600049> <0000-0002-6670-9157>) in OntologyID(OntologyIRI(<http://purl.obolibrary.org/obo/envo.owl>) VersionIRI(<null>))]

which you can see in the owl file

AnnotationAssertion(http://www.geneontology.org/formats/oboInOwl#created_by http://purl.obolibrary.org/obo/ENVO_03600049 <0000-0002-6670-9157>)

Basically I think the issue is that the created_by is expecting an IRI in <0000-0002-6670-9157> but it's just a string. I think changing them to <https://orcid.org/0000-0002-6670-9157> should solve this. @turbomam can you take care of this one as it was your PR?

@kaiiam
Copy link
Contributor

kaiiam commented Aug 10, 2022

Yes I'm pretty sure this is the issue you can see it more clearly in protege:

image

where we set this to expect IRI's but gave it strings hence the violations.

In contrast a correct term should look like:

image

@kaiiam
Copy link
Contributor

kaiiam commented Aug 11, 2022

I've gone in and fixed the IRI's I hope that helps resolve the above issue we'll see when the CI build finishes.

@pbuttigieg
Copy link
Member

Looks good @kaiiam - quite confusing DL report for something so trivial

@kaiiam
Copy link
Contributor

kaiiam commented Aug 11, 2022

something so trivial

It's an incorrect assertion we said the type should be an IRI and provided a string so it's technically wrong.

@pbuttigieg
Copy link
Member

pbuttigieg commented Aug 11, 2022

There were also 23 occurrences of HTTP vs HTTPS in @turbomam's ORCIDs, fixing now

There are 885 additional instances of this kind. Also fixing.

@pbuttigieg
Copy link
Member

pbuttigieg commented Aug 11, 2022

Looking good, now on to content review @turbomam. Acknowledging we did quite a bit of content review in the ROBOT template already.

🔴 = issue
🟢 = opportunity
❔ = question

  • cay - small grammatical fix, removed cay synonyms from ENVO:island. Added caye as exact synonym.
  • cold room - trimming down definition to essentiality, moving other aspects to a comment.
  • pathogen-suppressive soil - definitional tightening and generalising, elaborations moved to comment. If you need a class specifically for plant pathogens, please create a subclass of this term.
  • eutrophic pond - added subclass axiom to eutrophic water.
  • experimental forest ecosystem - changed definition to differentiate on designation over administration.
  • fermentation pit - moved under pit and axioms added for this to be inferred under human construction. Definition changed accordingly.
  • marine lake - changed "very close to" to something more connected to its properties. Added 'connected to' axiom.
  • marine lake water - like other waters of this formulation, a portion of marine lake water need not be part of that water body, it can also be removed from it. Changing definition accordingly. Axioms would have to wait for NTR: [sourced,extracted,...] from or variation of derives from oborel/obo-relations#621
  • meromictic pond - aligned meromictic lake definition to this one, moving accessory text to comment.
  • 🔴 organic farm - definition seems to be example based rather than definitive, unclear what "emphasized" means here. Needs better definition.
  • plant pot - A nuclear missile silo could count as a pot under the original definition. That being said, I don't know how big a plant pot can get before it's not a pot anymore. Narrowed by switching "used" to the intention of design for a function.
  • 🟢 processed tobacco - looks fine, an axiom to a taxon set would be good. 🔴 This was under an OBI class 'processed material'. Moved under manufactured product - there needs to be a sorting out of objects from materials in that ENVO branch. @turbomam alternatively, can this can be recast as "processed tobacco product"?
  • raceway pond - moved under pond, axioms added to reason it under human construction. Definition modification.
  • shower curtain - the definition is very function based, so a flamethrower could also work as a shower curtain. As fun as that sounds, I added some more constraints to the definition. Also, showers are not only located in bathrooms, relaxing that.
  • smokeless tobacco - Definition modification.
  • 🔴 space station - A space station need not be used for research alone. We'll have to broaden this.
  • train car - added part of axiom directed towards train
  • water tap - looks fine.

Other changes / issues

  • moved device under manufactured product, was under processed material.

@pbuttigieg
Copy link
Member

@turbomam - almost there.

We have two issues regarding organic farms and space stations (a brand new sentence) that need input from you.

@pbuttigieg
Copy link
Member

@turbomam and I resolved the open issues in a call just now. Should be good to merge once QC lets us.

@pbuttigieg pbuttigieg merged commit 277be25 into master Aug 12, 2022
@pbuttigieg pbuttigieg deleted the issue-1191-Jagadish-20210625 branch August 12, 2022 15:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants