I haven't heard of anyone doing this with RDF generally, but there are
wuite a few people doing this with DAML, which is quite similar. The
DAML folks use ordered facts instead of using named slots for each
component (despite my repeated warnings that their approach is very
inefficient compared to using named slots!) So I'm both familiar with,
and approve of, your approach.

Have a look at examples/zebra.clp, which uses a pre-RDF
object-attribute-value triple approach to solving a problem. There's
really nothing new under the sun!

I think Eric Jain wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
> It occurred to me that instead of trying to reason with complex objects
> (i.e. objects that have lots of fields, many of which contain nested
> objects), one might be better of simply representing all data as RDF
> statements. I suspect I'm not the first to use this approach, but
> following are some examples showing how I would go about doing this. If
> you can spot any possible drawbacks or fatal flaws in this approach,
> please do let me know :-)
> 
> (deftemplate statement
>   (slot id)
>   (slot subject)
>   (slot predicate)
>   (slot object))
> 
> (assert (statement
>   (subject sptr:P1)
>   (predicate rdf:type)
>   (object v:Protein)))
> 
> (assert (statement
>   (id #_1)
>   (subject sptr:P1)
>   (predicate v:feature)
>   (object #_2)))
> 
> (assert (statement
>   (subject #_2)
>   (predicate rdf:type)
>   (object v:Disulfid)))
> 
> (assert (statement
>   (subject #_1)
>   (predicate v:updated)
>   (object 20031023)))
> 
> (defrule recent-statements
>   ?s <- (statement (id ?id))
>   (statement
>     (subject ?id)
>     (predicate v:updated)
>     (object ?updated&:(> ?updated 20030101)))
>   =>
>   (printout t ?s ", " ?updated))
> 
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the list
> (use your own address!) List problems? Notify [EMAIL PROTECTED]
> --------------------------------------------------------------------
> 



---------------------------------------------------------
Ernest Friedman-Hill  
Distributed Systems Research        Phone: (925) 294-2154
Sandia National Labs                FAX:   (925) 294-2234
PO Box 969, MS 9012                 [EMAIL PROTECTED]
Livermore, CA 94550         http://herzberg.ca.sandia.gov

--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to