問題タブ [exslt]
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.
xml - EXSLT と xsltproc でエラーが発生する
少なくとも、EXSLT の正規表現を使用するまでは、魅力的に機能する XSL ファイルがあります。
そしてこれを使用しました:
私のXSLのどこかに。これにより、次のエラーが発生します。
ここで何が間違っているのか、私は指示に厳密に従いました
ありがとう、
xml - exslt:evaluate() をサポートする xslt 2 プロセッサ
XSLT 2 スタイルシートで
文字列変数に含まれる 0、1、または (, ) トークンのみを持つ単純なブール式の場合。
式の最終値を取得する方法より。とともに、tokenize()、replace() 関数も使用する必要があります。
Ubuntu でも exslt:evaluate() をサポートする xslt 2 プロセッサはありますか? Saxon、Xalan、xsltproc 試してみましたが、Xalan、xsltproc は tokenize() と replace() をサポートしていません。evaluate() についてもわかりません。
ここで myfun:getexpr() は単純なブール式を返します。
またはここで、このブール式の最終値に対する他のアプローチ。
xml - Saxon-HE で EXSLT サポートを取得するにはどうすればよいですか?
いくつかの XML ファイルに対して処理する必要がある XSLT ファイルがたくさんあります。XSLT ファイルはサード パーティから提供されているため、変更できません。XSLT はバージョン 2.0 です。
私は Mac OS X 10.6 を使用していますが、利用可能な XSLT 2.0 プロセッサはSaxon-HEだけのようです。
ほとんどの XSLT は正常に動作しますが、欠落している関数、特にmonth-in-year()
日付/時刻関連の関数に関するエラーが発生するものもあります。
EXSLT に関するhttp://www.saxonica.com/documentation/extensions/exslt.xmlによると :
これらの拡張機能は、Saxon-PE および Saxon-EE で「すぐに」利用できます。Saxon-HE では使用できません。
EXSLT 関数を Saxon-HE で使用できる方法はありますか?
それがうまくいくなら、喜んで別のツール/プロセッサに移行します。
xml - ソースをダウンロードせずにEXSLTを使用するにはどうすればよいですか?
XSLTSLは、ソースをダウンロードせずにEXSLTを使用できると主張しているようです。
ライブラリのWebサイトから直接、メインのスタイルシートまたは使用するスタイルシートモジュールのいずれかをインポートまたはインクルードします。http://xsltsl.sourceforge.net/modules/。modulesディレクトリには、常に最新の安定したリリースが含まれています。
私はこれを試しました:
しかし、それは機能していません。ソースをダウンロードせずにEXSLTを使用できないようです。
ソースをダウンロードせずにEXSLTを使用する方法はありますか?
xml - xsltは、`内のブール値を持つパラメーターを割り当てることができません`
このコードはtest
、期待される出力が何もないはずのときに出力を提供します。
XSLTプロセッサに何か問題がありますか..?:
ところで、私は生のXSLT 1.0のソリューションが必要です(拡張機能などはありません)。
param
XSLT 1.0でaのブールパラメータを設定することは可能ですか?
xml - xslt コードで繰り返されるロジックを繰り返さないようにするにはどうすればよいですか?
このコードを書くためのより良い方法は何ですか:
きれいですが、もっときれいにできると思います。今、私はこのロジックを繰り返しているとしましょう:
だから基本的に誰かが何か解決策を持っていますか?
私は実際に自分で試してみました @ xslt `select="$position + $jump"` を実行しても問題ありませんか? しかし、その方法(または私が呼ぶようにハック)は機能していません..だから私は現在解決策がなく、誰かが助けてくれるかどうか疑問に思っていました.
基本的に私は次のように考えていました:
または、まったく異なる、またはエキゾチックなものかもしれません。(ここでは拡張なしの XSLT 1.0)
xslt - XSLT名前空間宣言のexclude-result-prefixesとextension-element-prefixの違いは何ですか?
exclude-result-prefixes
との違いは何extension-element-prefix
ですか?どちらもXSLTのヘッダーで使用されます。extension-element-prefix
EXSLTとEXSLTのWebサイトextension-element-prefix
を使用しているときに、「拡張名前空間が結果ツリーに出力されないようにする」ために使用されて いることがわかりました。
しかし、これは真実ではありません(libxsltを使用)。exclude-result-prefixes
拡張名前空間のみを削除します。だからなぜ私は必要ですextension-element-prefix
か?
サンプル:
libxslt(xsltproc)を使用した出力:
xslt - Find the position of an element within its parent with XSLT / XPath
Apart from rewriting a lot of XSLT code (which I'm not going to do), is there a way to find the position of an element within its parent, when the context is arbitrarily set to something else? Here's an example:
NOTE: This is a simplified example. I have several constraints keeping me from implementing obvious solutions, such as passing new parameters to SomeTemplate
, etc. I can really only modify the internals of SomeTemplate
.
NOTE: I'm using Xalan 2.7.1 with EXSLT. So those tricks are available
Any ideas?
xslt - 同じノードを処理する複数のXSLT1.0パスを組み合わせるための最良のアプローチ
非常に複雑なXSLT1.0変換を行っています(現在、8つのXSLTパスを使用しています)。この8つのパスを1つのファイルにマージせずに結合したいと思います(これは複雑すぎます)。私の解決策は、パスを使用xsl:include
しexsl:node-set
てパスをマージし、一時的な結果を変数に格納することです。
しかし、私には1つの問題があります。私の変換パスは、ほとんどのノードをコピーし、特定の側面のみを変更します。したがって、すべてのパスで同じノードを処理する必要がありますが、異なる xsl:template
ノードを使用します。しかし、どうすればそれを行うことができますか?最初のパスの後で、他のXSLTスタイルシートのテンプレートを適用したいことをどのように伝えますか?
私が現在行っていることの非常に単純化された例(2つのXSLTパス):
ソース:
XSLTパス1の後:
XSLTパス2の後:
私の現在のアプローチは、XSLTプロセッサを2回呼び出し、結果を一時的にディスクに保存することです。
regex - libxsltで動作するEXSLTから正規表現を取得するには?
Regexp
libxslt で作業した人はいますか? はい、いつ、どのように?
http://www.exslt.org/regexp/index.html
xsltproc --dumpextensions
最新のlibxsltでコマンドを使用すると、正規表現のサポートが得られません:-(