On 12/05/2011 05:05, Michael Neale wrote:
> Is there a useful subset as "proper" XML and leave the long tail for some 
> catch all tag?
>
> I guess depends who wants this, for what purpose ;) I am guessing tooling 
> /GUIs mostly, with a little bit of interchange?
What's in Drools 4.0 XML probably is that useful subset.

Mark
> Sent from my phone.
>
> On 12/05/2011, at 1:57 PM, Mark Proctor<mproc...@codehaus.org>  wrote:
>
>> if you want full 100% xml, you'll first need to define a full expression
>> language in XML - as Drools DRL now supports freeform expressions. If
>> someone wants to work on that first, we can see how to utilise it's
>> namespace inside of patterns.
>>
>> Jess XML works as it's expr language is simple. Drools 4.0 worked as
>> it's expression language is simpl. With drools 5.2 we now allow any free
>> form expression, and thus it's not so simple.
>>
>> Mark
>> On 11/05/2011 10:33, Pierre wrote:
>>> Mark, All,
>>>
>>> AFAIK, xdrl is used for systems to exchange rules (perhaps for storing 
>>> too). This, as opposed to human use, for which XML can be quite awkward to 
>>> say the least. This to say that putting readability as a major factor might 
>>> make us miss the main point.
>>>
>>> For humans<expr>status == state</expr>    is nicer. However, for systems 
>>> interaction it's pretty terrible. It's some form of half use of XML where 
>>> the expression itself can only be validated or transformed with 
>>> considerable efforts (e.g. regex) when xml tags would allow using standard 
>>> XML tools (e.g. XPATH). I've got examples of this in the rule translation 
>>> console: http://yieldrif.appspot.com/ (shameless plug!).
>>>
>>> Let's have a look at other XML rule descriptions (please note that I don't 
>>> imply that these are 100% valid expressions in their respective languages):
>>>
>>> JessML
>>>
>>> <pattern>
>>>     <name>Order</name>
>>>     <binding>o</binding>
>>>     <slot>
>>>         <name>total</name>
>>>         <test>
>>>             <type>eq</type>
>>>             <conjunction>and</conjunction>
>>>             <value type='VARIABLE'>__synth0</value>
>>>         </test>
>>>         <test>
>>>             <type>eq</type>
>>>             <conjunction>and</conjunction>
>>>             <funcall>
>>>                 <name>&gt;</name>
>>>                 <value type='VARIABLE'>__synth0</value>
>>>                 <value type='INTEGER'>100</value>
>>>             </funcall>
>>>         </test>
>>>     </slot>
>>> </pattern>
>>>
>>> RIF-PRD
>>> <formula>
>>>     <name>Order</name>
>>>     <formula>
>>>         <Equal>
>>>             <left>
>>>                 <Var>total</Var>
>>>             </left>
>>>             <right>
>>>                 <Var>-var-__synth2</Var>
>>>             </right>
>>>         </Equal>
>>>         <Equal>
>>>             <left>
>>>                 <Var>total</Var>
>>>             </left>
>>>             <right>
>>>                 <Expr>
>>>                     <op>
>>>                         <Const 
>>> type="http://www.w3.org/2007/rif#iri";>http://www.w3.org/2007/rif-builtin-predicate#numeric-greater-than</Const>
>>>                     </op>
>>>                     <args ordered="yes">
>>>                         <Var>-var-__synth2</Var>
>>>                         <Var>100</Var>
>>>                     </args>
>>>                 </Expr>
>>>             </right>
>>>         </Equal>
>>>     </formula>
>>> </formula>
>>>
>>> I hope this helps,
>>> Pierre
>>>
>>> ------------------------------
>>>
>>> Message: 6
>>> Date: Tue, 10 May 2011 09:11:24 +0100
>>> From: Mark Proctor<mproc...@codehaus.org>
>>> Subject: Re: [rules-dev] xdrl fixes/enhancements
>>> To:rules-dev@lists.jboss.org
>>> Message-ID:<4dc8f32c.7080...@codehaus.org>
>>> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>>>
>>> On 10/05/2011 09:07, Mark Proctor wrote:
>>>
>>>>>   On 10/05/2011 08:10, Veit Guna wrote:
>>>>>>>   Hi.
>>>>>>>
>>>>>>>   Any chance that this could be reviewed and maybe integrated into the
>>>>>>>   release?
>>>>>>>
>>>>>>>   https://jira.jboss.org/browse/JBRULES-2672
>>>>>   I'm in two minds on this. Edson and I are thinking of changing the xml
>>>>>   parser to just be:
>>>>>   <Pattern object-type="xxxx">
>>>>>   <expr>......</expr>
>>>>>   <expr>......</expr>
>>>>>   <expr>......</expr>
>>>>>   </Pattern>
>>>>>
>>>>>   With any valid  expression allwed in expr, i.e. any combinatino of ||,
>>>>>   &&, method calls, +, - etc. Which follows what we've done with free-form
>>>>>   drl.
>>>>>   Our current approach to normalising expressions in XMl isn't working too
>>>>>   well, and the more we extropolate that the worse it gets:
>>>>>   <dro:pattern object-type="String">
>>>>>   <dro:and-constraint-connective>
>>>>>   <dro:field-constraint field-name="this">
>>>>>   <dro:literal-restriction evaluator="!=" value="null"/>
>>>>>   </dro:field-constraint>
>>>>>   <dro:field-constraint field-name="this.toLowerCase">
>>>>>   <dro:literal-restriction evaluator="==" value="true"/>
>>>>>   </dro:field-constraint>
>>>>>   </dro:and-constraint-connective>
>>>>>   <dro:from>
>>>>>   <dro:expression>fctv_17263.getHeaderValues("X-My-Header");
>>>>>   </dro:expression>
>>>>>   </dro:from>
>>>>>   </dro:pattern>
>>>>>
>>>>>   But I do recognise that you patch might give a lifeline to existing XML
>>>>>   users....
>>> I should add that I ripped out most of the handler validation
>>> parent/peer stuff already. This was necessary to get the new compiler
>>> working, and<expr>    actually already works, see DumperTest.
>>> <lhs>
>>> <forall>
>>> <pattern object-type="State">
>>> <field-binding field-name="state" identifier="state" />
>>> </pattern>
>>>
>>> <pattern object-type="Person">
>>> <expr>
>>>                   status == state
>>> </expr>
>>> <field-binding field-name="likes" identifier="likes" />
>>> </pattern>
>>> </forall>
>>>
>>> </lhs>
>>>
>>> Mark
>>>
>>>>>   Mark
>>>>>
>>>>>>>   _______________________________________________
>>>>>>>   rules-dev mailing list
>>>>>>>   rules-dev@lists.jboss.org
>>>>>>>   https://lists.jboss.org/mailman/listinfo/rules-dev
>>>>>>>
>>>>>>>
>>>>>   _______________________________________________
>>>>>   rules-dev mailing list
>>>>>   rules-dev@lists.jboss.org
>>>>>   https://lists.jboss.org/mailman/listinfo/rules-dev
>>>>>
>>>>>
>>> _______________________________________________
>>> rules-dev mailing list
>>> rules-dev@lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/rules-dev
>>>
>>>
>>
>> _______________________________________________
>> rules-dev mailing list
>> rules-dev@lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-dev
> _______________________________________________
> rules-dev mailing list
> rules-dev@lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-dev
>
>


_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

Reply via email to