Я использую саксонскую библиотеку для применения некоторых преобразований XSLT 2.0.Как объявить переменную длительности в XSLT 2.0?
Я пытаюсь добавить код, который будет печатать все даты между двумя заданными датами.
С этой целью я пытаюсь понять, как работать с переменными продолжительности. В частности, я хочу взять первое свидание, добавить к нему один день, распечатать его, а затем повторить до тех пор, пока первая дата не будет увеличена до второй даты.
Я написал следующее в моей 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: таблица стилей/XSL: шаблон [2]/XSL : переменная [1] XPST0081 Ошибка синтаксиса XPath при char 0 в строке -1 в {xs: dayTimeDuration ("P1D"} : Префикс пространства необъявленных имен {xs} Предупреждение: at/xsl: stylesheet/xsl: template [2]/xsl: variable [1] SXWN9001: переменная без следующего собора i nstructions не действует
Я думаю, что, вероятно, я использую неправильный синтаксис, и я полностью смущен документацией. Я не могу найти пример того, как это делается правильно. Пожалуйста, дайте мне знать, как заставить его работать.
Еще один момент: тот факт, что ошибки расположены с использованием путей, а не номеров строк, указывает на то, что вы поставляете таблицу стилей как дерево, а не как файл: есть ли какая-то конкретная причина, по которой вы это делаете? Номера строк упрощают идентификацию и исправление ошибки. –
Таблица стилей исходит из строковой переменной, которая в конечном итоге считывается из базы данных SQL. –