DATA Step, Macro, Functions and more

SAS XML Output

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 19
Accepted Solution

SAS XML Output

Hello,

 

I have a SAS dataset I need to export to XML in the following format:

 

<t i="Title">
<R var1="11111111111" var2="22" var3="22222" var4="1234.12" />
<R var1="222222222" var2="33" var3="111111" var4="2345.23" />
<R var1="333333333" var2="22" var3="22222" var4="1234.12" />
<R var1="444444444" var2="33" var3="111111" var4="2345.23" />
<R var1="555555555" var2="22" v="22222" var4="1234.12" />
<R var1="666666666" var2="33" var3="111111" var4="2345.23" />
<R var1="777777777" var2="22" var3="22222" var4="1234.12" />
<R var1="888888888" var2="33" var3="111111" var4="2345.23" />

 

Is this possible?

 

Thanks,

 

Mark


Accepted Solutions
Solution
‎10-27-2016 06:51 AM
Frequent Contributor
Posts: 129

Re: SAS XML Output

yes,

 

DATA _NULL_;
   length var $32767;
   file "C:\test.xml";
   set sashelp.class;
   if _N_ eq 1 then put '<t i="Title">';
   else do;
      var='<R name="'||strip(name)||'" height="'||strip(put(height,best.))||'" weight="'||strip(put(weight,best.))||'" age="'||strip(put(age,best.))||'" />';
      put var;
   end;
RUN;

Cheers

________________________

- Cheers -

View solution in original post


All Replies
Super User
Super User
Posts: 7,977

Re: SAS XML Output

Yes.  Many ways to do it.  What have you tried?  You could do this with a datastep and put each of the values out to a file.  Simple.  However that snippet you provide doesn't look very XML to me.  Either your using some weird properties on your XML, or that is something else, maybe HTML.  Clarify your problem - what data do you have - post it as a datastep in the post.  Show the full output of what you want.  This shows how to output actual XML:

http://www2.sas.com/proceedings/sugi29/119-29.pdf

Solution
‎10-27-2016 06:51 AM
Frequent Contributor
Posts: 129

Re: SAS XML Output

yes,

 

DATA _NULL_;
   length var $32767;
   file "C:\test.xml";
   set sashelp.class;
   if _N_ eq 1 then put '<t i="Title">';
   else do;
      var='<R name="'||strip(name)||'" height="'||strip(put(height,best.))||'" weight="'||strip(put(weight,best.))||'" age="'||strip(put(age,best.))||'" />';
      put var;
   end;
RUN;

Cheers

________________________

- Cheers -

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 238 views
  • 2 likes
  • 3 in conversation