svu ravru sku ANTP #### $var1={ university=>{ 'name'=>'svu', 'location'=>'ravru', 'branch'=>{ 'electronics'=>{ 'student'=>[ { 'name'=>'xxx', 'number'=>'12', 'semester'=>{ 'Number'=>'1', 'subjects'=>'7', 'rank'=>'1' } }, { 'name'=>'xxx', 'number'=>'15', 'semester'=>[ { 'number'=>'1', 'subjects'=>'7', 'rank'=>'10' }, { 'number'=>'1', 'subjects'=>'7', 'rank'=>'1' } ] }, { 'name'=>'xxx', 'number'=>'16', 'semester'=>[ { 'number'=>'1', 'subjects'=>'7', 'rank'=>'2' }, { 'number'=>'2', 'subjects'=>'4', 'rank'=>'2' } ] } } ] } }; university=>{ 'name'=>'sku', 'location'=>'ANTP', 'branch'=>{ 'electronics'=>{ 'student'=>[ { 'name'=>'xxx', 'number'=>'12', 'semester'=>{ 'Number'=>'3', 'subjects'=>'6', 'rank'=>'20' } }, { 'name'=>'xxx', 'number'=>'6', 'semester'=>[ { 'number'=>'1', 'subjects'=>'9', 'rank'=>'12' }, { 'number'=>'2', 'subjects'=>'4', 'rank'=>'2' } ] } } ] } }; #### my $template = Template->new(); my $filename = 'output.tex'; $template->process(\*DATA, $data, $filename) || die "Template process failed: ", $template->error(), "\n"; system( "pdflatex $filename" ); __DATA__ \documentclass[a4paper,leqno,twoside]{article} \begin{document} [% FOREACH st IN university %] [% st.name %] [%st.location%] studentdata: [% FOREACH student IN st.branch.electronics.student %] Component type: [%+ student.name +%][%+ student.number +%] [% FOREACH semester IN student.semester %] [%+ semester.number +%] [%+ semester.subjects +%] [%+ semester.rank +%] [% END %] [% END %] [% END %] #### name: svu location: ravru student data: student name=xxx number=12 semester number=1 subjects=7 rank=2 student name=xxx number=15 semester number=1 subjects=7 rank=10 semester number=2 subjects=4 rank=1 student name=xxx number=16 semester number=1 subjects=7 rank=2 semester number=2 subjects=4 rank=2