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

phenio injects http://purl.obolibrary.org/obo/BFO_0000179 as an ObjectProperty #36

Closed
cmungall opened this issue Mar 3, 2023 · 8 comments · Fixed by #94
Closed

phenio injects http://purl.obolibrary.org/obo/BFO_0000179 as an ObjectProperty #36

cmungall opened this issue Mar 3, 2023 · 8 comments · Fixed by #94

Comments

@cmungall
Copy link
Member

cmungall commented Mar 3, 2023

This should be an AP

somewhere in the imports someone is injecting a declaration that says this is an OP

This causes all kinds of trouble, because we also have triples

BFO:0000015 BFO:0000179 "process" .

OAK correctly interprets OPs as denoting edges between individuals, but the RHS is not a node in the above...

@caufieldjh
Copy link
Member

OK, I see it in PHENIO:


    <!-- http://purl.obolibrary.org/obo/BFO_0000179 -->

    <owl:AnnotationProperty rdf:about="http://purl.obolibrary.org/obo/BFO_0000179"/>

...

    <!-- http://purl.obolibrary.org/obo/BFO_0000179 -->

    <owl:ObjectProperty rdf:about="http://purl.obolibrary.org/obo/BFO_0000179">
        <rdfs:subPropertyOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#label"/>
    </owl:ObjectProperty>

though I don't see it in any import.

@matentzn
Copy link
Member

matentzn commented Mar 3, 2023

Grep through imports/*.owl for the relation. Most likely an import is using the relation in a domain restriction, and mostly likely it is SEPIO (which I would suggest to remove for now).

@caufieldjh
Copy link
Member

Yep, that's what I've done so far - plus SEPIO hasn't been imported since 09d6ec2
Could it be declared in a less explicit way somewhere?

@matentzn
Copy link
Member

matentzn commented Mar 3, 2023

Yes, the declartion could be injected if the BFO:179 was used in a logical axiom.

What did the grep tell you, i.e. which ontologies use BFO:179?

@caufieldjh
Copy link
Member

Strangely enough, none of the imports but the merged version:

$ sudo grep -r -l "BFO_0000179" imports/*.owl
imports/merged_import.owl

and of the components, just BFO itself:

$ sudo grep -r -l "BFO_0000179" components/*.owl
components/bfo.owl

In merged_import.owl, all places where BFO_0000179 is used are:

$ sudo grep -r "BFO_0000179" imports/*.owl
imports/merged_import.owl:Declaration(AnnotationProperty(<http://purl.obolibrary.org/obo/BFO_0000179>))
imports/merged_import.owl:# Annotation Property: <http://purl.obolibrary.org/obo/BFO_0000179> (BFO OWL specification label)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/BFO_0000179> "Relates an entity in the ontology to the name of the variable that is used to represent it in the code that generates the BFO OWL file from the lispy specification."@en)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000232> <http://purl.obolibrary.org/obo/BFO_0000179> "Really of interest to developers only"@en)
imports/merged_import.owl:AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/BFO_0000179> "BFO OWL specification label"@en)
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000001> "entity")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000002> "continuant")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000003> "occurrent")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000004> "ic")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000006> "s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000009> "2d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000015> "process")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000016> "disposition")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000017> "realizable")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000018> "0d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000019> "quality")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000020> "sdc")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000023> "role")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000024> "fiat-object-part")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000026> "1d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000028> "3d-s-region")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000029> "site")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000031> "gdc")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000034> "function")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000040> "material")
imports/merged_import.owl:AnnotationAssertion(<http://purl.obolibrary.org/obo/BFO_0000179> <http://purl.obolibrary.org/obo/BFO_0000141> "immaterial")

@matentzn
Copy link
Member

matentzn commented Mar 3, 2023

None of this explains the behaviour. Can you confirm the issue persists in the latest release?

@caufieldjh
Copy link
Member

Try a ROBOT mirror before merge to get a better picture of the import chain

@matentzn
Copy link
Member

NO BFO_0000179 in phenio after #94

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 a pull request may close this issue.

3 participants