32. Erzeugung einer Marc21-XML aus C3+-XML
Kapitel hinzufügen

JavaScript zur Erzeugung einer Marc21-XML-Datei aus einer zuvor generierten C-3 Plus-XML-Datei. Das Skript ist Bestandteil von BCS-2 V6 Professional. Sie finden es unter dem Dateinamen tt_generate_marc21_xml.js im folgenden Verzeichnis: C:\ProgramData\ImageWareComponents\BCS2_V6_64\js.

// -----------------------------------------------------------
// -----------------------------------------------------------
// Indexnames as Script-Variables:
// use them instead numerics...
// -----------------------------------------------------------
// -----------------------------------------------------------

ind_c3_type             =  1;   // Index c3_type  Type: Optionsliste [kein zugeordneter Meta-Daten-Typ]: Typ für c3-xml (monograph, serial, periodical)
ind_c3_id               =  2;   // Index c3_id  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_order_id            =  3;   // Index order_id  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: ME- Auftragsnummer
ind_medium_number       =  4;   // Index medium_number  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_swets_id            =  5;   // Index swets_id  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_library_network_id  =  6;   // Index library_network_id  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: Verbundkennung
ind_local_id            =  7;   // Index local_id  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_zdb_id              =  8;   // Index zdb_id  Type: Zeichenkette [ZDB ID]:
ind_main_title          =  9;   // Index main_title  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: Titel
ind_publisher           = 10;   // Index publisher  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_edition             = 11;   // Index edition  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_year                = 12;   // Index year  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: Erscheinungsjahr des Werkes
ind_main_language       = 13;   // Index main_language  Type: Optionsliste [ISO 639-3 Language Code]: ISO639-3 Sprachen Abkürzung
ind_volume_issue        = 14;   // Index volume_issue  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_volume              = 15;   // Index volume  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_issue               = 16;   // Index issue  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_publication_date    = 17;   // Index publication_date  Type: Zeichenkette [Datum der Veröffentlichung]:
ind_publication_place   = 18;   // Index publication_place  Type: Zeichenkette [Ort der Veröffentlichung]:
ind_callnumber          = 19;   // Index callnumber  Type: Zeichenkette [Signatur]:
ind_issn                = 20;   // Index issn  Type: Zeichenkette [ISSN]:
ind_isbn                = 21;   // Index isbn  Type: Zeichenkette [ISBN]:
ind_classification_code = 22;   // Index classification_code  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_lib_network_isil    = 23;   // Index lib_network_isil  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]:
ind_letzte_Seitennummer = 24;   // Index letzte Seitennummer  Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: letzte Seite  des letzten Artikel

// -----------------------------------------------------------
// -----------------------------------------------------------



//
// Fetch C3+ XML Result from Job's KeyMap
//
c3_xml_string = job.getKeyValue("C3_PLUS_XML");


//ut.notifyUser('C3 XML', c3_xml_string);

//
// nun Marc 21 XML erzeugen...
//
var map;
map = ut.c3XmlConv(c3_xml);

if (0 != map['rc']) {
   ut.notifyUser('Es ist ein Fehler aufgetreten:', 'Bitte melden Sie folgendes an Ihren Adminitstrator: \n\n' +map['stderr']);
} else {
   marc21_xml_string = map['result_string'];
   job.setKeyValue("Marc21XML", marc21_xml_string);
//ut.notifyUser('Marc21', marc21_xml_string);
}

marc21_xml_string;