Subject: [xsl] Re: UNIQUE List of nodes attributes that have a particular value From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx> Date: Sun, 20 Apr 2003 13:31:34 +0200 |
A single XPath 1.0 expression selecting what you want is not possible in the general case. However, if every element has a single attribute and if the elements are sorted by the names of their attributes, then the following expressions do what you need: /*/*/@*[. = 'foo'][not(name() = name(../preceding-sibling::*[@*= 'foo'][1]/@*))] selects <NodeA name="foo"/> <NodeB author="foo"/> <NodeC reporter="foo"/> and /*/*/@*[. = 'larry'][not(name() = name(../preceding-sibling::*[@*= 'larry'][1]/@*))] selects <NodeA name="larry"/> <NodeB author="larry"/> ===== Cheers, Dimitre Novatchev. http://fxsl.sourceforge.net/ -- the home of FXSL "Larry Hayashi" <larry_hayashi@xxxxxxxxxxx> wrote in message news:Law15-F28cvIhkeTxtf00001e0c@xxxxxxxxxxxxxx > I am trying to find all the attributes in an XML document that contain a > particular value. > > Given the following data... > > <ExampleData> > <NodeA name="foo"/> > <NodeA name="larry"/> > <NodeA name="foo"/> > <NodeB author="foo"/> > <NodeB author="larry"/> > <NodeC reporter="foo"/> > </ExampleData> > > I would like to write an XPATH statement that returns this: > > <NodeA name="foo"/> > <NodeB author="foo"/> > <NodeC reporter="foo"/> > > Note that I am only returning UNIQUE instances of element/attribute > combinations with the attribute value. > > Is this possible using XPATH? > > Thanks! > > Larry > > _________________________________________________________________ > Help STOP SPAM with the new MSN 8 and get 2 months FREE* > http://join.msn.com/?page=features/junkmail > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] UNIQUE List of nodes attr, Andrew Watt | Thread | RE: [xsl] Reusing XPath statements , Bob Stayton |
RE: [xsl] Reusing XPath statements , Michael Kay | Date | [xsl] error installing libxslt-1.0., Thorpe Mayes |
Month |