Looking at that code again I think it should be rewritten to use map:for-each
it's too convoluted, but it probably gives you an idea of how to proceed.
Here's a test that shows how it works.
https://github.com/xokomola/fold/blob/dbb79c60a7356e32a0994e581ad4f7f5377ddc72/test/fold-common/test-common.xqm#L166
--Marc

> On 15 jul. 2015, at 21:51, Marc van Grootel <marc.van.groo...@gmail.com> 
> wrote:
> 
> Hi Graydon, have a look here 
> https://github.com/xokomola/fold/blob/dbb79c60a7356e32a0994e581ad4f7f5377ddc72/webapp/fold-common/common.xqm#L125
> 
> hope it helps
> 
> --Marc
> 
>> On 15 jul. 2015, at 20:01, Graydon Saunders <graydon...@gmail.com> wrote:
>> 
>> Hi --
>> 
>> In BaseX 8.2.1, I have a bunch of maps; the maps may have some overlap of 
>> key values.  I would like to merge/find the union of all of these maps while 
>> retaining all the values associated with each key in the resulting 
>> map-of-all-maps.  (Combined map?  Any word can be wrong, here! :)
>> 
>> map:merge() doesn't do this;  
>> http://docs.basex.org/wiki/Map_Module#map:merge says
>> "The associated value for each such key is taken from the last map in the 
>> input sequence $input that contains an entry with this key." and testing 
>> confirms this.
>> 
>> Is there a straightforward way to do this that I'm missing?
>> 
>> Thanks!
>> Graydon

Reply via email to