- From: <Toman_Vojtech@emc.com>
- Date: Wed, 23 Jan 2008 07:59:05 -0500
- To: <public-xml-processing-model-comments@w3.org>
Hi all, I have a question about evaluating the steps of a pipeline. Section 2 says: "The result of evaluating a pipeline (or subpipeline) is the result of evaluating the steps that it contains, in an order consistent with the connections between them. [...]" I am sure this has been asked before (even though I could not find any discussion about this topic), but is this really necessary? Why cannot the execution of the contained steps just follow the document order? I sort of don't like the idea that a pipeline may execute steps in a different order than specified in the pipeline document. I mean, it's nice that you can write pipelines such as: <p:pipeline> <p:count> <p:input port="source"> <p:pipe step="IDENTITY"/> </p:input> </p:count> <p:identity name="IDENTITY"> <p:pipeline> or: <p:pipeline> <p:identity> <p:count/> <p:pipeline> and expect them to produce the same result, but I find it a bit unnatural (and it also makes the specification, IMHO, less elegant and harder to implement). Why would somebody want to write pipelines whose execution order is not obvious from the first glance? To me, a pipeline is just a simple linear sequence of steps, with a clear and well-defined order. I understand that the language has been very explicit in the beginning (steps and ports have names; connections between steps are made using these names), so in theory, there is no reason why this explicit binding scheme could not be used for specifying an explicit execution order. But later on, a lot of defaulting has been added to the specification, and these explicit bindings, as I see it now, have become much less important (although they is still necessary - or just useful - in some cases). So, my question is: Shall the specification still demand that the execution order is determined by the connection between the steps (because there is a valid use case that requires it), or can it follow the other simplifications (implicit input/output ports on pipelines, default bindings etc.) and just state: "Steps contained in a compound step are evaluated linearly, in the document order"? Regards, Vojtech -- Vojtech Toman Principal Software Engineer EMC Corporation Aert van Nesstraat 45 3012 CA Rotterdam The Netherlands Toman_Vojtech@emc.com
Received on Wednesday, 23 January 2008 12:55:22 UTC