On 31 Dec 2013 17:03, "jean-marc Mercier" <[email protected]<mailto:[email protected]>> wrote: @David pairs are also basically needed to write a linear algebra modulus, the topic of this thread. And XQUERY don't provide any efficient pair. You can't use Marklogic map, or any other vendor map to store vectors for performance issues (a map is really slow). http://x-query.com/mailman/listinfo/talk [DAL:] Just an FYI but MarkLogic also have native arrays (in addition to maps) which are extremely efficient (they are stored internally as C arrays). But if you have to do a lot of iterating through the arrays - even though the accessors are very efficient , the surrounding FLOWR code is still XQuery which slows things down a bit. Maybe or maybe not enough to make them not useful for you. Also the marklogic maps are not the same as XQuery 3 implemented maps, they are a hash map under the hood and typically linear access.
But back to your original issue, these are vendor extensions and hence not portable to other implementations (Until XQuery itself standardizes on arrays and maps - then it is likely that vendor extension implementations will be used to expose the standard interface). If what you want is pure XQuery ... it doesnt matter how fast these are if you cant use them because they dont exist in all implementations. -David
_______________________________________________ [email protected] http://x-query.com/mailman/listinfo/talk
