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 question (in .NET)

[ Lists Home | Date Index | Thread Index ]

that works nicely, thanks Carlo.


-----Original Message-----
From: Carlo Innocenti [mailto:minollo@minollo.com]
Sent: Wednesday, 14 December 2005 10:50 AM
To: Paul Popiel
Cc: 'xml-dev@lists.xml.org'
Subject: RE: [xml-dev] XPath question (in .NET)


At 09:04 PM 12/13/2005, Paul Popiel wrote:
>I have tried this previously, but strangely it only seems to work on the
>first attribute.
>e.g. searching on 'element' will return both nodes. searching on
'attribute'
>(part of value of 2nd attribute in the child node) nothing is returned.

Oh, something like this then:
//*[@*[contains(.,'attribute')]]

>also, i dont want the search to be restricted to just the attribute values,
>but the elements xml string as a whole.

Well, you can add conditions as you wish...
//*[contains(.,'some text') or @*[contains(.,'some text')]]



>-----Original Message-----
>From: Carlo Innocenti [mailto:minollo@minollo.com]
>Sent: Wednesday, 14 December 2005 9:58 AM
>To: Paul Popiel
>Cc: xml-dev@lists.xml.org
>Subject: RE: [xml-dev] XPath question (in .NET)
>
>
>
> >...
> >      <?xml version="1.0"?>
> >         <Test Name="Im a parent element">
> >                 <Child Name="Im a child element" Attribute="another
> >attribute"/>
> >         </Test>
> >
> >...
> >      XmlNodeList foundNodes = xmlDoc.SelectNodes("//*[contains(.,
> >'element')]");
>
>Your query is matching elements containing "element" in their values;
>but your strings are associated to attributes, not to text nodes.
>Changing the query to:
>
>"//@*[contains(.,'element')]"
>
>...will return two attributes. If you need the elements containing at
>least one attribute which contains that string, then you need:
>
>"//*[contains(@*,'element')]"
>
>...you get the idea.
>
>Minollo
>http://www.stylusstudio.com



**********************************************************************
This email is confidential.  If you are not the intended recipient, 
you must not copy, distribute, disclose or otherwise use the 
information contained in it.   If you have received this email in 
error, please tell us immediately by return email or by contacting 
us on (+61 8) 9209 6900 and delete the document.  Email may 
be susceptible to data corruption, interception and unauthorised 
amendment.  Advanced Engine Components Ltd is not 
responsible for any changes made to a document other than 
those made by Advanced Engine Components Ltd, or for the 
effect of the changes on the document's meaning.

You must scan this email and any attachments for viruses. 
Advanced Engine Components Ltd accepts no liability for any 
loss, damage or consequence, whether caused by our own 
negligence or not, resulting directly or indirectly from your 
receipt of this email or the use of any attachments.
**********************************************************************




 

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

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