I tend to avoid declaring functions or variables in any namespace that I know other code is using. But you're doing it with your eyes open, and that's probably ok. Someday a server update may conflict. But if that happens, I'm sure you'll catch it in testing, and fix it before it breaks production.
Right? -- Mike > On 12 Mar 2015, at 17:35 , Will Thompson <[email protected]> wrote: > > Thanks all. The ML8 constructors look very nice. > > Mike - That's what I was looking for, thanks. I ended up writing something > similar using json:array before I saw the reply, but I like your > implementation better. Also, I appropriated the json: prefix because it > looked nicer...for example, is there any reason why this would be bad (other > than ML might decide implement it at some later date)? > > declare function json:new(...) > > -W > >> On Mar 12, 2015, at 4:38 PM, Sudhakar Reddy <[email protected]> >> wrote: >> >> You can also build using JSON node constructors available in ML 8 >> let $json-node := object-node { "id": number-node {12345}, >> "a" : array-node {1,2,3} , >> "b" : fn:true(), >> "c" : number-node {1234}, >> "d" : array-node{ >> number-node {12345}, >> text {"test"}, >> boolean-node {fn:true()}, >> array-node {'aaa','bbb','ccc'}}, >> "e" : object-node { "x": "hello >> world", >> "y": fn:false(), >> "z" : array-node {1, 'a', >> fn:true()} >> }, >> "g": null-node {} >> } >> return $json-node >> >> Thanks >> Sudhakar >> >> >> >> On 3/11/15, 6:52 PM, "Erik Hennum" <[email protected]> wrote: >> >>> Hi, Will: >>> >>> You can use json:object() instead of map:map() for a mutable object where >>> order is important. >>> >>> I think the API is the same as that of map:map otherwise. >>> >>> JSON nodes, like XML nodes, are immutable. >>> >>> Erik Hennum >>> >>> ________________________________________ >>> From: [email protected] >>> [[email protected]] on behalf of Will Thompson >>> [[email protected]] >>> Sent: Tuesday, March 10, 2015 5:09 PM >>> To: MarkLogic Developer Discussion >>> Subject: [MarkLogic Dev General] Constructing JSON objects >>> >>> Is there a nice way to construct a JSON object similar to how maps can be >>> constructed? Typically I would just do it this way: >>> >>> xdmp:to-json( >>> map:new(( >>> map:entry('x', 1), >>> map:entry('y', 2) >>> ))) >>> >>> Except that order is important in this specific scenario, and this ruins >>> ordering. >>> >>> -Will >>> _______________________________________________ >>> General mailing list >>> [email protected] >>> http://developer.marklogic.com/mailman/listinfo/general >>> _______________________________________________ >>> General mailing list >>> [email protected] >>> http://developer.marklogic.com/mailman/listinfo/general >> >> _______________________________________________ >> General mailing list >> [email protected] >> http://developer.marklogic.com/mailman/listinfo/general > > _______________________________________________ > General mailing list > [email protected] > http://developer.marklogic.com/mailman/listinfo/general > _______________________________________________ General mailing list [email protected] http://developer.marklogic.com/mailman/listinfo/general
