Re: [xsl] Trouble getting a node froma a document()

Subject: Re: [xsl] Trouble getting a node froma a document()
From: Phil Endecott <spam_from_xslt_list@xxxxxxxxxxxx>
Date: Thu, 29 Jul 2004 20:55:54 +0100
select="document(concat('Z:\DicionarioXml\',$MasterTable,'.xml'))
> /Estrutura/Tabelas/Tabela[Nome=$MasterTable]/Indices/Indice/Campos/
> Campo[Nome=@Nome]/Visivel"

Here, @Nome is looking for a Nome attribute of the Campo element. For example, it would match this:

<Campo Nome="xxx">
  <Nome>xxx</Nome>
</Campo>

You want to use the Nome attribute of the *current* element. To do this, use the current() function, like this:

......Campo[Nome=current()/@Nome].....


So it seems the problem is with @Nome? I also tryed to put that in a variable and use it, but the effect is the same.

It should also work with a variable. Sometimes I use variables to make this sort of expression easier to understand. For example you could write:


<xsl:variable name="wanted-nome" select="@Nome"/>
..
..select="......Campo[Nome=$wanted-nome].....


--Phil.


Current Thread