Good morning, all.
I did an extensive search through the archives, and wasn't able to find an
answer to this. However, I wasn't exactly sure what to search on either, so if
this has been answered, please forgive me and point me in the right direction.
The XML that I am using has an element that looks like this:
<spec_off>
<offer CO="true" FR="false">
... some data ...
</offer>
<offer CO="true" FR="true">
... some data ...
</offer>
<offer CO="false" FR="true">
... some data ...
</offer>
</spec_off>
So to explain, there are a series of special offers that will be printed based
on a user's version designation (i.e. CO is the corporate version and FR is the
franchise version, and if a user belongs to CO, they will get all offers with
the CO="true" designation). This is pretty straight forward.
The problem is that the version codes are not always the same. So for one XML
document, there may be just two codes (CO and FR) as above. But sometimes there
are five codes, like BR, TG, C2, MA, and MB. The idea basically is that the
number of codes and the codes themselves are always changing, which means the
*attribute names* are always changing.
I am using a template where I pass the current version that I want to test for
as a variable: i.e. <xsl:variable name="version">(code, i.e. CO)</xsl:variable>
Is there any way to test for a node set based on that variable? Something like
(although I know this syntax doesn't work): <xsl:for-each
select="./@{$version}='true'"> ... </xsl:for-each> which would select all of
the nodes where the attribute that matches the version variable is true?
Please let me know if anything is unclear... Thank you for your help!
Cynthia
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--