[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: [xsl]
RE: [xsl]
Subject: RE: [xsl] <xsl:test=""> From: "Michael Kay" <mhk@xxxxxxxxx> Date: Thu, 16 Sep 2004 12:03:05 +0100 |
Use <xsl:apply-templates mode="x" select="."/> <xsl:template mode="x" match="forObj | flow | step"> Doing an explicit test on name() should only be a last resort: template rules are there for this job. Note that you can give the same template both a name and a match pattern if you need to, and invoke it either by apply-templates or by call-template. You could write (name()='forObj' or name()='flow'...), and in XSLT 2.0 you could write <xsl:if test="name() = ('forObj', 'flow', 'step')"> but it's not the right answer here. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Phillip Nicolson [mailto:pjn3@xxxxxxxxxxxxx] > Sent: 16 September 2004 10:58 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] <xsl:test=""> > > I have a stylesheet containing a number of <xsl:test> statements. > > Rather than having: > > <xsl:if test="name() = 'forObj'">...........call template > <xsl:if test="name() = 'flow'">............call template > <xsl:if test="name() = 'step'">............call template > ....etc > > all of which call the same template is it possible to test if name() = > forObj OR flow OR step etc in one statement? > > Many thanks for suggestions > > -- > Phillip Nicolson > Department of Physics & Astronomy Phone: (0)116 2523581 > University of Leicester Email: > pjn3@xxxxxxxxxxxxx > Leicester LE1 7RH Web: > http://www.astrogrid.org
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] <xsl:test="">, Phillip Nicolson | Thread | RE: [xsl] <xsl:test="">, Arun Sinha |
RE: [xsl] <xsl:test="">, Arun Sinha | Date | RE: [xsl] Exclude elements in trans, Sonke Ruempler |
Month |
Keywords