Hi Christian,
after migrating to 7.7 I get the error message "No context item defined to evaluate 'root()'". I get this message every time when I am going to access the root node within any of my xQuery functions. This is bad since many of my functions does do exactly that, which wasn’t a problem yet. Why does the old style does not work any more and is there a comfortable workaround to avoid the need for re-writing all my xQuery code? Of course I could pass the root node as an argument to avoid this kind of error, which could improve flexibility, but it’s a lot of work.
For test purposes I do have re-written some stuff to get it working with version 7.7 and when I tried to test it with the basex GUI I get "out of memory" errors and my scripts are aborted - actually all my scripts does obviously not work any more. Why does my stuff works great with BaseX 7.6 and not at all with BaseX 7.7. The upgrade seems to change some very general stuff under the hood and it cannot be reduced to some new functionality and minor signature changes for some xQuery built-in-functions.
Is there something special with my stuff? I don’t think so. What I do in principle is the following: I first add an XML file info the DB, then I load and start an import xQuery which analyses the XML file just added and adds nodes into the database (update operations). When the import has finished I delete the XML file added originally. Executing the import xQuery works fine with 7.6 and the memory consumption is fortunately low, but the same script aborts after a few seconds with an "out of memory“ error when using BaseX 7.7 - same basic configuration used. It does not make any difference whether I test all stuff with the GUI or let it run automatically by using the client lib. By the way, I do use the perl client lib.
It would be great if you could give me some hints how to proceed with 7.7. I have tried even 7.7.2 with no success.
Thanks in advance,
Regards,
Werner