Я новичок в XSLT. Я пытаюсь создать текстовый файл из XSLT. Когда я запускаю XSLT против входного XML с помощью анализатора XALAN, текстовый файл генерируется без вывода.Выход XSLT не отображается
Это XSLT
<xsl:stylesheet version="2.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="text" />
<xsl:template match="/">
<xsl:variable name="cities" as="xs:string*">
<xsl:sequence select="addressbook/address/city" />
<xsl:sequence select="'Virginia'" />
</xsl:variable>
<xsl:text>These are some of the cities:

</xsl:text>
<xsl:value-of select="$cities" separator="
" />
</xsl:template>
Это XML
<?xml version="1.0" ?>
<addressbook>
<address>
<name>Peter Thompson</name>
<stree>3456 South Blvd.</stree>
<city>Chicago</city>
<state>IL</state>
<zip-code>34678</zip-code>
</address>
<address>
<name>Jason Thompson</name>
<stree>3456 Fort Main</stree>
<city>South Carolina</city>
<state>NC</state>
<zip-code>67878</zip-code>
</address>
Я пытаюсь собрать его таким образом:
java -classpath ~/Downloads/xalan/xalan.jar org.apache.xalan.xslt.Process -in cities.xml -xsl cities.xsl -out citiesop.txt
Файл cities.txt
генерируется только с выходом:
Вот некоторые из городов.
Пожалуйста, помогите мне разобраться, что здесь не так.
Или просто измените тег версии на 1.0 и пространство имен соответственно. Я не вижу никакой инструкции, связанной с xslt2. –
@ AydinK.'xsl: sequence' и 'xsl: значение-of @ separator' и' xsl: variable @ as' – wero
Это не похоже на правильное поведение, совместимое с forwards. Когда процессор 1.0 с таблицей стилей 2.0 видит неизвестный атрибут (например, @as), он должен игнорировать его, но когда он пытается выполнить неизвестный элемент (например, xsl: sequence), он должен выдать ошибку. Хорошо, я думаю, это не будет исправлено. –