- From: Bijan Parsia <bparsia@isr.umd.edu>
- Date: Fri, 7 Jan 2005 16:16:09 +0900
- To: jos.deroo@agfa.com
- Cc: www-rdf-logic@w3.org
Good for you, Jos.
On Jan 7, 2005, at 10:35 AM, jos.deroo@agfa.com wrote:
> Couldn't resist and had few nightly hours left :)
> *If* you want nnf to be your problem for a while
> then one can write in N3 such triples as
>
> {?C a :BaseClass} => {?C a :GivenClass}.
> {?C a :BaseClass} => {?C :isRewrittenAs ?C}.
How do you determine something is a baseclass? Oh, you have to declare
it explicitly. You cannot detect it from the syntax.
> {(:tilde (:tilde ?C)) a :GivenClass. ?C a :GivenClass. ?C
> :isRewrittenAs
> ?CC} => {(:tilde (:tilde ?C)) :isRewrittenAs ?CC}.
[snip]
Notice that you took on a somewhat different challenge than I intended,
as you are using an alternative encoding of class expressions than the
one in OWL. One based on lists. One designed, actually, to look like my
syntax :) One that will have trouble due to the fact that RDF lists
aren't normal lists. At this point we've moved away from a straight
triple representation to other sorts of encoding.
And I'm sure N3 presumes stronger semantic for lists than is given in
the RDF semantics (or can be given first order). Indeed, look a the
*syntax* for lists! It's designed to help the human. But why not help
the program writer as well as the author?!
Also, you had to import extra domain level assertions in order to make
things work (:GivenClass, etc.). Unfortunate.
Plus, you have to touch the store, it seems. Oh, wait, you're using
formulae sort of like functional terms. Hmm. That pushes it closer to
the kind of thing I'd do in Prolog. That just emphasizes, IMHO, how far
it is from using RDF in the proposed ways.
(E.g., why not put the expressions in an XMLLiteral? And add some
builtins for calling XSLT sheets? While not exact, this is closer to
what you've done than what Geoff tried.)
But you also get the Kudos for Putting Up. Rock, rock on!
Cheers,
Bijan Parsia.
Received on Friday, 7 January 2005 07:15:59 UTC