<?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 Turn XML with dynamic N children elements into N dynamic columns in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364627#M128346</link>
    <description>I have XML inbound that looks like the below, note there are some standard elements, but then N dynamic "property" children for N unknown properties. I'd like to get a new row for each species with its 3 standard properties + all dynamic properties appended after it (comma separated). See below.
&lt;BR /&gt;
&lt;PRE&gt;&amp;lt;root&amp;gt;&lt;BR /&gt;	&amp;lt;species&amp;gt;&lt;BR /&gt;		&amp;lt;type&amp;gt;BEAR&amp;lt;/type&amp;gt;&lt;BR /&gt;		&amp;lt;identifier&amp;gt;2203A&amp;lt;/identifier&amp;gt;&lt;BR /&gt;		&amp;lt;label&amp;gt;Animal&amp;lt;/label&amp;gt;&lt;BR /&gt;		&amp;lt;properties&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;description&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;desc1&amp;lt;/name&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;region&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;abc001&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;	 &amp;nbsp; &amp;lt;/properties&amp;gt;&lt;BR /&gt;	&amp;lt;/species&amp;gt;&lt;BR /&gt;	&amp;lt;species&amp;gt;&lt;BR /&gt;		&amp;lt;type&amp;gt;DOG&amp;lt;/type&amp;gt;&lt;BR /&gt;		&amp;lt;identifier&amp;gt;8777&amp;lt;/identifier&amp;gt;&lt;BR /&gt;		&amp;lt;label&amp;gt;gear&amp;lt;/label&amp;gt;&lt;BR /&gt;		&amp;lt;properties&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;description&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;apple&amp;lt;/name&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;region&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;cccc&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;prop9&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;dddd&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;prop10&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;dlldld&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;	 &amp;nbsp; &amp;lt;/properties&amp;gt;&lt;BR /&gt;	&amp;lt;/species&amp;gt;&lt;BR /&gt;&amp;lt;/root&amp;gt;&lt;BR /&gt;&lt;/PRE&gt;
&lt;BR /&gt;
&lt;FONT face="consolas, monaco, 'bitstream vera sans mono', 'courier new', courier, monospace"&gt;&lt;BR /&gt;I want rows like this, (i.e. note the dynamic N properties are appended to end)&lt;BR /&gt;bear,2203a,animal,desc1,abc001&lt;BR /&gt;dog,8777,gear,apple,cccc,dddd,dlldld&lt;/FONT&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;FONT face="consolas, monaco, 'bitstream vera sans mono', 'courier new', courier, monospace"&gt;How can I do this in Talend when the &amp;lt;property&amp;gt; elements are unknown and can vary?&lt;/FONT&gt;</description>
    <pubDate>Thu, 21 Apr 2016 22:56:30 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2016-04-21T22:56:30Z</dc:date>
    <item>
      <title>Turn XML with dynamic N children elements into N dynamic columns</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364627#M128346</link>
      <description>I have XML inbound that looks like the below, note there are some standard elements, but then N dynamic "property" children for N unknown properties. I'd like to get a new row for each species with its 3 standard properties + all dynamic properties appended after it (comma separated). See below.
&lt;BR /&gt;
&lt;PRE&gt;&amp;lt;root&amp;gt;&lt;BR /&gt;	&amp;lt;species&amp;gt;&lt;BR /&gt;		&amp;lt;type&amp;gt;BEAR&amp;lt;/type&amp;gt;&lt;BR /&gt;		&amp;lt;identifier&amp;gt;2203A&amp;lt;/identifier&amp;gt;&lt;BR /&gt;		&amp;lt;label&amp;gt;Animal&amp;lt;/label&amp;gt;&lt;BR /&gt;		&amp;lt;properties&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;description&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;desc1&amp;lt;/name&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;region&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;abc001&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;	 &amp;nbsp; &amp;lt;/properties&amp;gt;&lt;BR /&gt;	&amp;lt;/species&amp;gt;&lt;BR /&gt;	&amp;lt;species&amp;gt;&lt;BR /&gt;		&amp;lt;type&amp;gt;DOG&amp;lt;/type&amp;gt;&lt;BR /&gt;		&amp;lt;identifier&amp;gt;8777&amp;lt;/identifier&amp;gt;&lt;BR /&gt;		&amp;lt;label&amp;gt;gear&amp;lt;/label&amp;gt;&lt;BR /&gt;		&amp;lt;properties&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;description&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;apple&amp;lt;/name&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;region&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;cccc&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;prop9&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;dddd&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;property&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;name&amp;gt;prop10&amp;lt;/name&amp;gt;&lt;BR /&gt;			 &amp;nbsp;&amp;lt;value&amp;gt;dlldld&amp;lt;/value&amp;gt;&lt;BR /&gt;		 &amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt;	 &amp;nbsp; &amp;lt;/properties&amp;gt;&lt;BR /&gt;	&amp;lt;/species&amp;gt;&lt;BR /&gt;&amp;lt;/root&amp;gt;&lt;BR /&gt;&lt;/PRE&gt;
&lt;BR /&gt;
&lt;FONT face="consolas, monaco, 'bitstream vera sans mono', 'courier new', courier, monospace"&gt;&lt;BR /&gt;I want rows like this, (i.e. note the dynamic N properties are appended to end)&lt;BR /&gt;bear,2203a,animal,desc1,abc001&lt;BR /&gt;dog,8777,gear,apple,cccc,dddd,dlldld&lt;/FONT&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;FONT face="consolas, monaco, 'bitstream vera sans mono', 'courier new', courier, monospace"&gt;How can I do this in Talend when the &amp;lt;property&amp;gt; elements are unknown and can vary?&lt;/FONT&gt;</description>
      <pubDate>Thu, 21 Apr 2016 22:56:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364627#M128346</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-04-21T22:56:30Z</dc:date>
    </item>
    <item>
      <title>Re: Turn XML with dynamic N children elements into N dynamic columns</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364628#M128347</link>
      <description>Selecting Unknown Nodes&lt;BR /&gt;XPath wildcards can be used to select unknown XML nodes.&lt;BR /&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;Wildcard&lt;BR /&gt;Description&lt;BR /&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;*&lt;/TD&gt;&lt;TD&gt;Matches any element node&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;@*&lt;/TD&gt;&lt;TD&gt;Matches any attribute node&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;node()&lt;/TD&gt;&lt;TD&gt;Matches any node of any kind&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;SOURCE: &lt;A href="http://www.w3schools.com/xsl/xpath_syntax.asp" target="_blank" rel="nofollow noopener noreferrer"&gt;www.w3schools.com/xsl/xpath_syntax.asp&lt;/A&gt;</description>
      <pubDate>Fri, 22 Apr 2016 08:17:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364628#M128347</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-04-22T08:17:30Z</dc:date>
    </item>
    <item>
      <title>Re: Turn XML with dynamic N children elements into N dynamic columns</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364629#M128348</link>
      <description>Aware of that, but how does essentially iterate over all subnodes of properties and create additional column values for each one encountered, like what component should I be using in studio. tExtractXmlField or tXmlMap don't seem to be able to do this&lt;BR /&gt;This properties block could contain 0-N properties</description>
      <pubDate>Fri, 22 Apr 2016 14:55:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364629#M128348</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-04-22T14:55:42Z</dc:date>
    </item>
    <item>
      <title>Re: Turn XML with dynamic N children elements into N dynamic columns</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364630#M128349</link>
      <description>Is this waht you want :&lt;BR /&gt;Starting job textxml at 15:38 25/04/2016.&lt;BR /&gt; connecting to socket on port 3952&lt;BR /&gt; connected&lt;BR /&gt;.------+-----.&lt;BR /&gt;| tLogRow_2 |&lt;BR /&gt;|=-----+----=|&lt;BR /&gt;|key |id |&lt;BR /&gt;|=-----+----=|&lt;BR /&gt;|desc1 |2203A|&lt;BR /&gt;|abc001|2203A|&lt;BR /&gt;|apple |8777 |&lt;BR /&gt;|cccc |8777 |&lt;BR /&gt;|dddd |8777 |&lt;BR /&gt;|dlldld|8777 |&lt;BR /&gt;'------+-----'&lt;BR /&gt;.----------------------+-----.&lt;BR /&gt;| tLogRow_3 |&lt;BR /&gt;|=---------------------+----=|&lt;BR /&gt;|key |id |&lt;BR /&gt;|=---------------------+----=|&lt;BR /&gt;|apple,cccc,dddd,dlldld|8777 |&lt;BR /&gt;|desc1,abc001 |2203A|&lt;BR /&gt;'----------------------+-----'&lt;BR /&gt;.----+-----+------.&lt;BR /&gt;| tLogRow_1 |&lt;BR /&gt;|=---+-----+-----=|&lt;BR /&gt;|type|id |label |&lt;BR /&gt;|=---+-----+-----=|&lt;BR /&gt;|BEAR|2203A|Animal|&lt;BR /&gt;|DOG |8777 |gear |&lt;BR /&gt;'----+-----+------'&lt;BR /&gt;.----+-----+------+----------------------.&lt;BR /&gt;| tLogRow_4 |&lt;BR /&gt;|=---+-----+------+---------------------=|&lt;BR /&gt;|type|id |label |key |&lt;BR /&gt;|=---+-----+------+---------------------=|&lt;BR /&gt;|BEAR|2203A|Animal|desc1,abc001 |&lt;BR /&gt;|DOG |8777 |gear |apple,cccc,dddd,dlldld|&lt;BR /&gt;'----+-----+------+----------------------'&lt;BR /&gt; disconnected&lt;BR /&gt;Job textxml ended at 15:38 25/04/2016.</description>
      <pubDate>Mon, 25 Apr 2016 14:38:18 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364630#M128349</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-04-25T14:38:18Z</dc:date>
    </item>
    <item>
      <title>Re: Turn XML with dynamic N children elements into N dynamic columns</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364631#M128350</link>
      <description>Here the script, i deleted the tlogrow components to save space 
  &lt;BR /&gt;SCRIPT_VERSION=4.2, 
  &lt;BR /&gt;DEFAULT_CONTEXT: Default, 
  &lt;BR /&gt;ContextType { 
  &lt;BR /&gt;&amp;nbsp;NAME: Default 
  &lt;BR /&gt;} 
  &lt;BR /&gt;addParameters { 
  &lt;BR /&gt;&amp;nbsp;addElementParameters { 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;JOB_RUN_VM_ARGUMENTS : " -Xms256M -Xmx1024M", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;JOB_RUN_VM_ARGUMENTS_OPTION : "false", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;SCREEN_OFFSET_X : "0", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;SCREEN_OFFSET_Y : "0", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;SCHEMA_OPTIONS : "none",,, 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;IMPLICITCONTEXT_USE_PROJECT_SETTINGS : "true", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;STATANDLOG_USE_PROJECT_SETTINGS : "true", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;MULTI_THREAD_EXECATION : "false", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;IMPLICIT_TCONTEXTLOAD_FILE : "\"\"", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;FIELDSEPARATOR : "\"\"",,, 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;DISABLE_WARNINGS : "false", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;DISABLE_INFO : "false", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;FILE_PATH : "\"E:/X163842/Workspace/.metadata\"", 
  &lt;BR /&gt;&amp;nbsp;&amp;nbsp;ENCODING:ENCODING_TYPE : "ISO-8859-15", 
 &lt;BR /&gt;&lt;BR /&gt;To see the whole post, download it &lt;A href="https://community.qlik.com/legacyfs/online/tlnd_dw_files/0683p000009MdEO"&gt;here&lt;/A&gt;&lt;BR /&gt;&lt;A href="https://community.qlik.com/legacyfs/online/tlnd_dw_files/0683p000009MdEO"&gt;OriginalPost.pdf&lt;/A&gt;</description>
      <pubDate>Mon, 25 Apr 2016 14:56:22 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Turn-XML-with-dynamic-N-children-elements-into-N-dynamic-columns/m-p/2364631#M128350</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2016-04-25T14:56:22Z</dc:date>
    </item>
  </channel>
</rss>

