Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin
Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin
Extensible Markup Language (PDF) - IT-Dienstleistungszentrum Berlin
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Datenbankanwendungen<br />
mit XML-Frontend<br />
XML etabliert sich als der Standard<br />
für professionelle Internet-<br />
Anwendungen Die herunterzuladenden<br />
Sites sind schlank und<br />
schnell, keine lokalen JAVA-Programme<br />
erhöhen die Ladezeiten oder blockieren<br />
das Passieren von Firewalls Im<br />
Folgenden soll gezeigt werden, wie in<br />
der Kombination von Meta-Daten (als<br />
Träger der Business Rules) und XML-<br />
Frontends flexible und performante Anwendungen<br />
entstehen können<br />
Wo findet XML seinen Platz in modernen<br />
Anwendungen?<br />
Die Erwartungshaltung geht natürlich<br />
häufig weit über das hinaus, was XML<br />
aus dem Stand zu leisten vermag XML<br />
(eXtensible <strong>Markup</strong> <strong>Language</strong>) ist abgeleitet<br />
von SGML (Standard Generalized<br />
<strong>Markup</strong> <strong>Language</strong>) SGML ist der Standard<br />
(ISO 8879), mit dem sowohl der<br />
Inhalt als auch die Struktur elektronischer<br />
Dokumente beschrieben werden<br />
kann Während es mittels HTML bereits<br />
möglich ist, die Präsentation von Daten<br />
in exzellenter Form zu bewerkstelligen,<br />
wird es mit XML daüberhinaus möglich,<br />
auch strukturierte Daten zu beschreiben<br />
Der große Pluspunkt ist aber gerade,<br />
dass XML mit Daten besser umgehen<br />
kann Dies wird oft in separaten<br />
Semantikbeschreibungen, sogenannten<br />
DTD (Document Type Definition) deklariert<br />
Jede DTD spezifiziert somit<br />
XML für spezielle Einsatzzwecke<br />
Ersetzt XML also die komplexe Anwendungslogik,<br />
die früher den eigentlichen<br />
Hauptinhalt von Anwendungsprogrammen<br />
stellte? Dies ist<br />
normalerweise nicht der Fall: XML ist<br />
kein ausführbares Programm und auch<br />
kein Steuerinstrument für Anwendungslogik,<br />
sondern primär ein Standard, der<br />
sagt, wie eine Web-Seite strukturiert ist<br />
und was für Daten-Elemente sie auf der<br />
Oberfläche enthält Das heißt, was XML<br />
2<br />
bei modernen Datenbankanwendungen<br />
tatsächlich ersetzt, ist nicht das Anwendungsprogramm<br />
selbst, sondern<br />
dessen äußerste Visualisierungsschicht,<br />
die klassische Bildschirmmaske Der<br />
überwiegende Teil einer Anwendung<br />
bleibt, was er immer war: Anwendungssoftware<br />
Diese läuft dann auf einem<br />
zentralen (Application-)Server ab Daher<br />
kommuniziert in diesem Fall nicht<br />
die XML-Seite selbst, sondern die<br />
darunter liegende Anwendungssoftware<br />
mit der Datenbank Vereinfacht gesagt<br />
ist eine XML-Seite nichts anderes als die<br />
im Browser ablauffähige Bildschirmmaske<br />
Eine XML-Seite weist gegenüber der<br />
klassischen Bildschirmmaske einige ganz<br />
erhebliche Vorteile auf, nicht nur die<br />
Internetfähigkeit, sondern auch qualitative<br />
Vorteile: Insbesondere ist die XML-<br />
Seite nicht notwendigerweise starr, sondern<br />
passt sich auf Wunsch auch selbsttätig<br />
an Längen einzelner Textpassagen,<br />
Größen von Bildern, Längen von integrierten<br />
Tabellen und dergleichen sowie<br />
an lokale Bildschirmeinstellungen an<br />
Sie bekommt somit einen Dokumenten-Charakter!<br />
Eine XML-Seite wird zu<br />
Recht als ein Universal-Instrument betrachtet:<br />
sie ist Bildschirmmaske, Report<br />
und (zB: Serienbrief-) Dokument in<br />
einem Genau hierin liegt einer der entscheidenden<br />
Stärken dieses Ansatzes<br />
Insbesondere gegenüber klassischen<br />
Windows-Anwendungen ist jedoch das<br />
Fehlen einiger „selbstverständlicher“<br />
Merkmale zu beachten: keine Fenstertechnik<br />
innerhalb von Anwendungen,<br />
und eingeschränkte Gestaltungsmöglichkeiten<br />
durch die Zeilenorientierung<br />
und somit strenge horizontale<br />
Positionierungsvorgaben<br />
XML versus Client/Server<br />
Beide Ansätze: Client/Server und XMLbasierte<br />
Datenbankanwendungen haben<br />
heute nach wie vor eine Berechtigung<br />
So werden in punkto Leistungsstärke<br />
und Performance klassische PC-gestützte<br />
Systeme noch für einige Zeit vorn<br />
liegen Es steht jedoch außer Frage, dass<br />
1/02 2 16<br />
Web-basierte Anwendungen außerordentlich<br />
sinnvoll sind, sowohl unternehmensintern<br />
wie auch -extern und<br />
dass XML in Verbindung mit geeigneter<br />
Server-Software aus heutiger Sicht die<br />
richtige Plattform hierfür ist<br />
Eine optimale Architektur würde demnach<br />
eine Kombination von XML-basierten<br />
Web-Anwendungen mit PC-basierten<br />
Anwendungen und Anwendungsteilen<br />
darstellen Aus Gründen der Kompatibilität<br />
zur existenten Infrastruktur<br />
es sinnvoll, dass möglichst alle Anwendungen<br />
und Anwendungsteile sowohl<br />
unter den performanteren 2- bzw 3-<br />
Ebenen-Client/Server-Architekturen<br />
lauffähig sind, als auch als funktionsäquivalente<br />
XML-basierte Anwendungen<br />
Wie oben beschrieben, kommuniziert<br />
bei professionellen Datenbankanwendungen<br />
der XML-Client nicht direkt<br />
mit der Datenbank, sondern mit<br />
dem Anwendungsprogramm auf dem<br />
Application Server Ein solches Server-<br />
Programm verarbeitet die gesamte Anwendungslogik<br />
Lediglich die äußerste<br />
Präsentationsschicht ist auf die einzelnen<br />
Arbeitsplätze in die Browser verlagert<br />
Dies entspricht im Prinzip dem<br />
„Thin Client“-Ansatz Für die auf dem<br />
Application Server laufende Anwendungssoftware<br />
ist es im Grunde<br />
unerheblich, ob seine äußerste Präsentation<br />
nun von einem Thin Client oder<br />
von einer XML-Seite übernommen wird<br />
Theoretisch müsste eine Thin-Clientbasierte<br />
Anwendung mit geringen Anpassungen<br />
auch als XML-Anwendung<br />
ablauffähig sein - und umgekehrt<br />
Technisch ist hierbei der 3-Ebenen-<br />
Client/Server-Ansatz als der „direktere“<br />
zu verstehen Die Oberflächenelemente<br />
des Thin-Clients können direkt<br />
in ihrem ureigensten Medium (wie<br />
zB COM) mit der Server-Anwendung<br />
kommunizieren Bei der XML-Anwendung<br />
muss auf dem Server eine zusätzliche<br />
Zwischenschicht eingeführt werden,<br />
die die COM-Interfaces des<br />
Application Servers zur Laufzeit quasi<br />
„übersetzt“, um mit den è