次のような 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>
私がやりたいことは、イベントがないときにのみ表示される 2 つのテンプレートを用意することです。XSLT<xsl:choose>
と<xsl:when>
テストを使用して要素のカウントを行い、手続き型言語で行うように適切なテンプレートを呼び出すことができることはわかっていますが、テンプレート処理でこれを行う方法を学ぼうとしています。
私が得ているエラーは次 のとおりです。