Мне было интересно, можно ли установить переменную в XSLT из другого файла XSLT?Определение переменной, которая была установлена в другом xslt
Позвольте мне пояснить себя некоторым кодом.
По умолчанию У меня есть следующий файл (default.xsl):
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
exclude-result-prefixes="msxsl dom arr xsd i"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays"
xmlns:dom="http://www.test.nl/dom/">
<xsl:output method="xml" indent="no" omit-xml-declaration="yes" />
<!--Textbox-->
<xsl:template match="dom:TextBox">
<xsl:variable name="placeHolderText">placeholder tekst</xsl:variable>
<xsl:element name="textarea">
<xsl:attribute name="placeholder">
<xsl:value-of select="$placeHolderText"/>
</xsl:attribute>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
В некоторых случаях я хочу отменить текущую реализацию по умолчанию, и там я создаю файл расширения: extension.xsl :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dom="http://www.test.nl/dom/" exclude-result-prefixes="dom">
<xsl:import href="default.xsl"/>
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />
<xsl:template match="dom:TextBox">
<xsl:variable name='placeHolderText'>unknown</xsl:variable>
</xsl:template>
</xsl:stylesheet>
в этом расширение файла Я хочу, чтобы установить placeHolderText
. Мне было интересно, возможно ли это? Поскольку файл расширения всегда будет загружен после того, как по умолчанию уже обработана. Спасибо за ваш отзыв.
Скажите, пожалуйста, какая версия XSLT! –