Hi Rob, no - this is no bug, as a map *is* a (special kind) of function.

Compare http://www.w3.org/TR/xquery-31/#id-maps ;
[Definition: A map is a function that associates a set of keys with values, resulting in a collection of key / value pairs.]

In other words, the expression
   map{'p':'test'} instance of function(*)

MUST yield true, as it does in BaseX, as it does with Saxon.

Kind regards,
Hans-Jürgen



Rob Stapper <r.stapper@lijbrandt.nl> schrieb am 14:51 Samstag, 25.Juli 2015:


Hi,
 
I encountered a little but nasty to find hick-up in the typeswitch command.
One would expect the code below to return: “map”.
It returns: “function”.
Looks like a bug to me.
 
typeswitch( map { 'p' : 'test'})
case function(*) return 'function'
case map(*)      return 'map'
default          return 'other'
 
Rob Stapper



Avast logo
Dit e-mailbericht is gecontroleerd op virussen met Avast antivirussoftware.
www.avast.com