34. Zugriff auf die Titeldaten von ZeitschriftenKapitel hinzufügen
JavaScript zum Zugriff auf die Titeldaten von Zeitschriften mithilfe der ZDB-ID. Das Script ist Bestandteil von BCS-2 V6 Professional. Sie finden es unter dem Dateinamen dnb_gnd_c3_plus_query.js im folgenden Verzeichnis: C:\ProgramData\ImageWareComponents\BCS2_V6_64\js.
// -----------------------------------------------------------
// -----------------------------------------------------------
// Indexnames as Script-Variables:
// use them instead numerics...
// -----------------------------------------------------------
// -----------------------------------------------------------
ind_ME_Order_ID = 1; // Index ME_Order_ID Type: Zeichenkette [kein zugeordneter Meta-Daten-Typ]: Mybib Auftragsnummer
ind_Catalog_ID = 2; // Index Catalog_ID Type: Zeichenkette [Verbund ID]: falls verfügbar: Verbund_ID
ind_ZDB_ID = 3; // Index ZDB_ID Type: Zeichenkette [ZDB ID]: ZDB_ID falls verfügbar
ind_Titel = 4; // Index Titel Type: Zeichenkette [Titel]: Titel (Monografie oder Zeitschrift)
ind_Untertitel = 5; // Index Untertitel Type: Zeichenkette [Untertitel]: Untertitel (Monografie) oder Parallelsachtitel, Zusatztitel (Zeitschrift)
ind_Verlag = 6; // Index Verlag Type: Zeichenkette [Verlag]: Verlag
ind_Verlagsort = 7; // Index Verlagsort Type: Zeichenkette [Ort der Veröffentlichung]: Verlagsort
ind_jahr = 8; // Index jahr Type: Zeichenkette [Datum der Veröffentlichung]: Zeitpunkt der Veröffentlichung
ind_Genre = 9; // Index Genre Type: Optionsliste [Genre]: Das Genre definiert den Typ des Mediums: Monografie (Buch), Artikel, ...
ind_ISO639_3 = 10; // Index ISO639_3 Type: Optionsliste [ISO 639-3 Language Code]: ISO639-3 Sprachen Abkürzung
// -----------------------------------------------------------
// -----------------------------------------------------------
//
// index_for_query:
//
index_for_query = id.index(ind_ZDB_ID);
//
// Ergebnis-Indizes
//
number_index_title = ind_Titel;
number_index_subtitle = ind_Untertitel;
number_index_publisher = ind_Verlag;
number_index_place = ind_Verlagsort;
number_index_year = ind_jahr;
//
// URL für die Abfrage:
//
xr.url = "http://services.dnb.de/sru/zdb?version=1.1&operation=searchRetrieve&query=zdbid%3D" +
index_for_query
;
id.setInformation("Anfrage für die ZDB-ID '" + index_for_query + "' läuft...");
xr.performRequest("MARC21-xml", 1, false);
id.setInformation("");
num_records = 0;
//
// etwas gefunden ?
//
if (xr.elementExists("", "numberOfRecords"))
num_records = xr.elementText ("numberOfRecords");
if (num_records > 0) {
//
// loesche alte interne Ergebnisliste
//
xr.clearMarcItemList();
//
// Definiere Werte zum Zugriff fuer die Indizes
//
xr.addFetchItem ("Titel", "245", "a", "FIRST"); // 1: Titel
xr.addFetchItem ("Untertitel", "245", "b", "FIRST"); // 2: Untertitel
xr.addFetchItem ("Ort", "264", "a", "FIRST"); // 3: Verlagsort
xr.addFetchItem ("Verlag", "264", "b", "FIRST"); // 4: Verlag
xr.addFetchItem ("Jahr", "264", "c", "FIRST"); // 5: Jahr
//
// Extrahiere die Liste aus dem XML-Result
//
xr.fetchMarcItemList ("records", "record", "recordData/record");
if (number_index_title > 0)
id.setIndex(number_index_title, xr.resultColumn(1));
if (number_index_subtitle > 0)
id.setIndex(number_index_subtitle, xr.resultColumn(2));
if (number_index_place > 0)
id.setIndex(number_index_place, xr.resultColumn(3));
if (number_index_publisher > 0)
id.setIndex(number_index_publisher, xr.resultColumn(4));
if (number_index_year > 0)
id.setIndex(number_index_year, xr.resultColumn(5));
} else {
xr.alertUser ("ZDB Abfrage", "KEINE TREFFER für die ZDB-ID '" + index_for_query + "' !");
}
// xr.showXmlResult(); //oeffnet den Browser und zeigt das .xml-Abfrageergebnis an