Re: [xsl] Using Saxon 2.0 with FOP, XEP, Antenna House

Subject: Re: [xsl] Using Saxon 2.0 with FOP, XEP, Antenna House
From: Jesper Tverskov <jesper@xxxxxxxxxxx>
Date: Wed, 16 Oct 2013 13:08:31 +0200
Hi Michael

I'm not sure that I understand your answer.

When I make my XSLT+FO transformation at the command line:

MSXML+Antenna House = 1.3s
Saxon 9n + Antenna House = 5s
Saxon 9j + Antenna House = 2.5s

The above figures are a little hard to understand considering that the
XSLT step only takes a fraction of the FO step. Somehow AH must be
optimized to use MSXML at the command line. I don't know if it is
possible to overwin the "Java VM startup" problem as long as I have to
use the command line interface of AH?

Can I conclude that if I want to use an XSLT 2.0 processor, and if
speed matters, one must use the .Net or Java interface of AH or of
other FO processors? I can just as well forget about the command line
interface?

Regards
Jesper Tverskov

http://www.xmlplease.com



On Tue, Oct 15, 2013 at 4:03 PM, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> Certainly in the case of FOP, it's possible to pass the data between Saxon
and FOP at the level of SAX events. I used to package this in the product, but
abandoned it because it wasn't possible to do the integration in a way that
worked across FOP releases.
>
> I suspect that any slowness you experience is more to do with the Java VM
startup cost than with the extra cost of XML parsing and serialization; but
that's conjecture.
>
> Michael Kay
> Saxonica
>
>
> On 15 Oct 2013, at 14:31, Jesper Tverskov wrote:
>
>> Hi list
>>
>> FOP, XEP and Antenna House come out of the box with XSLT 1.0
>> processors, Xalan, Saxon, MSXML.
>>
>> I would like to use a Saxon XSLT 2.0 processor, but have a problem.
>> Let me use Antenna House as example.
>>
>> If I make a bat file, and first do the XML to FO transformation using
>> a Saxon XSLT 2.0 processor, output FO to a file, and then in the same
>> bat file use AH to transform the FO file to pdf, it works but it is
>> much, much, much slower, a crawl compared to running.
>>
>> When using MSXML and AH, I have a feeling that AH takes over the FO
>> file from XSLT from memory.
>>
>> Now, instead of specifying the two processors in the bat file, in AH
>> you can just specify AH in the bat file, and use a configuration file
>> to setup Saxon. The XSLT line in the config file could look like this,
>> based on AH documentation :
>>
>> <xslt-settings msxml="false" command="SaxonHE9.5N/bin/Transform
>> -o:&#34;%3&#34; &#34;%1&#34; &#34;%2&#34;"/>
>>
>> It works. But the result is so slow that it is my guess that the
>> config file is simply doing what is similar to two separate
>> transformations in the bat file.
>>
>> Conclusion: It looks to me that Antenna House at the command line is
>> optimized to use MSXML and that any other XSLT processor will be much,
>> much, much slower.
>>
>> Are the above true for AH or have I overlooked something? And what
>> about FOP and XEP? Are they also optimized to work much faster with
>> the build in XSLT processor, at least at the command line?
>>
>> Regards
>> Jesper Tverskov

Current Thread