Can you exactly tell me how to covert a slot ?security to class object and
use modify on it ? I think we use modify only on Facts ?

-------


Ernest Friedman-Hill wrote:
> 
> Calling "modify" to replace the contents of a slot with the same  
> object won't actually do anything; the rules won't be reevaluated  
> because as far as Jess is concerned, the contents of the slot did not  
> change. You'll have to make the ?security object into a first-class  
> object, and modify its properties using modify; then Jess will know  
> about the change and the rules will be re-evaluated as appropriate.
> 
> On Jan 23, 2009, at 5:49 AM, [email protected] wrote:
> 
>>
>> Hello,
>>
>> I have condition on LHS rule like below:
>>
>> (deffunction checkProdEmpty (?security)
>>     (if (and (neq (get ?security prod) nil)(neq (get ?security prod)  
>> "")(neq (get ?security prod) "0")) then
>>         (return FALSE)
>>      else
>>         (return TRUE))
>>     )
>>
>> (defrule RuleFromFacts
>>     (declare (salience ?*CONTENT_SPECIFIC_RULE*) (no-loop TRUE))
>>     ?trade <- (TR (instrmt ?security &:(eq (checkProdEmpty ? 
>> security) TRUE)))
>>         (or (SecurityDetails (isin ?isin &:(eq (get ?security ID) ? 
>> isin)) (cusip ?cusip) (bbid ?bbid)(prodType ?prodTyp))
>>         (SecurityDetails (isin ?isin) (cusip ?cusip  &:(eq (get ? 
>> security ID) ?cusip)) (bbid ?bbid)(prodType ?prodTyp))
>>         (SecurityDetails (isin ?isin) (cusip ?cusip) (bbid ?bbid &: 
>> (eq (get ?security ID) ?bbid))(prodType ?prodTyp)))
>>     =>
>>     (set ?security prod ?prodTyp)
>>     (modify ?trade (instrmt ?security))
>>     (log-info  " Set Prod from Facts - SecurityID: " (get ?security  
>> ID) " Prod: " ?prodTyp)
>> )
>>
>>
>> There is 1 SecurtiDetails fact present with cusip same as bbid and  
>> hence the rule is activated twice.
>> But when the first time rule fires it sets the property prod to  
>> something not null.
>> It should ideally not fire for second activation.
>> But it still fires.
>> Any idea ?
>>
>>
>>
>> Thanks and regards,
>> Nikita
>>
>> ************************************************************
>> HSBC Software Development (India) Pvt Ltd
>> HSBC Center Riverside,West Avenue ,
>> 25 B Kalyani Nagar Pune  411 006 INDIA
>>
>> Telephone: +91 20 26683000
>> Fax: +91 20 26681030
>> ************************************************************
>>
>>
>> *******************************************************************
>> This e-mail is confidential. It may also be legally privileged.
>> If you are not the addressee you may not copy, forward, disclose
>> or use any part of it. If you have received this message in error,
>> please delete it and all copies from your system and notify the
>> sender immediately by return e-mail.
>>
>> Internet communications cannot be guaranteed to be timely,
>> secure, error or virus-free. The sender does not accept liability
>> for any errors or omissions..
>> *******************************************************************
>> "SAVE PAPER - THINK BEFORE YOU PRINT!"
> 
> ---------------------------------------------------------
> Ernest Friedman-Hill
> Informatics & Decision Sciences          Phone: (925) 294-2154
> Sandia National Labs
> PO Box 969, MS 9012                            [email protected]
> Livermore, CA 94550                             http://www.jessrules.com
> 
> 
> 
> 
> 
> --------------------------------------------------------------------
> 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].
> --------------------------------------------------------------------
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/JESS%3A-LHS-condition-not-checked-tp21625925p22575351.html
Sent from the Jess mailing list archive at Nabble.com.



--------------------------------------------------------------------
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