XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Mark SmithSubject: Trouble with xsl:with-param when calling a template in another xsl file
Author: Mark Smith
Date: 29 Nov 2004 09:58 PM
I have 2 XSL files main.xsl and sub.xsl

main.xsl is calling a template within sub.xsl, and does so successfully.

But I cannot successfully pass a parameter into the template ???

Here is the code in main.xsl -------->

<?xml version='1.0' encoding='utf-8'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="ISO-8859-1"/>
<xsl:include href="sub.xsl"/>

<xsl:template match="/">
<p>
<xsl:call-template name="subxml">
<xsl:with-param name="myparam" select='"BLA BLA"' />
</xsl:call-template>
</p>
</xsl:template>

</xsl:stylesheet>
----------------------------------------------------

Here is the code in sub.xsl ------>

<?xml version='1.0' encoding='utf-8'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="ISO-8859-1"/>

<xsl:param name="myparam" select='"No Value"'/>

<xsl:template name="subxml" match="/">
<p>
<xsl:value-of select="$myparam"/>
</p>
</xsl:template>
</xsl:stylesheet>

----------------------------------------------------------

I reference an xml file called sub.xml but never actually use any data in it.

<?xml version="1.0"?>
<work_queues_list>
<work_queue>
<type>RELEASE</type>
<name>swadmin</name>
<description>Staffware Administrator</description>
<hosting_node>TITAN</hosting_node>
</work_queue>
</work_queues_list>

---------------------------------------------------------

If I call the sub.xsl directly on a command line
and pass in a parameter as follows then the parameter
is set correctly in the html....

StylusXslt "sub.xml" "sub.xsl" "TestProblem.html" myparam='"BLA BLA"'

Also, when I run main.xsl it finds the template in the sub.xsl ok and
the html displays "No Value".

So it all seems to work other than I can't pass the parameter value in
to the template when using xsl:with-param.

I've tried all kinds of syntax but nothing!

HELP!!!

Thanks,
Mark

Postnext
Tony LavinioSubject: Trouble with xsl:with-param when calling a template in another xsl file
Author: Tony Lavinio
Date: 30 Nov 2004 10:44 AM
It looks like in sub you have the parameter as a global parameter.
But you really want it to be local to the template rule, so it should
be moved to inside of the template - just as if it were all in a
single source module.

Postnext
Mark SmithSubject: Trouble with xsl:with-param when calling a template in another xsl file
Author: Mark Smith
Date: 30 Nov 2004 11:29 AM
That was it, thank you very much!

Postnext
Ivan PedruzziSubject: Trouble with xsl:with-param when calling a template in another xsl file
Author: Ivan Pedruzzi
Date: 30 Nov 2004 11:32 AM
Hi Mark,

The template "subxml" declares "name" attribute and "match"
attribute but they are mutual exclusive.

main.xsl uses xsl:with-param name="myparam" but the subxml template
doesn't define any parameter so the value is not passed.

If you like to pass a parameter in the call-template you need to
change subxml like so

<xsl:template name="subxml">
<xsl:param name="myparam" select='"No Value"'/>
<p><xsl:value-of select="$myparam"/></p>
</xsl:template>

T tried the xslt command line and seems to work as expected.

StylusXslt.exe "dummy.xml" "main.xsl" myparam='"ivan"'
<p><p>ivan</p></p>

Hope this helps

Ivan

Posttop
Mark SmithSubject: Trouble with xsl:with-param when calling a template in another xsl file
Author: Mark Smith
Date: 30 Nov 2004 11:50 AM
Thanks Ivan, much appreciated!

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.