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