質問
いxsltスタイルシートに複数の xsl:import
sしたいと思い統合したいと考えていたのxsltファイルです。
で限定のシステムを用いた場を通過したときの周りにxslスタイルシートをstringとしてオブジェクト格納されます。この波リモートマシンを行い、変容しています。のではないから読み込まれたディスクのurlリンクが壊れたので、その除去 xsl:import
s"からのスタイルシートです。
あるツールができるのか?
解決
利用することができますXSLスタイルシートを統合おスタイルシート.しかし、これは相当にxsl:include要素は、xsl:import(Azat Razetdinov既に指摘しています。でき、差 こちらの.
んでいますので注意してください最初の交換は、xsl:import、xsl:include、解決の紛争及び試験かどうかを取得し、正しい。その後、以下のstylesheetを統合、既存のスタイルシートブリまで行っています。※で適用されマスタースタイルシート:
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="xsl:include">
<xsl:copy-of select="document(@href)/xsl:stylesheet/*"/>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
最初のテンプレートに置き換えてxsl:include、付属のスタイルシートを使用文書の機能を読み込むファイルで参照され、hrefの属性。第二のテンプレートの 身分変換.
私が試しXalanるようになったよう。
他のヒント
ことは不可能であ輸入stylsheetsのメインファイルが破損することなく 輸入が優先され.例えば、定義トップレベルの可変ポスタイルシートを見直し、そのファイルです。場合のファイルは一つか二つの変数と同じ名前および輸入が優先され、その結果エラーとなります。
の回避策は二つの置き換えxsl:import、xsl:include、紛 紛争.その後、安全に交換xsl:includeを指示に対応するファイルの内容がその XSLTプロセッサーは:
の包摂作品のXMLツリーます。リソースに位置するhref属性の値は解析されたXMLドキュメントとして、子どもたちも、xsl:スタイルシート要素をこの文書に置き換えxsl:include要素を含みます。このテンプレートの規則または定義が含まれの影響はありません"として処理されます。
マニュアル統合はおそらく最高のオプションです。
主な検討を行っていきますされてはいかがでしょうかを確認するロジックをマッチングテンプレート作品に合わせたスタイルシートです。
だいたい何ですか?彼らは通常seperated理由る(しばしば保守性)
きく、合併自分で読み込み、XSLファイルを選択テンプレートの項目だとする新しいマスター XSLファイル...
import multiple xsl in single xsl
<xsl:import href="FpML_FXOption_Trade_Template1.xsl"/>
<xsl:apply-imports/>
<calypso:keyword>
<calypso:name>DisplayOptionStyle</calypso:name>
<calypso:value>Vanilla</calypso:value>
</calypso:keyword>
<xsl:import href="FpML_FXOption_Trade_Template2.xsl"/>
<xsl:apply-imports/>