@cameronmore and I are getting ready to transition ontologies over to 2.0 and are excited to do so. As a test, we updated the IRIs in CPO and noticed a prefix collision.
We hypothesized that this was intentionally done so that an extension ontology class IRI that uses the old namespace prefix does not collide with the new namespace prefix. For example, if the "cco2" prefix was not created, two ontology namespaces would have the same prefix when the ROBOT command is executed.
That said, this problem reoccurs when CCO 2.0 is imported by CPO, since the "cco" prefix is pulling double duty. Furthermore, when CCO 2,0 is imported by CPO, https://www.commoncoreontologies.org has two prefixes.
@cameronmore and I are getting ready to transition ontologies over to 2.0 and are excited to do so. As a test, we updated the IRIs in CPO and noticed a prefix collision.
The CCO base file contains the following prefix declaration. @prefix cco: https://www.commoncoreontologies.org/ .
When we ran the ROBOT mapping on CPO, this line (add-prefix "cco2: https://www.commoncoreontologies.org/") from the ROBOT command successfully added the prefix declaration "@prefix cco2: https://www.commoncoreontologies.org/" and preserved the prefix "cco" for the old namespace (cco: http://www.ontologyrepository.com/CommonCoreOntologies/ .).
Here is a sample of code:
http://www.ontologyrepository.com/CommonCoreOntologies/ActOfRequestingInformation (hashes removed to avoid markdown) cco:ActOfRequestingInformation rdf:type owl:Class ; rdfs:subClassOf cco2:ont00000769 ; cco:definition "A directive communication act that prescribes the finding and delivering of information." ; rdfs:label "ActOfRequestingInformation" ; cco2:ont00001760 "http://www.ontologyrepository.com/CommonCoreOntologies/Domain/CognitiveProcessOntology" .
We hypothesized that this was intentionally done so that an extension ontology class IRI that uses the old namespace prefix does not collide with the new namespace prefix. For example, if the "cco2" prefix was not created, two ontology namespaces would have the same prefix when the ROBOT command is executed.
That said, this problem reoccurs when CCO 2.0 is imported by CPO, since the "cco" prefix is pulling double duty. Furthermore, when CCO 2,0 is imported by CPO, https://www.commoncoreontologies.org has two prefixes.