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

As an interim measure, generate rdfs:isDefinedBy annotations for all terms #7

Open
alanruttenberg opened this issue Mar 30, 2014 · 2 comments

Comments

@alanruttenberg
Copy link

While the annotation should ultimately be generated as part of the ontology build process, in order to support linked data clients, add an annotation

<term> rdf:isDefinedBy <purl of ontology>

to each term unless we know an ontology is generating them itself.

See the google+ conversation

@yongqunh
Copy link
Member

yongqunh commented Apr 2, 2014

Ontobee has owl:imports to define the ontology source of the term. However, the previous version did not solve all cases including the example: http://purl.obolibrary.org/obo/UBERON_0000981. Bin Zhao from my lab and I worked on this today. Bin found a bug in the program and he fixed it. In addition, Bin also added the suggested rdfs:isDefinedBy feature.

Now if you check the example http://purl.obolibrary.org/obo/UBERON_0000981 or any other cases, you should be able to find both owl:imports and rdfs:isDefinedBy statements. The pointed ontology PURL should be the same.

@yongqunh
Copy link
Member

yongqunh commented Apr 2, 2014

Some explanation -- here is what Bin found and fixed:

Previous Ontobee version: After ontology RDF reformat, the previous Ontobee program looks for owl:Ontology .... /owl:Ontology. The program replaces /owl:Ontology with owl:imports statement and adds back the /owl:Ontology.

However, when there is no metadata between owl:Ontology and /owl:Ontology, there will be a self closure of this to form <owl:Ontology .... />. In this case, the /owl:Ontology does not exist any more. So the replacement will fail.

Bin's fix: if a self closure <owl:Ontology .... /> is found, open the closure and make it looks like owl:Ontology .... /owl:Ontology. Then reapply the previous code. It should work fine now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants