W3C home > Mailing lists > Public > xproc-dev@w3.org > April 2009

Re: Where's the parallelize step?

From: Costello, Roger L. <costello@mitre.org>
Date: Tue, 21 Apr 2009 08:26:48 -0400
To: "'xproc-dev@w3.org'" <xproc-dev@w3.org>
Message-ID: <9E51F88D5247B648908850C35A3BBB5003F245AA17@IMCMBX3.MITRE.ORG>
Hi Norm,

>> Hi Folks,
>> I implemented a parallel workflow in XProc. 
>> Here's a picture of it: 
>> http://www.xfront.com/parallel-workflow.gif
>> I connected the two parallel workflows to the pipeline's input port.
>> After the parallel part was done, I merged the two parallel
>> workflows using an identity step.

>That's all perfectly legit, but note that there's nothing about that
>that requires the processor to run them in parallel. And XML Calabash
>won't (at least not yet).

Yes, I realize that. That's okay. I want to be able to express the parallel workflow. Whether the implementation (Calabash) actually executes it in parallel is less important to me, for now.

>> The identity step only allows me to connect its input port to the
>> output of one of the parallel workflows. I'm dumping the other
>> workflow's output. This seems rather bad. I can't think of what else
>> to do. Can you suggest a better way to handle the merging of two
>> parallel workflows?

> <p:identity>
>   <p:input port="source">
>     <p:pipe step="branch-1" name="result"/>
>     <p:pipe step="branch-2" name="result"/>
>   </p:input>
> </p:identity>

I tried that, and got this error:

    Error  : Pipeline failed: err:XD0006: 
    2 documents appear on the 'source' port.
    If sequence is not specified, or has the 
    value false, then it is a dynamic error
    unless exactly one document appears on 
    the declared port.

Even if it did work, what would it mean? Doesn't p:identity mean that the input flows unaltered to the output? Since there are two inputs, which one flows through to the output?

Received on Tuesday, 21 April 2009 12:27:23 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:03:04 UTC