問題タブ [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.
xml - XPath は XML の 2 つのサブツリーにわたって外部キー検索を実行できますか?
次の XML があるとします...
...「バケット」に「赤」と「青」が含まれていることを返す XPath は何でしょうか?
xslt - XSLT 外部参照テーブルの正しい使い方 - key() 関数?
xsl:key および key() 関数のチュートリアルを検索して見つけましたが、どういうわけかまだ理解が足りないようです。
実行する必要がある XML-XML 変換があります。これには、ソース XML から文字列値を取得し、(提供された) 適切なルックアップ テーブルから適切な数値コードを見つけ、それらのコードを結果の XML に配置する必要がある 10 個のフィールドが含まれます。
ルックアップテーブルに対して xsl:for-each を実行するこれの作業バージョンがありますが、最適ではないのではないかと考えており、代わりに select="key('CR-Lookup',$CR)" を使用する必要があったかどうかを知りたいです。 .
だから、私がやりたいことは(ツリーの深い部分)です:
次のようなものに変換されます。
私が作成したファイルは次のようになります。
ルックアップ テーブル ファイルlookup_ContributorRole.xml :
Amd のXSLT ファイルで、照合を試みます。
xslt - xsl:key() 内の xsl:key() のネスト & xsl:key() の結果の結合
関係のない質問が 2 つあります。XSLT を使用してデータをグループ化する必要があります。ネストさIF
れたIF
がどのように機能するかのように機能するには、これが必要です。その後、グループ条件に従って複数のファイルに分割できるように、データをグループ化する必要があります。
XSLT バージョン 1.0 の使用:
Q1) どのようkey()
に別のノードをネストしますかkey()
(つまり、最初から返された結果ノードを現在のノード リストとして使用して、2 番目の条件をkey()
検索してデータをグループ化します)。key()
Q2) 2 つのkey()
関数の結果を結合できますか? たとえば、「A」と「B」のキー値を持つすべてのノードに対してコードを実行したいとします。
Q1とQ2の解き方わかる人いますか?
あなたの助けに感謝します!質問が十分に明確であることを願っています。入力と出力の例が必要な場合はお知らせください。
よろしく、メリタ。
xslt - XSL:Key を使用した特定の子孫ノードの検索
次のコードがあるとします。
特定のテーブルに名前で特定の列がある場合、xsl:key を使用してテストできるようにしたいと考えています。たとえば、テーブルに「created_at」列があるかどうかを知りたいので、変換内に特定のコードを記述できます。
テーブルに名前で指定された列があるかどうかをテストする一般的なキーを取得しましたが、変換が現在処理されているテーブルに固有のものにする方法がわかりません。
したがって、すべてのテーブルで「true」になります。任意のガイダンスをいただければ幸いです。
xslt - XSLT で個別のアイテムをカウントし、1 回だけリストする
次の XML があります。
その XML を処理するための次の XSLT があります。
それは次のように出力します。これはほとんど私が望むものです:
それぞれの variable_names と、それぞれの発生回数がリストされます。唯一の問題は、変数名が 1 回だけではなく発生するたびに、このカウントが 1 回与えられることです。
これは私が出力したいものです:
XSLTコードを変更してそれを得るにはどうすればよいですか? XSLT 1.0 を使用していることに注意してください。
うまくいくように見える次のソリューションは、何も出力しません。
xslt - xsl:key キーに 2 つの要素を使用する
次のような XML ファイルがある場合は、次のようになります。
次のように、XSL ファイルでキーを定義できます。
id をキーとして使用しています。ただし、ドナルドは2回記載されていますが、プレグでは1か所しかありません。
彼をpregに2回リストしたいとします。つまり、クラス名を識別子の一部にしたいのです。基本的に、preg には順序付けられたペア (class-name, id) と同等のキーが必要です。どうすればいいですか (XSLT 1.0 を使用)。
xslt - XSLT 1.0 の xsl:key の xsl:for-each での反復変数の名前
次のような XSLT 1.0 コードがあります。
私が理解しているように、キーは特定の要素に対して複数の値を格納できます。上記のコードは、 を参照するときに最初の値しか取得していないと思いますkey('enemyItems', @key)
。
だから、私はこのように、xsl:for-each でそのコードをラップしたい
私の質問は: ??? には何が入りますか? 部?(つまり、反復変数またはものの名前は何ですか?)
xml - xsl:key を使用して一致した子から属性を見つける
XSL にはかなり新しいので、初心者であることをお許しください。
入力 XML ドキュメントがあります (これは実際にはJargon Fileの docbook 形式で、大幅に省略されています):
これは、私が取り組んできたテスト用 XSL です。
私の目的は、要素に出くわすたびに、指定された<glossterm>
を検索したいということです。たとえば、 を見つけたら、を取得したいと思います。glossentry/@id
glossterm/text()
<glossterm>/dev/null</glossterm>
dev-null
私はglossdefのglosstermsにのみ本当に興味がありますが、私はすべてのもののために作業中のxsl:templatesを持っています - テストのために、私はちょうどすべてのglosstermsに取り組んできました.
別のルックアップ ドキュメントを作成し、 XML.com: Reading Multiple Input Documentsで説明されているアプローチを使用しようとしましたが、うまくいきませんでした。
ヒントはありますか?
xml - さまざまなノードと要素の XSLT 1.0 グループ化キー
Muenchian Grouping を見ています。私のxmlに似た例を見つけようとしましたが、見つかりませんでした。ほとんどの例は適切に構造化されていますが、私のものは混乱しています。
これは私の XML の短縮バージョンです (XML 構造は標準的なものであり、私の手に負えないため、変更できないことに注意してください)。システムは現在そのバージョンのみをサポートしているため、XSLT 1 を使用しています。
私が望む出力は次のとおりです。
現在、id 属性は、参照要素の値として使用されています。また、出力のタグは、作成者、連絡先、または関連するパーティ要素の下にある場合、要素内にあるものであれば何でもかまいません。
id/references 属性からそれらをグループ化するためのキーの作成に行き詰まっています。私が見る限り、 xsl:key を使用した例は同じ名前のノードのみを対象としており、投稿した例ではノード名が異なります。どんな助けでも大歓迎です!!!!
xslt - 複数の値を使用する XSL キー
以下は、私が取り組んでいるサンプルの XML 構造です。
XSL ファイルのコード スニペットは次のとおりです。
変数「portid」の形式は「x:x」です。ここで、x は数字です。ポート ID ごとに、値を関連付ける必要があり<parameter index="2">
ます。<add>
以前は、ノードの下に 1 つの portid 値しかなく、ソリューションは正常に機能していました。
ここで、値が「1:1」から「1:1」に、同様に「3:1」から「3:1」に変更されるように、XSL キー「ポート」の「use」式を変更する必要があります。 ' '3:9-12' を '3:9' 、 '3:10' 、 '3:11' 、 '3:12' に展開し、値とともに に保存します<parameter index="2">
。たとえば、「portid」が「1:1」、「3:1」、「3:9」、「3:10」、「3:11」、「3:12」のいずれかであるたびに、 「4:12」、関連付ける値は「4000」です。
これは可能ですか?私はこれに1週間取り組んでいますが、まだ解決策を見つけることができません。どんな助けでも本当に感謝しています。どうもありがとう。