2

SDLTridionWorldのXSLTメディエーターを使用してXSLTTBBを作成しています。ここでの私の要件は、あるXSLTTBBの出力を別のXSLTTBBに渡したいというものです。

「1」という名前のXSLTTBBがあるとします。ここで、次のように出力します。

<aaa>
hi 
</aaa>
<bbb>
hello
</bbb>

最初のTBBの出力を受け取り、データを処理する別のXSLTTBBを作成したい

<ccc>hi hello</ccc>

この例を非常に一般的なものと考えてください。テンプレートビルダーを使用して2つのTBBを結合しています。しかし、正確な結果は得られていません。

テンプレートビルダー用にXSLTメディエーターも構成する必要がありますか?はいの場合、その方法を教えてください。

そのような方法があれば、私に知らせてください。前もって感謝します。

4

2 に答える 2

5

これは、次のようにテンプレートパラメータを使用することで可能になります。

  1. TBB 1は、出力「Temp」および出力フォーマットタイプ「Xml」で構成されています。
  2. TBB 2は、入力「温度」と出力「出力」で構成されます。
  3. TBB 2は、パッケージアイテムをパラメーターとしてロードするように構成されています
  4. TBB 2の先頭に追加します(XSLT内から次のようなものを使用して変数を使用できるようにします)
  5. TBB 1の出力は、StringまたはXmlDocumnetのいずれかにできます。XmlDocumentを使用する場合は、TBB2の変数に対してXPathクエリを実行できます。

メディエーターはTCMサーバーでホストされているため、テンプレートビルダーで何も構成する必要はありません。

于 2012-03-19T08:46:59.190 に答える
1

これを行う必要がないように、設計を改善できるかどうかを確認することをお勧めします。一般に、パイプラインに複数の「テンプレート」TBBが必要になることは非常にまれです。原則として、テンプレートレイヤーに到達する前に(アセンブリビルディングブロックで)十分な準備を行う必要があります。そうすれば、すべてを一度に行うことができるはずです。

于 2012-04-18T19:48:04.687 に答える