the subfields, like the datafields, need the appropriate XML namespace
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 13 Nov 2008 18:36:34 +0000 (18:36 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Thu, 13 Nov 2008 18:36:34 +0000 (18:36 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_4@11164 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Cat/BibCommon.pm

index 3575c07..a14db79 100644 (file)
@@ -193,9 +193,9 @@ sub find_free_tcn {
 
        my $add_039 = 0;
 
-       my $xpath = '//marc:datafield[@tag="039"]/subfield[@code="a"]';
+       my $xpath = '//marc:datafield[@tag="039"]/marc:subfield[@code="a"]';
        my ($tcn) = $marcxml->documentElement->findvalue($xpath) =~ /(\w+)\s*$/o;
-       $xpath = '//marc:datafield[@tag="039"]/subfield[@code="b"]';
+       $xpath = '//marc:datafield[@tag="039"]/marc:subfield[@code="b"]';
        my $tcn_source = $marcxml->documentElement->findvalue($xpath) || "System Local";
 
        if(_tcn_exists($editor, $tcn, $tcn_source, $existing_rec)) {
@@ -206,14 +206,14 @@ sub find_free_tcn {
 
 
        if(!$tcn) {
-               $xpath = '//marc:datafield[@tag="020"]/subfield[@code="a"]';
+               $xpath = '//marc:datafield[@tag="020"]/marc:subfield[@code="a"]';
                ($tcn) = $marcxml->documentElement->findvalue($xpath) =~ /(\w+)\s*$/o;
                $tcn_source = "ISBN";
                if(_tcn_exists($editor, $tcn, $tcn_source, $existing_rec)) {$tcn = undef;}
        }
 
        if(!$tcn) { 
-               $xpath = '//marc:datafield[@tag="022"]/subfield[@code="a"]';
+               $xpath = '//marc:datafield[@tag="022"]/marc:subfield[@code="a"]';
                ($tcn) = $marcxml->documentElement->findvalue($xpath) =~ /(\w+)\s*$/o;
                $tcn_source = "ISSN";
                if(_tcn_exists($editor, $tcn, $tcn_source, $existing_rec)) {$tcn = undef;}
@@ -227,7 +227,7 @@ sub find_free_tcn {
        }
 
        if(!$tcn) {
-               $xpath = '//marc:datafield[@tag="035"]/subfield[@code="a"]';
+               $xpath = '//marc:datafield[@tag="035"]/marc:subfield[@code="a"]';
                ($tcn) = $marcxml->documentElement->findvalue($xpath) =~ /(\w+)\s*$/o;
                $tcn_source = "System Legacy";
                if(_tcn_exists($editor, $tcn, $tcn_source, $existing_rec)) {$tcn = undef;}