問題タブ [saxon]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Saxon XSLT プロセッサから更新された Java オブジェクトにアクセスできません
私はオープン ソース バージョンの Saxon XSLT プロセッサ「Saxonica の Saxon 9.0.0.2J」を使用しており、初めて Java 拡張機能を利用しようとしています。オープン ソース バージョンの制限である可能性があると思われる問題が発生していますが、ここで不足しているものがあるかどうかを最初に確認したいと考えていました。
以下のスニペットから、$c1 の最終的な値は、greg:setTime() の呼び出しの結果として変化しないという結果が得られました。つまり、Saxon 内の $c1 変数は、基礎となる Java オブジェクトからフックされていないように見えます。 setTime() 呼び出しによって更新されたオブジェクトにアクセスする明らかな方法はありません。
スニペット内のすべてのコードがテストされ、それ以外の場合は機能することに注意してください。つまり、$c1 は getInstance() 呼び出しによって適切にインスタンス化され、$startdate は適切な形式であり、$d1 は適切にインスタンス化されます。
考え?
xslt - XSLT: XML ファイル ツリーの変換
次のファイル構造があります (ネストされたフォルダー内の XML ファイル 'index.xml'):
ここで、この XML ファイルをそれぞれ、特定の XSL スタイルシートで変換する必要があります。結果は同じフォルダー構造になるはずです(上書きしても問題ありません)。これを達成するためのあなたのアプローチは何ですか?
私のシステム: OS X 10.6、Saxon XSLT プロセッサ
xslt-2.0 - XSLのパフォーマンスの向上
以下のXSL2.0コードを使用して、入力として指定したインデックスのリストを含むテキストノードのIDを検索しています。コードは完全に機能しますが、パフォーマンスの観点から、巨大なファイルには長い時間がかかります。巨大なファイルの場合でも、インデックス値が小さければ、結果は数ミリ秒で速くなります。XSLを実行するためにsaxon9heJavaプロセッサを使用しています。
上記のソリューションでは、インデックス値が大きすぎる場合、たとえば270962の場合、XSLの実行にかかる時間は83427msです。巨大なファイルでは、インデックス値が巨大な場合、たとえば4605415、4605431は、実行に数分かかります。変数「insert-data」はグローバル変数であり、一度だけ計算されますが、計算には時間がかかるようです。XSLを追加する必要がありますか、それともプロセッサを追加する必要がありますか?XSLのパフォーマンスを改善するにはどうすればよいですか。
xslt - 可変数のソース ファイルを使用する XSLT ワークフロー
国に基づいた固定の名前付けスキーマを持つ XML ファイルがたくさんあります: report_en.xml、report_de.xml、など。XPath 関数を介してこれらの各ファイルを読み取り、いくつかの値を抽出して 1 つの XML ファイルを生成report_fr.xmlする XSLT スタイル シートを作成したいと考えています。document()要約付き。私の質問は次のとおりです。処理するファイルの正確な名前を知らなくても、ソース ファイルを反復処理するにはどうすればよいですか?
現時点では、すべてのファイル名を保持する補助 XML ファイルを生成し、スタイルシートで補助 XML ファイルを使用して反復することを計画しています。ファイル リストは、小さな PHP または bash スクリプトで生成されます。より良い代替手段はありますか?
私はXProcを認識していますが、現時点ではそれに多くの時間を投資することはできません。誰かが XProc ソリューションを投稿できるかもしれません。ソリューションには、レポートを HTML としてダウンロードして整理するワークフロー ステップが含まれていることが望ましいです :)
XSLT プロセッサとして Saxon を使用するので、使用できる Saxon 固有の拡張機能があれば、それも問題ありません。
xslt-2.0 - Saxon が結果ドキュメントの URI を同じであると評価するのはなぜですか?
私のXSLソースドキュメントは次のようになります
マシンごとに 1 つの結果ドキュメントを作成したいので、パラメータとして結果ドキュメントのパスとして modelDir を指定する次のスタイルシートを使用します。
私のメッセージが示すように、これはうまくいくようです - saxon が結果ドキュメントの URI を同じであると評価しない場合、次の出力が得られます。
これを解決する方法についてのアイデアはありますか?
xslt - XSLT 1.1 ノードセット
私はこれを持っています...
そして、XSLT 1.1 では $data 変数がノードセットとして扱われるため、for-each などの標準的な XSLT が機能するはずだと考えました。
エラーは発生しませんが、出力はありません。$data ノードセットが完全に空であるかのようです。
私もこれを試しました
同じ結果で。(実際、私は以前にこれを問題なく実行しました) 私は Saxon を使用しています。
私は何が欠けていますか?(ちなみに、私は XSLT 2.0 を使用する立場にありません)
ありがとう
java - saxon 9.2heを使用してJavaでxqueryコンテキストドキュメントを設定する方法は?
このような単純な this xquery を実行するにはどうすればよいですか
fn:doc を使用せずに Java を使用して xml ファイルに?
XPDY0002: The context item for axis step child::element(xml, xs:anyType) is undefined を取得し続けます
-- 概要: xml ファイルをロードし、xquery をロードして処理するための簡単なソリューションが必要です。
java - SAXONのようなXALANレジスタ拡張関数
XALANを使ってXSLTでXMLを変換したい。拡張機能を使用したいのですが、この機能は SAXON のように Java ソースに追加する必要があります。
方法:
FooExtension:
しかし、XALAN (?FunctionTable?, ?FunctionResolver?, ?URIResolver?) でどのように機能するのか、ソースで行う必要があり、XSLT でクラスを追加することは許可されていません。
ありがとう!!
java - Saxon 9.2 / Java / XSLT: setParameters() を使用してトランスフォーマーのパラメーターを設定する
次の XSLT 2.0 テンプレートがあります。
currentTotal次のように、トランスフォーマーにパラメーターとしてプログラムで提供するのに苦労しています。
..しかし、肯定的な結果はありません:
/xsl:transform/xsl:template[3]/xsl:variable[1] でのエラー XPST0008: {$currentTotal} の行 -1 の char 13 での XPath 構文エラー: 変数 $currentTotal が宣言されていません
を呼び出すsetParameter()と、currentTotal変数も定義されますよね?アプリケーションで定義された がスタイルシート内に表示されるsetParameter()ようにするには、どのように呼び出しを呼び出す必要がありますか?currentTotal
明確にするために、次のようにトランスフォーマーをインスタンス化しています。
xml - サブツリーをソートしてxsl:variableに格納する
XSLスタイルシートを使用しており、ここに示すメソッドを使用して、並べ替えられたサブツリーを変数として格納しようとしています。XMLファイルを変換するためにxml-maven-pluginに対してsaxon8.7を使用しています。これが私が持っているコードです:
スタイルシートを実行すると、次のエラーが発生します。
ソートせずにサブツリーを変数に設定しただけでは機能しますが、ソートされていません。
copy-ofステートメントのselectを「。」に設定すると、そのポイントを超えますが、後で実際に変数データを使用しようとするとエラーが発生します。使用方法は次のとおりです。
そしてエラー:
関数:
exsl:node-setを間違って使用していますか?そして、コピーオブの選択に何を含めるべきか、「。」または「。|@*」?