OAV triples. *Shudder.*

Well, anyway, even at this level, there are various things you could
do with these. But let's take the very simple view that John is just a
symbol. After those rules are defined, the following code will deduce
that Mary is John's daughter:

;; John has a child Mary
(assert (triple (predicate "http://a.com/ontology#hasChild";)
                (subject John)
                (object Mary)))

;; Mary is a Woman
(assert (triple (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type";)
                (subject Mary)
                (object "http://a.com/ontology#Woman";)))

;; Run the rule engine; the rule will fire
(run)

You can then use the "(facts)" function in Jess to check that the
hasDaughter fact has been asserted.


I think ahmad Sayed wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
> Hello, 
>   After transforming the SWRL from the ontologie to  jess rules, I've  
> obtained a rule list that looks like that : 
>    
>   (defrule rule-6          
>  
>    (triple
>     (predicate "http://a.com/ontology#hasChild";)
>     (subject    ?x)
>     (object   ?y)
>   )
>                    
>   (triple
>     (predicate "http://www.w3.org/1999/02/22-rdf-syntax-ns#type";)
>     (subject    ?y)
>     (object   "http://a.com/ontology#Woman";)
>   )
>                
>   =>  
> (assert          
>   (triple
>     (predicate "http://a.com/ontology#hasDaughter";)
>     (subject    ?x)
>     (object   ?y)
>   )
>    
>    
>   Well, now how can I describe in java the following fact :
>   "John has a child , and the child is a woman "  ???
>    
>   so that when I run the rete engine it can tells me that john has a 
> daughter...
>    
>   If someone can write me a sample code, i'd be very gratefull.
>   thank u 
>    
> [EMAIL PROTECTED] wrote:
>   I think ahmad Sayed wrote:
> [Charset iso-8859-1 unsupported, filtering to ASCII...]
> > Hi there, 
> > 
> > After building my OWL ontology with its SWRL rules, I've transformed this 
> > knowledge base to jess in order to make some inferences over ontology 
> > individuals. So now i've got my 2 files ontology.jess and ontology.clp that 
> > I have to exploit them in a java application. However, I've hard time using 
> > them. Could someone bring me just a simple code on how to start over? 
> > (loading these files, parsing rules, and doing some simple inferences )
> > 
> > My Knowledge base looked like that (in SWRL, before converting it to jess) 
> > : 
> > 
> > SWRL rule-1: hasparent(?x, ?y) ^ hasbrother(?y,?z) -->hasuncle(?x,?z) 
> > 
> > I need to make inferences like : 
> > hasparent(john,?y) ^ hasbrother (?y, michael) --> hasuncle (john, michael ) 
> > 
> > How can I do that? 
> > 
> 
> I don't know the SWRL syntax, specifically, but I'm assuming that this
> just says if someone has a parent, and the parent has a brother, that
> the brother is that someone's uncle. I don't know what you mean about
> your two files *.jess and *.clp; maybe one contains rules and the
> other contains facts? My answer to how you would "make these
> inferences" obviously depends strongly on what the rules and facts
> look like, but basically, you'd just assert facts that represented
> john, john's father, michael, and their known relationships, and run
> the engine. Presumably your rules would create new facts to represent
> their derived relationships, but again, that depends entirely on what
> you've got for rules. Then you might use a defquery to extract all the
> facts regarding john's relationships.
> 
> 
> 
> 
> ---------------------------------------------------------
> Ernest Friedman-Hill 
> Advanced Software 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]



---------------------------------------------------------
Ernest Friedman-Hill  
Advanced Software 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