function recup_noticeunimarc_suite($notice) { global $info_606_a, $info_900; $info_900 = array(); $record = new iso2709_record($notice, AUTO_UPDATE); $info_606_a = $record->get_subfield_array_array("606", "a"); $info_900 = $record->get_subfield("900", "a", "l", "n"); }
function recup_noticeunimarc_suite($notice) { global $info_464, $index_sujets, $info_610; global $info_900, $info_901, $info_902, $info_903, $info_904, $info_905, $info_906, $info_606_a; $info_464 = ""; $info_900 = ""; $info_901 = ""; $info_902 = ""; $info_903 = ""; $info_904 = ""; $info_905 = ""; $info_906 = ""; $info_610 = $index_sujets; $index_sujets = array(); $record = new iso2709_record($notice, AUTO_UPDATE); for ($i = 0; $i < count($record->inner_directory); $i++) { $cle = $record->inner_directory[$i]['label']; switch ($cle) { case "464": //C'est un périodique donc un dépouillement ou une notice objet $info_464 = $record->get_subfield($cle, "t", "v", "p", "d", "z", "e"); break; default: break; } /* end of switch */ } /* end of for */ $info_606_a = $record->get_subfield_array_array("606", "a"); $info_900 = $record->get_subfield_array_array("900", "a"); $info_901 = $record->get_subfield_array_array("901", "a"); $info_902 = $record->get_subfield_array_array("902", "a"); $info_903 = $record->get_subfield("903", "a"); $info_904 = $record->get_subfield("904", "a"); $info_905 = $record->get_subfield("905", "a"); $info_906 = $record->get_subfield_array_array("906", "a"); }
function recup_noticeunimarc_suite($notice) { global $info_464, $info_200, $info_676; global $info_900, $info_901, $info_902, $info_903, $info_904, $info_910; global $rs, $bl, $dt; $info_464 = ""; $info_900 = ""; $info_901 = ""; $info_902 = ""; $info_903 = ""; $info_904 = ""; $info_910 = ""; $info_200 = ""; $info_676 = ""; $record = new iso2709_record($notice, AUTO_UPDATE); $rs = $record->inner_guide["rs"]; $bl = $record->inner_guide["bl"]; $dt = $record->inner_guide["dt"]; for ($i = 0; $i < count($record->inner_directory); $i++) { $cle = $record->inner_directory[$i]['label']; switch ($cle) { case "464": //C'est un périodique donc un dépouillement ou une notice objet $info_464 = $record->get_subfield($cle, "t", "v", "p", "d", "z", "e", "u"); break; case "200": $info_200 = $record->get_subfield($cle, "a"); default: break; } /* end of switch */ } /* end of for */ $info_900 = $record->get_subfield("900", "a"); $info_901 = $record->get_subfield("901", "a"); $info_902 = $record->get_subfield("902", "a"); $info_903 = $record->get_subfield("903", "a"); $info_910 = $record->get_subfield("910", "a"); $info_904 = $record->get_subfield_array_array("904", "a"); $info_676 = $record->get_subfield("676", "a"); }
function recup_noticeunimarc_suite($notice) { global $info_461, $info_463; global $info_900, $info_901, $info_902, $info_903, $info_904, $info_905, $info_906; global $info_907, $info_908, $info_909, $info_910; global $info_606_a; global $bl, $hl; $info_461 = ""; $info_463 = ""; $info_900 = ""; $info_901 = ""; $info_902 = ""; $info_903 = ""; $info_904 = ""; $info_905 = ""; $info_906 = ""; $info_907 = ""; $info_908 = ""; $info_909 = ""; $info_910 = ""; $record = new iso2709_record($notice, AUTO_UPDATE); $bl = $record->inner_guide['bl']; $hl = $record->inner_guide['hl']; $info_461 = $record->get_subfield("461", "t", "v"); $info_463 = $record->get_subfield("463", "t", "v"); $info_606_a = $record->get_subfield_array_array("606", "a"); $info_900 = $record->get_subfield_array_array("900", "a"); $info_901 = $record->get_subfield_array_array("901", "a"); $info_902 = $record->get_subfield_array_array("902", "a"); $info_903 = $record->get_subfield_array_array("903", "a"); $info_904 = $record->get_subfield("904", "a"); $info_905 = $record->get_subfield_array_array("905", "a"); $info_906 = $record->get_subfield_array_array("906", "a"); $info_907 = $record->get_subfield_array_array("907", "a"); $info_908 = $record->get_subfield("908", "a"); $info_909 = $record->get_subfield("909", "a"); $info_910 = $record->get_subfield("910", "a"); }
function recup_noticeunimarc_suite($notice) { global $info_461, $info_463, $info_464; global $info_606_a; global $info_900, $info_901, $info_902, $info_903, $info_904, $info_905, $info_906; $info_461 = ""; $info_463 = ""; $info_464 = ""; //Compatibilite import memonotices $info_900 = ""; $info_901 = ""; $info_902 = ""; $info_903 = ""; $info_904 = ""; $info_905 = ""; $info_906 = ""; $record = new iso2709_record($notice, AUTO_UPDATE); for ($i = 0; $i < count($record->inner_directory); $i++) { $cle = $record->inner_directory[$i]['label']; switch ($cle) { case "461": //Lien vers perio $info_461 = $record->get_subfield($cle, "t", "v", "e", "9"); break; case "463": //Lien vers bulletin $info_463 = $record->get_subfield($cle, "t", "v", "e", "9"); break; case "464": //Compatibilite import memonotices $info_464 = $record->get_subfield($cle, "t", "v", "d", "p", "z", "e"); break; default: break; } /* end of switch */ } /* end of for */ $info_606_a = $record->get_subfield_array_array("606", "a"); $info_900 = $record->get_subfield_array_array("900", "a"); $info_901 = $record->get_subfield_array_array("901", "a"); $info_902 = $record->get_subfield_array_array("902", "a"); $info_903 = $record->get_subfield("903", "a"); $info_904 = $record->get_subfield("904", "a"); $info_905 = $record->get_subfield_array_array("905", "a"); $info_906 = $record->get_subfield_array_array("906", "a"); }
function recup_noticeunimarc_suite($notice) { global $info_001, $info_464, $info_464_a, $info_464_e, $info_464_f, $info_461_3, $info_461_t, $info_200_a, $info_200_e, $info_210_d, $info_902_a, $info_686_a, $info_462_3, $info_462_t; global $aut_700, $aut_701, $aut_702, $aut_710, $aut_711, $aut_712; global $accomp_345_c; global $info_675_a; global $info_600_b, $info_601_b, $info_602_b, $info_605_b, $info_606_b, $info_607_b, $info_610_b; global $info_610_a, $info_610_b, $info_610_e, $info_610_j, $info_610_x, $info_610_y, $info_610_z, $info_610_3, $info_610; global $info_345_d, $info_071_a, $info_071_b; global $info_901; $record = new iso2709_record($notice, AUTO_UPDATE); $info_001 = $record->get_subfield("001"); $info_464 = $record->get_subfield_array_array("464"); $info_464_a = $record->get_subfield_array("464", "a"); $info_464_e = $record->get_subfield_array("464", "e"); $info_464_f = $record->get_subfield_array("464", "f"); $info_461_3 = $record->get_subfield("461", "3"); $info_461_t = $record->get_subfield("461", "t"); $info_200_a = $record->get_subfield("200", "a"); $info_200_e = $record->get_subfield_array("200", "e"); $info_210_d = $record->get_subfield("210", "d"); $info_902_a = $record->get_subfield_array_array("902", "a"); $info_686_a = $record->get_subfield("686", "a"); $info_462_3 = $record->get_subfield("462", "3"); $info_462_t = $record->get_subfield("462", "t"); $info_600_b = $record->get_subfield_array_array("600", "b"); $info_601_b = $record->get_subfield_array_array("601", "b"); $info_602_b = $record->get_subfield_array_array("602", "b"); $info_605_b = $record->get_subfield_array_array("605", "b"); $info_606_b = $record->get_subfield_array_array("606", "b"); $info_607_b = $record->get_subfield_array_array("607", "b"); $info_610_b = $record->get_subfield_array_array("610", "b"); $info_610_a = $record->get_subfield_array_array("610", "a"); $info_610_b = $record->get_subfield_array_array("610", "b"); $info_610_e = $record->get_subfield_array_array("610", "e"); $info_610_j = $record->get_subfield_array_array("610", "j"); $info_610_x = $record->get_subfield_array_array("610", "x"); $info_610_y = $record->get_subfield_array_array("610", "y"); $info_610_z = $record->get_subfield_array_array("610", "z"); $info_610_3 = $record->get_subfield_array_array("610", "3"); $info_610 = $record->get_subfield_array_array("610"); //$info_610=$record->get_subfield_array_array("610","a","b","3","e"); $aut_700 = $record->get_subfield("700", "a", "b", "3", "p", "4"); $aut_701 = $record->get_subfield("701", "a", "b", "3", "p", "4"); $aut_702 = $record->get_subfield("702", "a", "b", "3", "p", "4"); $aut_710 = $record->get_subfield("710", "a", "b", "3", "p", "4"); $aut_711 = $record->get_subfield("711", "a", "b", "3", "p", "4"); $aut_712 = $record->get_subfield("712", "a", "b", "3", "p", "4"); $accomp_345_c = $record->get_subfield("345", "c"); //CDU : classification décimale universelle $info_675_a = $record->get_subfield("675", "a"); // Prix pour disque et video $info_345_d = $record->get_subfield("345", "d"); // Code commercial $info_071_a = $record->get_subfield("071", "a"); // Producteur -> editeur $info_071_b = $record->get_subfield("071", "b"); // Centre d'intérêt //$info_901_a=$record->get_subfield_array_array("901","a"); $info_901 = $record->get_subfield("901", "a", "3"); }
function recup_noticeunimarc_suite($notice) { global $info_999, $info_001, $doc_type, $info_901, $info_905, $info_906, $info_994_x, $info_994_y; global $info_503, $info_503_j, $info_503_d, $info_305; global $info_600_f, $info_600_b, $info_600_3; global $info_601_3; global $info_606_3; global $info_607_3; global $info_608_a, $info_608_j, $info_608_x, $info_608_y, $info_608_z, $info_608_3, $serie_200, $tit_200a; global $aut_700, $aut_701, $aut_702; $info_901 = array(); $info_905 = array(); $info_906 = array(); $info_999 = array(); $info_305 = array(); $info_503 = array(); $info_503_j = array(); $info_503_d = array(); $info_001 = array(); $info_200 = array(); $info_994_x = array(); $info_994_y = array(); $record = new iso2709_record($notice, AUTO_UPDATE); $info_001 = $record->get_subfield("001"); $info_200 = $record->get_subfield("200", "b"); if (preg_match("#article#i", $info_200[0])) { $doc_type = "x"; } $info_901 = $record->get_subfield("901", "a"); $info_901 = $record->get_subfield("905", "a"); $info_901 = $record->get_subfield("906", "a"); $info_999 = $record->get_subfield("999", "a"); $info_503 = $record->get_subfield("503", "a", "e", "f", "h", "m", "n"); $info_503_j = $record->get_subfield_array_array("503", "j"); $info_503_d = $record->get_subfield_array_array("503", "d"); $info_305 = array(); $info_305 = $record->get_subfield("305", "a"); $info_600_3 = array(); $info_600_3 = $record->get_subfield_array_array("600", "3"); $info_600_b = array(); $info_600_b = $record->get_subfield_array_array("600", "b"); $info_600_f = array(); $info_600_f = $record->get_subfield_array_array("600", "f"); $info_601_3 = array(); $info_601_3 = $record->get_subfield_array_array("601", "3"); $info_606_3 = array(); $info_606_3 = $record->get_subfield_array_array("606", "3"); $info_607_3 = array(); $info_607_3 = $record->get_subfield_array_array("607", "3"); $info_608_3 = array(); $info_608_3 = $record->get_subfield_array_array("608", "3"); $info_608_a = array(); $info_608_a = $record->get_subfield_array_array("608", "a"); $info_608_j = array(); $info_608_j = $record->get_subfield_array_array("608", "j"); $info_608_x = array(); $info_608_x = $record->get_subfield_array_array("608", "x"); $info_608_y = array(); $info_608_y = $record->get_subfield_array_array("608", "y"); $info_608_z = array(); $info_608_z = $record->get_subfield_array_array("608", "z"); $aut_700 = array(); $aut_700 = $record->get_subfield("700", "a", "b", "c", "d", "4", "N"); $aut_701 = array(); $aut_701 = $record->get_subfield("701", "a", "b", "c", "d", "4", "N"); $aut_702 = array(); $aut_702 = $record->get_subfield("702", "a", "b", "c", "d", "4", "N"); $info_994_x = $record->get_subfield("994", "x"); $info_994_y = $record->get_subfield("994", "y"); if (count($serie_200)) { $titre = implode(" ; ", $tit_200a); if (trim($serie_200[0]['i'])) { $titre .= ". " . trim($serie_200[0]['i']); } if (trim($serie_200[0]['h'])) { $titre .= ", " . trim($serie_200[0]['h']); } $tit_200a = array(); $serie_200 = array(); $tit_200a[] = $titre; } }
function getEnrichment($notice_id, $source_id, $type = "", $enrich_params = array()) { global $charset; $enrichment = array(); $this->noticeToEnrich = $notice_id; // récupération du code sudoc (PPN) de la notice stocké dans le champ perso de type "resolve" avec pour label "SUDOC" $mes_pp = new parametres_perso("notices"); $mes_pp->get_values($notice_id); $values = $mes_pp->values; foreach ($values as $field_id => $vals) { if ($mes_pp->t_fields[$field_id]['TYPE'] == "resolve") { $field_options = _parser_text_no_function_("<?xml version='1.0' encoding='" . $charset . "'?>\n" . $mes_pp->t_fields[$field_id]['OPTIONS'], "OPTIONS"); foreach ($field_options['RESOLVE'] as $resolve) { if (strtoupper($resolve['LABEL']) == "SUDOC") { $infos = explode('|', $vals[0]); $ppn = $infos[0]; } } } } if ($ppn == "") { return $this->build_error(); } $url = "carmin.sudoc.abes.fr"; $port = "210"; $base = "abes-z39-public"; $format = "unimarc"; $term = "@attr 1=12 @attr 2=3 \"{$ppn}\" "; $id = yaz_connect("{$url}:{$port}/{$base}", array("piggyback" => false)); yaz_range($id, 1, 1); yaz_syntax($id, strtolower($format)); yaz_search($id, "rpn", $term); $options = array("timeout" => 45); //Override le timeout du serveur mysql, pour être sûr que le socket dure assez longtemps pour aller jusqu'aux ajouts des résultats dans la base. $sql = "set wait_timeout = 120"; mysql_query($sql); yaz_wait($options); $error = yaz_error($id); $error_info = yaz_addinfo($id); if (!empty($error)) { yaz_close($id); return $this->build_error(); } else { $hits = yaz_hits($id); $hits += 0; if ($hits) { $rec = yaz_record($id, 1, "raw"); $record = new iso2709_record($rec); if (!$record->valid()) { yaz_close($id); return $this->build_error(); } $lines = ""; $document->document_type = $record->inner_guide[dt]; $document->bibliographic_level = $record->inner_guide[bl]; $document->hierarchic_level = $record->inner_guide[hl]; if ($document->hierarchic_level == "") { if ($document->bibliographic_level == "s") { $document->hierarchic_level = "1"; } if ($document->bibliographic_level == "m") { $document->hierarchic_level = "0"; } } $indicateur = array(); $cle_list = array(); for ($i = 0; $i < count($record->inner_directory); $i++) { $cle = $record->inner_directory[$i]['label']; $indicateur[$cle][] = substr($record->inner_data[$i]['content'], 0, 2); $field_array = $record->get_subfield_array_array($cle); $line = ""; if (!$cle_list[$cle]) { foreach ($field_array as $field) { $line .= $cle . " "; foreach ($field as $ss_field) { $line .= "\$" . $ss_field["label"] . $ss_field["content"]; } $line .= "<br>"; } } $cle_list[$cle] = 1; $lines .= $line; } if ($lines == "") { yaz_close($id); return $this->build_error(); } } else { yaz_close($id); return $this->build_error(); } } yaz_close($id); $enrichment['sudoc']['content'] = $lines; $enrichment['source_label'] = $this->msg['sudoc_enrichment_source']; return $enrichment; }
function recup_noticeunimarc($notice) { global $id_unimarc; global $doc_type; global $hierarchic_level; global $bibliographic_level; global $bibliographic_level_origine; global $hierarchic_level_origine; global $isbn; global $issn_011; global $prix; global $prix_cd; global $cb; global $lang_code; global $org_lang_code; global $tit_200a; global $tit_200c; global $tit_200d; global $tit_200e; global $tit_200v; global $serie_200; global $editeur_lieu; global $editeur_adr; global $editeur_nom; global $editeur_date; global $editeur_pays; global $editeur_pmbfields; global $no_edition; global $npages; global $ill; global $size; global $accomp; global $collection_225; global $n_contenu; global $n_resume; global $n_gen; global $EAN; global $collection_410; global $collection_411; global $serie; global $index_sujets; global $dewey; global $dewey_l; global $tu_500; global $tu_500_r; global $tu_500_s; global $tu_500_j; global $aut_700; global $aut_701; global $aut_702; global $aut_710; global $aut_711; global $aut_712; global $origine_notice; global $lien, $eformat; global $info_995; global $info_996; global $info_852; global $analytique; global $info_600_a, $info_600_j, $info_600_x, $info_600_y, $info_600_z; global $info_601_a, $info_601_j, $info_601_x, $info_601_y, $info_601_z; global $info_602_a, $info_602_j, $info_602_x, $info_602_y, $info_602_z; global $info_605_a, $info_605_j, $info_605_x, $info_605_y, $info_605_z; global $info_606_a, $info_606_j, $info_606_x, $info_606_y, $info_606_z; global $info_607_a, $info_607_j, $info_607_x, $info_607_y, $info_607_z; global $info_686; global $indicateur; global $link_generate; $id_import = array(); $id_unimarc = 0; $indicateur = array(); $doc_type = ""; $hierarchic_level = '0'; $bibliographic_level = 'm'; $isbn = array(); $issn_011 = array(); $prix = array(); $prix_cd = array(); $cb = ""; $lang_code = array(); $org_lang_code = array(); $tit_200a = array(); $tit_200c = array(); $tit_200d = array(); $tit_200e = array(); $tit_200v = array(); $serie_200 = array(); $editeur_lieu = array(); $editeur_adr = array(); $editeur_nom = array(); $editeur_date = array(); $editeur_pays = array(); $editeur_pmbfields = array(); $npages = array(); $no_edition = array(); $ill = array(); $size = array(); $accomp = array(); $collection_225 = array(); $collection_410 = array(); $collection_411 = array(); $n_contenu = array(); $n_resume = array(); $n_gen = array(); $EAN = array(); $serie = array(); $index_sujets = array(); $dewey = array(); $dewey_l = array(); $tu_500 = array(); $tu_500_r = array(); $tu_500_s = array(); $tu_500_j = array(); $aut_700 = array(); $aut_701 = array(); $aut_702 = array(); $aut_710 = array(); $aut_711 = array(); $aut_712 = array(); $origine_notice = array(); $lien = array(); $eformat = array(); $info_995 = array(); $info_852 = array(); $analytique = array(); $info_600_a = array(); $info_600_j = array(); $info_600_x = array(); $info_600_y = array(); $info_600_z = array(); $info_601_a = array(); $info_601_j = array(); $info_601_x = array(); $info_601_y = array(); $info_601_z = array(); $info_602_a = array(); $info_602_j = array(); $info_602_x = array(); $info_602_y = array(); $info_602_z = array(); $info_605_a = array(); $info_605_j = array(); $info_605_x = array(); $info_605_y = array(); $info_605_z = array(); $info_606_a = array(); $info_606_j = array(); $info_606_x = array(); $info_606_y = array(); $info_606_z = array(); $info_607_a = array(); $info_607_j = array(); $info_607_x = array(); $info_607_y = array(); $info_607_z = array(); $info_686 = array(); $info_996 = array(); $record = new iso2709_record($notice, AUTO_UPDATE); if (!$record->valid("import_notice")) { // On ne traite pas les notices invalides /*echo "<pre>"; print_r($record->inner_data); echo "</pre>"; die();*/ $num_notice = $record->get_subfield("001"); $titr = $record->get_subfield_array("200", 'a'); $requete = "insert into error_log(error_origin,error_text) values('import_func_" . addslashes(SESSid) . ".inc.php','" . addslashes("La notice (numéro : " . $num_notice[0] . ", titre : " . $titr[0] . ") n'a pas été reprise. <BR/><span style='color:#FF0000'>Erreur(s):" . implode("<BR/>", $record->errors) . "</span>") . "')"; mysql_query($requete); return false; } $doc_type = $record->inner_guide['dt']; $bibliographic_level_origine = $record->inner_guide['bl']; $hierarchic_level_origine = $record->inner_guide['hl']; // traitements particuliers, solution d'urgence pour les pério et autres. if ($link_generate) { //Si on choisit d'importer les liens on reprend le niveau switch ($bibliographic_level_origine) { case 'a': $hierarchic_level = '2'; $bibliographic_level = 'a'; break; case 's': if ($hierarchic_level_origine <= '1') { $hierarchic_level = '1'; $bibliographic_level = 's'; } else { $hierarchic_level = '2'; $bibliographic_level = 'b'; } break; case 'm': case 'c': default: // suite à pb d'export Orphée : si inconnu, non conforme, on force à 0 et m $hierarchic_level = '0'; $bibliographic_level = 'm'; break; } } else { //Sinon on reprend tous en temps que monographie $hierarchic_level = '0'; $bibliographic_level = 'm'; } for ($i = 0; $i < count($record->inner_directory); $i++) { $cle = $record->inner_directory[$i]['label']; //$length=$record->inner_directory[$i]['length']; //$adress=$record->inner_directory[$i]['adress']; $flag_cle = 0; if (!array_key_exists($cle, $indicateur)) { $flag_cle = 1; } // memo indicateur de champ $indicateur[$cle][] = substr($record->inner_data[$i]['content'], 0, 2); if ($flag_cle) { switch ($cle) { case "001": $id_import = $record->get_subfield($cle); $id_unimarc = $id_import[0]; break; case "010": /* isbn */ $isbn = $record->get_subfield($cle, 'a'); $prix = $record->get_subfield($cle, 'd'); break; case "011": /* issn_011 */ $issn_011 = $record->get_subfield($cle, 'a'); break; case "071": /* barcode */ $cb = $record->get_subfield($cle, "a"); break; case "101": /* language */ $lang_code = $record->get_subfield_array($cle, "a"); $org_lang_code = $record->get_subfield_array($cle, "c"); break; case "200": /* titles */ $tit_200a = $record->get_subfield_array($cle, 'a'); $tit_200c = $record->get_subfield_array($cle, 'c'); $tit_200d = $record->get_subfield_array($cle, 'd'); $tit_200e = $record->get_subfield_array($cle, 'e'); $tit_200v = $record->get_subfield_array($cle, 'v'); $serie_200 = $record->get_subfield($cle, "h", "i"); break; case "205": /* no_edition */ $no_edition = $record->get_subfield_array($cle, "a"); break; case "210": /* publisher */ // b: adr $editeur_lieu = $record->get_subfield_array_array($cle, "a"); $editeur_adr = $record->get_subfield_array_array($cle, "b"); $editeur_nom = $record->get_subfield_array_array($cle, "c"); $editeur_date = $record->get_subfield_array($cle, "d"); $editeur_pays = $record->get_subfield_array_array($cle, "z"); $editeur_pmbfields = $record->get_subfield_array_array($cle, "9"); break; case "215": /* description */ $npages = $record->get_subfield_array($cle, "a"); $ill = $record->get_subfield_array($cle, "c"); $size = $record->get_subfield_array($cle, "d"); $accomp = $record->get_subfield_array($cle, "e"); break; case "225": /* collection */ $collection_225 = $record->get_subfield($cle, "a", "i", "v", "x"); break; case "300": /* inside */ $n_gen = $record->get_subfield_array($cle, "a"); break; case "327": /* inside */ $n_contenu = $record->get_subfield_array($cle, "a"); break; case "330": /* abstract */ $n_resume = $record->get_subfield_array($cle, "a"); break; case "345": /* EAN */ $EAN = $record->get_subfield($cle, "b"); $prix_cd = $record->get_subfield($cle, "d"); break; case "410": /* collection */ $collection_410 = $record->get_subfield($cle, "v", "t", "x", "3"); break; case "411": /* sub-collection */ $collection_411 = $record->get_subfield($cle, "v", "t", "x", "3"); break; case "461": /* series */ $serie = $record->get_subfield($cle, "t", "v"); break; case "464": /* analytique */ // $a pour le tout-venant le reste pour les périodiques bretons ! C'est un periodique donc un depouillement ou une notice objet $analytique = $record->get_subfield_array_array($cle); $info_464 = $record->get_subfield($cle, "t", "v", "p", "d", "z", "e"); break; case "500": // titres uniformes $tu_500 = $record->get_subfield($cle, "a", "i", "k", "l", "m", "n", "q", "u", "w", "3"); $tu_500_r = $record->get_subfield_array_array($cle, "r"); $tu_500_s = $record->get_subfield_array_array($cle, "s"); $tu_500_j = $record->get_subfield_array_array($cle, "j"); break; case "600": // 600 PERSONAL NAME USED AS SUBJECT $info_600_a = $record->get_subfield_array_array($cle, "a"); $info_600_j = $record->get_subfield_array_array($cle, "j"); $info_600_x = $record->get_subfield_array_array($cle, "x"); $info_600_y = $record->get_subfield_array_array($cle, "y"); $info_600_z = $record->get_subfield_array_array($cle, "z"); break; case "601": // 601 CORPORATE BODY NAME USED AS SUBJECT $info_601_a = $record->get_subfield_array_array($cle, "a"); $info_601_j = $record->get_subfield_array_array($cle, "j"); $info_601_x = $record->get_subfield_array_array($cle, "x"); $info_601_y = $record->get_subfield_array_array($cle, "y"); $info_601_z = $record->get_subfield_array_array($cle, "z"); break; case "602": // 602 FAMILY NAME USED AS SUBJECT $info_602_a = $record->get_subfield_array_array($cle, "a"); $info_602_j = $record->get_subfield_array_array($cle, "j"); $info_602_x = $record->get_subfield_array_array($cle, "x"); $info_602_y = $record->get_subfield_array_array($cle, "y"); $info_602_z = $record->get_subfield_array_array($cle, "z"); break; case "605": // 605 TITLE USED AS SUBJECT $info_605_a = $record->get_subfield_array_array($cle, "a"); $info_605_j = $record->get_subfield_array_array($cle, "j"); $info_605_x = $record->get_subfield_array_array($cle, "x"); $info_605_y = $record->get_subfield_array_array($cle, "y"); $info_605_z = $record->get_subfield_array_array($cle, "z"); break; case "606": // RAMEAU / TOPICAL NAME USED AS SUBJECT $info_606_a = $record->get_subfield_array_array($cle, "a"); $info_606_j = $record->get_subfield_array_array($cle, "j"); $info_606_x = $record->get_subfield_array_array($cle, "x"); $info_606_y = $record->get_subfield_array_array($cle, "y"); $info_606_z = $record->get_subfield_array_array($cle, "z"); break; case "607": // 607 GEOGRAPHICAL NAME USED AS SUBJECT $info_607_a = $record->get_subfield_array_array($cle, "a"); $info_607_j = $record->get_subfield_array_array($cle, "j"); $info_607_x = $record->get_subfield_array_array($cle, "x"); $info_607_y = $record->get_subfield_array_array($cle, "y"); $info_607_z = $record->get_subfield_array_array($cle, "z"); break; case "610": /* mots clé */ $index_sujets = $record->get_subfield_array($cle, "a"); break; case "676": /* Dewey */ $dewey = $record->get_subfield_array($cle, "a"); $dewey_l = $record->get_subfield_array($cle, "l"); $dewey_num = $record->get_subfield_array($cle, "l", "3"); break; case "686": /* pcdm3 */ $info_686 = $record->get_subfield($cle, "a", "l", "3"); break; case "700": $aut_700 = $record->get_subfield($cle, "a", "b", "c", "d", "4", "f", "N", "3"); break; case "701": $aut_701 = $record->get_subfield($cle, "a", "b", "c", "d", "4", "f", "N", "3"); break; case "702": $aut_702 = $record->get_subfield($cle, "a", "b", "c", "d", "4", "f", "N", "3"); break; case "710": $aut_710 = $record->get_subfield($cle, "a", "b", "c", "g", "d", "4", "f", "e", "k", "l", "m", "n", "3"); break; case "711": $aut_711 = $record->get_subfield($cle, "a", "b", "c", "g", "d", "4", "f", "e", "k", "l", "m", "n", "3"); break; case "712": $aut_712 = $record->get_subfield($cle, "a", "b", "c", "g", "d", "4", "f", "e", "k", "l", "m", "n", "3"); break; case "801": /* origine du catalogage */ $origine_notice = $record->get_subfield($cle, "a", "b"); break; case "852": /* infos du SCD de Lyon 3 */ $info_852 = $record->get_subfield($cle, "b", "h", "p", "y"); break; case "856": /* url */ $lien = $record->get_subfield($cle, "u"); $eformat = $record->get_subfield($cle, "q"); break; case "995": /* infos de la BDP */ $info_995 = $record->get_subfield($cle, "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "M", "N", "O", "P", "R", "S", "T", "U", "V", "W", "Z"); break; case "996": /* infos supplémentaires... ? */ $info_996 = $record->get_subfield($cle, "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "M", "N", "O", "P", "R", "S", "T", "U", "V", "W", "Z"); break; default: break; } /* end of switch */ } } /* end of for */ //Récupération des catégories en lien avec le fichier xml category_auto::get_info_categ($record); return true; }
function recup_noticeunimarc_suite($notice) { global $info_100, $info_606_a, $info_606_9, $info_900, $info_999, $info_950, $info_951, $info_996_9; $info_100 = array(); $info_606_a = array(); $info_606_9 = array(); $info_900 = array(); $info_950 = array(); $info_951 = array(); $info_999 = array(); $info_996_9 = array(); $record = new iso2709_record($notice, AUTO_UPDATE); $info_100 = $record->get_subfield("100", "a"); $info_606_a = $record->get_subfield_array_array("606", "a"); $info_606_9 = $record->get_subfield_array_array("606", "9"); $info_900 = $record->get_subfield("900", "a", "b", "c", "l", "n", "t"); $info_950 = $record->get_subfield("950", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k"); $info_951 = $record->get_subfield("951", "a", "b", "c", "l", "n", "f", "t"); $info_996_9 = $record->get_subfield_array_array("996", "9"); $info_999 = $record->get_subfield("999", "a", "b", "c", "l", "n", "f", "t"); }