私は、次の一時文書があるとします。XSLT - ドキュメントノードのリポジトリとして機能する一時ドキュメントを作成できますか?
<xsl:variable name="emc">
<people>
<person id="1">
<name>Jim</name>
</person>
<person id="2">
<name>Joe</name>
</person>
</people>
</xsl:variable>
<xsl:variable name="ibm">
<people>
<person id="1">
<name>Joan</name>
</person>
<person id="2">
<name>Allison</name>
</person>
</people>
</xsl:variable>
そして、私は、以前の文書のルートノードを格納するために別の文書を持つようにしたい:
<xsl:variable name="store">
<store>
<doc>{$emc goes here}</doc>
<doc>{$ibm does here}</doc>
</store>
</xsl:variable>
私はこれを行うことができますが、私はありませんすることができます$ emcや$ ibmの値を使うことができるように、もっと長くdoc要素の内容を使います。
は$ DOC1 /人/人を持っている
<xsl:variable name="doc1" select="$store/store/doc[1]">
、ASと[1] IBM /人/人$と同じノードであることが、[1]
のいくつかのバージョンでは、このことが可能ですXSLT?
ありがとうございます。
だから、私はちょっとドキュメントに何とか保存できないようにしたいのですか?それは最終的に私がしたいことです。私は文書によって提供される構造が必要です。私がテンプレートパラメータを介して "店"を回ると、私は多くの管理ができ、テンプレート呼び出しのスタックの性質を取り巻くことは難しいです。ありがとう。 –
@Fred、ドキュメントノードは親を持つことはできません。 (http://www.w3.org/TR/xpath-datamodel/#DocumentNode) "ドキュメントノードは子として表示されません"したがって、ドキュメント内にドキュメントを格納することはできません。私はあなたの質問を正しく理解している。 – LarsH
これを可能にするためにノードを効果的に "ラップ"(または原子化)する方法があると思っていましたが、そうは思わないでしょう。ありがとう。 –