[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] using call-template to call template from another xsl
hi my xml is <order> <admin> <pon> 1234 </pon> <name> Shirish Wate </name> </admin> <billing> <firstname> Shirish </firstname> <lastname> Wate </lastname> </billing> </order> i want the output to something like this <myorder> <adminsection> <purchaseordernumber> 1234 </purchaseordernumber> <myname> Shirish Wate </myname> </adminsection> <billingsection> <myfirstname> Shirish </myfirstname> <mylastname> Wate </mylastname> </billingsection> </myorder> but i want to write separate xsl for the admin and billing. i have written three xsls master.xsl,admin.xsl and billing.xsl ---------------------------------------------------- master.xsl --------------------------------------------------- <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:import href="admin.xsl"></xsl:import> <xsl:import href="billing.xsl"></xsl:import> <xsl:template match="/order/admin"> <myorder> <xsl:call-template name="tmpadmin"/> <xsl:call-template name="tmpbill"/> </myorder> </xsl:template> </xsl:stylesheet> ---------------------------------------------------- admin.xsl --------------------------------------------------- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:output method = "xml" indent = "yes" omit-xml-declaration="yes" /> <xsl:template name="tmpadmin" > <adminsection> <xsl:if test= "pon" ><purchaseordernumber><xsl:value-of select="pon" /> </purchaseordernumber></xsl:if> <xsl:if test= "name" ><myname><xsl:value-of select="name" /> </myname></xsl:if> </adminsection> <xsl:template> </xsl:stylesheet> ------------------------------------------------- billing.xsl ------------------------------------------------- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:output method = "xml" indent = "yes" omit-xml-declaration="yes" /> <xsl:template name="tmpbill" > <adminsection> <xsl:if test= "firstname" ><myfirstname><xsl:value-of select="firstname" /> </myfirstname></xsl:if> <xsl:if test= "lastname" ><mylastname><xsl:value-of select="lastname" /> </mylastname></xsl:if> </adminsection> <xsl:template> </xsl:stylesheet> ------------------------------------------------- i am getting the <adminsection> properly but in the <billingsection> i get empty tags <myfirstname> and <mylastname> even though the corresponding tags are present in the input xml can anybody help me on this. thankx in advance -shirish wate XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|