2010/10/31 Nirmal Fernando <[email protected]>: > Hi, > > On Sun, Oct 31, 2010 at 7:47 PM, Wolfgang Laun <[email protected]> > wrote: >> >> Is there a compelling reason for discarding the system that's in use now? > > Mainly due to difficulty in maintaining a hand written large amount of > rules.
Do you think that these translated rules will be easier to maintain?!? > >> >> It would appear that you are emulating the existing system's functions >> (_psubj, >> date, equality test) by some mechanism using reflection, which, in >> itself, will cause some >> overhead. Then, in the Drools rule, you are using eval(), which is the >> least efficient way of >> formulating a condition; none of the optimizations will work this way. >> This kind of >> transformation may result in a significant increase of execution time >> (which, of course, may not hurt you if there isn't much time spent in >> condition evaluation now.) >> >> The eval() call after then looks suspicious: is this a function you >> have defined? > > Not really, I think this is drools eval function. eval() cannot be used on the RHS, after then. It is a wrapper for general boolean expressions, to be used as a constraint in a Pattern (whar you have in Processor( eval() ) ) or as a CE. > Ok, let me ask you like this, if I give you the following rule, can you > write an equivalent drools rule? > > IF _psubj(be,$var0) ^ NOT date($var0) ^ NOT $var0=$Time THEN > ^1_Existence:Entity(be,$var0) You must be kidding. I have no idea what the variables are and what the methods might do. -W > > Thanks for the great help! > >> >> >> >> >> >> >> 2010/10/31 Nirmal Fernando <[email protected]>: >> > Hi Laun, >> > >> >> Consider that 5000+ is a large number. Estimate the time it'll take you >> >> to transform one rule: Will you be able to spend, say, 3 months for >> >> this >> >> task? >> > >> > We've already developed a piece of code which does this conversion. >> > Following is an example. >> > Can you please comment on the converted rule? whether it is a valid >> > drools >> > rule or not? >> > >> > Our Rule >> > IF _psubj(be,$var0) ^ NOT date($var0) ^ NOT $var0=$Time THEN >> > ^1_Existence:Entity(be,$var0) >> > >> > Converted Drools Rule >> > rule "0" >> > when p: Processor( >> > eval(p.existence("_psubj(be,"+p.conceptVar[0]+")")) >> > && eval(!p.existence("date("+p.conceptVar[0]+")")) && >> > eval(!p.testVar(p.conceptVar[0],"$Time")) ) >> > then >> > eval(p.AppendRule(" >> > ^1_Existence:Entity(be,"+p.conceptVar[0]+")")); >> > end >> > >> > >> > >> > Thanks. >> >> >> >> -W >> >> >> >> >> >> 2010/10/31 Nirmal Fernando <[email protected]> >> >>> >> >>> Something like following 2 rules: >> >>> >> >>> # IF when($Awareness,$var0) THEN ^1_Awareness:Time($Awareness,$var0) >> >>> # IF $relTime($Awareness,$Time) THEN >> >>> ^1_Awareness:Time($Awareness,$Time) >> >>> >> >>> thanks. >> >>> >> >>> 2010/10/31 Wolfgang Laun <[email protected]> >> >>>> >> >>>> What, exactly, do you mean by "hand written"? Java statements? >> >>>> Another >> >>>> Rule System? >> >>>> Can you provide a sample? >> >>>> >> >>>> >> >>>> 2010/10/31 Nirmal Fernando <[email protected]> >> >>>>> >> >>>>> Hi, >> >>>>> >> >>>>> I am having a 5000+ hand written rules which is used in an open >> >>>>> source >> >>>>> project. >> >>>>> I am searching for the reasons, me to be shifted to a rule engine >> >>>>> like >> >>>>> Drools, instead of using hand written once. >> >>>>> Drools rules can be debugged that will be a plus point, isn't it? I >> >>>>> would love to get a list of benefits that I will be getting. >> >>>>> >> >>>>> Thanks. >> >>>>> >> >>>>> -- >> >>>>> Best Regards, >> >>>>> Nirmal >> >>>>> >> >>>>> C.S.Nirmal J. Fernando >> >>>>> Department of Computer Science & Engineering, >> >>>>> Faculty of Engineering, >> >>>>> University of Moratuwa, >> >>>>> Sri Lanka. >> >>>>> Blog: http://nirmalfdo.blogspot.com/ >> >>>>> >> >>>>> _______________________________________________ >> >>>>> rules-users mailing list >> >>>>> [email protected] >> >>>>> https://lists.jboss.org/mailman/listinfo/rules-users >> >>>>> >> >>>> >> >>>> >> >>>> _______________________________________________ >> >>>> rules-users mailing list >> >>>> [email protected] >> >>>> https://lists.jboss.org/mailman/listinfo/rules-users >> >>>> >> >>> >> >>> >> >>> >> >>> -- >> >>> Best Regards, >> >>> Nirmal >> >>> >> >>> C.S.Nirmal J. Fernando >> >>> Department of Computer Science & Engineering, >> >>> Faculty of Engineering, >> >>> University of Moratuwa, >> >>> Sri Lanka. >> >>> Blog: http://nirmalfdo.blogspot.com/ >> >>> >> >>> _______________________________________________ >> >>> rules-users mailing list >> >>> [email protected] >> >>> https://lists.jboss.org/mailman/listinfo/rules-users >> >>> >> >> >> >> >> >> _______________________________________________ >> >> rules-users mailing list >> >> [email protected] >> >> https://lists.jboss.org/mailman/listinfo/rules-users >> >> >> > >> > >> > >> > >> > -- >> > Best Regards, >> > Nirmal >> > >> > C.S.Nirmal J. Fernando >> > Department of Computer Science & Engineering, >> > Faculty of Engineering, >> > University of Moratuwa, >> > Sri Lanka. >> > Blog: http://nirmalfdo.blogspot.com/ >> > >> > _______________________________________________ >> > rules-users mailing list >> > [email protected] >> > https://lists.jboss.org/mailman/listinfo/rules-users >> > >> > >> >> _______________________________________________ >> rules-users mailing list >> [email protected] >> https://lists.jboss.org/mailman/listinfo/rules-users > > > > -- > Best Regards, > Nirmal > > C.S.Nirmal J. Fernando > Department of Computer Science & Engineering, > Faculty of Engineering, > University of Moratuwa, > Sri Lanka. > Blog: http://nirmalfdo.blogspot.com/ > > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users > > _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
