From: Peter F. Patel-Schneider ([email protected])
Date: 02/20/05
[Some of this is a bit academic, but see below.] From: David Martin <[email protected]> Subject: Re: SWRL expression in a property instance? Date: Fri, 18 Feb 2005 17:57:05 -0800 > Hi Peter, and all - > > Again, thanks for your detailed response to my question. I had pretty > much accepted the necessity of keeping our SWRL expressions quoted, but > then the Protege folks pointed out a very significant drawback to that > approach, from the tool-building perspective (which I won't bother to > explain here). > > Then another idea surfaced: why can't we specify our SWRL expressions in > unquoted RDF syntax, but simply tell OWL reasoners to ignore them by > using an annotation property? Well, OWL reasoners will ignore them. SWRL reasoners wouldn't, of course. > In my example (copied below), we would > simply declare hasPrecondition to be an annotation property. (Actually > it would be a different property because the example is oversimplified, > but that's not important.) Using an annotation property does not change anything, as far as I can tell. > At least, as I understand things, that would prevent an OWL reasoner > from getting screwed up over our SWRL expressions, because, as I > understand things, OWL reasoners are supposed to ignore the values of > annotation properties. This is not how things work. Annotation properties cannot have restrictions placed on them (in OWL DL), and thus there is no OWL reasoning that needs to be done on them. An OWL reasoner of any stripe thus does what is necessary (i.e., doesn't ignore) - it is just that nothing need be done. > Regarding what a SWRL reasoner might do - for my money it's reasonable > to expect a SWRL reasoner to also ignore the values of annotation > properties. No, this isn't the way things would work. Rules as values are still rules. If you are sticking to the RDF approach then you can't hide them this way - only some method of RDF quoting will do. > Does that sound reasonable? > > Thanks, > David [Below.] Right now SWRL has two well-specified syntaxes - the abstract syntax and the XML syntax. In both these syntaxes, rules are top-level syntactic constructs, and thus cannot be embedded in other constructs. So to use rules as values, you would have to use the RDF syntax, if you wanted to stick with SWRL per se. However, as the semantics of SWRL are really only specified for what can be said in the abstract and XML syntax, you are then going somewhat outside of SWRL per se anyways. peter
This archive was generated by hypermail 2.1.4 : 02/20/05 EST