xsl-list
[Top] [All Lists]

RE: how do you determine if a property exists?

2004-04-15 12:04:19
At 11:49 AM 4/15/2004, 'twas written:
<xsl:template match="/info">
<results>
  <xsl:for-each select='mytag'>
    <xsl:element name='myelement'>
      <xsl:choose>
        <xsl:when test='@duration != ""'>
          <xsl:copy-of select='@duration'/>
        </xsl:when>
        <xsl:otherwise>
          <xsl:attribute name='duration'>1</xsl:attribute>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:element>
  </xsl:for-each>
</results>
</xsl:template>

Or:

<xsl:template match="/info">
  <results>
    <xsl:for-each select='mytag'>
      <myelement duration='1'>
        <xsl:copy-of select='@duration[normalize-space()]'/>
      </myelement>
    </xsl:for-each>
  </results>
</xsl:template>

Take your pick: clarity vs. succinctness.

Cheers,
Wendell



======================================================================
Wendell Piez                            
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================