Subject: RE: [xsl] Understanding XPath contains function From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Sun, 30 Jul 2006 22:25:56 +0100 |
In XPath 1.0: (A = 'B') is true if *any* A is equal to 'B' contains(A, 'B') is true if *the first* A contains 'B' as a substring. So if it's the second item in the set A that is equal to 'B', A='B' will be true but contains(A, 'B') will be false. XPath 2.0 makes it an error for the first argument of contains to be a sequence of several items. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Ferdinand Soethe [mailto:xsl-list@xxxxxxxxxx] > Sent: 30 July 2006 13:07 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] Understanding XPath contains function > > I'm confused by the difference in results when running the > following xpath expressions against the same document: > > /common/Oberbereich[6][.//@Kursart='Bildungsurlaub'] > > will give me Oberbereich[6] as a result as expected (because > it has child elements that have a Kursart-Attribute of that value. > > While > /common/Oberbereich[6][contains(.//@Kursart,'Bildungsurlaub')] > will not give me any results where it should at least give me > the same or more results that the previous expression, should it not? > > Any hints much appreciated. > > -- > Ferdinand Soethe
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Understanding XPath conta, Ferdinand Soethe | Thread | [xsl] dynamic template caller probl, Smoother |
Re: Re: [xsl] dynamic template call, Smoother | Date | [xsl] Fine tuning a template match, Trevor Nicholls |
Month |