From: Oscar <osc...@iu...> - 2003-08-13 16:21:38
|
Hi, We've found some weird behaviour on eXist 1.0 regarding to Xpath queries, that used to work fine on eXist 0.9.1. Access to eXist XML:DB (in both cases) is done by PHP + XMLRPC communication (using eXist php class). There are a lot of queries that used to work fine on eXist 0.9.1 and now it doesn't on 1.0 version. In more detail: - Queries like: i) document(*)//FileFormat/Name[text()= 'MPEG-3 (.mp3)'] , in eXist 1.0 only works fine when I change 'text()' for '.' (I'm assuming that the queries are equivalent) · Here's (some bits of) the debug trace: 13 Aug 2003 17:56:15,454 [Thread-6] DEBUG (NativeBroker.java [findElementsByTagName]:413) - found FileFormat: 5 in 0ms. 13 Aug 2003 17:56:15,456 [Thread-6] DEBUG (NativeBroker.java [findElementsByTagName]:413) - found Name: 564 in 0ms. 13 Aug 2003 17:56:15,461 [Thread-6] DEBUG (NativeBroker.java [getNodesEqualTo]:1040) - searching 5 nodes took 0ms. 13 Aug 2003 17:56:15,462 [Thread-6] WARN (Predicate.java [eval]:66) - context node is missing ii) document(*)//*[contains(@id,"a")] (yes, I know this query is not very smart!), in eXist 1.0 it doesn't find any node. · Here's (some bits of) the debug trace: 13 Aug 2003 17:51:52,387 [Thread-6] DEBUG (NativeTextEngine.java [getNodesExact]:369) - found a: 135 in 1ms. 13 Aug 2003 17:51:52,393 [Thread-6] DEBUG (NativeBroker.java [getNodesEqualTo]:1040) - searching 0 nodes took 0ms. I don't know where the problem comes from (XML-RPC changes?, wildcards '*' modifications on XPath engine?). Anyway, in case somebody is interested to try it, here you can find some tests: (the webapp is related to search & retrieve MPEG-7 Segments) http://www.iua.upf.es/mtg/opendrama/apps/opendrama/index.php (version 0.9.1 which works quite fine!). http://www.iua.upf.es/mtg/opendrama/apps/opendrama_test/index.php (version 1.0 which doesnt work now). (To search, you must click on the checkbox(es) field(s). e.g: to find all Segment Titles' that start with 'a', then click on Segment Title checkbox and wirte 'a' to the input field, and then 'Search'). Both instances are running on different machines ($EXIST_HOME/bin/server.sh) and both instances have exactly the same xml documents (and same collection structure). Cheers, Oscar. |