<?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: SQL Merge monthly datasets in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614108#M179470</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/154786"&gt;@PetePatel&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Sure.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The dataset will not be too wide. If I am merging up to 36 times, it will only be 72 additional variables (36*2).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Unfortunately I have no control over how the monthly datasets are created.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For each month I plan to use the flags to say:&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#ff00ff"&gt;&lt;STRONG&gt;if&amp;nbsp;obs_sia_m1=1 or&amp;nbsp;obs_sia_m2=1 or&amp;nbsp;obs_sia_m3=1 or....obs_sia_m12=1 then obs_sia_12=1; else obs_sia_12=0;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT color="#000000" size="4"&gt;&lt;STRONG&gt;Gack!&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#000000" size="3"&gt;One of the reasons not to go this way. That line of code would need to change for every different number of files "merged". &lt;/FONT&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 27 Dec 2019 16:16:16 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2019-12-27T16:16:16Z</dc:date>
    <item>
      <title>SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614078#M179452</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any idea how I can make the code below more efficient with the ability to work for multiple months?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;At the moment this works for 3 additional months, but if I want 36 additional this will get messy quickly!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The first step runs a base dataset and then merges on the next 3 subsequent months.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%macro months(m0,m1,m2,m3);&lt;/P&gt;&lt;P&gt;data month_&amp;amp;m0.;&lt;BR /&gt;set X.full_pop_&amp;amp;m0.&lt;/P&gt;&lt;P&gt;where obs_ref ne 'BRE';&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;proc sql;&lt;BR /&gt;create table month_&amp;amp;m0. as&lt;BR /&gt;&lt;BR /&gt;select&lt;BR /&gt;&lt;BR /&gt;a.*,&lt;BR /&gt;b.obs_sia as obs_sia_m1,&lt;BR /&gt;b.obs_final_predef_flag as obs_final_predef_flag_m1,&lt;/P&gt;&lt;P&gt;c.obs_sia as obs_sia_m2,&lt;BR /&gt;c.obs_final_predef_flag as obs_final_predef_flag_m2,&lt;/P&gt;&lt;P&gt;d.obs_sia as obs_sia_m3,&lt;BR /&gt;d.obs_final_predef_flag as obs_final_predef_flag_m3&lt;/P&gt;&lt;P&gt;from&lt;BR /&gt;month_&amp;amp;m0. a&lt;BR /&gt;&lt;BR /&gt;left join&lt;BR /&gt;X.full_pop_&amp;amp;m1. b&lt;BR /&gt;on a.ID=b.ID&lt;/P&gt;&lt;P&gt;left join&lt;BR /&gt;X.full_pop_&amp;amp;m2. c&lt;BR /&gt;on a.ID=c.ID&lt;/P&gt;&lt;P&gt;left join&lt;BR /&gt;X.full_pop_&amp;amp;m3. d&lt;BR /&gt;on a.ID=d.ID&lt;/P&gt;&lt;P&gt;;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;%mend months;&lt;/P&gt;&lt;P&gt;%months(201903,201904,201905,201906);&lt;/P&gt;&lt;P&gt;%months(201902,201903,201904,201905);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance,&lt;/P&gt;&lt;P&gt;Pete&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 13:56:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614078#M179452</guid>
      <dc:creator>PetePatel</dc:creator>
      <dc:date>2019-12-27T13:56:11Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614081#M179453</link>
      <description>&lt;P&gt;I don't know if it is possible to join 36 different data sets using PROC SQL (or even if there is a limit), but ignoring that, you need a loop inside the macro.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;UNTESTED CODE&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%macro months(months=);
    %let m1=%scan(&amp;amp;months,1,%str( ));
    data month_&amp;amp;m1.;
        set X.full_pop_&amp;amp;m1.
        where obs_ref ne 'BRE';
    run;

    proc sql;
        create table month_&amp;amp;m1 as select a.*,
        %do i=2 %to %sysfunc(countw(&amp;amp;months));
            %let thismonth=full_pop_%scan(&amp;amp;months,&amp;amp;i,%str( ));
            &amp;amp;thismonth..obs_sia as obs_sia_m&amp;amp;i,
            &amp;amp;thismonth..obs_final_predef_flag as obs_final_predef_flag_m&amp;amp;i
            %if &amp;amp;i&amp;lt;%sysfunc(countw(&amp;amp;months)) %then %str(,);
        %end;
        from month_&amp;amp;m1 a
        %do i=2 %to %sysfunc(countw(&amp;amp;months));
            %let thismonth=full_pop_%scan(&amp;amp;months,&amp;amp;i,%str( ));
            left join X.&amp;amp;thismonth on a.ID=&amp;amp;thismonth..ID
        %end;
    quit;

%mend months;

%months(months=201902 201903 201904 201905)&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Of course, it would be much easier (if possible) not to have the month data split up into data sets by months in the first place. I realize that if you have no control over the format of the input, then the above macro ought to work; but really don't split the data up by month if you have that control. Or, depending on what you intend to do with all of this data, you would be much better off creating a long format data set (which would be much easier to do) rather than this wide data set that you are creating (in fact if you create the long data set and &lt;EM&gt;absolutely&lt;/EM&gt;&lt;EM&gt; must&lt;/EM&gt; have the wide data set, you could create create the wide data set using PROC TRANSPOSE). &lt;STRONG&gt;So, really, ignore the macro above and take advantage of the advice in this paragraph.&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 14:29:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614081#M179453</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-12-27T14:29:58Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614091#M179458</link>
      <description>&lt;P&gt;This bit of your code&lt;/P&gt;
&lt;PRE&gt;a.*,
b.obs_sia as obs_sia_m1,
b.obs_final_predef_flag as obs_final_predef_flag_m1,

c.obs_sia as obs_sia_m2,
c.obs_final_predef_flag as obs_final_predef_flag_m2,

d.obs_sia as obs_sia_m3,
d.obs_final_predef_flag as obs_final_predef_flag_m3
&lt;/PRE&gt;
&lt;P&gt;Indicates to me that you are making a wide data set. There are very few times when that is actually an optimal form of the data for use. For most purposes you will be better off just appending data together and having variables to indicate the actual month (or what ever) is needed. Then use BY group processing to do work grouped by months.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Can you&amp;nbsp; explain why you are making a wide data set? As in how will it be used.&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 15:31:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614091#M179458</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2019-12-27T15:31:07Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614094#M179461</link>
      <description>&lt;P&gt;Sure.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The dataset will not be too wide. If I am merging up to 36 times, it will only be 72 additional variables (36*2).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Unfortunately I have no control over how the monthly datasets are created.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For each month I plan to use the flags to say:&lt;/P&gt;&lt;P&gt;if&amp;nbsp;obs_sia_m1=1 or&amp;nbsp;obs_sia_m2=1 or&amp;nbsp;obs_sia_m3=1 or....obs_sia_m12=1 then obs_sia_12=1; else obs_sia_12=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 15:45:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614094#M179461</guid>
      <dc:creator>PetePatel</dc:creator>
      <dc:date>2019-12-27T15:45:06Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614097#M179464</link>
      <description>&lt;P&gt;1. Stack instead of side by side merge&lt;/P&gt;
&lt;P&gt;2. Transpose - doesn't matter how many data sets or numbers with this approach.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Untested but this should work. You may need to adjust for other factors in your process.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It's cleaner than a macro IMO.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
data long;
set full_pop_201904 - full_pop_201906 indsname = source;
dsn = source;
*you could grab the month/year from the data set name;
month = scan(source, -1, "_");
run;

proc sort data=long;
by ID;
run;

proc transpose data=long out=wide prefix = obs_sia_m;
by ID;
var final_predef_flag;
id month;
run;

&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 27 Dec 2019 15:49:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614097#M179464</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2019-12-27T15:49:18Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614106#M179469</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/154786"&gt;@PetePatel&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Sure.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The dataset will not be too wide. If I am merging up to 36 times, it will only be 72 additional variables (36*2).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Unfortunately I have no control over how the monthly datasets are created.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For each month I plan to use the flags to say:&lt;/P&gt;
&lt;P&gt;if&amp;nbsp;obs_sia_m1=1 or&amp;nbsp;obs_sia_m2=1 or&amp;nbsp;obs_sia_m3=1 or....obs_sia_m12=1 then obs_sia_12=1; else obs_sia_12=0;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;This seems to be a case where you have decided that wide is the proper format, but we are questioning if that is really necessary, especially since a long data set is easier to create and easier to manipulate. What do you plan to do after you create this wide data set — what analysis? what plots? what reports?&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 16:21:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614106#M179469</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-12-27T16:21:03Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614108#M179470</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/154786"&gt;@PetePatel&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Sure.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The dataset will not be too wide. If I am merging up to 36 times, it will only be 72 additional variables (36*2).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Unfortunately I have no control over how the monthly datasets are created.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For each month I plan to use the flags to say:&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#ff00ff"&gt;&lt;STRONG&gt;if&amp;nbsp;obs_sia_m1=1 or&amp;nbsp;obs_sia_m2=1 or&amp;nbsp;obs_sia_m3=1 or....obs_sia_m12=1 then obs_sia_12=1; else obs_sia_12=0;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT color="#000000" size="4"&gt;&lt;STRONG&gt;Gack!&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#000000" size="3"&gt;One of the reasons not to go this way. That line of code would need to change for every different number of files "merged". &lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 27 Dec 2019 16:16:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614108#M179470</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2019-12-27T16:16:16Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614220#M179486</link>
      <description>&lt;P&gt;It's not a matter of "too" wide. Wide is &lt;EM&gt;always&lt;/EM&gt; less efficient than long, as it necessitates dynamic code. Long can be handled with static code where the data drives processing automatically.&lt;/P&gt;</description>
      <pubDate>Sat, 28 Dec 2019 17:54:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614220#M179486</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-12-28T17:54:19Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614401#M179591</link>
      <description>&lt;P&gt;Thanks for this Reeza.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This feels a lot more efficient. Let me try to explain in more detail so you can visualise the problem.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Volumes:&lt;/P&gt;&lt;P&gt;X.full_pop_201903 contains 250k rows and 1000 variables&lt;/P&gt;&lt;P&gt;X.full_pop_201904 contains 220k rows and 1000 variables&lt;/P&gt;&lt;P&gt;X.full_pop_201905 contains 260k rows and 1000 variables&lt;/P&gt;&lt;P&gt;X.full_pop_201906 contains 230k rows and 1000 variables&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;X.full_pop_201903 contains 250k rows and 1000 variables, but I only need 5 of these (id var hlr jkl clo month). This is my base dataset.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I then need to left join the next 3 subsequent datasets&amp;nbsp;X.full_pop_201904,&amp;nbsp;X.full_pop_201905 and&amp;nbsp;X.full_pop_201906 by ID keeping only the 5 variables I require appending variable names by 1 each time.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So for example X.full_pop_201904 will have (var_1 hlr_1 jkl_1 clo_1 month_1) and&amp;nbsp;X.full_pop_201906 will have (var_3 hlr_3 jkl_3 clo_3 month_3).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So my final dataset should contain 250k rows and include ID plus an additional 20 variables (5*4) as below:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ID&lt;/P&gt;&lt;P&gt;var&lt;/P&gt;&lt;P&gt;hlr&lt;/P&gt;&lt;P&gt;jkl&lt;/P&gt;&lt;P&gt;clo&lt;/P&gt;&lt;P&gt;month&lt;/P&gt;&lt;P&gt;var_1&lt;/P&gt;&lt;P&gt;hlr_1&lt;/P&gt;&lt;P&gt;jkl_1&lt;/P&gt;&lt;P&gt;clo_1&lt;/P&gt;&lt;P&gt;month_1&lt;/P&gt;&lt;P&gt;var_2&lt;/P&gt;&lt;P&gt;hlr_2&lt;/P&gt;&lt;P&gt;jkl_2&lt;/P&gt;&lt;P&gt;clo_2&lt;/P&gt;&lt;P&gt;month_2&lt;/P&gt;&lt;P&gt;var_3&lt;/P&gt;&lt;P&gt;hlr_3&lt;/P&gt;&lt;P&gt;jkl_3&lt;/P&gt;&lt;P&gt;clo_3&lt;/P&gt;&lt;P&gt;month_3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I then plan to do some calculations between the 5 variables kept. For example if hlr=1 and (hlr_1=0 or hlr_2=0 or hlr_3=0) then flag=1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to then repeat this in some sort of macro for many more base datasets, each time merging with the subsequent 3 months.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In the end I can put into a proc summary and get results of my calculations for each month.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How can this be possible using your transpose technique below?&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;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 30 Dec 2019 15:11:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/614401#M179591</guid>
      <dc:creator>PetePatel</dc:creator>
      <dc:date>2019-12-30T15:11:33Z</dc:date>
    </item>
    <item>
      <title>Re: SQL Merge monthly datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/615411#M180010</link>
      <description>You append the data sets. Use your BY in the summaries to get the results together. You may need to change logic to work across rows rather than columns or you transpose after stacking. It doesn't have to replace the full process but should easily simplify the merge to a trivial task. &lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Mon, 06 Jan 2020 18:06:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-Merge-monthly-datasets/m-p/615411#M180010</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2020-01-06T18:06:15Z</dc:date>
    </item>
  </channel>
</rss>

