Re: match( "/* | /text()" ) causes error from _InternalEvaluate()
Brought to you by:
bs_php,
nigelswinson
From: Nigel S. <nig...@us...> - 2002-07-11 02:00:48
|
This was because the text nodes weren't in the nodeIndex[]. This has now been fixed. See CVS if you can't wait for the next release. :o) > No matter what your input xml looks like, it seems you cannot use '|' > operator with a combination of textParts and childNodes: > > Xpath->match( "/* | /text()" ) > > results in this message: > XPath error in -:-</b> Results from _InternalEvaluate() are corrupt. Do > you > need to call reindexNodeTree()? > > Given input: > <a>cdata<b>cdata</b></a> > > The following matches work fine: > Xpath->match( "/* | /a/*" ) > Xpath->match( "/text()" ) > Xpath->match( "/a/text()" ) > > The following fail: > Xpath->match( "/text() | /a/text()" ) > Xpath->match( "//text()" ) > > Are these bugs or is my xpath invalid? |