532 |
|
|
533 |
if (defined($s->{sf}->{$f})) { |
if (defined($s->{sf}->{$f})) { |
534 |
my @subfields = keys %{ $s->{sf}->{$f} }; |
my @subfields = keys %{ $s->{sf}->{$f} }; |
|
warn "$f has subfields ",dump( @subfields ); |
|
535 |
map { |
map { |
536 |
$o .= sprintf(" %s:%d%s", $_, |
$o .= sprintf(" %s:%d%s", $_, |
537 |
$s->{sf}->{$f}->{$_}->{count}, |
$s->{sf}->{$f}->{$_}->{count}, |
538 |
$s->{sf}->{$f}->{$_}->{repeatable} ? '*' : '', |
$s->{sf}->{$f}->{$_}->{repeatable} ? '*' : '', |
539 |
); |
); |
540 |
} ( |
} ( |
541 |
# first indicators |
# first indicators and other special subfields |
542 |
sort( grep( /^i[12]$/, @subfields ) ), |
sort( grep { length($_) > 1 } @subfields ), |
543 |
# then subfileds |
# then subfileds (single char) |
544 |
sort( grep( !/^i[12]$/, @subfields ) ), |
sort( grep { length($_) == 1 } @subfields ), |
545 |
); |
); |
546 |
} |
} |
547 |
|
|