RE: [xsl] if condition

Subject: RE: [xsl] if condition
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 9 Mar 2005 22:29:15 -0000
Here's one way:

<xsl:template match="customer">
  <xsl:attribute name="age">unknown</xsl:attribute>
  <xsl:copy-of select="@age"/>
 

this relies on the fact that if you add two attributes with the same name to
a result element, the last one wins.

A more conventional solution is

<xsl:choose>
  <xsl:when test="@age"><xsl:copy-of select="@age"/></xsl:when>
  <xsl:otherwise><xsl:attribute name="age".....



Michael Kay
http://www.saxonica.com/

> -----Original Message-----
> From: Bhaskar, Rajan [mailto:RBhaskar@xxxxxxx] 
> Sent: 09 March 2005 21:16
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] if condition
> 
> Hi,
>  How can i do a if condition in XSLT when a particular 
> attribute/element
> in xml is not present and else with a default string
> 
> <customer name="xy" age="30">
> 
> say incase age is not present. i want to replace with "unknown"
> <customer name="xy" age="unknown">

Current Thread