I'm trying to process an XML schema and produce some documentation.
I'm trying to trap the various ways min/max occurs can be specified
and give the typical option/required/repeating translation.
min/maxOccurs are not required values and they default to 1 when not
specified. I'm having troubles detecting this situation.
Here is what I've been trying, but it isn't working unless values are
specified:
<xsl:choose>
<xsl:when test="@minOccurs=0 and @maxOccurs=''"> optional
</xsl:when>
<xsl:when test="@minOccurs=nil and @maxOccurs=nil"> required
</xsl:when>
<xsl:when test="@minOccurs=1 and @maxOccurs=1"> required
</xsl:when>
<xsl:when test="@minOccurs=1 and @maxOccurs='unbounded'">
required repeating
</xsl:when>
<xsl:when test="@minOccurs='' and @maxOccurs='unbounded'">
required repeating
</xsl:when>
<xsl:otherwise> min:<xsl:value-of select="@minOccurs"/>
max:<xsl:value-of select="@maxOccurs"/>
</xsl:otherwise>
</xsl:choose>
..dan
---------------------------------------------------------------------------
Danny Vint
Panoramic Photography
http://www.dvint.com
voice: 502-749-6179
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--