問題タブ [xslkey]
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.
xslt - muenchianグループ化
この述語([1])は、muenchianグループで常に1としてハードコーディングされているのだろうかと思っていました。多くの調査を行った後、その概念は私には明確ではありませんでした。現在のノードとして説明され、キーによって返される最初のグループと比較されます。キーが一致する最初のキーと常に比較されるのはなぜですか?また、なぜもう一度1を与えるのかcontact[count(. | key('contacts-by-surname', surname)[1]) = 1], the =1 part?
はハードコーディングされています。以下のリンクを参照しました
xslt - xslt 1.0、キーでノードのグループを選択
いくつかの変数に基づいてノードを選択したいと思います。XMLコード:
欲しいXML
したがって、私の考えは、ノードをxsl:key要素でグループ化し、次にfor-eachを実行することでした。例えば:
しかし、出力は私が期待したものではなく、私が間違っていることを見ることができません。for-each構造を維持したいと思います。これは、xsl:keyグループ化機能を適切に使用していなかったかのようです。
私が得る出力、不要
そして、テストされるコード http://www.xsltcake.com/slices/sgWUFu/20
ありがとう!
xslt-1.0 - xslt 1.0 でネストされた要素をグループ化する
XSLT 1.0 での Muenchian のグループ化の例、具体的にはこちらの例を見てきました。ただし、より複雑な XML 構造で動作させることはできません。
私のXMLは現在次のようになっています:
ただし、ランク ノードが同じスポーツとイベントを持つ場合、同じランクの親の下にランク ノードをグループ化したいと考えています。だから私は結果を次のようにしたい:
他の例ははるかに単純な構造を扱っているだけで、それが可能かどうか、またはこれを行うためにキーとテンプレートをどのように構成する必要があるかがわからないため、これを行う方法が少しわかりません。これがどのように達成されるか、誰かがいくつかの例を提供できますか?
アドバイスをいただければ幸いです。
xml - 空でないフィールドをキーから選択する方法
私は以下のxmlファイルとxslt変換を持っています:
キー機能を使用して空でないタイプのペットをすべて選択するにはどうすればよいですか?
xpath - xsl:key を使用してブール式の結果を格納する
私の変換では、いくつかの要素が繰り返しテストされる表現があります。冗長性を減らすために、これを次のようにカプセル化したいと思いますxsl:key
(機能しません):
true
期待される動作は、式が正常に評価された場合とそうでない場合のブール値を生成するための鍵false
です。次に、次のように使用したいと思います。
これは可能ですか? はいの場合、どのように?
document - XSLT 1.0 document() 関数で xsl:key を使用する方法
XSL document() 関数を使用して、xsl:key を使用して外部 XML ドキュメント内のアイテムを検索しようとしています。document() を使用する代わりに、(C# で XmlDocument を使用して) 2 つの XML ファイルをマージするだけで、xsl:key 部分を機能させることができます。ただし、どちらの XML ファイルも非常に大きく、場合によっては「メモリ不足」エラーが発生し始めています。また、xls:key を使用できるようにする必要があります。そうしないと、処理に数時間かかります。
XSLT 2.0 では、次のようなことができると思います。
しかし、XSLT 1.0 でこれをどのように達成するのでしょうか?
xslt - XSLT key() 関数を使用して、別々の要素の 2 つの属性に基づいてノードを検索します
<Code>
XSLT key() 関数を使用して、次の 2 つの条件に一致する XML ファイル内のすべての要素を返そうとしています。
入力 XML がどのように見えるかの簡単な例を次に示します。
コメントは実際の XML には実際には存在しないことに注意してください。ここでは、XML 構造を明確にするためにコメントを追加しています。
動作していないように見えますが、使用しようとしている XSLT 変換を次に示します。
そして、これは key() 関数がさまざまな入力で返すようにしたいものです:
これは key() 関数で可能ですか? <Item>
要素と<Code>
要素の両方が数十万あるため、使用できること<xsl:key>
は非常に重要です。
xslt - xsl:key コンテキストから現在のノードに一致
私はそのようないくつかのxml構造を持っています:
次のような出力が必要です: For each good, for each list in each listOutput for this good 私はリスト位置のツリーを見たいです。上記の例について、私が見たいのは:
良い (1) リスト 1. カテゴリ 1. 位置 1.1 位置 1.1.1
良い (2) リスト 1. カテゴリ 1. 位置 1.1 位置 1.1.1
リスト 2. カテゴリ 3. 位置 3.1 位置 3.1.1
xsl:key を使用して、parentId で子要素を取得します。
この重要な関数は、リストのカテゴリと位置のツリーを作成するために再帰的に使用しています。
問題は、キー マッチ パターンがすべての outputRows で @pid を検索するように見えることですが、コンテキストから現在の良いものを outputRows でのみ検索するようにする必要があります。とにかくこれを達成することは可能ですか?