我不知道你将如何做,在1.0,但如果有任何机会,你可以用2.0的,它很容易:
XML输入
<person>
<dob>1980-05-22</dob>
<FirstName_TEXT>Pac</FirstName_TEXT>
</person>
XSLT 2.0
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="xs" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/person">
<xsl:variable name="age" select="floor(days-from-duration(current-date() - xs:date(dob)) div 365)"/>
<xsl:if test="$age > 18">
<first_nam>
<xsl:value-of select="FirstName_TEXT"/>
</first_nam>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
结果
<first_nam>Pac</first_nam>
@Vinit - “>”在大多数处理器中应该没问题。 “<”应该总是被转义。 – 2013-02-15 16:48:35
'>'在XML属性值和元素内容中没有问题,它的'<'和'&'不是。 – 2013-02-15 16:49:22
哎呀...知道了...谢谢 – Vinit 2013-02-15 16:50:29