[rules-users] Identify Rule on Attributes
Nikhil_dev
k.nikhil at verchaska.com
Mon Mar 16 01:44:24 EDT 2009
Greg,
As of now the solutions that i have got from everyone in this forum are
1. Greg : use a rules engine that implements rete the functionality.
I couldn't any for the same on any drool doc that i have (gave
you the link that i am referring to.)
2. Scott & Michael : combine the Rulebase, i had some query about it and
have posted the same.
3. Vikrant : did not suggest any solution.
These are the ones i have received if i missed some please post them again i
haven't received it.
Greg let me know if i have missed the solution.
thank you all looking ahead for reply and solutions........
Greg Barton wrote:
>
>
>
> Nikhil, there seems to be a communication breakdown here. Several people
> have suggested a solution that I believe fits your problem, but I'm not
> sure that you understand what they're saying. Generally, if I were
> dealing with a situation like this face to face, I'd have you summarize
> what others have suggested to see if you understood their ideas. Would
> you be willing to do that?
>
> --- On Fri, 3/13/09, Nikhil_dev <k.nikhil at verchaska.com> wrote:
>
>> From: Nikhil_dev <k.nikhil at verchaska.com>
>> Subject: RE: [rules-users] Identify Rule on Attributes
>> To: rules-users at lists.jboss.org
>> Date: Friday, March 13, 2009, 7:16 AM
>> Perfect this is the situation but the only difference is the
>> last part,
>>
>> Rulebase for all the 3 Rules are stored in memory.
>>
>> Now i have is attributes(implemented as bean class), but
>> the issue is i dont
>> know which Rulebase to use out of the three which is
>> present in the memory,
>> fetching them one by one and executing it individually is
>> possible but a
>> long procedure which i want to avoid.(executing 3 Rule is
>> ok what if i have
>> 100000 rules it will be very slow process)
>>
>> I would like to know is there any mechanism to understand
>> which rulebase
>> will be appropriate without executing the rule completely.
>> a mechanism such
>> as where we can compare the set of variable required by the
>> rule and set of
>> variable that i am passing for execution. this can be one
>> of the mechanism,
>> like that is there any other mechanism available with
>> drools.
>>
>> I hope i am clear enough, please let knw...if i need to be
>> more clear, it
>> will be very helpful......
>>
>> Thank u all for the response.....
>>
>> Anstis, Michael (M.) wrote:
>> >
>> > Hi Nikhil,
>> >
>> > Let's break down what you have said into pseudo
>> Drools terms:-
>> >
>> > Rule 1
>> > AdultFare(value==3000)
>> > ChildFare(value==2500)
>> > Then
>> > //Do what you want to do
>> > End
>> >
>> > Rule 2
>> > ChildFare(value==2000) or
>> > InfantFare(value==1500)
>> > Then
>> > //Do what you want to do
>> > End
>> >
>> > Rule 3
>> > AdultFare($f1 : value)
>> > InfantFare($f2 : value)
>> > eval($f1 + $f2 < 4000)
>> > Then
>> > //Do what you want to do
>> > End
>> >
>> > You suggest you have a RuleBase that has been
>> successfully loaded.
>> >
>> > You state you have some attributes (I assume these to
>> be implemented as
>> > Classes).
>> >
>> > StatefulSession ss = rulebase.newStatefulSession();
>> > ss.insert( new AdultFare(1000) ); //<-- Causes
>> object to be compared
>> > to ALL rules. This is how RETE works
>> > ss.insert( new InfantFare(1000) ); //<-- Causes
>> object to be compared
>> > to ALL rules. This is how RETE works
>> > ss.fireAllRules(); //<-- Causes
>> the "then" part of
>> > Rule 3 to execute
>> >
>> > It sounds like you are trying to hard.
>> >
>> > With kind regards,
>> >
>> > Mike
>> >
>> > -----Original Message-----
>> > From: rules-users-bounces at lists.jboss.org
>> > [mailto:rules-users-bounces at lists.jboss.org] On Behalf
>> Of Nikhil_dev
>> > Sent: 13 March 2009 11:19
>> > To: rules-users at lists.jboss.org
>> > Subject: RE: [rules-users] Identify Rule on Attributes
>> >
>> >
>> > Thank you Michael,
>> > Following is the use-case/example/Situation that i
>> trying to make it
>> > work
>> > Consider Example ::::
>> > Rule 1: requires attributes/Values :::::::: adultFare
>> == 3000 and
>> > ChildFare
>> > == 2500
>> > Rule 2: requires attributes/Values :::::::: ChildFare
>> == 2000 or
>> > InfantFare
>> > == 1500
>> > Rule 3: requires attributes/Values :::::::: AdultFare
>> + InfantFare <
>> > 4000
>> >
>> > Above said rules is complied and its Rulebase is
>> stored in the
>> > memory......
>> >
>> > Now i have adultFare and InfantFare Attribute in
>> hand....... so now is
>> > there
>> > any way with the help of drools we can identify which
>> rule to execute
>> > with
>> > out executing all of them one after the
>> another.......as per the example
>> > Rule3 should be executed....and will give right
>> output.......
>> >
>> > I hope u got what i am trying to do..... let me know
>> weather it is
>> > possible........ through RETE algo used inside drools
>> or should i do it
>> > on
>> > my own of identifying the rules.......
>> >
>> >
>> > Anstis, Michael (M.) wrote:
>> >>
>> >> I concur everybody's statements fully.
>> >>
>> >> The purpose of a rules engine is to remove the
>> need for the
>> > application
>> >> developer to code algorithms to determine which of
>> a set of rules
>> > should
>> >> execute given a set of
>> facts\properties\objects. Drools implements the
>> >> RETE algorithm. Writing your own code to determine
>> which rule should
>> > be
>> >> executed would be like writing your own video
>> driver so you can
>> > display
>> >> an image.
>> >>
>> >> Of course "we" all assume you plan on
>> using Drools as a rule engine; a
>> >> black box to drive the execution of consequences
>> based upon rule
>> >> definitions and domain objects. As you state in
>> your last post below;
>> >> your "point is that [you] want to use rule
>> engine in [your]
>> > application
>> >> at it's fullest". Without a clearer
>> description of your use-case it
>> >> might be impossible for anybody to give an answer
>> that helps with your
>> >> particular issue.
>> >>
>> >> These forums are an excellent place to find
>> solutions. Everybody has
>> >> always been extremely helpful to me.
>> >>
>> >> I hope you are not discouraged by the responses
>> received to date and
>> > am
>> >> sure everybody is genuinely trying to help.
>> >>
>> >> With kind regards,
>> >>
>> >> Mike
>> >>
>> >> -----Original Message-----
>> >> From: rules-users-bounces at lists.jboss.org
>> >> [mailto:rules-users-bounces at lists.jboss.org] On
>> Behalf Of Nikhil_dev
>> >> Sent: 13 March 2009 06:44
>> >> To: rules-users at lists.jboss.org
>> >> Subject: RE: [rules-users] Identify Rule on
>> Attributes
>> >>
>> >>
>> >> Hi Vikrant,
>> >>
>> >> Please go through all the post and try understand
>> what i am trying to
>> >> get
>> >> from rule engine............ please do not post
>> just for the namesake.
>> >> My point is that i want to use rule engine in my
>> application at its
>> >> fullest,
>> >> if something is possible in Rule engine i would
>> like to experiment on
>> >> it.
>> >>
>> >> Cheers,
>> >> Nikhil.
>> >>
>> >>
>> >>
>> >>
>> >> Vikrant Yagnick wrote:
>> >>>
>> >>> Hi Nikhil,
>> >>>
>> >>> Drools implements the RETE algorithm. The
>> "average" rules user does
>> >> not
>> >>> need to bother or even care about it. All you
>> need to do is use the
>> >> rule
>> >>> engine(for which you do not need to design or
>> write your own
>> >> algorithm)
>> >>> and it will automatically do the work for you.
>> >>>
>> >>> Cheers,
>> >>> Vikrant
>> >>>
>> >>> -----Original Message-----
>> >>> From: rules-users-bounces at lists.jboss.org
>> >>> [mailto:rules-users-bounces at lists.jboss.org]
>> On Behalf Of Nikhil_dev
>> >>> Sent: Friday, March 13, 2009 11:35 AM
>> >>> To: rules-users at lists.jboss.org
>> >>> Subject: Re: [rules-users] Identify Rule on
>> Attributes
>> >>>
>> >>>
>> >>>
>> >>> from the doc i got what is Rete algo ... but
>> not getting the way to
>> >>> implement it.... using drools
>> >>>
>> >>>
>> >>> Nikhil_dev wrote:
>> >>>>
>> >>>>
>> >>>> if this is the doc
>> >>>>
>> >>
>> >
>> http://downloads.jboss.com/drools/docs/4.0.4.17825.GA/html_single/index.
>> >> html
>> >>>> u are talking about then i coudl'nt
>> find much help.
>> >>>> It will be very helpful if u can give me a
>> kick start on the
>> >> same.......
>> >>>> since i am just an average rule engine
>> user.....some helpful doc on
>> >> the
>> >>>> same
>> >>>>
>> >>>>
>> >>>>
>> >>>> Greg Barton wrote:
>> >>>>>
>> >>>>>
>> >>>>> Yes, if you use a rules engine that
>> implements rete the
>> >> functionality
>> >>>>> you
>> >>>>> need is available.
>> >>>>>
>> >>>>> Read the Drools docs.
>> >>>>>
>> >>>>> Carefully.
>> >>>>>
>> >>>>> GreG
>> >>>>>
>> >>>>> On Mar 12, 2009, at 23:40, Nikhil_dev
>> <k.nikhil at verchaska.com>
>> >> wrote:
>> >>>>>
>> >>>>>
>> >>>>> thank u Scott and Greg for u'r
>> reply......
>> >>>>>
>> >>>>> by the way Greg is it possible for me
>> to use this rete algo through
>> >> rule
>> >>>>> engine as this functionality already
>> available in the core of Rule
>> >>>>> Enigne
>> >>>>> or
>> >>>>> should i implement this out side rule
>> engine.
>> >>>>>
>> >>>>>
>> >>>>> Greg Barton wrote:
>> >>>>>
>> >>>>>
>> >>>>> That's the core functionality of a
>> rule engine. The rete algorithm
>> >> does
>> >>>>> this, and drools implements rete.
>> >>>>>
>> >>>>> --- On Thu, 3/12/09, Nikhil_dev
>> <k.nikhil at verchaska.com> wrote:
>> >>>>>
>> >>>>> so now is there
>> >>>>> any way with the help of drools we can
>> identify which rule
>> >>>>> to execute with
>> >>>>> out executing all of them one after
>> the another
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> _______________________________________________
>> >>>>> rules-users mailing list
>> >>>>> rules-users at lists.jboss.org
>> >>>>>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> -----
>> >>>>> Regards,
>> >>>>> :working:Nikhil
>> >>>>> --
>> >>>>> View this message in context:
>> >>>>>
>> >>
>> >
>> http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22490126.ht
>> >> ml
>> >>>>> Sent from the drools - user mailing
>> list archive at Nabble.com.
>> >>>>>
>> >>>>>
>> _______________________________________________
>> >>>>> rules-users mailing list
>> >>>>> rules-users at lists.jboss.org
>> >>>>>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> _______________________________________________
>> >>>>> rules-users mailing list
>> >>>>> rules-users at lists.jboss.org
>> >>>>>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>
>> >>>
>> >>> -----
>> >>> Regards,
>> >>> :working:Nikhil
>> >>> --
>> >>> View this message in context:
>> >>>
>> >>
>> >
>> http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22490776.ht
>> >> ml
>> >>> Sent from the drools - user mailing list
>> archive at Nabble.com.
>> >>>
>> >>>
>> _______________________________________________
>> >>> rules-users mailing list
>> >>> rules-users at lists.jboss.org
>> >>>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>>
>> >>>
>> >>> MASTEK LTD.
>> >>> Mastek is in NASSCOM's 'India Top
>> 20' Software Service Exporters
>> > List.
>> >>> In the US, we're called MAJESCOMASTEK
>> >>>
>> >>>
>> >>
>> >
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> >>> Opinions expressed in this e-mail are those of
>> the individual and not
>> >> that
>> >>> of Mastek Limited, unless specifically
>> indicated to that effect.
>> >> Mastek
>> >>> Limited does not accept any responsibility or
>> liability for it. This
>> >>> e-mail and attachments (if any) transmitted
>> with it are confidential
>> >>> and/or privileged and solely for the use of
>> the intended person or
>> >> entity
>> >>> to which it is addressed. Any review,
>> re-transmission, dissemination
>> >> or
>> >>> other use of or taking of any action in
>> reliance upon this
>> > information
>> >> by
>> >>> persons or entities other than the intended
>> recipient is prohibited.
>> >> This
>> >>> e-mail and its attachments have been scanned
>> for the presence of
>> >> computer
>> >>> viruses. It is the responsibility of the
>> recipient to run the virus
>> >> check
>> >>> on e-mails and attachments before opening
>> them. If you have received
>> >> this
>> >>> e-mail in error, kindly delete this e-mail
>> from desktop and server.
>> >>>
>> >>
>> >
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> >>>
>> >>>
>> >>>
>> _______________________________________________
>> >>> rules-users mailing list
>> >>> rules-users at lists.jboss.org
>> >>>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>>
>> >>>
>> >>
>> >>
>> >> -----
>> >> Regards,
>> >> :working:Nikhil
>> >> --
>> >> View this message in context:
>> >>
>> >
>> http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22491091.ht
>> >> ml
>> >> Sent from the drools - user mailing list archive
>> at Nabble.com.
>> >>
>> >> _______________________________________________
>> >> rules-users mailing list
>> >> rules-users at lists.jboss.org
>> >>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>
>> >> _______________________________________________
>> >> rules-users mailing list
>> >> rules-users at lists.jboss.org
>> >>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>> >>
>> >>
>> >
>> >
>> > -----
>> > Regards,
>> > :working:Nikhil
>> > --
>> > View this message in context:
>> >
>> http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22494433.ht
>> > ml
>> > Sent from the drools - user mailing list archive at
>> Nabble.com.
>> >
>> > _______________________________________________
>> > rules-users mailing list
>> > rules-users at lists.jboss.org
>> > https://lists.jboss.org/mailman/listinfo/rules-users
>> >
>> > _______________________________________________
>> > rules-users mailing list
>> > rules-users at lists.jboss.org
>> > https://lists.jboss.org/mailman/listinfo/rules-users
>> >
>> >
>>
>>
>> -----
>> Regards,
>> :working:Nikhil
>> --
>> View this message in context:
>> http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22495260.html
>> Sent from the drools - user mailing list archive at
>> Nabble.com.
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
-----
Regards,
:working:Nikhil
--
View this message in context: http://www.nabble.com/Identify-Rule-on-Attributes-tp22471473p22532208.html
Sent from the drools - user mailing list archive at Nabble.com.
More information about the rules-users
mailing list