次の問題があります。いくつかの入力 XML ファイルがあり、そのうちの 1 つに他のファイルへのリンクが含まれています。それは次のようになります。
<Envelope>
<Part File='file:SEQ014/DET3262874.9.0.xml' LinkType='REL' DocType='XCD' SubType='Call' Format='XML'/>
<Part File='file:SEQ014/DET3262874.9.1.xml' LinkType='REL' DocType='XCD' SubType='Call' Format='XML'/>
<Part File='file:SEQ014/DET3262874.9.2.xml' LinkType='REL' DocType='XCD' SubType='Call' Format='XML'/>
<Part File='file:SEQ014/DET3262874.9.3.xml' LinkType='REL' DocType='XCD' SubType='Call' Format='XML'/>
<Part File='file:SEQ014/DET3262874.9.4.xml' LinkType='REL' DocType='XCD' SubType='Call' Format='XML'/>
<Part File='file:SEQ014/DET3262874.9.5.xml' LinkType='REL' DocType='XCD' SubType='Charge' Format='XML'/>
<Part File='file:SEQ014/INV3262874.9.xml' LinkType='REL' DocType='INV' Format='XML'/>
<Part File='file:SEQ014/INVINFO3262874.9.xml' LinkType='REL' DocType='IIN' Format='XML'/>
<Part File='file:SEQ014/SUM3262874.9.xml' LinkType='REL' DocType='SUM' Format='XML'/>
<Part File='file:SEQ014/BAL3262874.9.xml' LinkType='REL' DocType='BAL' Format='XML'/>
<Part File='file:SEQ014/ADDR3262874.9.xml' LinkType='REL' DocType='ADD' Format='XML'/>
</Envelope>
今、私はこのように一番下のファイルにアクセスしています:
<xsl:param name="BillingDocument2" select="/Bill/Part[@DocType='ADD']/@File"/>
<xsl:param name="BillingDocument3" select="/Bill/Part[@DocType='INV']/@File"/>
etc...
その後、次のように参照しています。
<xsl:variable name="var13_Document" select="document($BillingDocument2)/Document"/>
etc...
しかし、最初の 5 つの XML ファイルのデータを使用する方法がわかりません。これらのファイルはすべて同じ構造を持ち、基本的には 1 つの大きなファイルであり、5 つの小さなファイルに分割されています...これらの 5 つのファイルのすべてのデータを 1 つの場所に保持する必要があります (ファイルの数はケースによって異なります)。私も同じように処理できます... そうそう、XSLT1しか使えません!