Dmitry,

No idea what you are talking about All Drools 3.0 integration tests and examples are in the new drl format. Having the old format would be pointless, we can't even parse it.

http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-examples/src/rules/

Mark
Dmitry Goldenberg wrote:
It would be great if Drools would come with its example DRL files written in 
the new lingo rather than the old....

________________________________

From: Mark Proctor [mailto:[EMAIL PROTECTED]
Sent: Thu 4/13/2006 4:28 PM
To: [email protected]
Subject: Re: [drools-user] The DRL notation vs. jbossrules Rule Language - ?



As per my email the other day if  you were to write an XSLT here  is
what it would do

<parameter identifer="person">
    <class>Person</class>
</parameter>

<java:condition>person.getName().equals("tom")</java:condition>
----------------
person : Person()
eval( person.getName().equals("tom")  )
----------------

However that is no longer optimal in Drools 3.0 and should be
Person( name == "tom" )

If you need to bind  then its
p : Person( name  == "tom" )

Mark



Ronald van Kuijk wrote:
AINAE, but it could be as simple as 'replacing' condition with when and
consequence with then, but I'll let the experts tell me.

Ronald

2006/4/13, Dmitry Goldenberg <[EMAIL PROTECTED]>:
I don't understand the relationship between the XML-based DRL notation and
this new lingo with "when" / "then".

With the DRL notation, my understanding is that you write an XML structure
like the one I'm including below.  How does this change with the when/then
notation?  Thanks.


<?xml version="1.0"?>

<rule-set name="SamplePolicyRuleSet"

  xmlns="http://drools.org/rules";

  xmlns:java="http://drools.org/semantics/java";

  xmlns:xs="http://www.w3.org/2001/XMLSchema-instance";

  xs:schemaLocation="http://drools.org/rules rules.xsd
http://drools.org/semantics/java java.xsd">



  <!-- Imports -->

  <java:import>java.lang.Object</java:import>

  <java:import>java.lang.String</java:import>

  <!-- Utility functions -->

  <java:functions>

    public boolean f1(com.weblayers.platform.rule.PolicyExecContextcontext)

    {

        return ...;

    }

    public boolean f2(com.weblayers.platform.rule.PolicyExecContextcontext)

    {

        return ...;

    }

  </java:functions>



  <!-First Rule: IF (P1 AND P2) THEN RETURN OK -->

  <rule name="First Rule">

    <!-- Rule parameters -->

    <parameter identifier="context">

      <class>MyContext</class>

    </parameter>



    <!-- Rule Conditions -->

    <java:condition>

      f1() && f2()

    </java:condition>



    <!-- Rule Consequences -->

    <java:consequence>

       context.setReturn(Constants.OK);

    </java:consequence>

  </rule>



  <!-Second Rule: IF (!(P1 AND P2)) THEN RETURN FAILURE -->

  <rule name="Second Rule">

    <!-- Rule parameters -->

    <parameter identifier="context">

      <class>MyContext</class>

    </parameter>



    <!-- Rule Conditions -->

    <java:condition>

      !(f1() && f2())

    </java:condition>



    <!-- Rule Consequences -->

    <java:consequence>

       context.setVerdict(Constants.FAIL);

    </java:consequence>

  </rule>



</rule-set>









Reply via email to