Altova Mailing List Archives>Archive Index >microsoft.public.xsl Archive Home >Recent entries [Thread Prev] >Thread Next - Re: Does name exist Does name existTo: NULL Date: 8/5/2009 11:18:00 AM
How would you test if something exists?
If you have:
<FORM>
<FIELDS>
<HEADER>Subject Photo Page</HEADER>
<TITLE1>This is Title1</TITLE1>
<TITLE3>This is Title3</TITLE3>
</FIELDS>
<FORMPHOTOS>
<PHOTO NUM="1">
<FILENAME>09May001.jpg</FILENAME>
<FILETYPE>JPEG</FILETYPE>
</PHOTO>
<PHOTO NUM="2">
<FILENAME>09005.jpg</FILENAME>
<FILETYPE>JPEG</FILETYPE>
</PHOTO>
<PHOTO NUM="3">
<FILENAME>09002.jpg</FILENAME>
<FILETYPE>JPEG</FILETYPE>
</PHOTO>
</FORMPHOTOS>
</FORM>
And I want to test if a name exists:
Something like:
<xsl:template match="FORMPHOTOS/PHOTO">
<xsl:choose>
<xsl:when test=". != ''">
<attachment>
<source>
<xsl:choose>
<xsl:when test="name() = concat('TITLE',current()/@NUM) exists">
<--------
<xsl:value-of select="../../FIELDS/*[name() =
concat('TITLE',current()/@NUM)]"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="../../FIELDS/HEADER"/>
</xsl:otherwise>
</xsl:choose>
</source>
</attachment>
</xsl:when>
</xsl:choose>
</xsl:template>
What I want to happen here is that for the nodes that have NUM = 1 or 3 to
use TITLE1 and TITLE3 (since they exist), otherwise use HEADER.
Thanks,
Tom
| ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
