OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] XPath predicate and context

[ Lists Home | Date Index | Thread Index ]

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 






 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS