cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hans Ulrich Niedermann <niederm...@isd.uni-stuttgart.de>
Subject Re: Pipeline conditional model
Date Sun, 28 May 2000 18:26:07 GMT
Hi Stefano,

just a small remark on the beginning of you mail. I haven't had time
to work through the main topics thoroughly yet.

Stefano Mazzocchi <stefano@apache.org> writes:

> I think a pipeline conditional model should be componentizable just like
> the pipeline itself.
> 
> To do this, one possible solution is to introduce boolean elements that
> operate on these matching components. For example,
> 
>  <process uri="...">
>   <AND>
>    <matcher type="A"/>
>    <matcher type="B"/>
>    <OR>
>     <marcher type="C"/>
>    </OR>
>   </AND>
>   ...(pipeline)...
>  </process>
> 
> which is the logical equivalent of (using Java syntax)
> 
>   ((A && B) || C)
> 
> and reminds of inverse polish notation.

One could also combine the && and || operators with the surrounding
brackets. This results in a lisp-like expression "(or (and A B) C)"
and could be expressed in XML like

  <process uri="...">
    <OR>
      <AND>
        <matcher type="A"/>
        <matcher type="B"/>
      </AND>
      <matcher type="C"/>
    <OR>
    ...(pipeline)...
  </process>

So you are not forced to use some weird kind of postfix notation at
all. The XML element nesting even nicely reflects the bracket nesting.

Uli

Mime
View raw message