- From: Richard Boyce <rdb20@pitt.edu>
- Date: Fri, 15 Mar 2013 14:57:45 -0400
- To: Bob Morris <morris.bob@gmail.com>
- CC: Paolo Ciccarese <paolo.ciccarese@gmail.com>, "public-openannotation@w3.org" <public-openannotation@w3.org>
Bob was exactly right about Protege making changes to my OA dataset. However, I actually created the annotations using a custom Python script [1] from a flat file loaded into SQL [2,3]. Because the pharmacists are making comments and changes as they review the annotations, I experimented with *editing* the RDF data using Protege. Looks like I will need either need to use another easy RDF editing tool (suggestions? maybe Ontowiki?), or add a postprocessing step to correct errors that Protege creates. Thanks for all of the other suggestions! I will examine and make corrections over the next week. -Rich 1. https://code.google.com/p/swat-4-med-safety/source/browse/trunk/analyses/pharmgx-statement-annotation/scripts/pharmgx-statements-2-RDF.py 2. https://code.google.com/p/swat-4-med-safety/source/browse/trunk/analyses/pharmgx-statement-annotation/data/complete-annotations-03132013.csv 3. https://code.google.com/p/swat-4-med-safety/source/browse/trunk/analyses/pharmgx-statement-annotation/scripts/README On 03/15/2013 11:28 AM, Bob Morris wrote: > On Fri, Mar 15, 2013 at 10:34 AM, Paolo Ciccarese > <paolo.ciccarese@gmail.com> wrote: >> Dear Richard, >> The first thing I notice right away are the OA definitions as >> AnnotationProperty such as: >> <AnnotationProperty rdf:about="&oa;annotatedBy"/> >> While they are defined as ObjectProperties in OA: >> http://www.w3.org/ns/oa#objectproperties > There is a fair chance that Richard is a Protege victim in this case. > (His RDF was generated by the OWL API according to its comment at the > bottom, and that probably was Protege). OWL2 direct semantics > declares > rdfs:label rdf:type owl:AnnotationProperty . > See http://www.w3.org/TR/owl2-rdf-based-semantics/ Table 6.5. > > Similarly for rdfs:comment. > > As soon as you put one of those on an oa object, as far as Protege is > concerned, it seems to become an owl:Annotation property, no matter > what else it is. (Perhaps this is configurable, and perhaps it is also > mainly a consequence of choices the OWL API makes in serializing as > XML). > > We are often nailed by this. Protege is rather unfriendly to > Individuals. Alas, I've never found a good free tool that isn't. My > own practice for hand generation of annotations ---for us as > examples---is to use N3, which is anyway more readable than RDF/XML. > > There are some benefits of examining oa:Annotation individuals in > Protege, but I almost always have to clean up if I am tempted to edit > and save with Protege. > >> [...] >> -- Richard D Boyce, PhD Assistant Professor of Biomedical Informatics Faculty, Geriatric Pharmaceutical Outcomes and Gero-Informatics Research and Training Program Scholar, Comparative Effectiveness Research Program University of Pittsburgh rdb20@pitt.edu Office: 412-648-9219 Twitter: @bhaapgh
Received on Friday, 15 March 2013 18:58:19 UTC