From: Andrzej J. T. <an...@ch...> - 2012-12-11 22:43:08
|
Wolfgang: I've been trying to get my code running under the latest version of trunk (2.0)....but have run into a weird xpath error again that I initially reported back in February.... I've attached both a text.xql file and test.xml file. Put them in /db and then execute the test.xql. It dies with the following exception: cannot convert xs:boolean('false') to a node set Now if you look at the rather complex xpath statement, if you remove both the exists() and normalize-space() comparisons at the end, it works. Also works if you remove the "and @extension = $id" clause....or if you remove the "@root = "2.16.840.1.113883.4.98" and" clause. Very strange behaviour. This is valid xpath...and worked fine in the older 1.5 version I used in the past. Almost seems like there is something going on with the parser or the optimizer that is causing this weird error. I know that if you split the different conditions into separate paths eg [...][...] etc, it will work, but the xpath in the test.xql sample file should be acceptable according to the xpath spec and show not error out like this. I'm not very conversant with the intricacies of the query/xpath engine/parser/optimizer, so was hoping you could take a look. Hopefully this test case will let you replicate the issue and we can resolve this long standing bug. Thanks! -- Andrzej Taramina Chaeron Corporation: Enterprise System Solutions http://www.chaeron.com |