私は平日のテキストファイルを解析しようとすると、過去にXSLT 2.0を扱ってきました。 明らかに、私は実際に働く場所に到達することさえできませんでした。現時点では、xslはsaxonb-xsltプロセッサーに正しくロードするために何かをする必要はありません。XSLT 2.0で奇妙なエラーが発生しました[SXXP0003]
XSL:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fn="http://www.w3.org/2005/02/xpath-functions" version="2.0">
<xsl:output method="xml" indent="yes"/>
<xsl:template match='/'>
<add_adverts>
<Body>
<Envelope>
<Advert>
<xsl:for-each select="tokenize(unparsed-text('A2.blm'), '\r?\n')">
<fff>?</fff>
</xsl:for-each>
</Advert>
</Envelope>
</Body>
</add_adverts>
</xsl:template>
</xsl:stylesheet>
私はそれを実行する方法:
saxonb-xslt -s:A2.blm -xsl:eraxsl.xsl -o:test.xml
BLMファイルはプレーンテキストファイル、最初の行である:#ヘッダー#最後の行は#エンド#であり私が最後まで解析したい#DATA#という名前の行。 各レコードは^で区切られています。
おかげで、
テキストファイルをコマンドラインの入力ソースとして渡していますか? –
問題を簡単に再現できる最小限の完全なサンプルを提供することを検討しますか?それはSaxonのどのバージョンですか? –
完全な解決策は私の答えを見てください。問題は、相対URIを正常に解決できないことです。ファイルはXSLTスタイルシートと同じディレクトリになければなりません。または、絶対URIを指定する必要があります。 –