問題タブ [apply-templates]

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 に答える
35 参照

xslt - XML ファイルにリンクされ、テンプレートを適用する XSL スクリプトの改善

XSL スクリプトを次に示します。

ご覧のとおり、参照用に別の XML ドキュメントにリンクしています。ファイルにリンクされている例を次に示します。

ユーザーは、XML 内の情報を参照して、好きなように表示したいと思うかもしれませんが、最も簡単な方法を示したいと思います。

ご覧のとおり、いくつかの基準があります。

  • Week(WYYYYMMDD)
  • Mode( MidweekWeekendまたはWeekly)
  • Template(0以上)

上記は、割り当ての適切な週にフィルターをかけます。次に、実際の割り当てを特定します。

  • Index(数値)
  • IndexType( FixedCustomFixedまたはCustom)

テンプレートを何らかの方法で (おそらく変数を使用して) 使用して、繰り返しが増えているコードを単純化することはできますか?

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

xslt-1.0 - 2 つの条件に一致するテンプレートを適用する

すべての INST 名をリストする必要がありますが、上記の XML 本体の「inst/idef」部分に「onlyTesters」ノードが存在しない場合のみです。

奇妙なことだとは思いますが、受け取った XML を変更することはできません。

XML:

XSL:

私は一致していません。

これは私が期待する結果です:

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

xslt - apply-templates あいまいな一致の警告

警告が表示されます

あいまいなルールの一致

テンプレートcopyReferenceおよび恒等変換のプロセッサから。

xml スニペットは次のとおりです。

私がやりたいことは、@stem.dir と @stem.sameas なしで @sameas-attribute から参照されるノードをコピーすることです。が適用される異なるノード local-names() が存在する可能性があります。したがって、 copyReferenceテンプレートの @match-attribute でノード名を指定したくありません。必要なノードを @select-attribute で渡し、さらに @mode を追加すると、必要なものだけに一致すると思いました。実際には機能しますが、警告が表示されるので、何かが間違っているはずです。