You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Roytman, Alex" <ro...@peacetech.com> on 2000/08/07 21:11:12 UTC

Xalan Extension Element as a root level element

Hello,

I noticed that if I put an extension element to the top level of my
stylesheet they do not get invoked - just ignored. 
I would like to initialize certain global variables using my extensions but
can't do it since extensions seems to be ignored when placed on
<xsl:stylesheet> level
Is it intended to work like this? Any suggestions?

sample:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
                xmlns:lxslt="http://xml.apache.org/xslt"
                xmlns:java="http://xml.apache.org/xslt/java"
                xmlns:url="com.peacetech.xslext.URLBuilder"
                xmlns:str="com.peacetech.xslext.StringUtil"
                extension-element-prefixes="url str"
                exclude-result-prefixes="java url str">

<xsl:output method="html" encoding="ISO8859-1" media-type="text/html"/>

<lxslt:component prefix="url"
                 elements="url param params get"
                 functions="get encode">
  <lxslt:script lang="javaclass" src="com.peacetech.xslext.URLBuilder"/>
</lxslt:component>
<lxslt:component prefix="str"
                 elements=""
                 functions="paramString">
  <lxslt:script lang="javaclass" src="com.peacetech.xslext.StringUtil"/>
</lxslt:component>


<xsl:param name="schema"/>
<xsl:param name="query"/>

<url:url url="xsum"/>
<url:param name="schema" value="{$schema}"/>
<url:param name="query" value="{$query}"/>
<url:param name="style" value="'detail-list.xsl'"/>
<url:param name="groups" value="'appl'"/>
<url:param name="constr"
value="str:paramString(/xsum/xsum-meta/constraints/constraint, 'tag',
'value')"/>
<xsl:variable name="detailUrl" select="url:get()"/>