удалось заставить мой xsl работать на http://www.xmlper.com/ (отличный инструмент, хорошая рекомендация из других комментариев stackoverflow).
но когда я запускаю тот же (и теперь сильно урезанный) xml & xsl наВ моей командной строке Mac OS X появляется сообщение «Ошибка компиляции, документ не является таблицей стилей»
Это проблема с версией (вывод xsltproc ниже)?я использую последнюю версию Mac (10.7) и последнюю версию xcode 4.2 (для обеспечения xml lib и т. д.)?я не смог найти ничего о том, что xsltproc не поддерживает xslt v2.0 (я пытался установить v1.0 - без разницы) Я попытался загрузить другие процессоры xslt (например, saxon), но попал в старые версии Java и не смогзапустите программу.
надеюсь, кто-то сталкивался с этим и решил это!спасибо
Бен
Входной XML-файл
<?xml version="1.0" encoding="utf-8"?>
<resultsfile>
<planset>
<voicemail_divert>
<cost_over_plan>0</cost_over_plan>
<this_txn_absolutely_cost_subtotal>0</this_txn_absolutely_cost_subtotal>
</voicemail_divert>
</planset>
</resultsfile>
xsl
<?xml version="1.0"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="xml"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="cost_over_plan">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
<extracost_overplan_aspartoftotal>0</extracost_overplan_aspartoftotal>
<extraqty_overplan_aspartoftotal>0</extraqty_overplan_aspartoftotal>
</xsl:template>
</xsl:stylesheet>
ошибка
$ xsltproc --debug --novalid --nonet f.xml add_extraqtyandcostfields.xsl
compilation error: file f.xml line 2 element resultsfile
xsltParseStylesheetProcess : document is not a stylesheet
информация о версии
$ xsltproc -version
Using libxml 20703, libxslt 10124 and libexslt 813
xsltproc was compiled against libxml 20703, libxslt 10124 and libexslt 813
libxslt 10124 was compiled against libxml 20703
libexslt 813 was compiled against libxml 20703