xsl-list
[Top] [All Lists]

Re: [xsl] Select attribute using a variable

2008-01-23 03:10:30
strawks wrote:

I have a variable named property and I want to select an attribute using
this variable.

Basically :
<xsl:value-of
select="/document/styles/style[(_at_)name=$style_name]/attribute::$property"/>

You cannot do it like this, as XSLTProc is saying: it is a syntax error (after the double colon should be a node name (QName) not a variable name). Instead, if you want to check the name of an attribute and then select that attribute, try this:

select="/document/styles/style[(_at_)name=$style_name]/@*[name() = $property]"

If there are more <style> nodes with an attribute "name" with the value of $style_name, this may return more than one attribute, depending on the XSLT version. If you need to do something for each <style>, use templates instead of an absolute XPath.

HTH
Cheers,
-- Abel Braaksma

--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>