17. Zugriff auf Metadaten mittels AutorennamensKapitel hinzufügen
JavaScript zum Zugriff auf Meta-Daten mithilfe eines Autorennamens. Abgefragt wird das CBS des GBV (Verbundsystem). Das Script ist Bestandteil von BCS-2 V6 Professional. Sie finden es unter dem Dateinamen gbv_author_query.js im folgenden Verzeichnis: C:\ProgramData\ImageWareComponents\BCS2_V6_64\js.
//
// Zu setzende Variablen, die ein Anpassen dieses Scripts erleichtern sollen:
//
// index_for_query: auf den Index setzen, der den Namen enthält
//
// number_index_title: Nummer des Indexes, der den Titel erhalten soll
// number_index_author: Nummer des Indexes, der den Autor erhalten soll
// number_index_publisher: Nummer des Indexes, der den Verlag erhalten soll
// number_index_year: Nummer des Indexes, der das Erscheinungsjahr erhalten soll
// number_index_description: Nummer des Indexes, der die Beschreibung erhalten soll
// --------------------------------------------------------------------------------------
//
// index_for_query:
//
index_for_query = id.index(2);
//
// Ergebnis-Indizes
//
number_index_title = 3;
number_index_author = 2;
number_index_publisher = 0;
number_index_year = 0;
number_index_description = 6;
//
// URL für die Abfrage:
//
xr.url = "http://sru.gbv.de/gvk?version=1.1&operation=searchRetrieve&query=pica.aut%3D" +
index_for_query;
//
// performRequest() führt den Zugriff durch und holt die Ergebnisliste ab.
//
id.setInformation("Anfrage beim GBV CBS für Autor '" + index_for_query + "' läuft...");
xr.performRequest("dc", 100, false);
id.setInformation("");
num_records = 0;
if (xr.elementExists("", "zs:numberOfRecords"))
num_records = xr.elementText ("zs:numberOfRecords");
if (num_records > 0) {
//
// clearDctemList() löscht die interne Ergebnisliste.
//
xr.clearDcItemList();
xr.addFetchItemDC("Autor", "dc:contributor"); // 1
xr.addFetchItemDC("Titel", "dc:title"); // 2
xr.addFetchItemDC("Verlag", "dc:publisher"); // 3
xr.addFetchItemDC("Jahr", "dc:date"); // 4
xr.addFetchItemDC("Beschreibung", "dc:description"); // 5
xr.fetchDcItemList ("zs:records", "zs:record", "zs:recordData/oai_dc:dc");
//
// Anzeige der Liste
//
dialog_ok = false;
if (xr.itemListLengthDC() > 0) {
dialog_ok = xr.showDcItemList("CBS-Abfrage beim GBV für den Autor '" + index_for_query + "'",
xr.itemListLengthDC() + " Treffer. Bitte doppelt klicken um die Daten zu übernehmen!");
} else {
xr.notifyUser ("Ergebnis Autoren Recherche", "KEINE TREFFER !");
}
if (dialog_ok) {
if (number_index_author > 0)
id.setIndex(number_index_author, xr.resultColumnDC(1));
if (number_index_title > 0)
id.setIndex(number_index_title, xr.resultColumnDC(2));
if (number_index_publisher > 0)
id.setIndex(number_index_publisher, xr.resultColumnDC(3));
if (number_index_year > 0)
id.setIndex(number_index_year, xr.resultColumnDC(4));
if (number_index_description > 0)
id.setIndex(number_index_description, xr.resultColumnDC(5));
} // if dialog_ok...
} else {
xr.alertUser ("Ergebnis Autoren Recherche", "KEINE TREFFER !");
}