xsl-list
[Top] [All Lists]

RE: Unable to use the functions

2005-07-05 05:59:25
Firstly, you need an XSLT 2.0 processor to run this.

Secondly, replace xsl:result with xsl:sequence - you are using an old
version of the XSLT 2.0 specification.

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Lakshmi narayana [mailto:lchintala(_at_)osi-tech(_dot_)com] 
Sent: 05 July 2005 11:17
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Unable to use the functions


Hi,
I am trying to execute one function in XSLT. But I am getting the
exceptions. Below are the code in XSL file and exceptions.
Please suggest me the changes i had to make in XSLT to 
execute the reverse
function properly.

XSL Code.

<xsl:transform
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
  xmlns:str="http://user.com/namespace";
  version="1.0"
  exclude-result-prefixes="str">

<xsl:function name="str:reverse">
  <xsl:param name="sentence"/>
  <xsl:result
     select="if (contains($sentence, ' '))
             then concat(str:reverse(substring-after($sentence, ' ')),
                         ' ',
                         substring-before($sentence, ' '))
             else $sentence"/>
</xsl:function>

<xsl:template match="/">
<output>
  <xsl:value-of select="str:reverse('DOG BITES MAN')"/>
</output>
</xsl:template>

</xsl:transform>


Exceptions :


javax.xml.transform.TransformerConfigurationException:
javax.xml.transform.TransformerConfigurationException:
javax.xml.transform.TransformerException:
javax.xml.transform.TransformerException: xsl:function is not 
allowed in
this position in the stylesheet!
      at
org.apache.xalan.processor.TransformerFactoryImpl.newTransform
er(Transformer
FactoryImpl.java:805)
      at MyTest.test(MyTest.java:31)
      at MyTest.main(MyTest.java:49)
Caused by: javax.xml.transform.TransformerConfigurationException:
javax.xml.transform.TransformerException:
javax.xml.transform.TransformerException: xsl:function is not 
allowed in
this position in the stylesheet!
      at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFa
ctoryImpl.java:984)
      at
org.apache.xalan.processor.TransformerFactoryImpl.newTransform
er(Transformer
FactoryImpl.java:788)
      ... 2 more
Caused by: javax.xml.transform.TransformerException:
javax.xml.transform.TransformerException: xsl:function is not 
allowed in
this position in the stylesheet!
      at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFa
ctoryImpl.java:980)
      ... 3 more
Caused by: javax.xml.transform.TransformerException: 
xsl:function is not
allowed in this position in the stylesheet!
      at
org.apache.xalan.processor.StylesheetHandler.error(StylesheetH
andler.java:96
6)
      at
org.apache.xalan.processor.StylesheetHandler.getProcessorFor(S
tylesheetHandl
er.java:428)
      at
org.apache.xalan.processor.StylesheetHandler.startElement(Styl
esheetHandler.
java:662)
      at 
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1672)
      at org.apache.crimson.parser.Parser2.content(Parser2.java:1963)
      at 
org.apache.crimson.parser.Parser2.maybeElement(Parser2.java:1691)
      at 
org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:667)
      at org.apache.crimson.parser.Parser2.parse(Parser2.java:337)
      at 
org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java:448)
      at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates
(TransformerFa
ctoryImpl.java:972)
      ... 3 more


Thanks,
Laxmi Narayana Babu.
OSI Technologies.


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>