XSLT 2.0 変換を適用するために Saxon ライブラリを使用しています。
指定された 2 つの日付の間のすべての日付を出力するコードを追加しようとしています。
そのために、期間変数を操作する方法を見つけようとしています。具体的には、最初の日付を取得し、それに 1 日を追加して印刷し、最初の日付が 2 番目の日付まで増加するまで繰り返します。
XSLT に次のように記述しました。
<xsl:template name="get_rundatesNode">
<xsl:param name="startDate" />
<xsl:param name="endDate" />
<xsl:variable name="oneDay" select='xs:dayTimeDuration("P1D")' />
</xsl:template>
Saxon から次のエラーが表示されます。
/xsl:stylesheet/xsl:template[2]/xsl:variable[1] でのエラー XPST0081 {xs:dayTimeDuration("P1D"} の行 -1 の char 0 での XPath 構文エラー: 宣言されていない名前空間プレフィックス {xs} 警告: /xsl:stylesheet/xsl:template[2]/xsl:variable[1] SXWN9001: 兄弟命令が続く変数は効果がありません
おそらく間違った構文を使用していると思います。ドキュメントに完全に混乱しています。これが正しく行われている例が見つかりません。それを機能させる方法を教えてください。