XSLTで定義されているXMLファイルにテンプレート名を適用する必要のあるアプリケーションがC#で作成されています。XSLTテンプレートを選択
例XML:
<Data>
<Person>
<Name>bob</Name>
<Age>43</Age>
</Person>
<Thing>
<Color>Red</Color>
</Thing>
</Data>
例XSLT:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:param name="TargetName" />
<xsl:param name="RootPath" />
<xsl:Template Name="AgeGrabber">
<xsl:value-of select="/Person/Age" />
</xsl:Template>
<xsl:Template Name="ColorGrabber">
<xsl:value-of select="/Color" />
</xsl:Template>
</xsl:stylesheet>
は、私はパス "/データ/シング" と "ColorGrabberに" テンプレートを実行したかったし、別のテンプレートを使用して変換を実行言います"AgeGrabber"とパス "/ Data"。これは可能ですか?私はパスとテンプレート名を渡すことができたと思っていましたが(上の2つのパラメータを集めて)、いくつかのタイプのスイッチを行いますが、xslのように見えます:call-templateはname属性としてパラメータを取ることができません。
どうすればこの問題を解決できますか?
変換の予想される出力はどのくらいですか? – mzjn