I went to the web site for SDMX standards and downloaded all their scheme and created an XML map for each scheme using a method of automapping suggested by user @BrunoMuellerin this question's thread
To import XML file (Hierarchical structured) into SAS
I also use sample 41880 to find all the xsd files in the folder.
http://support.sas.com/kb/41/880.html
Here is my program that finds all xsd files and makes maps of them. Unfinished: I am not sure what map to use for what XML dataset yet.
.
filename DIRLIST pipe 'dir "C:\Users\ptimusk\Documents\SDMX_ML\SDMX_2-1-1_SECTION_3B_SDMX_ML_Schemas_Samples_201108\schemas\*.xsd" ';
data dirlist ;
infile dirlist lrecl=200 truncover;
input line $200.;
if input(substr(line,1,10), ?? mmddyy10.) = . then delete;
length file_name $ 100;
file_name=scan(line,-1," ");
keep file_name;
run;
data _null_;
set dirlist end=end;
count+1;
call symput('read'||left(count),left(trim(file_name)));
call symput('xsdname'||left(count),substr(file_name,1,length(file_name)-4));
if end then call symput('max',count);
run;
%put _user_;
options mprint symbolgen;
%macro readinschemesmakemaps();
%do i=1 %to &max;
filename myxml "C:\Users\ptimusk\Documents\SDMX_ML\SDMX_2-1-1_SECTION_3B_SDMX_ML_Schemas_Samples_201108\schemas\&&read&i..";
filename mymap "C:\Users\ptimusk\Documents\SDMX_ML\SDMX_2-1-1_SECTION_3B_SDMX_ML_Schemas_Samples_201108\schemas\&&xsdname&i...map";
libname myxml xmlv2 automap=replace xmlmap=mymap;
proc contents data=myxml._all_;
run;
%end;
%mend readinschemesmakemaps();
%readinschemesmakemaps();
... View more