Todie,
Xalan doesn't have anything like that, but you could write your own
URIResolver, a standard JAXP thing
Your class MyURIResolver would need to implement
javax.xml.transformerURIResolver:

class MyURIResolver implements URIResolver {
  public Source resolve(String href, String base) { . . . }

  // extra code and methods
}

Then use it with JAXP when you create the

      TransformerFactory tFactory = TransformerFactory.newInstance();
      tFactory.setURIResolver(new MyURIResolver());
      Transformer transformer = tFactory.newTransformer(...


You would have to create the Source objects for each of the
included/imported  stylesheet modules rather than have Xalan do that for
you, but as a side effect your MyURIResolver object can keep track of all
the included/imported styleesheets.

Later on you can ask a URIResolver if it ever included a particular URI. A
bit more complicated than I'm making it look because you'll need a new
MyURIResolver for each Transformer that you create, and you'll need to keep
track of all instances of MyURIResolver, but you get the idea.

The good thing about this is that it is independent of processor.

- Brian
- - - - - - - - - - - - - - - - - - - -
Brian Minchau
XSLT Development, IBM Toronto
e-mail:        [EMAIL PROTECTED]




                                                                           
             "toadie D"                                                    
             <[EMAIL PROTECTED]                                             
             com>                                                       To 
                                       xalan-j-users@xml.apache.org        
             05/15/2006 05:04                                           cc 
             PM                                                            
                                                                   Subject 
                                       Usage of Template in memory caching 
                                       and <xsl:include href="             
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




As a way to optimize loading and parsing of XSLT, we are making use of
javax.xml.transform.Templates and maintain an in-memory cache of the
Templates by name

Within the XSLT itself, usually there are a number of xsl:include.

<xsl:stylesheet
        xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
        xmlns:lxslt='http://xml.apache.org/xslt'
                exclude-result-prefixes=lxslt'
        version='1.0'>

    <xsl:include href='someCommon.xsl'>

When there's a change to someCommon.xsl, is there a way to
programmatically determine the dependencies between the 2 maps.  What
I would like to do is to be able to detect the dependency and sweep
through the in-memory cache and flushed out or reload the affected
parent map.

Thanks in advance.
Toadie.


Reply via email to