From: Pieter D. <pie...@gm...> - 2009-01-07 09:24:33
|
On Tue, Dec 16, 2008 at 11:28 AM, Wolfgang <wol...@ex...> wrote: >> So now it's definite that the problem was the change to ElementConstructor that went in for >> revision 8321. > > I corrected my previous change to ElementConstructor: > > http://exist.svn.sourceforge.net/exist/?rev=8390&view=rev > > This fixes my problem without breaking your test. There still seems to be a problem with this change. I have the following query (reduced from a real production query): declare namespace tr = "testrun"; let $recipe := document { element {node-name(<tr:TestRecipe xmlns:tr="testrecipe"/>)} {} } let $run := <tr:TestRun/> return (namespace-uri($run), namespace-uri($recipe/element())) When I run this query, I expect the following sequence: ("testrun", "testrecipe"). This query yielded the expected result until trunk revision 8321. With this revision of eXist, the following result is returned: ("testrecipe", "testrecipe"), i.e., when the tr:TestRun element is created, eXist considers tr to be a prefix for "testrecipe", even though the relevant namespace declaration is not in scope at this point. Things started working again when ElementConstructor was reverted to its pre-8321 state in revision 8364, but broke again in revision 8390. I hope this helps to locate the problem. With kind regards, Pieter Deelen |