【发布时间】:2011-09-06 19:26:48
【问题描述】:
我的 XML 结构如下:
<Root>
<!-- ...other stuff -->
<Events>
<Event date="0000-00-00">Event Description etc...</Event>
<Event date="0000-00-00">Event Description etc...</Event>
<Event date="0000-00-00">Event Description etc...</Event>
</Events>
<!-- ...other stuff -->
</Root>
然后我在样式表中有 XSLT,如下所示:
<xsl:variable name="Events" select="/Root/Events/Event" />
<xsl:template match="/">
<!-- Stuff -->
<xsl:apply-templates select="$Events" />
<!-- Stuff -->
</xsl:template>
<xsl:template match="Event">
<!-- Regular Event Template Transformation here -->
</xsl:template>
<!-- ERROR HAPPENS HERE -->
<xsl:template match="not(node())">
<p class="message">There are currently no upcoming events</p>
</xsl:template>
我想做的是有两个模板,一个只在没有事件时显示。我知道我可以将 XSLT 与 <xsl:choose> 和 <xsl:when> 测试一起使用来计算元素并像在过程语言中那样调用正确的模板,但我正在尝试学习如何通过模板处理来做到这一点。
我得到的错误是: 表达式的预期结尾,发现'('。不是-->(
【问题讨论】:
标签: xml xslt xsl-stylesheet