| Subject: Re: [xsl] Getting ordering info from a lookup table From: Nic James Ferrier <nferrier@xxxxxxxxxxxxxxxxxxxx> Date: Mon, 30 Oct 2006 23:53:14 +0000 | 
"Trevor Nicholls" <trevor@xxxxxxxxxxxxxxxxxx> writes:
> My transform is using an external XML file as a lookup table. Among other
> things, the external file contains a list:
>   ...
>   <files>
>     <doc>file_one</doc>
>     <doc>file_two></doc>
>     <doc>file_three</doc>
>     ...
>   </files>
>
> Each time the transform runs, the input XML file corresponds to one of the
> <doc> elements in the lookup file. The input file name is passed in as a
> parameter to the transformation.
>
>   <xsl:param name="myself" />
>
> I think the following construction can do the lookup to the external file
> and locate the current doc:
>
>   .. select="document('lookup.xml')/files/doc[. = $myself]"
>
> but of course this is pointless by itself as I already have the doc name.
> What I actually want is to obtain the names of the previous and next docs -
> if they exist. There's surely an elegant way to do this, but I don't know
> it. What can I do?
How about:
   select="document('lookup.xml')/files/doc[. = $myself]"/preceding-sibling::."
and of course:
   select="document('lookup.xml')/files/doc[. = $myself]"/following-sibling::."
-- 
Nic Ferrier
http://www.tapsellferrier.co.uk   for all your tapsell ferrier needs
| Current Thread | 
|---|
| 
 | 
| <- Previous | Index | Next -> | 
|---|---|---|
| Re: [xsl] Getting ordering info fro, Spencer Tickner | Thread | RE: [xsl] Getting ordering info fro, Trevor Nicholls | 
| Re: [xsl] XSLT 1: template inside o, David Carlisle | Date | RE: [xsl] Getting ordering info fro, Trevor Nicholls | 
| Month |