18. Zugriff auf Metadaten mittels einer PPN
Kapitel hinzufügen

JavaScript zum Zugriff auf Metadaten mittels einer PPN. Abgefragt wird das CBS des GBV. Das Script ist Bestandteil von BCS-2 V6 Professional. Sie finden es unter dem Dateinamen gbv_ppn_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 die PPN 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(1);

//
// Ergebnis-Indizes
//
number_index_title       = 0;
number_index_author      = 0;
number_index_publisher   = 0;
number_index_year        = 0;
number_index_description = 0;

//
// URL für die Abfrage:
//

xr.url = "http://sru.gbv.de/gvk?version=1.1&operation=searchRetrieve&query=pica.ppn%3D" +
         index_for_query +
         "&maximumRecords=10&recordSchema=dc";

//
// performRequest() führt den Zugriff durch und holt die Ergebnisliste ab.
//
id.setInformation("Anfrage beim GBV CBS für PPN '" + index_for_query + "' läuft...");
xr.performRequest("dc", 10, false);
id.setInformation("");

num_records = 0;

if (xr.elementExists("", "zs:numberOfRecords"))
  num_records = xr.elementText ("zs:numberOfRecords");

if (num_records > 0) {

    if (number_index_author > 0)
       id.setIndex(number_index_title,  xr.elementText ("dc:contributor"));

    if (number_index_title > 0)
       id.setIndex(number_index_title,  xr.elementText ("dc:title"));

    if (number_index_description > 0)
       id.setIndex(number_index_description,  xr.elementText ("dc:description"));

} else {
     xr.alertUser ("PPN Abfrage", "KEINE TREFFER für die PPN '" + index_for_query + "' !");
}