Gemäß Voraussetzung 1 stellt das folgende Konzept eine
Programmierschnittstelle für Bausteine der ObjectBase dar.
Grundsätzlich muß ein Baustein der ObjectBase von einer der
Bausteinklassen
* Generator (Datenquelle),
* Evaluator (Auswertungsmethode),
* Simulator (Simulationsmodell) oder
* Recorder (Datensenke)
abgeleitet werden (vgl.[Müg97]).
Der Java-seitige Teil eines Bausteins ist in der Abb. 22 [14]
Abb. 2[276]
. mit (1) beschriftet Er wird durch den Local Communication Manager
desselben Rechners gestartet.
Damit nicht nur Daten mit dem GIS ausgetauscht werden können, sondern auch
Operationen im GIS auf diesen Daten erfolgen können, muß die
Programmierschnittstelle die Funktionalität der Programmiersprache Avenue
bereitstellen. Dies wird so umgesetzt, daß ein zum Java-seitigen Baustein
korrespondierendes Avenue-Script (2) im GIS ArcView gestartet wird. Nach
Abschluß der Übertragung der Daten von (1) nach (2) und vor der
Rückübertragung können in ArcView alle Aktionen, die keine
Benutzerinteraktion erfordern, ausgeführt werden. Das Erfordern von
Benutzerinteraktion würde dem Leitgedanken des MOBILE-Konzepts
widersprechen, daß mit der Experimentspezifikation alle notwendigen
Angaben zum Experiment gemacht sind. Weitere Restriktionen in der Verwendung
von Avenue-Sprachelementen sowie Namenskonventionen sind im Abschnitt
Realisierung (S. 87) und im Leitfaden Programmierschnittstelle
für Bausteine mit ArcView-Kopplung (S. 119) genannt.

![]()
Von einem Baustein mit ArcView-Kopplung unmittelbar verwendet werden die
Java-Klassen (3) bzw. Avenue-Scripte (4) der Programmierschnittstelle. Die
übrigen Komponenten (5), (6) und (7) dürfen nicht direkt, sondern
ausschließlich über die Programmierschnittstelle genutzt werden.
Komponente (6) sorgt für die Konvertierung der Daten in ein für
ArcView lesbares Format, (5) stellt über die Kontrollschnittstelle
ArcViews die Kontrolle über das GIS her, so daß das
korrespondierende Avenue-Script (2) gestartet werden kann. Unter der Kontrolle
des korrespondierenden Avenue-Scripts werden dann zunächst über (4)
und (7) die durch (6) bereitgestellten Daten in eine mit Avenue verarbeitbare
Form konvertiert, um anschließend GIS-Operationen auszuführen. Nach
deren Abschluß wird mittels anderer Avenue-Scripte aus (4) die
Rückkonvertierung durch Scripte aus (7) durchgeführt und die
Kontrolle an (1) zurückgegeben.
Während der Ausführung eines Bausteins kann (1) den Aufruf von (2)
mehrfach durchführen oder auch verschiedene korrespondierende
Avenue-Scripte ausführen.
In Abb. 22 ist weiterhin zu sehen, daß der Baustein über den
Mobile Communication Manager auch mit Bausteinen auf anderen Plattformen
kommunizieren kann (weitere Bausteine sind zur Vereinfachung der Grafik
weggelassen), ebenso wie es möglich ist, mit anderen Bausteinen auf
demselben Rechner zu kommunizieren. Sie wird über die Eingabe- und
Ausgabeports der Kommunikationsschnittstelle der Bausteine durch den Austausch
von MSL-Daten-Objekten vollzogen (vgl.[Müg97]). So kann die Kopplung
eines Simulationsmodells mit dem GIS ArcView auf zweierlei Weise hergestellt
werden:
1. direkt durch Verwendung der Programmierschnittstelle oder
2. indirekt über einen Baustein, der die Programmierschnittstelle
verwendet.
Die zweite Möglichkeit ist typisch für Datenquellen und
Auswertungsmethoden, die ein Simulationsmodell mit Daten versorgen oder sie
zunächst noch aufbereiten bzw. anschließend analysieren.
In der folgenden Abbildung werden die prinzipiellen Möglichkeiten der
Kopplung von Bausteinen mit ArcView aufgezeigt und auf ihre Konformität
mit dem Mobile-Konzept hin überprüft.

Nicht alle prinzipiell möglichen Verbindungen sind im MOBILE-System
auch sinnvoll. Die Pfeile bezeichnen den Datenfluß und sind zur
Unterscheidung durchnumeriert. Der Datenfluß kann entlang der Pfeilpaare
4 und 5, 8 und 9 sowie 12 und 13 beim Aufruf eines Avenue-Scripts stattfinden.
Daten können zum korrespondierenden Avenue-Script hin und nach dessen Ende
zurückübertragen werden.
Der Datenfluß entlang der Pfeilpaare 2 und 3, 6 und 7 sowie 10 und 11
müßte zur Instantiierungszeit stattfinden, was aber nicht mit dem
Mobile-Konzept konform geht. Statt dessen wird das Konzept der
ArcView-Datenreferenzen vorgeschlagen, das die Ausführung des
Datentransfers bis zur Ausführungszeit der Bausteine verzögert (vgl.
die Abschnitte zu ArcView-Datenreferenzen, S. 83 und S. 139).
Die Pfeile 1 und 14 kennzeichnen einen möglichen Datenfluß, wie er
für einen Prototypen verwendet werden kann: statt durch enge Kopplung
könnten die Klassen und Avenue-Scripte, die der Konvertierung dienen, auch
für lose Kopplung benutzt werden. GIS-Daten würden dann in Objekte
der Objektbase überführt und umgekehrt, ohne daß unmittelbar
die Ausführung eines Experiments folgt bzw. vorausgeht.
[14] weitere Nummern in Klammern in diesem Abschnitt beziehen sich ebenfalls auf [, (S. )