<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; font-size: 14px; font-family: Calibri, sans-serif;">
<div style="color: rgb(0, 0, 0);">Hi Kari,</div>
<div style="color: rgb(0, 0, 0);"><br>
</div>
<div style="color: rgb(0, 0, 0);">I'm not sure why the map:* API works that way, but you have to be explicit in getting the values from the elements in question. Specifically, you can use fn:string() to get the element contents as a string, you can use fn:data()
 to defer to any applicable schema types, or you can use the xs:* type constructors (xs:integer(), xs:decimal(), etc.).</div>
<div style="color: rgb(0, 0, 0);"><br>
</div>
<div style="color: rgb(0, 0, 0);">You can apply the types in the map:</div>
<div style="color: rgb(0, 0, 0);"><br>
</div>
<div style="color: rgb(0, 0, 0);">
<div>let $map := map:new((</div>
<div>&nbsp; map:entry(&quot;EventTitle&quot;, $theEvent/fn:string()),</div>
<div>&nbsp; map:entry(&quot;EventStartDate&quot;, $theStartDate/fn:string())</div>
<div>))</div>
<div><br>
</div>
<div>Or earlier, in your variable bindings:</div>
<div><br>
</div>
<div>
<div>let $theEvent:= $doc/EventTitle/fn:string()</div>
<div>let $theStartDate:=$doc/EventStartDate/fn:string()</div>
</div>
<div><br>
</div>
<div>Thanks.</div>
<div><br>
</div>
<div>-jb</div>
</div>
<div style="color: rgb(0, 0, 0);"><br>
</div>
<span id="OLK_SRC_BODY_SECTION" style="color: rgb(0, 0, 0);">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>&lt;<a href="mailto:general-bounces@developer.marklogic.com">general-bounces@developer.marklogic.com</a>&gt; on behalf of Kari Cowan &lt;<a href="mailto:KCowan@alm.com">KCowan@alm.com</a>&gt;<br>
<span style="font-weight:bold">Reply-To: </span>MarkLogic Developer Discussion &lt;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&gt;<br>
<span style="font-weight:bold">Date: </span>Tuesday, January 19, 2016 at 10:43 AM<br>
<span style="font-weight:bold">To: </span>MarkLogic Developer Discussion &lt;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&gt;<br>
<span style="font-weight:bold">Subject: </span>Re: [MarkLogic Dev General] Custom JSON objects<br>
</div>
<div><br>
</div>
<div xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
span.EmailStyle21
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle22
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle23
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle24
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle25
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.EmailStyle26
        {mso-style-type:personal;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
span.EmailStyle27
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D">It’s ML 7<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">How would I get back the values rather than the node paths?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">In other words, this:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">let $outputSimpleJSON:=(&quot;{&amp;#34;events&amp;#34;:[&quot;,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">fn:string-join(<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; for $doc in $search-this-partner/event (: there are 3 records in this set :)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;let $theEvent:= $doc/EventTitle<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; let $theStartDate:=$doc/EventStartDate<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; let $map := map:new((<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; map:entry(&quot;EventTitle&quot;, $theEvent),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; map:entry(&quot;EventStartDate&quot;, $theStartDate)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; ))<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; return xdmp:quote(xdmp:to-json($map)),&quot;,&quot;),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&quot;]}&quot;)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Returns a valid JSON object for the 3 records returned, but it doesn’t &nbsp;have the values of the data.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Example: &gt;&gt;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;events&quot;:[<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Akira_7877013.xml\&quot;)\/event\/EventStartDate&quot;, &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Akira_7877013.xml\&quot;)\/event\/EventTitle&quot;},{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/TheDayTheEarthStoodStillMarch08,2017.xml\&quot;)\/event\/EventStartDate&quot;,
 &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/TheDayTheEarthStoodStillMarch08,2017.xml\&quot;)\/event\/EventTitle&quot;},{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Solaris_956351.xml\&quot;)\/event\/EventStartDate&quot;, &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Solaris_956351.xml\&quot;)\/event\/EventTitle&quot;}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">]}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">I need the values, like this – any way to do it?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;events&quot;:[<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;2018-03-08&quot;, &quot;EventTitle&quot;:&quot;Akira&quot;},<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;2017-03-08&quot;, &quot;EventTitle&quot;:&quot;The Day The Earth Stood Still&quot;},<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;2017-09-30&quot;, &quot;EventTitle&quot;:&quot;Solaris&quot;}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">]}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> <a href="mailto:general-bounces@developer.marklogic.com">
general-bounces@developer.marklogic.com</a> [<a href="mailto:general-bounces@developer.marklogic.com">mailto:general-bounces@developer.marklogic.com</a>]
<b>On Behalf Of </b><a href="mailto:Rajamani.Marimuthu@cognizant.com">Rajamani.Marimuthu@cognizant.com</a><br>
<b>Sent:</b> Tuesday, January 19, 2016 5:00 AM<br>
<b>To:</b> <a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a><br>
<b>Subject:</b> Re: [MarkLogic Dev General] Custom JSON objects<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">Hi,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Your code is working fine and getting expected result . Could you please tell me what version of ML&nbsp; u r using.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">By<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">Raja &gt;&gt;&gt;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> <a href="mailto:general-bounces@developer.marklogic.com">
general-bounces@developer.marklogic.com</a> [<a href="mailto:general-bounces@developer.marklogic.com">mailto:general-bounces@developer.marklogic.com</a>]
<b>On Behalf Of </b>Kari Cowan<br>
<b>Sent:</b> Tuesday, January 19, 2016 5:37 AM<br>
<b>To:</b> MarkLogic Developer Discussion<br>
<b>Subject:</b> Re: [MarkLogic Dev General] Custom JSON objects<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal"><span style="color:#1F497D">Just returning to this, I wanted to try constructing the map, but instead of getting back the values, I get back the document URI and path to the node.&nbsp;&nbsp;&nbsp; Not what I expected.&nbsp; What am I doing wrong?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">let $outputSimpleJSON:=<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; for $doc in $search-this-partner/event (: there are 3 records in this set :)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;let $theEvent:= $doc//EventTitle<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; let $theStartDate:=$doc/EventStartDate<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; let $map := map:new((<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; map:entry(&quot;EventTitle&quot;, $theEvent),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp;&nbsp;&nbsp; map:entry(&quot;EventStartDate&quot;, $theStartDate)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; ))<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">return xdmp:to-json($map)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&nbsp; <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">&gt;&gt;<o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Akira_7877013.xml\&quot;)\/event\/EventStartDate&quot;, &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Akira_7877013.xml\&quot;)\/event\/EventTitle&quot;}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/TheDayTheEarthStoodStillMarch08,2017.xml\&quot;)\/event\/EventStartDate&quot;, &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/TheDayTheEarthStoodStillMarch08,2017.xml\&quot;)\/event\/EventTitle&quot;}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D">{&quot;EventStartDate&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Solaris_956351.xml\&quot;)\/event\/EventStartDate&quot;, &quot;EventTitle&quot;:&quot;fn:doc(\&quot;\/data-sources\/events\/Solaris_956351.xml\&quot;)\/event\/EventTitle&quot;}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> <a href="mailto:general-bounces@developer.marklogic.com">
general-bounces@developer.marklogic.com</a> [<a href="mailto:general-bounces@developer.marklogic.com">mailto:general-bounces@developer.marklogic.com</a>]
<b>On Behalf Of </b>Joe Bryan<br>
<b>Sent:</b> Monday, December 14, 2015 11:08 AM<br>
<b>To:</b> MarkLogic Developer Discussion &lt;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&gt;<br>
<b>Subject:</b> Re: [MarkLogic Dev General] Custom JSON objects<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Hi Kari,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">You can use the &quot;custom&quot; strategy with json:config():&nbsp;<a href="http://docs.marklogic.com/json:config">http://docs.marklogic.com/json:config</a>. There are lots of options that can be specified
 to control the transformation(for instance, &quot;ignore-attribute-names&quot;).<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Alternately, you can manipulate the resulting JSON object, or even code your own transformation. One of the simplest ways to implement your own transformation is to construct nested maps from the
 data you want, and then convert the map to json:<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">let $map := map:new((<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">&nbsp; map:entry(&quot;key&quot;, &quot;value&quot;),<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">&nbsp; map:entry(&quot;anotherKey&quot;, &quot;a different value&quot;)<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">))<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">return xdmp:to-json($map)<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Thanks.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">-jb<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="color:black">From: </span></b><span style="color:black">&lt;<a href="mailto:general-bounces@developer.marklogic.com">general-bounces@developer.marklogic.com</a>&gt; on behalf of Kari Cowan &lt;<a href="mailto:KCowan@alm.com">KCowan@alm.com</a>&gt;<br>
<b>Reply-To: </b>MarkLogic Developer Discussion &lt;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&gt;<br>
<b>Date: </b>Monday, December 14, 2015 at 1:42 PM<br>
<b>To: </b>&quot;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&quot; &lt;<a href="mailto:general@developer.marklogic.com">general@developer.marklogic.com</a>&gt;<br>
<b>Subject: </b>[MarkLogic Dev General] Custom JSON objects<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black"><o:p>&nbsp;</o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="color:black">I had a question from someone on my team if it’s possible to return a more simplified version JSON without child and attributes.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">For example, compare Events JSON object:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><a href="http://data.smartlitigator.com/EventTools/GetEventsTable?display=New&#43;York&#43;Law&#43;Journal|returnType=JSON">http://data.smartlitigator.com/EventTools/GetEventsTable?display=New&#43;York&#43;Law&#43;Journal|returnType=JSON</a><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">To this:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><a href="http://data.smartlitigator.com/QuestV2/Search/?query=law&amp;publication=&amp;section=&amp;orgType=&amp;elementType=&amp;articleType=&amp;practiceArea=&amp;virtualPracticeArea=&amp;subject=&amp;industry=&amp;source=lawcom&amp;almStaff=&amp;lawTopic=&amp;fromDateTime=&amp;toDateTime=&amp;fromDate=1985-01-01&amp;toDate=2015-11-07&amp;start=1&amp;end=10&amp;sort=rank&amp;direction=descending&amp;returnType=falcon_json&amp;callback="><span style="font-size: 10.5pt; font-family: Arial, sans-serif; color: rgb(59, 115, 175); background-color: rgb(245, 245, 245); background-position: initial initial; background-repeat: initial initial;">http://data.smartlitigator.com/QuestV2/Search/?query=law&amp;publication=&amp;section=&amp;orgType=&amp;elementType=&amp;articleType=&amp;practiceArea=&amp;virtualPracticeArea=&amp;subject=&amp;industry=&amp;source=lawcom&amp;almStaff=&amp;lawTopic=&amp;fromDateTime=&amp;toDateTime=&amp;fromDate=1985-01-01&amp;toDate=2015-11-07&amp;start=1&amp;end=10&amp;sort=rank&amp;direction=descending&amp;returnType=falcon_json&amp;callback=</span></a></span><span class="apple-converted-space"><span style="font-size: 10.5pt; font-family: Arial, sans-serif; color: rgb(51, 51, 51); background-color: rgb(245, 245, 245); background-position: initial initial; background-repeat: initial initial;">&nbsp;</span></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Events, simply contructed snippet:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">let $outputJSON:=(&quot;{&amp;#34;events&amp;#34;:[&quot;,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp; let $config := json:config(&quot;full&quot;),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $cx := map:put( $config, &quot;whitespace&quot;, &quot;ignore&quot; )<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp; return fn:string-join(<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;&nbsp;&nbsp; for $doc at $counter in $search-this-partner/event<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;&nbsp;&nbsp; order by $doc/EventStartDate/@date descending<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;&nbsp;&nbsp; return xdmp:quote(json:transform-to-json($doc, $config)),&quot;,&quot;),<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&quot;]}&quot;)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Is it possible to specify which nodes and the format I want to convert, still using transform-to-json, or do I need to write a custom output myself?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">&nbsp;<o:p></o:p></span></p>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><span style="font-size:10.5pt;color:black">
<hr size="2" width="100%" align="center">
</span></div>
<p class="MsoNormal"><span style="font-size:10.5pt;color:black">Learn more about ALM, visit
<a href="http://www.alm.com">http://www.alm.com</a> . – ALM, an Integrated Media Company, is a leading provider of news and information for the legal and commercial real estate markets. ALM’s market-leading brands include The American Lawyer, Corporate Counsel,
 GlobeSt.com, Insight Conferences, Law.com, Law Journal Press, LegalTech, The National Law Journal and Real Estate Forum.
<o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><span style="font-size: 12pt; font-family: 'Times New Roman', serif;">
<hr size="2" width="100%" align="center">
</span></div>
<p class="MsoNormal"><span style="font-size: 12pt; font-family: 'Times New Roman', serif;">Learn more about ALM, visit
<a href="http://www.alm.com">http://www.alm.com</a> . – ALM, an Integrated Media Company, is a leading provider of news and information for the legal and commercial real estate markets. ALM’s market-leading brands include The American Lawyer, Corporate Counsel,
 GlobeSt.com, Insight Conferences, Law.com, Law Journal Press, LegalTech, The National Law Journal and Real Estate Forum.
<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size: 12pt; font-family: 'Times New Roman', serif;">This e-mail and any files transmitted with it are for the sole use of the intended recipient(s) and may contain confidential and privileged information. If you are not
 the intended recipient(s), please reply to the sender and destroy all copies of the original message. Any unauthorized review, use, disclosure, dissemination, forwarding, printing or copying of this email, and/or any action taken in reliance on the contents
 of this e-mail is strictly prohibited and may be unlawful. Where permitted by applicable law, this e-mail and other e-mail communications sent to and from Cognizant e-mail addresses may be monitored.
<o:p></o:p></span></p>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><span style="font-size: 12pt; font-family: 'Times New Roman', serif;">
<hr size="2" width="100%" align="center">
</span></div>
<p class="MsoNormal"><span style="font-size: 12pt; font-family: 'Times New Roman', serif;">Learn more about ALM, visit
<a href="http://www.alm.com">http://www.alm.com</a> . – ALM, an Integrated Media Company, is a leading provider of news and information for the legal and commercial real estate markets. ALM’s market-leading brands include The American Lawyer, Corporate Counsel,
 GlobeSt.com, Insight Conferences, Law.com, Law Journal Press, LegalTech, The National Law Journal and Real Estate Forum.
<o:p></o:p></span></p>
</div>
</div>
<div>
<p></p>
<hr>
Learn more about ALM, visit <a href="http://www.alm.com">http://www.alm.com</a> . – ALM, an Integrated Media Company, is a leading provider of news and information for the legal and commercial real estate markets. ALM’s market-leading brands include The American
 Lawyer, Corporate Counsel, GlobeSt.com, Insight Conferences, Law.com, Law Journal Press, LegalTech, The National Law Journal and Real Estate Forum.
<p></p>
</div>
</div>
</div>
</span>
</body>
</html>