This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: breaking up <tags> is hard to do
- To: "'xsl-list at mulberrytech dot com'" <xsl-list at mulberrytech dot com>
- Subject: RE: breaking up <tags> is hard to do
- From: Mike Brown <mbrown at corp dot webb dot net>
- Date: Tue, 22 Feb 2000 15:08:10 -0700
- Cc: "'ssullivan at excelergy dot com'" <ssullivan at excelergy dot com>
- Reply-To: xsl-list at mulberrytech dot com
> I'm trying to set an opening tag attribute based on the value
> of my input; simple enough except that my closing tag needs
> to be outside of my select template.
Nope, it needs to be inside the template :)
Usually this question is asked in regards to constructing HTML tables, when
one wants to end a row with </tr> and start a new one with <tr> after having
generated some number of <td>...</td> cells in between.
Stop thinking about tags and start thinking about nodes.
The answer in your case is easy. Try this:
<xsl:template match="/">
<Transaction>
<EnrollmentRequest>
<xsl:attribute name="servicetype">
<xsl:choose>
<xsl:when test="Transaction/LIN/LIN03='EL'">ELECTRIC</xsl:when>
<xsl:otherwise>GAS</xsl:otherwise>
</xsl:choose>
</xsl:attribute>
<!-- ... other stuff ... -->
</EnrollmentRequest>
</Transaction>
</xsl:template>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list