our %states = ( AL => 'Alabama', AK => 'Alaska', ... ); ... state => sub {return 'state' => $states{$_[1]->{_content}}; } or address => sub { if (exists $_[1]->{id}) { $sthFetchAddress->execute($_[1]->{id}); my $addr = $sthFetchAddress->fetchrow_hashref(); $sthFetchAddress->finish(); return 'address' => $addr; } else { return 'address' => $_[1]; } }