- From: Heiko Paulheim <paulheim@ke.tu-darmstadt.de>
- Date: Fri, 17 Aug 2012 09:49:56 +0200
- To: Timothy Armstrong <tim.armstrong@gmx.com>
- CC: semantic-web@w3.org
Hi Tim, there are quite a few frameworks doing similar things; JenaBean, mentioned by Martynas, being one of them. Although the idea looks tempting, I do not think that simply mapping a class model to an OWL/RDFS ontology in a 1:1 fashion will result in a usable RDF model, since common modeling practices in ontology engineering and OOX are different and not trivially compatible. Thus, I believe that allowing more flexible mappings between a class model and OWL/RDFS than just wiring each Java class to an OWL/RDFS class and each attribute to a property is required. See our 2011 DESWeb paper [1] for an in-depth discussion. Best, Heiko [1] Paulheim et al.: "Mapping Pragmatic Class Models to Reference Ontologies". In: 2nd International Workshop on Data Engineering meets the Semantic Web (DESWeb), 2011. Am 17.08.2012 09:33, schrieb Martynas Jusevičius: > Hey Timothy, > > are you familiar with JenaBean? It uses annotations for a similar purpose: > http://code.google.com/p/jenabean/wiki/AnnotationGuide > > Martynas > graphity.org > > On Thu, Aug 16, 2012 at 8:42 PM, Timothy Armstrong > <tim.armstrong@gmx.com> wrote: >> Hello everyone, >> >> My understanding is that we can post all object-oriented data on the >> Semantic Web, as object-oriented programming and OWL and are entirely >> compatible. I have a correspondence between OOP and OWL. Object-oriented >> classes are OWL classes, object-oriented attributes are OWL properties, >> object-oriented operations are Semantic Web Services, and object-oriented >> packages are ontologies. Class membership is unary predicates, and >> attributes are binary predicates, relating two entities. In Java, if a >> field is a Java Collection or an array, each element in it is just the >> object of a triple. I interpret all object-oriented data as being triples >> in RDF. So we should be able to serialize all object-oriented data to RDF. >> We can thus have lots more data on the Semantic Web! >> >> Based on these principles, what we want to do is extend OOP to make it into >> OWL, i.e. to make it better. I've developed an extension to Java using OWL >> and have just released it open source: http://www.semanticoop.org. I'm >> looking to talk to people about it. I've translated the entire RDF, RDFS, >> and OWL ontologies into Java; see the packages beginning with org.w3 at >> http://www.semanticoop.org/xref/. Here is rdfs:comment, for instance, as a >> Java annotation in a file comment.java: >> >> @AnnotationProperty >> @label("comment") >> @comment("A description of the subject resource.") >> @isDefinedBy("http://www.w3.org/2000/01/rdf-schema#") >> @domain(Resource.class) >> @range(Literal.class) >> >> @Documented >> @Retention(RetentionPolicy.RUNTIME) >> public @interface comment >> { >> public String[] value(); >> } >> >> The OWL annotation properties are Java annotations, so I can write >> ontologies entirely in Java. >> >> The proof that the correspondence between attributes and properties holds up >> is just that I have most of the property reasoning working for attributes, >> and it all makes sense and seems like it would be very useful in >> object-oriented programming. We will allow programmers to define classes as >> intersections, unions, or complements of other classes, run SPARQL queries >> and rules on main memory, and do everything else we can do with OWL inside >> an object-oriented language, object database, or object-relational database. >> >> I have a lot working. I came across other software that treats attributes >> as properties, like AliBaba, very late in the development process. I think >> I did a lot differently. Would anyone be interested in talking about it or >> hearing more? This is the first I'm announcing the project. I've just done >> everything myself to this point, so I've gotten as far as I could. I was >> trying to do it as part of my Ph.D. research. I'm currently looking to talk >> to people about the software rather than for people to use it yet. Well, I >> hope people like it. >> >> Thank you, >> Tim Armstrong >> >> -- Dr. Heiko Paulheim Knowledge Engineering Group Technische Universität Darmstadt Phone: +49 6151 16 6634 Fax: +49 6151 16 5482 http://www.ke.tu-darmstadt.de/staff/heiko-paulheim
Received on Friday, 17 August 2012 07:50:33 UTC