• Keine Ergebnisse gefunden

Die Komponenten der Gatewaykomponente

I faktenorientiertes i Retrieval

4.3 Die internen problembezogenen Datenbanken

4.4.3 Die Komponenten der Gatewaykomponente

Abbildung 4 zeigt die Komponenten der Gateway-Komponente.

Abb. 4: Gateway-Komponente des WIREMAN

Der ZugrHf auf nicht problembezogene interne und externe Datenbanken erfolgt im WIREMAN Ober die Gatewaykomportente. Die Komponenten der Gatewaykomponente sind: die Daten-bankmodelle .die Komponente zur Selektion der relevanten Datenbanken , die Komponente zur Übersetzung von Prolog in die EC-CCL-Kommandodatei, die Obersetzungskomponente ESURS, die Interaktionskomponente und die Downloading-Komponente.

4.4.3.1 Die Datenbankmodell«

Datenbanken18 sind Datenbasen Im Angebot eines Host Sie sind im Framemodell beschrieben. Ihre Beschreibungen enthalten manche Informationen direkt (z.B. Preise pro Anschaltminute, Preis pro Dokument und Ausgabeformat), Werteren aber auch Informationen von den Beschreibungen der zugehörigen Datenbasen (z.B. main entity, Datenbankfelder, Indexierung) und der zugehörigen Datenbankanbieter (z.B. Retrievalsprache, Hostadresse, PaBwort, Ausgabeformat von Dokumenten und sonstigen Hostmeldungen). Die wichtigsten Merkmale der Datenbasis sind die 'main entity" und deren Eigenschaften. Die "mainentity" bezeichnet dabei den Objekttyp, zu dem alle Einträge in der Datenbank Instanzen sind. Die Eigenschaften korrespondieren weitgehend mit den Datenbasisfeldern. Es kann jedoch auch vorkommen, daß mehrere Eigenschaften in einem Feld, und daß eine Eigenschaft in mehreren Feldern vorkommt Die wichtigsten Eigenschaften der Datenbankanbieter sind die Retrievalsprache und die Informationen, die zur Herstellung der

Diese beinhalten auch Modrtl« dar Datenbasen und dar Datenbankanbieter.

Mit Angaba dar Reihanfolg«, in dar In ihnen recherchiert werden soll.

Dia vorgenommene Festlegung dar Begriffe •Datenbankanbieter", •Datenbasis" und "Datenbank" ist funkttorwl notwendig, well nur für Datenbanken eine eindeutige Kostenangabe gemacht werden kann, nicht Jedoch für Datenbasen oder Datenbankanbieter. Der Name einer Datenbank setzt sich zusammen aus dem zugehörigen Datenbasisnamen und dem zugehörigen Host. So bezeichnet "Creditreform/GENIOS* die Datenbank "CredKreform"

im Angebot von GENOS.

Verbindung benötigt werden. Datenbankspezifisch sind die Ausgabeformate und deren Kosten sowie die Zeiträume innerhalb derer die Datenbanken aktualisiert werden. Die Datenbankbeschreibuna der Datenbank "Creditreform" im Angebot von "GENIOS" ist in Abb. 5 exemplarisch dargestellt1 .

Creditreform/GENIOS

is a:value: Datenbank.

Host: value: GENIOS.

Datenbasis: value: Creditreform.

main_entity: ifneeded: übernimm Wert aus Creditreform.

Eigenschaften: if_needed: übernimm Wert aus Creditreform.

Name: value: vc.

EigenschaftenFeWer: value: [eigen_feld(umsatz,['UM']), eigen_feld(Beschäftigte,['BE']), eigen_fekJ(Firmenname, ['CO']), eigen_feid(Land, ['CN']), eigenfeld (Eigentümer, ['EG']), eigen_feld(Export,'EX'), eigen_feW(Gründungsjahr,['GL']), eigen_feld(Handelsregister_Nr,['HR']), eigenjeld (Import, ['IM']), elgen_fe)d(Kapital,['KA']), eigen_feld(Management,['NN']), eigen_feld(Standort, ['OR'.'PL']), eigen_feld(Branche. ['PC'.'PX']), eigen_feld(Rechtsform, ['RF']), eigen_feld(Stra8e.['ST<]), eigen_fekJ(Telefon_Nr,[TE']), eigen_feld(rätigkeitsbeschreibung,[TX']), elgen_feld(Datum, ['YR'])].

KanalAdresse: Ifneeded: übernimm Datex_P(Wert) von GENIOS.

Retrievalsprache: ifneeded: übernimm Wert von GENIOS.

geographische_Abdeckung: ifneeded: übernimm Wert von Creditreform.

zeitlicheAbdeckung: Ifneeded: übernimm Wert von Creditreform.

Kosten: ifneeded: kostenberechnung_genios_creditreform(Wert).

Qualität: If needed: übernimm Wert von Creditreform.

Abb. 5: Frame Creditreform/GENIOS

Den Slot "main entity" universell als Slot zur Metabeschreibung von Datenbanken zu verwenden, setzt voraus, däB alle betrachteten Datenbasen Eigenschaften von Objekten eines Typs enthalten.

Der Eintrag im Slot "main entit/ beschreibt diesen Typ. Vorläufig sind aus der Anwendung heraus motiviert nur 3 Objekttypen als Einträge erlaubt, nämlich "firma", "branche" und "dokument". Der Slot

Aus Platzgründen werden nur dl« wichtigsten Slots aufgeführt, die als Informationen zur automatischen Durchführung der anstehenden Funktionen gebraucht werden. Die Beschreibungen der Felder der Datenbanken, die Im wesentlichen Angaben zum Typ der Einträge z.B. Währung "DM" oder "Dollar" unterschiedliche Codes etc.

enthalten, müssen ebenso wie die Beschreibungen der Ausgabeformate, deren Beschreibung nötig ist, um das auf die Frage bezogen kostengünstigste Ausgabeformat zu bestimmen, aus Platzgründen unterbleiben. Eine vollständige Bestreitung findet »tcn in GtASEN (IJöOb). ^

ist u.a. notwendig, um die einschlägigen Datenbanken zu einer Suchfrage auszuwählen. Ebenfalls muß hierzu bekannt sein, zu weichen Eigenschaften der "main entity" die Datenbasis Information enthalt. Diese Information ist im Slot 'Eigenschaften" gespeichelt"

Im Slot "Eigenschaften Felder" werden nur Eigenschaften aufgeführt, die bei der Modellierung des Objektes, das in der Datenbankbeschreibung als "mainentity" vorkommt (im Beispiel: "firma"), vorgesehen sind und für die Felder in der Datenbank existieren. Felder und Eigenschaften werden einander in diesem Slot gleichzeitig zugeordnet.

Wie man aus der Modellierung der Datenbank Creditreform/GENIOS erkennt, sind Slots der Objekte

"Creditreform" und "GENIOS", für die intendierte Verwendung des Objekts "Creditreform/GENIOS"

relevant. Für die einzelnen Datenbankinstanzen sollen diese Slots durch Zugriff auf die Werte von den zugehörigen Datenbasis- und Hostinstanzen "vererbt" werden. Hierzu wird die "ifjieeded"

Facette benutzt.

4.4.3.2 Die Komponente zur Selektion der Datenbanken

Die beiden Prädikate "suche eigenschaften von objekt(...)" und "suche alle objekte(...)" bilden die Grundlage für alle Aktionen "der Komponente, die die einschlägigen Datenbanken auswählt und in eine Liste schreibt. Die Auswahl der Datenbanken geschieht durch Bezugnahme auf den In der Prolog-Anfrage spezifizierten Typ des aktuellen Objektes. Dieser Typ oder einer seiner Oberbegriffe muß notwendigerweise mit der "main entity" einer Datenbank, der im "main entity"-Slot der Datenbankbeschreibungen gespeichert ist, matchen, wenn diese als einschlägige Datenbank für die anstehende Recherche selektiert werden soll. Findet sich also für den aktuellen Typ keine Datenbank mit entsprechender mainentity, wird hinsichtlich des aktuellen Typs in der "is_a"-Hierarchie weiter nach oben gegangen und nach Datenbanken mit entsprechenden "abstrakteren* "main entities"

gesucht. Zusätzlich müssen alle "Eigenschaftsnamen" in "Suchende Eigenschaften" und alle Elemente von "Interessierende Eigenschaften" in der Menge der Eigenschaften des Slots

"Eigenschaften" der gleichen Datenbankbeschreibung enthalten sein. Ferner werden nur Datenbanken berücksichtigt, in denen es möglich ist, Informationen zu finden, die noch nicht in die internen problembezogenen Datenbanken eingespielt wurden. Dies geschieht durch Zugriff auf das Kommunikationsgedächtnis und den "Updatezyklen'-Slot in den Datenbankbeschreibungen.

Nur wenn alle Tests für eine Datenbank positiv sind, kommt die Datenbank für eine Anfrage in Frage.

Für die Festlegung der Reihenfolge, In der in den Datenbanken recherchiert werden soll, werden zusätzlich noch folgende Kriterien herangezogen:

- interne Datenbank vor externer Datenbank - Qualität der Datenbank

- Kostenschätzung einer Recherche in der Datenbank Das Kommunikationsgedächtnis

Das Kommunikationsgedächtnis enthält Informationen darüber, wann in welchen Datenbanken welche konkreten Recherchen durchgeführt wurden. Als Beschreibung für die durchgeführten Recherchen werden einfach die Prolog-Prädikate verwendet, die als Input der Gateway-Komponente in der Vergangenheit aufgetaucht sind, weil mit ihnen die entsprechenden Abgleiche am einfachsten gemacht werden können. Zusätzlich werden diese noch mit dem Zeitpunkt verknüpft, an dem die Recherchen durchgeführt wurden, und mit der Datenbank, in der recherchiert wurde. Zusammen mit der Information über die "Updatezyklen" der Datenbanken läßt sich unter Verwendung des Kommunikationsgedächtnisses feststellen, ob eine bestimmte Recherche gegenwärtig überhaupt sinnvoll ist, d.h. ob sie gegenwärtig überhaupt neue Information liefern kann. Diese Überprüfung dient der Komponente zur Auswahl der Datenbanken als notwendiges Kriterium dafür, daß eine Datenbank als relevant eingestuft wird.

4.4.3.3 Die Komponente zur Obersetzung der Prolog-Anfrageprädikate in EC-CCL

Die Übersetzung der beiden Prolog-Prädikate, die als Input der Gateway-Komponente vorkommen können, in EC-CCL liefert als Output nicht nur ein einzelnes EC-CCL-Kommando, sondern die vollständige Kommandodatei zur Durchführung der Recherche. Es werden die vier EC-CCL-Kommandos BASE, FIND, SHOW und STOP nacheinander aufgebaut. Das BASE-Kommando wird einfach erstellt, indem "BASE "Datenbankname"* geschrieben wird, wobei "Datenbankname" der Name der Datenbank ist, der von der Komponente, die die Datenbankauswahl vorgenommen hat, an die erste Stelle der Liste der potentiell relevanten Datenbanken geschrieben wurde. Das STOP-Kommando besteht nur aus der Zeichenfolge "STOP*.

Zur Generierung des FIND-Kommandos sind ausschließlich die Elemente von

"Suchende Eigenschaften" relevant Die einzelnen Elemente "[Eigenschaftsname, Eigenschafisausprägung]" werden aufgeschlüsselt, Indem der dem "Eigenschaftsname"

korrespondierende Feldname "P der selektierten Datenbank mittels der Zuordnungen Im Slot

"Eigenschaften Felder" ermittelt, und der Ausdruck "F=Eigenschaftsausprägung"20 gesetzt wird.

Enthalt "Suchende Eigenschaften' mehrere Elemente, werden diese nach dem gleichen Prinzip umgesetzt und durch "AND" verknüpft hintereinandergeschrieben.

Für das SHOW-Kommando mu6 das bezogen auf den Informationsbedarf kostengünstigste Ausgabeformat angegeben werden. Das SHOW-Kommando bezieht sich Immer auf das letzte FIND-Kommando. Deshalb kann der Parameter, der angibt, auf welche Suchfrage sich das SHOW-Kommando bezieht, weggelassen werden. Zur Spezifikation der Menge der auszugebenden Dokumente wird auf die Dokumentkosten Im kostengünstigsten Ausgabeformat rekkuriert. Die maximale Anzahl (Obergrenze) der auszugebenden Dokumente ergibt sich dann direkt aus dem verfügbaren Budget für die aktuelle Recherche. Bei der Durchführung der Recherche korrigiert die Interaktionskomponente diesen Betrag entsprechend nach unten, wenn die Anzahl der gefundenen Dokumente kleiner ist als die vorgegebene Obergrenze. Das Kommando lautet also: "SHOW f=•Formatname", r=1-'Obergrenze~. "Formatname" wird aus der Menge

"Interessierende Eigenschaften" ermittelt. Es wird das kostengünstigste Format ermittelt, das alle Elemente aus "Interessierende Eigenschaften' enthalt. Die Formatbeschreibungen sind zusammen mit den Formatkosten Tel der Datenbankbeschreibung.

Beispiel: Aus einer formalisierten Anfrage an den WIREMAN in Prolog:

frage(buchhandel,umsatz([[ig88],[ig89]]lkonstanz),Wert),

wird, nachdem im ersten Modus keine entsprechende Antwort gefunden wurde, also insbesondere keine hinreichenden Branchen- und Finnendaten in den internen problembezogenen Datenbanken gefunden werden konnten, versucht, eine Online-Datenbank zu finden, die Branchendaten zum regionalen Bereich Konstanz enthalt. Da eine solche Online-Datenbank nicht existiert, wird versucht, eine Firmendatenbank zu finden, deren Wert im Slot geographische Abdeckung eine Region bezeichnet, die die Region Konstanz enthalt. Die Anfrage an die Gateway^Komponente hierzu lautet dann:

suche_alle_objekte(typ(firma),[[branche,buchhandel],[region,konstanz]], [umsatz])

Die Komponente zur Auswahl der Datenbanken findet mehere einschlägige Firmendatenbanken für die BRD. Aufgrund einer vorgenommenen Bewertung liefert sie das Ergebnis:

Creditreform/GENIOS

Mittels Wissen über die Datenbank Creditreform/GENIOS, in der recherchiert werden soll, wird die Kommandodatei der notwendigen Datenbankanfragen in Form spezifischer EC-CCL-Kommandos (BASE/FIND/SHOW/STOP) generiert, z.B.:

BASEVC

FIND PC = P5942 AND PL = 7750