Hello Marco,
yes, I think you are correct. I guess it could be that its not a typo, but rather an old version which was not updated accordingly, but it also doesn't matter as it is incorrect. We would really appreciate if you would fix it.
Cheers Dirk
On 11/13/2015 09:57 AM, Marco Lettere wrote:
Hi all, Just one question. The documentation page related to the json module states:
*Signatures* |*json:serialize*($input as node()) as xs:string| |*json:serialize*($input as node(), $options as map(xs:string, xs:string)) as xs:string| *Summary* Serializes the node specified by |$input| as JSON, and returns the result as |xs:string| instance. The node is expected to conform to the output created by the json:parse() http://docs.basex.org/wiki/JSON_Module#json:parse function. All other items will be serialized as specified for the json output method http://docs.basex.org/wiki/XQuery_3.1#JSON_Serialization of the official specification. Items can also be serialized as JSON if the Serialization Parameter http://docs.basex.org/wiki/Serialization |method| is set to |json|. The |$options| argument can be used to control the way the input is serialized.
But I think the signature should be for item()? for the first parameter (since it allows also for maps) isn't it?
In effect
inspect:function(json:serialize#2)
returns
<function name="json:serialize" uri="http://basex.org/modules/json"> <argument type="item()" occurrence="?"/> <argument type="item()" occurrence="?"/> <return type="xs:string"/> </function>
If it's confirmed I could proceed with fixing it. Regards, Marco.