W3C home > Mailing lists > Public > xproc-dev@w3.org > July 2010

Re: Can a pipeline 'call' itself?

From: Alex Muir <alex.g.muir@gmail.com>
Date: Fri, 30 Jul 2010 08:47:52 +0000
Message-ID: <AANLkTimSVedK3908cLezGvXzpFbz0v+ao-n03njCWDyr@mail.gmail.com>
To: David <dlee@calldei.com>
Cc: Toman_Vojtech@emc.com, xproc-dev@w3.org
"In Calabash (last time I looked) each step recreated the output tree in
full.  ( Not serialized or parsed, but a copy of the output tree is created
in memory)."

Is that done due to the nature of being able to suck in the input from a
step that existed previously in the document?

I understand there are plans to make it more efficient over time, probably
one of those things that could be right?

Alex Muir

On Thu, Jul 29, 2010 at 12:36 PM, David <dlee@calldei.com> wrote:

> Reguarding performance, I would expect most *single*  xproc steps to
> perform slightly better then the equivalent xquery or xslt step,
> but don't count on it.   Often 'under the hood' its doing the same thing.
>  An xproc processor may (and likely does) actually use xquery or xslt under
> the hood to do many of its steps.
>
> Now when you 'pipeline' commands there's a definite difference and its
> implementation specific, don't trust the 'rule of thumb', actually test it
> if performance is critical.
> In Calabash (last time I looked) each step recreated the output tree in
> full.  ( Not serialized or parsed, but a copy of the output tree is created
> in memory).
> I would expect a multi-step xproc pipeline vs an equivalent multi-step
> xquery or xslt, in calabash, the xquery or xslt would win.
>
> But again, don't generalize, test it with your specific processor, and then
> only if performance is an issue and you have performance problems.
>
>
> -------------------------
> David A. Lee
> dlee@calldei.com
> http://www.calldei.com
> http://www.xmlsh.org
>
>
>
> On 7/29/2010 8:25 AM, Toman_Vojtech@emc.com wrote:
>
>> On that note, does anyone have any principles or rules of thumb
>>> as to when it's best to use xproc and when it's best to do something
>>> using xslt?
>>>
>>>
>> While you can use XProc alone for many XML processing/transforming
>> tasks, my experience is that once you want to do something more
>> complicated, using p:xslt or p:xquery is often the more elegant
>> solution. This is not to say that XProc is useless - not at all. There
>> is no shame in resorting to XSLT or XQuery simply because these
>> languages do a particular task better. The point of XProc is to
>> integrate the different XML processing technologies together so that you
>> can use them seamlessly, not to replace them.
>>
>> Another question is performance. If something can be done with just
>> basic XProc (using "simple" standard steps such as p:insert,
>> p:add-attribute etc.), I would expect the performance to be better
>> compared to p:xslt or p:xquery, where you always have to expect certain
>> overhead related to setting up the XSLT/XQuery processor, parsing the
>> stylesheet/query etc.
>>
>> Regards,
>> Vojtech
>>
>> --
>> Vojtech Toman
>> Consultant Software Engineer
>> EMC | Information Intelligence Group
>> toman_vojtech@emc.com
>> http://developer.emc.com/xmltech
>>
>>
>>
>
>


-- 
Alex

An informal recording with one mic under a tree leads to some pretty sweet
acoustic sounds.
https://sites.google.com/site/greigconteh/albums/diabarte-and-sons
Received on Friday, 30 July 2010 08:55:18 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 30 July 2010 08:55:19 GMT