title: Referencing external XSLT libraries in OSB
body: <p>An Oracle Service Bus 12c Project uses XSL transformation, and in it, some exsl.org functions. So the namespace is included in the xsl file like this:</p>
  
  <p>xmlns:exsl="http://exslt.org/common"</p>
  
  <p>Then, the XSL is trying to use one of them exsl functions like this:</p>
  
  <p>xsl:value-of select="count(exsl:node-set($temp)/g:W)">
  
  <p>As we can see from the Weblogic log, it just doesn't work:
  XML-22015: (Error) Function '<a href="http://exslt.org/common:node-set" rel="nofollow">http://exslt.org/common:node-set</a>' not found.</p>
  
  <p>We've had similar problems before and the solution was to change the namespace. For example, we were only able to use the java format method by declaring the following namespace (I'm omitting the http since stackoverflow doesn't like it):
  www.oracle.com/XSL/Transform/java.text.Format
  and it didn't work like this: www.oracle.com/XSL/Transform</p>
  
  <p>So I wonder what the correct namespace is for node-set or how to find it out for future cases. Our system does not have internet connection, so I suspect these libraries are stored somewhere and these namespaces serve as keys for some mappings anyway, pointing to some offline location (?)</p>