2 # isis_sf($isis_row,'isis_field'[,'subfield'])
4 # e.g. isis_sf($row,'700','a')
8 my $isis_id = shift @_;
9 my $subfield = shift @_;
11 my $i = shift @_ || 0;
15 if ($row->{$isis_id}->[$i]) {
16 my $sf = OpenIsis::subfields($row->{$isis_id}->[$i]);
17 if (! defined $subfield || length($subfield) == 0) {
18 # subfield list undef, empty or no defined subfields for this record
19 my $all_sf = $row->{$isis_id}->[$i];
20 $all_sf =~ s/\^./ /g; # nuke definitions
22 } elsif ($sf->{$subfield}) {
23 return $sf->{$subfield};