This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: catch from another node with the same id (NEWBIE)


Hi Thomas,

> instead of the "id" i need the product name (bezeichnung) which is
> stored in a completly different node "/page/info/produkte/" but with
> the correspondending "id"

This kind of lookup is best done by setting up a key that indexes the
things that you want to look up by the thing that you want to retrieve
them by:

<xsl:key name="produkte" match="produkte/produkt" use="@id" />

You can then retrieve the produkt element with the id '2', for
example, wherever you are in the document, using:

  key('produkte', '2')

and retrieve the name of that produkt using:

  key('produkte', '2')/@bezeichnung

So your xsl:for-each loop might look like:

  <xsl:for-each select="*/produkt">
    <fo:table-row>
     <fo:table-cell>
      <fo:block>
       <xsl:value-of select="key('produkte', @id)/@bezeichnung"/>
      </fo:block>
     </fo:table-cell>
    </fo:table-row>
  </xsl:for-each>

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]