[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: XPath predicate and context
No, I don't think you can do this within a single XPath 1.0 expression. In XPath 2.0 you can do for $x in . return /doc/state[@id=$x/@state] Michael Kay > -----Original Message----- > From: Putman, Harold [mailto:PutmanH@d...] > Sent: 22 December 2003 15:43 > To: 'xml-dev@l...' > Subject: XPath predicate and context > > > 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? > > Thanks, > Harold Putman > > ----------------------------------------------------------------- > The xml-dev list is sponsored by XML.org > <http://www.xml.org>, an initiative of OASIS <http://www.oasis-open.org> The list archives are at http://lists.xml.org/archives/xml-dev/ To subscribe or unsubscribe from this list use the subscription manager: <http://lists.xml.org/ob/adm.pl>
|
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
|