use Data::Diver qw/ Dive /; ## if (defined $cg->{'mainsnak'}->{'datavalue'}->{'value'}->{'notexist'}) {} ## THIS LINE if ( defined Dive( $cg, qw' mainsnak datavalue value notexist ' ) ) { } #### $ perl -e "use Data::Diver qw/Dive/; $f{a}{b}{c}=666; print Dive(\%f, qw/a b c Q/); print Dive(\%f, qw/a b c/); " 666