I have the following elemnt content:
<issdate year="2012" month="06" day="15"/>
When I process it with the following templates I get this result:
<issueDate year="2012" month="6" day="15"/>
I'm trying to understand is why the leading 0 on the month was stripped.
The schema has this definition:
<xs:element name="issdate" type="issdateType"/>
<xs:complexType name="issdateType">
<xs:attributeGroup ref="DATE"/>
</xs:complexType>
<xs:attributeGroup name="DATE">
<xs:attribute ref="year" use="required"/>
<xs:attribute ref="month" use="required"/>
<xs:attribute ref="day" use="required"/>
</xs:attributeGroup>
<xs:attribute name="year" type="YEAR"/>
<xs:simpleType name="YEAR">
<xs:restriction base="xs:gYear">
<xs:pattern value="\d{4}"/>
</xs:restriction>
</xs:simpleType>
<xs:attribute name="month" type="MONTH"/>
<xs:simpleType name="MONTH">
<xs:restriction base="xs:positiveInteger">
<xs:maxInclusive value="12"/>
<xs:pattern value="\d{2}"/>
</xs:restriction>
</xs:simpleType>
<xs:attribute name="day" type="DAY"/>
<xs:simpleType name="DAY">
<xs:restriction base="xs:positiveInteger">
<xs:maxInclusive value="31"/>
<xs:pattern value="\d{2}"/>
</xs:restriction>
</xs:simpleType>
This is processed with a template that has this:
<xsl:template mathc="issdate">
<!-- code to map old names to new names and set $newName removed, in this
case
issdate is mapped to issueDate
-->
<xsl:element name="{$newName}">
<xsl:call-template name="processAttributes"/>
<xsl:apply-templates/>
</xsl:element>
</xsl:template>
<xsl:template name="prosessAttributes">
<xsl:for-each select="@*">
<!-- code to rename attributes removed -->
<xsl:attribute name="{name()}" select="."/>
</xsl:for-each>
</xsl:template>
So basically my code is renaming the element and then just copying the
attribute values through for this particular element. Why am I loosing the
leading 0? I'd really like to avoid having to know what the content might
be in all casses for attributes.
..dan
--~------------------------------------------------------------------
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>
--~--