У меня есть два XSL файлы: "one.xsl" и "two.xsl"Как использовать функцию из одного в другой XSL
one.xsl:
<xsl:function name="x:trans" as="xs:string">
<xsl:param name="str"></xsl:param>
<xsl:variable name="res1" select="x:translate_string($str)"/>
<xsl:sequence select="$res1"/>
</xsl:function>
</xsl:stylesheet>
Я хочу использовать функция «x: trans» в «one.xsl»
Как ссылаться на функцию на другой файл?
Проблема заключается в том, что, когда я пытаюсь вызвать для этой функции так:
< xsl:value-of select="x:trans('Hello World')"/>
Я получаю следующее сообщение об ошибке с помощью браузера:
Ссылки на необъявленный префикс пространства имен: «х '
Если вы импортировали или включили «one.xsl», вам также необходимо объявить пространство имен «x» в «two.xsl», если вы хотите его использовать. –
Кроме того, вы отмечаете, что сообщение из функций * browser * ... custom ** является функцией XSLT 2.0 **. В настоящее время браузеры не поддерживают XSLT 2.0. Если вы хотите, чтобы браузеры выполняли XSLT, вам понадобится решение * XSLT 1.0 *. –
Хороший вопрос (+1). См. Мой ответ для полного, пошагового объяснения, как вызвать функцию «xsl: function». –