This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Pre loaded/compiled stylesheets for xsl:include - How to do it?


Hi,

Where does the problem happen? Memory gets filled? The processor is maxed out?

Can this be fixed by:
1. optimizing the XSL (are you using keys?)
2. Adding more RAM
3. upgrading the machine's processor

Do you always need all of the includes? Perhaps you could create more
primary/entry XSLs with their specific needs represented there and then include
the common stuff (though it kind of looks like you are doing this).

I have never been able to get my more complicated XSLTs to work with XSLTC (or
Resin's compiled XSL). I never investigated too deep, though. Saxon, with a
Template cache, works really well (fast), but I only have about 20 xsl:includes.
It sounds like your stuff is more complicated than mine so I wonder if XSLTC
will even work.

Another option might be to do several smaller (less complicated) transformations
to get to the end result using something like Cocoon.

best,
-Rob


> -----Original Message-----
> From: owner-xsl-list@lists.mulberrytech.com
> [mailto:owner-xsl-list@lists.mulberrytech.com]On Behalf Of Michael Kay
> I don't know of any product that compiles individual stylesheet modules
> separately and allows subsequent linking of compiled modules.
>
> As someone suggested, XSLTC might help because its compiled stylesheets
> are very small.
>
> I would suggest instead combining all your stylesheets into one, and
> invoking it with a parameter to indicate which particular transformation
> you want to perform.
>
> > -----Original Message-----
> > From: owner-xsl-list@lists.mulberrytech.com
> > [mailto:owner-xsl-list@lists.mulberrytech.com] On Behalf Of
> > Jude Albert
> > Hi
> >
> > My project has several xsls (around 60) with the
> > following format
> >
> > <?xml version="1.0" standalone='no'?>
> > <xsl:stylesheet version="1.0"
> >     xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> > >
> >
> > <xsl:include href = "user_options.xsl"/>
> > <xsl:include href = "include.xsl"/>
> > <xsl:include href = "common.xsl"/>
> >
> > <xsl:template match="/">
> >   some xsl code
> > </xsl:template>
> >
> > The three include stylesheets mentioned above will be
> > included in most of the stylesheets.  And they are of
> > considerable size.  Is there any way by which I can cache
> > these include stylesheets alone and link the cached thing to
> > all other stylesheets while loading/parsing them?  (I'm using XT)
> >
> > Here is the reason for the question:
> > I have moved all the commonly used templates to one of
> > the three above mentioned include files.  This helps
> > me in avoiding code duplication and makes my
> > stylesheets more readable.
> >
> > But my making several commonly used templates to be
> > generic, the xsl stylesheet size has grown
> > considerably and it is beating me with a great
> > performance bottleneck.  Considerable time is spent in
> > the stylesheet loading and parsing.
> >
> > I tried caching all the stylesheets.  It gave me a
> > good performance improvement but the memory grows very
> > huge.  I do not want either it to happen.
> >
> > So I want to have only those include stylesheets to be
> > cached and include them when the normal stylesheet is
> > loaded (on the servlet side).  By doing so, it is not
> > going to affect memory significantly and at the same
> > time will reduce the loading/parsing time for other stylesheets.



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]