<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic how to separate array elements of json block in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276207#M52359</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;I have a sample json block as below --&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; "firstName": "John",&lt;BR /&gt;&amp;nbsp; "lastName" : "doe",&lt;BR /&gt;&amp;nbsp; "age"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 26,&lt;BR /&gt;&amp;nbsp; "address"&amp;nbsp; : {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "streetAddress": "naist street",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "city"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : "Nara",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "postalCode"&amp;nbsp;&amp;nbsp; : "630-0192"&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; "phoneNumbers": [&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : "iPhone",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number": "0123-4567-8888"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : "home",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number": "0123-4567-8910"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; ]&lt;BR /&gt;}&lt;/P&gt; 
&lt;P&gt;And my job as follows --&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;tFileInputJson--&amp;gt;tExtractJsonFields--&amp;gt;tMap--&amp;gt;tWriteJsonField--&amp;gt;tFileOutputDelimited&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;To extract "type" and "number" elements at tExtractJsonFields component, I am using Json query respectively as---&lt;/P&gt; 
&lt;P&gt;"$.phoneNumbers[*].type"&lt;/P&gt; 
&lt;P&gt;"$.phoneNumbers[*].number"&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;After my job finishes I need the output just like the input block. But instead I get as below --&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; "firstName": "John",&lt;BR /&gt;&amp;nbsp; "lastName" : "doe",&lt;BR /&gt;&amp;nbsp; "age"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 26,&lt;BR /&gt;&amp;nbsp; "address"&amp;nbsp; : {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "streetAddress": "naist street",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "city"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : "Nara",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "postalCode"&amp;nbsp;&amp;nbsp; : "630-0192"&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; "phoneNumbers":&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : [ "iPhone","home"],&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number":[ "0123-4567-8888","0123-4567-8910"]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }}&lt;/P&gt; 
&lt;P&gt;What do I do to achieve separate type/number values in the output? What changes do I make changes and in which components?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Please reply.&amp;nbsp;Thanks in advance.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sat, 16 Nov 2024 09:38:02 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2024-11-16T09:38:02Z</dc:date>
    <item>
      <title>how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276207#M52359</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;I have a sample json block as below --&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; "firstName": "John",&lt;BR /&gt;&amp;nbsp; "lastName" : "doe",&lt;BR /&gt;&amp;nbsp; "age"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 26,&lt;BR /&gt;&amp;nbsp; "address"&amp;nbsp; : {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "streetAddress": "naist street",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "city"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : "Nara",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "postalCode"&amp;nbsp;&amp;nbsp; : "630-0192"&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; "phoneNumbers": [&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : "iPhone",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number": "0123-4567-8888"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : "home",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number": "0123-4567-8910"&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; ]&lt;BR /&gt;}&lt;/P&gt; 
&lt;P&gt;And my job as follows --&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;tFileInputJson--&amp;gt;tExtractJsonFields--&amp;gt;tMap--&amp;gt;tWriteJsonField--&amp;gt;tFileOutputDelimited&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;To extract "type" and "number" elements at tExtractJsonFields component, I am using Json query respectively as---&lt;/P&gt; 
&lt;P&gt;"$.phoneNumbers[*].type"&lt;/P&gt; 
&lt;P&gt;"$.phoneNumbers[*].number"&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;After my job finishes I need the output just like the input block. But instead I get as below --&lt;/P&gt; 
&lt;P&gt;&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; "firstName": "John",&lt;BR /&gt;&amp;nbsp; "lastName" : "doe",&lt;BR /&gt;&amp;nbsp; "age"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : 26,&lt;BR /&gt;&amp;nbsp; "address"&amp;nbsp; : {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "streetAddress": "naist street",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "city"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : "Nara",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "postalCode"&amp;nbsp;&amp;nbsp; : "630-0192"&lt;BR /&gt;&amp;nbsp; },&lt;BR /&gt;&amp;nbsp; "phoneNumbers":&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "type"&amp;nbsp; : [ "iPhone","home"],&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "number":[ "0123-4567-8888","0123-4567-8910"]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }}&lt;/P&gt; 
&lt;P&gt;What do I do to achieve separate type/number values in the output? What changes do I make changes and in which components?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Please reply.&amp;nbsp;Thanks in advance.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 09:38:02 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276207#M52359</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-11-16T09:38:02Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276208#M52360</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Hi&lt;/P&gt; 
&lt;P&gt;If it is a json file, you can use tFileInputJson (without tExtractJsonField) to extract data from the file.On tWriteJsonField, you need to set phoneNumber as loop element and set group by columns, see:&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 427px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009Luin.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/138672iEAB87ABFB6EF732A/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009Luin.png" alt="0683p000009Luin.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2.png" style="width: 425px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009LuZO.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/155388i40171D776B7FA26E/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009LuZO.png" alt="0683p000009LuZO.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;This is the result on the console:&lt;/P&gt; 
&lt;P&gt;Starting job forum27908 at 15:49 14/06/2017.&lt;/P&gt; 
&lt;P&gt;[statistics] connecting to socket on port 3524&lt;BR /&gt;[statistics] connected&lt;BR /&gt;{"firstName":"John","lastName":"doe","age":"26","address":{"streetAddress":"naist street","city":"Nara","postalCode":"630-0192","phoneNumbers":[{"type":"iPhone","number":"31-10-9268"},{"type":"home","number":"31-10-9290"}]}}&lt;BR /&gt;[statistics] disconnected&lt;BR /&gt;Job forum27908 ended at 15:49 14/06/2017. [exit code=0]&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Regards&lt;/P&gt; 
&lt;P&gt;Shong&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 14 Jun 2017 08:53:53 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276208#M52360</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-14T08:53:53Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276209#M52361</link>
      <description>&lt;P&gt;I did exactly what you've said. I had put phoneNumbers as loop element and also had set group by columns (type &amp;amp; number). I still didn't get the required output. And I have to use tExtractJsonFields component&amp;nbsp;because the input component may change in my job, also I need to perform some transformations on the columns using tMap. What do I do?&lt;/P&gt;</description>
      <pubDate>Wed, 14 Jun 2017 10:06:15 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276209#M52361</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-14T10:06:15Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276210#M52362</link>
      <description>&lt;P&gt;Hi&lt;/P&gt; 
&lt;P&gt;Which version of studio are you using? Can you export your job and upload it? It will be helpful for me to check what you are doing wrong in your job.&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Regards&lt;/P&gt; 
&lt;P&gt;Shong&lt;/P&gt;</description>
      <pubDate>Wed, 14 Jun 2017 10:32:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276210#M52362</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-14T10:32:05Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276211#M52363</link>
      <description>Try to map your json to tXMlMap and create 2 attribute to phoneNumber i.e. Type and number and loop the phoneNumber column but do not group Type and number</description>
      <pubDate>Wed, 14 Jun 2017 21:16:36 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276211#M52363</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-14T21:16:36Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276212#M52364</link>
      <description>I am afraid I cannot upload the job. I have tried various examples but I am getting the similar output i.e. for instance, {"City" : ["Fallon"]} instead of [{City : "Fallon"}]
&lt;BR /&gt;Could you please tell me if there is an array element like in this example, what xpath query/json query to be written in tExtractJsonFields in order to retrieve the required output?</description>
      <pubDate>Fri, 16 Jun 2017 13:28:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276212#M52364</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-16T13:28:49Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276213#M52365</link>
      <description>I didn't understand. Could you please show any example?</description>
      <pubDate>Fri, 16 Jun 2017 13:29:27 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276213#M52365</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-16T13:29:27Z</dc:date>
    </item>
    <item>
      <title>Re: how to separate array elements of json block</title>
      <link>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276214#M52366</link>
      <description>&lt;P&gt;Hello&lt;BR /&gt;In this case, the phoneNumbers is an array element. You need to set Loop XPATH query to "/phoneNumbers", see&lt;/P&gt; 
&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="1.png" style="width: 664px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009LvKA.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/144423i85B9DAF9546D98EA/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009LvKA.png" alt="0683p000009LvKA.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 20 Jun 2017 08:20:52 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/how-to-separate-array-elements-of-json-block/m-p/2276214#M52366</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-06-20T08:20:52Z</dc:date>
    </item>
  </channel>
</rss>

