[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: XPath predicate and context
At 15:43 22/12/2003, Putman, Harold wrote: >Is there any way to get information from the context of the current XPath >expression, and use that inside a predicate expression. For example, if I >have ><doc> > <state id="OH">Ohio</state> > <state id="PA">Pennsylvania</state> > <home state="PA"/> > <home state="OH"/> ></doc> >I want to write an XPath expression that will give me the name of the state >assigned to the home element. Something like this works as long as long as >there is only one home: /doc/state[@id=/doc/home/@state] >But what I want to do is evaluate an XPath at any home node and get the >state name for that node. Something like: >/doc/state[@id=current()/@state] >Where current would be the context node when the XPath evaluation starts. >The problem is that current() is not a part of XPath... In XSLT I would do >this using a variable. ><xsl:variable name="state"> > <xsl:value-of select="@state"/> ></xsl:variable> ><xsl:value-of select="/doc/state[@id=$state]"/> >But, it seems like there should be a way to do this with XPath alone. Is >there a way? Look up keys. If you had a key which listed all the states via their code the value of the state would be accessible. HTH DaveP
|
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
|