[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XPath for getting the nearest attribute value on t
Hi Sanjay, > I am at a particular element node and now I need a generic XPath to > get me the closest Attribute (attributes can be 'name', 'type', > 'category' and sorts ...), if any, and return its value. This would > be useful to identify my elements uniquely. You're close. The main thing is that if you want something that's located relative to the current node then you have to use a relative path (one that doesn't begin with /). For example, if you want to get the nearest ancestor of the current node that has a name attribute, then you should probably use the relative path: ancestor::*[@name][1]/@name though you could use the equivalent: (ancestor::*/@name)[last()] If you want to find the nearest ancestor of the current node that has a name, type or category attribute, then you should probably use the relative path: ancestor::*[@name or @type or @category][1] /@*[name() = 'name' or name() = 'type' or name() = 'category'] Again, you could use one of the following equivalent paths: (ancestor::*/@*[name() = 'name' or name() = 'type' or name() = 'category'])[last()] (ancestor::*/@name | ancestor::*/@type | ancestor::*/@category)[last()] I hope that helps, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|