- From: Katasonov Artem <Artem.Katasonov@vtt.fi>
- Date: Tue, 20 Apr 2010 19:23:32 +0300
- To: Bernard Vatant <bernard.vatant@mondeca.com>, Pierre-Antoine Champin <swlists-040405@champin.net>
- CC: "semantic-web@w3.org" <semantic-web@w3.org>
- Message-ID: <36186D2E0727CE4E8D6465C0F305A3397EB93141C9@VTTMAIL.ad.vtt.fi>
Hi Pierre-Antoine and Bernard. Thank you both a lot for your answers. To clarify, I was referring as unnatural and unscalable to adding 'reified' views explicitly to the RDF dataset, in order to survive with an OWL reasoner alone. What you both propose is to have a generic rule engine as the reasoner (e.g. based on SPARQL CONSTRUCT) instead of OWL. In fact, this is exactly what I do in my work - I use SPARQL patterns as "definitions" of classes instead of OWL restrictions, etc. Bernard, you give a rule for a heterosexual couple. What if I want to define the generic couple and then the heterosexual couple as a subclass of it? Two independent SPARQL rules? I mean that ability to have hierarchies of classes as in OWL is still nice. Pierre-Antoine, you wrote "but not all ontology languages would be able to express it (I don't think OWL is)". To rephrase my original question, are there ANY ontology languages (or at least efforts towards) that are able to do that? Artem ________________________________ From: Bernard Vatant [mailto:bernard.vatant@mondeca.com] Sent: 20. huhtikuuta 2010 11:26 To: Pierre-Antoine Champin Cc: Katasonov Artem; semantic-web@w3.org Subject: Re: Ontologies for RDF structures, not just atoms Hi To follow-up with Pierre-Antoine Indeed, "reifying" relationships as facts is a common practice, both natural and scalable, and you do it whenever you want to add extra information to the relationship (such as date, quality, contract, whatever). If OWL does not allow to assert logical links between relationships and facts, SPARQL CONSTRUCT can do the trick. Suppose you have so far represented simple binary relationships "ex:dates" and want to transform them into facts of type "ex:Couple". You can use the following, even qualifying au passage the couple, inferring from the gender of the members :) CONSTRUCT { ?c a ex:Couple. ?c ex:member ?x. ?c ex:member ?y. ?c ex:type ex:Heterosexual.} WHERE {?x a ex:Man. ?y a ex:Woman. ?x ex:dates ?y} Actually SPARQL CONSTRUCT is quite handy to translate one type of representation into another. Bernard 2010/4/20 Pierre-Antoine Champin <swlists-040405@champin.net<mailto:swlists-040405@champin.net>> Hi, On 19/04/2010 13:41, Katasonov Artem wrote: > (...) > OWL is all about defining concepts corresponding to classes of > resources: e.g. "Person", "Woman", "Husband", "Mother", etc. But > what about a concept like "Couple"? I bet you understand what I mean > by this word, and this means that this concept is a part of an > ontology we share. The meaning of "couple" is very simple: there is > John, there is Mary, and there is some ex:dates link between them. > But OWL is useless for defining this concept - of course, unless we > introduce a couple as a resource, define a couple of properties to > link John and Mary to this resource, and add these all explicitly to > the linked data space - which is, I believe, is unnatural and not > feasible at a scale. I find it neither unnatural or unscalable, really :) If you need to consider the Couple as a concept, then you have to 'reify' it, litteraly 'make it a thing', i.e. a resource. Of course, you would only do that *when* you need to consider the concept between a relation (or more generally, a structure as you call it). As a matter of fact, this is exactly what you do in english. If you only need to state the fact that "John is dating Mary", you don't even need the notion of a couple. That notion becomes necessary if you want to state more things about their relation: "They have been a couple for two years; they are a very happy couple.". The good thing with english is that you can easily swap from the 'relation' view ("dates") to the 'reified' view ("couple"). In an ontology, you have to *commit* (as in "ontological commitment") to a particular representation, which really depends on the needs of your application. You can also accept both representations, and add inference rules that would state the equivalence between them : there is a ?couple involving ?john and ?mary IF AND ONLY IF ?john dates ?mary but not all ontology languages would be able to express it (I don't think OWL is). Hope this helps. For more material about that, I recommend reading the related section in Linked Data Patterns [1]. Funny to see the example is almost the same :) pa [1] http://patterns.dataincubator.org/book/qualified-relation.html > > In other words, I speak about an ontology of concepts that correspond > to RDF fragments (structures, sub-graphs) rather than just RDF > atoms. > > In past few years, I found myself designing and using some ad-hoc > frameworks for such ontologies in two different projects and, > therefore, contexts. One was about interpretation of RDF-encoded > mental structures (beliefs, intentions) and communications (speech > acts) in multi-agent systems. The other, current, is about > interpretation of RDF-encoded software models. In both cases, the > problem in nutshell is the following: there is an RDF graph for > something and we want to detect if a certain "situation" occurs in it > - to make some conclusions based on that. It is like answering a > question about if there are any couples in a group of people. As > "situation" of interest are many, we want to have a formal ontology > of those. In other words, I believe that the applications where the > problem occurs can be rather widespread. > > I plan to work on this further, maybe to generalize on the approaches > I used before. > > I wanted to ask for any tips about related previous research, > discussions, postponed issues in standard-setting groups. Anyone is > familiar with anything like this? Please comment also on the problem > as such. Thanks in advance > > Artem Katasonov VTT Techncal Research Center, Finland > -- Bernard Vatant Senior Consultant Vocabulary & Data Engineering Tel: +33 (0) 971 488 459 Mail: bernard.vatant@mondeca.com<mailto:bernard.vatant@mondeca.com> ---------------------------------------------------- Mondeca 3, cité Nollez 75018 Paris France Web: http://www.mondeca.com Blog: http://mondeca.wordpress.com ----------------------------------------------------
Received on Tuesday, 20 April 2010 16:24:07 UTC