[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Filtering with multiple templates
> We need to allow multiple templates to select some of > members. for example, > > the first template will get: > <Member name="x"> > <Member name="z"/> > </Member> > > the second template will get: > <Member name="x"> > <Member name="w"/> > </Member> > > If we run this two templates sequentially, we will > get: > <Member name="x"> > <Member name="z"/> > </Member> > <Member name="x"> > <Member name="w"/> > </Member> > > But we want to get the following based on the original > structure: > > <Member name="x"> > <Member name="z"/> > <Member name="w"/> > </Member> > > Please provide any idea that might help. Thanks a lot. The output of applying two templates can be merged like this: This transformation: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ext="http://exslt.org/common" exclude-result-prefixes="ext"> <xsl:output omit-xml-declaration="yes" indent="yes"/> <xsl:template match="/"> <xsl:variable name="vrtfOut"> <xsl:call-template name="t1"/> <xsl:call-template name="t2"/> </xsl:variable> <xsl:variable name="vOut" select="ext:node-set($vrtfOut)/*"/> <xsl:for-each select="$vOut[1]"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:copy-of select="../*/*"/> </xsl:copy> </xsl:for-each> </xsl:template> <xsl:template name="t1"> <Member name="x"> <Member name="z"/> </Member> </xsl:template> <xsl:template name="t2"> <Member name="x"> <Member name="w"/> </Member> </xsl:template> </xsl:stylesheet> when applied on any source.xml (not used), produces: <Member name="x"> <Member name="z"/> <Member name="w"/> </Member> ===== Cheers, Dimitre Novatchev. http://fxsl.sourceforge.net/ -- the home of FXSL 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
|