問題タブ [xsl-choose]

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.

0 投票する
1 に答える
44 参照

html - XSL Choose シチュエーションでデータが正しくプルされない

選択ボックスにデータを入力するために XSL を選択しようとしています。これが機能すると、ボックスにさらにオプションが表示されます。最初にこれを機能させる必要があります。適切にロードされていますが、e:name がプルされていないため、オプション ボックスはレンダリングされていますが、オプションがなく空白です。

ここに私のXSLがあります

ここに私のXMLがあります

0 投票する
2 に答える
205 参照

xslt - xsl:choose から返されたノードを並べ替える

xsl:choose (XSLT 1.0) を使用して選択されたノードのグループを並べ替える効率的な方法は何でしょうか。

以下はサンプル ソース XML です。

XSL スニペット:

上記の XSL テンプレートは、次のようにメイン テンプレートから呼び出されます。

出力 XML: の順序は<GalaxyType>変更できないことに注意してください。

XMLノードを返すため、一致が見つかった場合、出力XMLに表示するxsl:choose順序を制御する簡単な方法を見つけることができません。GalaxyType

同様の要件に該当する可能性がある将来追加される可能性のある要素の並べ替えを実行するための汎用テンプレートを作成するにはどうすればよいですか。この XSL 内に再マッピング テンプレートを使用することには問題ありませんが、本当にエレガントで効率的な方法でこれを実現する方法がよくわかりません。

0 投票する
1 に答える
932 参照

xml - XSLT1.0 は、XML 内の不明な要素を見つけて別の場所に配置します

見出しが正しいかどうかはわかりません。次のような XML ファイルがあります。

XMLファイル

特定の基準に合うようにファイルをフォーマットします。タグ ae はすべて既知であり、求められています。しかし、標準と一致しない他のものもそこにある可能性があります。(つまり、基本、ランダムなど)。私は次のように書いた

XSLスクリプト

それは私が達成したいことをほとんど行います。問題は、標準以外に何かがあるかどうかわからないことです。基本的、ランダム、または上記のようなものが何もない場合、 < undefinded > タグはまったくないはずです。出力は

出力

しかし、私はこれを達成したい:

望ましい出力

私はそれを考えすぎたと思うので、簡単な解決策に少し夢中になったので、完全に異なるすべての試みも高く評価されています。xsl:choose メソッドのより良い解決策もクールです。そのスタイルは私をゾッとさせます...重要な部分は、標準に一致しないものをすべて除外し、別の場所に置きたいということです。しかし、標準以外に何もない場合は、ae を変更する以外は何も起こらないはずです。xsl:choose で変数を連結し、変数全体が空でない場合にのみ出力を作成することを考えましたが、XSL1 ではそれは不可能のようでした。 .0

問題を適切に説明したことを願っています。よろしくお願いします!

レイネケ

0 投票する
2 に答える
1729 参照

xslt - xslt は、単一のテストに応じてスコープ内に複数の変数を保持します

多くの変数があり、2 つのケースしかありません。私の元のアプローチは範囲外です:

すなわち。その後、サクソンと共に、XPST0008: Variable x has not been declared (or its declaration is not in scope)

タグ内で選択すればうまくいくと思いますxsl:variableが、テストは何度も何度も繰り返されます。

変数をスコープ内に保持する方法はありますが、自分自身を繰り返さないでください。


更新 1

リクエストに応じて完全な「sscce」ファイルを追加

元のアプローチ:

機能するが、自分自身を繰り返すことを余儀なくされるアプローチ:

xml ファイルの例: <xml/>. saxon コマンドラインの例:java -jar saxon9he.jar -s:in.xml -xsl:in.xsl -o:out.html

0 投票する
3 に答える
943 参照

xml - XSL:Choose 中の XSLT XPATH フィルター式

次の XML があり、UnitOfMeasure に値があるかどうかで条件付きでフィルター処理する必要があります。ID = 'AcceptanceCriterionValue1' である最初の UnitOfMeasure に 0 より大きい長さの文字列が含まれている場合、その値を選択する必要があります。それ以外の場合は、ID = 'AcceptanceCriterionValue2' である UnitOfMeasure ノード値を選択する必要があります。つまり、pH1 が存在する場合は、それをつかみます。それ以外の場合は pH2 を取得します。

`

`
そして、次のロジックを実行する必要があります。最初の xsl:when ステートメントは、pH1 が存在する場合に成功しますが、空の場合は xsl:otherwise が起動しますが、何らかの理由で pH2 を返しません。

`

`

0 投票する
3 に答える
502 参照

xslt - XSLT 条件ステートメントのオプション

XSLT の可能性についてもっと学ぶために、別のアプローチを使用してこの条件付きコードを記述するより良い方法があるかどうか疑問に思っています。

最初のインスタンスで href を検索するだけで、href 入力が存在する場合は、リンク付きの関連付けられた画像が表示され、alt タグの出力が表示されます。href 入力が存在しない場合、画像自体だけが + alt タグ出力として表示されます。

見た目も感じも少し不格好ですが、特定の目的には問題なく機能します。

そのため、結果を達成するためのよりクリーンでスマートな方法があるかどうかを知りたいと思っています。

アドバイスをいただければ幸いです。

ありがとう、オズモ

とにかく、これが私のマスターピースです...

ここで要求されているのは、XML を削除したものです...