<?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 Re: read XML all rows once in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/read-XML-all-rows-once/m-p/332143#M272019</link>
    <description>&lt;PRE&gt;
Once you got these tables, you can combine them all together into a table.

filename x temp;
libname xx xmlv2 '/folders/myfolders/temp.xml' xmlmap=x automap=replace;

data want;
 set xx.item: ;
run;


&lt;/PRE&gt;</description>
    <pubDate>Mon, 13 Feb 2017 12:40:18 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2017-02-13T12:40:18Z</dc:date>
    <item>
      <title>read XML all rows once</title>
      <link>https://communities.sas.com/t5/SAS-Programming/read-XML-all-rows-once/m-p/332128#M272018</link>
      <description>&lt;P&gt;Can you please assist.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Below is a sample from an xml we are trying to read. We don’t have the mapper for it and any other for that matter.&lt;/P&gt;&lt;P&gt;Currently we run a library pointing to the http file as below. We then run a proc dataset which gives us the datasets that are in the library. Each &amp;lt;item#&amp;gt; tags are basically rows which SAS interprets as a dataset. So if there are 1000 rows (&amp;lt;item0&amp;gt; to &amp;lt;item999&amp;gt;), it means there would be 1000 datasets to read, and hence means hitting the database a 1000 times.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you please help us with a better way of reading this, hopefully a way that will allow us to read all rows once.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Libname wsdl xml92 "&lt;A href="http://ncss/Webservice/capacity/method/xml/day/&amp;amp;DATE" target="_blank"&gt;http://ncss/Webservice/capacity/method/xml/day/&amp;amp;DATE&lt;/A&gt;";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://ncss/Webservice/capacity/method/xml/day/2016-10-06" target="_blank"&gt;&amp;lt;response&amp;gt;&lt;/A&gt;&lt;A href="http://ncss/Webservice/capacity/method/xml/day/2016-10-06" target="_blank"&gt;&amp;lt;item0&amp;gt;&lt;/A&gt;&amp;lt;Day&amp;gt;2016-10-06&amp;lt;/Day&amp;gt;&amp;lt;Period&amp;gt;0&amp;lt;/Period&amp;gt;&amp;lt;LoadForecast&amp;gt;0&amp;lt;/LoadForecast&amp;gt;&amp;lt;RevisedForecast&amp;gt;0&amp;lt;/RevisedForecast&amp;gt;&amp;lt;DayAheadAvail/&amp;gt;&amp;lt;HydroAvail&amp;gt;0&amp;lt;/HydroAvail&amp;gt;&amp;lt;AdditionalHydro&amp;gt;0&amp;lt;/AdditionalHydro&amp;gt;&amp;lt;OCGTAvail&amp;gt;0&amp;lt;/OCGTAvail&amp;gt;&amp;lt;MaxAvail&amp;gt;0&amp;lt;/MaxAvail&amp;gt;&amp;lt;MinCapacity&amp;gt;0&amp;lt;/MinCapacity&amp;gt;&amp;lt;ActualSentout&amp;gt;22008&amp;lt;/ActualSentout&amp;gt;&amp;lt;RequiredInst&amp;gt;700&amp;lt;/RequiredInst&amp;gt;&amp;lt;RequiredReg&amp;gt;600&amp;lt;/RequiredReg&amp;gt;&amp;lt;RequiredTmr&amp;gt;700&amp;lt;/RequiredTmr&amp;gt;&amp;lt;RequiredInstActual&amp;gt;0&amp;lt;/RequiredInstActual&amp;gt;&amp;lt;RequiredRegActual&amp;gt;0&amp;lt;/RequiredRegActual&amp;gt;&amp;lt;RequiredTmrActual&amp;gt;0&amp;lt;/RequiredTmrActual&amp;gt;&amp;lt;DayAheadAdditionalSpinning&amp;gt;0&amp;lt;/DayAheadAdditionalSpinning&amp;gt;&amp;lt;TotalCurrentLoadLosses&amp;gt;-3503&amp;lt;/TotalCurrentLoadLosses&amp;gt;&amp;lt;TotalLoadLosses&amp;gt;-3503&amp;lt;/TotalLoadLosses&amp;gt;&amp;lt;TotalUnplanned&amp;gt;-665&amp;lt;/TotalUnplanned&amp;gt;&amp;lt;TotalAdditional&amp;gt;1600&amp;lt;/TotalAdditional&amp;gt;&amp;lt;TotalDeviation&amp;gt;-2568&amp;lt;/TotalDeviation&amp;gt;&amp;lt;TotalUnitDeviations&amp;gt;-665&amp;lt;/TotalUnitDeviations&amp;gt;&amp;lt;OperatingRsv&amp;gt;-2568&amp;lt;/OperatingRsv&amp;gt;&amp;lt;Surplus&amp;gt;-2568&amp;lt;/Surplus&amp;gt;&amp;lt;Colour&amp;gt;Red&amp;lt;/Colour&amp;gt;&lt;SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN&gt;item0&amp;gt;&lt;/SPAN&gt;&lt;A href="http://ncss/Webservice/capacity/method/xml/day/2016-10-06" target="_blank"&gt;&amp;lt;item1&amp;gt;&lt;/A&gt;&amp;lt;Day&amp;gt;2016-10-06&amp;lt;/Day&amp;gt;&amp;lt;Period&amp;gt;1&amp;lt;/Period&amp;gt;&amp;lt;LoadForecast&amp;gt;0&amp;lt;/LoadForecast&amp;gt;&amp;lt;RevisedForecast&amp;gt;0&amp;lt;/RevisedForecast&amp;gt;&amp;lt;DayAheadAvail/&amp;gt;&amp;lt;HydroAvail&amp;gt;0&amp;lt;/HydroAvail&amp;gt;&amp;lt;AdditionalHydro&amp;gt;0&amp;lt;/AdditionalHydro&amp;gt;&amp;lt;OCGTAvail&amp;gt;0&amp;lt;/OCGTAvail&amp;gt;&amp;lt;MaxAvail&amp;gt;0&amp;lt;/MaxAvail&amp;gt;&amp;lt;MinCapacity&amp;gt;0&amp;lt;/MinCapacity&amp;gt;&amp;lt;ActualSentout&amp;gt;21684&amp;lt;/ActualSentout&amp;gt;&amp;lt;RequiredInst&amp;gt;700&amp;lt;/RequiredInst&amp;gt;&amp;lt;RequiredReg&amp;gt;600&amp;lt;/RequiredReg&amp;gt;&amp;lt;RequiredTmr&amp;gt;700&amp;lt;/RequiredTmr&amp;gt;&amp;lt;RequiredInstActual&amp;gt;0&amp;lt;/RequiredInstActual&amp;gt;&amp;lt;RequiredRegActual&amp;gt;0&amp;lt;/RequiredRegActual&amp;gt;&amp;lt;RequiredTmrActual&amp;gt;0&amp;lt;/RequiredTmrActual&amp;gt;&amp;lt;DayAheadAdditionalSpinning&amp;gt;0&amp;lt;/DayAheadAdditionalSpinning&amp;gt;&amp;lt;TotalCurrentLoadLosses&amp;gt;-3518&amp;lt;/TotalCurrentLoadLosses&amp;gt;&amp;lt;TotalLoadLosses&amp;gt;-3518&amp;lt;/TotalLoadLosses&amp;gt;&amp;lt;TotalUnplanned&amp;gt;-665&amp;lt;/TotalUnplanned&amp;gt;&amp;lt;TotalAdditional&amp;gt;1600&amp;lt;/TotalAdditional&amp;gt;&amp;lt;TotalDeviation&amp;gt;-2583&amp;lt;/TotalDeviation&amp;gt;&amp;lt;TotalUnitDeviations&amp;gt;-665&amp;lt;/TotalUnitDeviations&amp;gt;&amp;lt;OperatingRsv&amp;gt;-2583&amp;lt;/OperatingRsv&amp;gt;&amp;lt;Surplus&amp;gt;-2583&amp;lt;/Surplus&amp;gt;&amp;lt;Colour&amp;gt;Red&amp;lt;/Colour&amp;gt;&lt;SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN&gt;item1&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt;/response&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thokozani&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 13 Feb 2017 11:29:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/read-XML-all-rows-once/m-p/332128#M272018</guid>
      <dc:creator>Thokozani1</dc:creator>
      <dc:date>2017-02-13T11:29:12Z</dc:date>
    </item>
    <item>
      <title>Re: read XML all rows once</title>
      <link>https://communities.sas.com/t5/SAS-Programming/read-XML-all-rows-once/m-p/332143#M272019</link>
      <description>&lt;PRE&gt;
Once you got these tables, you can combine them all together into a table.

filename x temp;
libname xx xmlv2 '/folders/myfolders/temp.xml' xmlmap=x automap=replace;

data want;
 set xx.item: ;
run;


&lt;/PRE&gt;</description>
      <pubDate>Mon, 13 Feb 2017 12:40:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/read-XML-all-rows-once/m-p/332143#M272019</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2017-02-13T12:40:18Z</dc:date>
    </item>
  </channel>
</rss>

