/[Biblio-Isis]/trunk/lib/Biblio/Isis.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Biblio/Isis.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 45 by dpavlin, Thu Jul 6 20:31:46 2006 UTC revision 50 by dpavlin, Fri Jul 7 21:11:01 2006 UTC
# Line 7  use File::Glob qw(:globally :nocase); Line 7  use File::Glob qw(:globally :nocase);
7  BEGIN {  BEGIN {
8          use Exporter ();          use Exporter ();
9          use vars qw ($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);          use vars qw ($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
10          $VERSION     = 0.14;          $VERSION     = 0.20;
11          @ISA         = qw (Exporter);          @ISA         = qw (Exporter);
12          #Give a hoot don't pollute, do not export more than needed by default          #Give a hoot don't pollute, do not export more than needed by default
13          @EXPORT      = qw ();          @EXPORT      = qw ();
# Line 464  which will be used for identifiers, C<i1 Line 464  which will be used for identifiers, C<i1
464               }               }
465             ],             ],
466    
467    In case there are repeatable subfields in record, this will create
468    following structure:
469    
470      '900' => [ {
471            'a' => [ 'foo', 'bar', 'baz' ],
472      }]
473    
474  This method will also create additional field C<000> with MFN.  This method will also create additional field C<000> with MFN.
475    
476  =cut  =cut
# Line 496  sub to_hash { Line 503  sub to_hash {
503                          if ($l =~ m/\^/) {                          if ($l =~ m/\^/) {
504                                  foreach my $t (split(/\^/,$l)) {                                  foreach my $t (split(/\^/,$l)) {
505                                          next if (! $t);                                          next if (! $t);
506                                          $val->{substr($t,0,1)} = substr($t,1);                                          my ($sf,$v) = (substr($t,0,1), substr($t,1));
507                                            warn "### $k^$sf:$v",$/ if ($self->{debug} > 1);
508                                            if (ref( $val->{$sf} ) eq 'ARRAY') {
509                                                    push @{ $val->{$sf} }, $v;
510                                            } elsif (defined( $val->{$sf} )) {
511                                                    # convert scalar field to array
512                                                    $val->{$sf} = [ $val->{$sf}, $v ];
513                                            } else {
514                                                    $val->{$sf} = $v;
515                                            }
516                                  }                                  }
517                          } else {                          } else {
518                                  $val = $l;                                  $val = $l;

Legend:
Removed from v.45  
changed lines
  Added in v.50

  ViewVC Help
Powered by ViewVC 1.1.26