]> git.donarmstrong.com Git - reference.git/blobdiff - lib/Reference/Retrieve/PubMed.pm
update how journal information and issn are handled
[reference.git] / lib / Reference / Retrieve / PubMed.pm
index 6cc771be078e9db14c95cfdf087d1b117626e771..78cf93533641c6b190f04c039e6f1ca77b303ba9 100644 (file)
@@ -201,8 +201,8 @@ sub _create_reference_from_xml($$){
                             title      => [_fix_medline_title($ref->{MedlineCitation}->{Article}->{ArticleTitle})],
                             abstract   => [_fix_medline_abstract($ref->{MedlineCitation}->{Article}->{Abstract}->{AbstractText})],
                             journal    => [_fix_medline_journal($ref->{MedlineCitation}->{Article}->{Journal},
-                                                                $ref->{MedlineCitation}->{Article}->{MedlineJournalInfo},
-                                                                $ua,
+                                                     $ref->{MedlineCitation}->{MedlineJournalInfo},
+                                                     $ua,
                                                                 #@_, # configuration
                                                                )],
                             _fix_ids($ref),
@@ -332,9 +332,14 @@ sub _fix_medline_journal($$$;){
      #         </TranslationStack>
      # </eSearchResult>
 
-     my $ISSN = $journal->{ISSN};
+     my $ISSN = length($journal->{ISSN})? $journal->{ISSN} : $medline_journal->{ISSNLinking};
      if (ref $ISSN) {
          $ISSN = $ISSN->{content};
+  }
+     if (not length($ISSN)) {
+         use Data::Printer;
+         p $journal;
+         die "No ISSN";
      }
      my $url = qq(http://www.ncbi.nlm.nih.gov/nlmcatalog/?term=${ISSN}[ISSN]&format=text&report=xml);
      print STDERR "url: $url\n" if $DEBUG;