$href->{p=root}{cp=1} = 'entry1' $href->{p=root}{cp=1}{n=1} = 'entry11' #### $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=1'}{'n=1'} = 'entry1111'; $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=1'}{'n=2'} = 'entry1112'; $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=1'}{'n=3'} = 'entry1113'; $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=2'}{'n=1'} = 'entry1121'; $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=2'}{'n=2'} = 'entry1122'; $href->{'p=root'}{'cp=1'}{'n=1'}{'n=1'}{'n=2'}{'n=3'} = 'entry1123'; # Let's see what we got: use Data::Dumper; $Data::Dumper::Indent = 1; print Dumper $href; #### $VAR1 = { 'p=root' => { 'cp=1' => { 'n=1' => { 'n=1' => { 'n=1' => { 'n=1' => 'entry1111', 'n=2' => 'entry1112', 'n=3' => 'entry1113' }, 'n=2' => { 'n=1' => 'entry1121', 'n=2' => 'entry1122', 'n=3' => 'entry1123' } } } } } };