<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
 <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
 </head>
 <body>
  <p>
   &#8203;&#8203;Hi all,
   <br/>
   &#160;
   <br/>
   I wrote XSLT 2.0 filters that works fine in LibreOffice 3.3.4 but doesn&#39;t work in 3.4.3 version.
  </p>
  <p>It&#39;s because between these two verions, a libxslt implementation of XSLTFilter has been added and set to default instead of java-saxon implementation. And libxslt doesn&#39;t support XSLT 2.0</p>
  <p>&#160;</p>
  <p>I found a way to use other implementation (old java-saon) than defaut libxslt in the following changelog :</p>
  <p>
   <br/>
   <em>&#160;2011-02-04&#160; Peter Jentsch&#160; &#60;pjotr@guineapics.de&#62;&#160; [cd9e87a248022a6a5b2f8fcd6dc5fca7432b7b38]</em>
   <br/>
   <br/>
   <em>&#160; Update of the libxslt based xsltfilter implementation.</em>
   <br/>
   <br/>
   <em>&#160; * Uses the sax document handler adapter</em>
   <br/>
   <em>&#160; * Uses libxslt by default</em>
   <br/>
   <em>&#160; * Tries to evaluate the 2nd userdata parameter of the filter configuration as</em>
   <br/>
   <em>&#160;&#160;&#160; the name of the transformation service to use.&#160; This should allow extension</em>
   <br/>
   <em>&#160; &#160; authors to provide their own transformer implementation (which then could use</em>
   <br/>
   <em>&#160; &#160; the old java based transformation service which in turn uses saxon and could</em>
   <br/>
   <em>&#160; &#160; provide xslt 2.0 for the TEI people for example).</em>
   <br/>
   <em>&#8203;</em>
   <br/>
   After reading code of XSLTFilter.cxx of 3.4.3 version, I assume that the 2nd userdata parameter of the filter configuration is defined in the TypeDetection.xcu file of a XSLT Filter package. And more precisly after the first semi-colon of the text contained in the node
   <em>/oor:component-data/node[@oor:name=&#39;Filters&#39;]/node[@oor:name=&#39;Test XSLT 2.0 filter&#39;]/prop[@oor:name=&#34;Data&#34;]/value.</em>
  </p>
  <p>&#160;</p>
  <p>So I tried this :</p>
  <ul>
   <li>Create a new import xml filter</li>
   <li>Load my xslt</li>
   <li>Export this filter as a package</li>
   <li>
    Update the TypeDetection.xcu in the package to set the java implementation.
    <br/>
    I thougt that the good value for java implementation is &#34;com.sun.star.comp.JAXTHelper&#34; as in 3.3.4 version of LibreOffice.
    <br/>
    But it doesn&#39;t work. Then I tried these differents values :
    <ul>
     <li>com.sun.star.comp.JAXTHelper</li>
     <li>com.sun.star.comp.documentconversion.XSLTFilter</li>
     <li>com.sun.star.comp.documentconversion.XSLTransformer</li>
    </ul>
   </li>
  </ul>
  <div id="gt-res-content" class="almost_half_cell">
   <div dir="ltr">
    <span class="short_text">
     <span class="hps">But</span>
     <span class="hps">nothing worked</span>
     <span>
      . I join these differents test packages and the input test xml file.
      <br/>
     </span>
    </span>
   </div>
   <div dir="ltr">
    <span class="short_text">
     <span>
      <br/>
     </span>
    </span>
   </div>
  </div>
  <p>
   <span class="short_text">
    <span class="hps">Does</span>
    <span class="hps">anyone know</span>
    <span class="hps">
     the solution ?
     <br/>
    </span>
   </span>
  </p>
  <p>Thanks</p>
  <p>&#160;</p>
 </body>
</html>