Open syphax-bouazzouni opened 2 years ago
Theoretically, I agree that pulling in ontology-level annotations from imported ontologies doesn't seem correct. Since the original developer of this project is no longer at Stanford, I don't know if there was a historical reason for doing this, or if it's just an oversight.
Interestingly, despite what's pointed out above, the REST API appears to return the correct ontology metadata for CNO. The following call:
... returns:
{
-"ontology": {
-"administeredBy": [
"https://data.bioontology.org/users/ylefranc"
],
"acronym": "CNO",
"name": "Computational Neuroscience Ontology",
"@id": "https://data.bioontology.org/ontologies/CNO",
"@type": "http://data.bioontology.org/metadata/Ontology"
},
"version": "version 0.5",
"@id": "https://data.bioontology.org/ontologies/CNO/submissions/8",
"@type": "http://data.bioontology.org/metadata/OntologySubmission"
}
This could simply be a product of the end user manually entering the metadata when they submitted their ontology through the Rails application, which would initialize these values from the form data.
I suspect that neither the call you give here nor the call that you presented in the chat https://data.bioontology.org/ontologies/CNO/latest_submission?display_links=false&display_context=false&include=all represent ontology annotations. They both lack the wealth of Dublin core source annotations and the call you present in the chat presents annotations not found in the ontology. I verified syphax’s claim by looking at the owlxml file for cno from the production system.
Interestingly, despite what's pointed out above, the REST API appears to return the correct ontology metadata for CNO. This is puzzling but your explanation must be correct.
-Timothy
From: bioontology-admin @.> on behalf of Jennifer Vendetti @.> Date: Wednesday, August 3, 2022 at 11:30 AM To: ncbo/owlapi_wrapper @.> Cc: Subscribed @.> Subject: Re: [bioontology-admin] [ncbo/owlapi_wrapper] Ontology-level annotation axioms and version info (Issue #18)
Theoretically, I agree that pulling in ontology-level annotations from imported ontologies doesn't seem correct. Since the original developer of this project is no longer at Stanford, I don't know if there was a historical reason for doing this, or if it's just an oversight.
Interestingly, despite what's pointed out above, the REST API appears to return the correct ontology metadata for CNO. The following call:
... returns:
{
-"ontology": {
-"administeredBy": [
"https://data.bioontology.org/users/ylefranc"
],
"acronym": "CNO",
"name": "Computational Neuroscience Ontology",
***@***.***": "https://data.bioontology.org/ontologies/CNO",
***@***.***": "http://data.bioontology.org/metadata/Ontology"
},
"version": "version 0.5",
@.***": "https://data.bioontology.org/ontologies/CNO/submissions/8",
@.***": "http://data.bioontology.org/metadata/OntologySubmission"
}
This could simply be a product of the end user manually entering the metadata when they submitted their ontology through the Rails application, which would initialize these values from the form data.
— Reply to this email directly, view it on GitHubhttps://github.com/ncbo/owlapi_wrapper/issues/18#issuecomment-1204329185, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAP2LDRGQUZY7LABKDNAGLDVXK3DFANCNFSM55BDGMBQ. You are receiving this because you are subscribed to this thread.Message ID: @.***>
Hi @jvendetti , @stdotjohn
Do you have any restrictions, if I remove this behavior (or at least make it optional)
If you want the detailed reason for the "why", you can see this https://github.com/agroportal/project-management/issues/340
Merging in the ontology-level annotations from imported ontologies doesn't seem correct. I guess I would lean toward removing this behavior instead of making it optional. If that change is made and all of the unit tests for ontologies_linked_data and ontologies_api pass, then I think we'd be OK.
Hello,
When the parser builds the owl ontology he calls a function called
addGroundMetadata
which copies ontology-level annotation axioms from the source ontology to the target ontology. And also checks for the owl#versionInfo property. If found, adds a BioPortal-specific "versionSubject (http://bioportal.bioontology.org/ontologies/versionSubject)" annotation axiom to the target ontology.But I don't know if it is wanted but the generated ow:Ontology will contain and mix all the annotations of all the imported ontologies.
Example
If we take the example of cnov0_5.owl (one of the ontologies used in the tests)
In the original file, we have
The generated file contains
For example the
<owl:versionInfo rdf:datatype="http://www.w3.org/2001/XMLSchema#string">1.1.1</owl:versionInfo>
and<dc:title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Basic Formal Ontology (BFO)</dc:title>
comes from the imported ontology http://www.ifomis.org/bfo/1.1