Subject: RE: effective use of parameters and/or named templates? From: "Maxime Levesque" <maximel@xxxxxxxxxxxxxx> Date: Tue, 27 Jul 1999 09:25:32 -0700 |
You probably want to use : <xsl:template match=" a matching expression "> ... ... <xsl:call-template name="aName" select='.'> <xsl:param name="nameOfParam1">value of param 1</xsl:param> <xsl:param name="nameOfParam2">value of param 2</xsl:param> </xsl:call-template> </xsl:template> <!-- this template will print param1 and param2 --> <!-- notice that it has no match attribute ... -> <xsl:template name="aName"> <xsl:param-variable name="nameOfParam1"/> <xsl:param-variable name="nameOfParam2/> <xsl:value-of select="$nameOfParam1"/> <xsl:value-of select="$nameOfParam2"/> </xsl:template> > -----Original Message----- > From: owner-xsl-list@xxxxxxxxxxxxxxxx > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxx]On Behalf Of Linda van den Brink > Sent: Tuesday, July 27, 1999 3:31 AM > To: Xsl-List (E-mail) > Cc: Barry van Oven > Subject: effective use of parameters and/or named templates? > > > Hi all, > > I'm working on an XSL stylesheet which I think would benefit from > the use of > parameters and/or named templates. However, having no programming > background > whatsoever, I'm having difficulty in finding out if and how to use them. > > I have an XML document containing a very long list of software items, each > item having child elements like name, description, version, etc, > and one or > more categories, like this: > > <software> > <item> > <name>Amaya for Windows NT</name> > <version>2.1</version> > <desc>Amaya is the name of the World Wide Consortium's own > test-bed browser/authoring tool and is used to demonstrate and > test many of > the new developments in Web protocols and data formats. Given the > very fast > moving nature of Web technology, Amaya has a central role to play. It is > versatile and extensible: new features can be easily added.</desc> > <size>4.17 MB</size> > <url>amaya.exe</url> > <home>http://www.w3.org/Amaya/</home> > <license>Freeware</license> > <install>Install</install> > <category>web browser</category> > </item> > </software> > > My aim is to transform this list to a whole series of HTML pages in which > the items are arranged by category. I couldn't arrange the XML document by > category, however, because one item can be in more than one category. > > What I know how to do is write a template that matches software, and has a > whole series of xsl:for-each elements, one for each category, like this > (fragment): > <xsl:for-each select="item[category='web browser']"> > <xsl:sort select="name"/> > <xsl:element name="div"> > <xsl:attribute name="id">item<xsl:number > value="position()" format="1"/></xsl:attribute> > <xsl:attribute > name="class">newsItem</xsl:attribute> > <h4><xsl:apply-templates > select="name"/> <xsl:apply-templates select="version"/></h4> > <p><xsl:apply-templates select="desc"/></p> > </xsl:element> > </xsl:for-each> > <xsl:for-each select="item[category='browser add on']"> > <xsl:sort select="name"/> > <xsl:element name="div"> > <xsl:attribute name="id">item<xsl:number > value="position()" format="1"/></xsl:attribute> > <xsl:attribute > name="class">newsItem</xsl:attribute> > <h4><xsl:apply-templates > select="name"/> <xsl:apply-templates select="version"/></h4> > <p><xsl:apply-templates select="desc"/></p> > </xsl:element> > </xsl:for-each> > etc.... > > Which allows me to process the entire list of software items. > However, since > there are a lot of categories, it seems to me I would be repeating a lot. > (everything between the xsl:for-each elements) > > So, my question is how can I reduce the number of lines in my > stylesheet by > using xsl:param or named templates (or are there other solutions as well)? > The nicest thing (as far as I can imagine) would be if the > stylesheet could > find all the different categories and then apply a standard > template once to > all of them. > > I would appreciate any help and explanations! > > > Linda van den Brink > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
effective use of parameters and/or , Linda van den Brink | Thread | RE: effective use of parameters and, Kara Lee |
Re: Possible whitespace problem wit, John E. Simpson | Date | RE: Can't use 'id' function in XT 1, Kay Michael |
Month |