XML Ursprünglich zur besseren logischen Strukturierung von Dokumenten vorgesehen. Wird aber zunehmend in anderen Anwendungsfeldern genutzt, z.B. zur Beschreibung.

Slides:



Advertisements
Ähnliche Präsentationen
25. Mai 2001Kleyer/Oyen/ReuseFolie 1 Fallstudie im Rahmen des Studienganges Wirtschaftsinformatik Christian Kleyer, Daniel Oyen, Svend Reuse Grundkonzeption.
Advertisements

Basis-Architekturen für Web-Anwendungen
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
XML - Aufbau und Struktur - mit Einsatz im B2B
Pascal Busch, WWI00B – Vergleich CORBA vs. Web Services hinsichtlich der Applikationsintegration Web Services vs CORBA Web Services vs CORBA Ein Vergleich.
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
HTML - Einführung Richard Göbel.
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
DOM (Document Object Model)
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
XINDICE The Apache XML Project Name: Jacqueline Langhorst
XML-Schema HKI Proseminar Wintersemester 2010/11 Dozentin: Frau Kurz von Jan Kohl und Christian Lütticke.
HTML - Eine erste Annäherung
© 2002 Prof. Dr. G. Hellberg 1 XML-Seminar XML-Technologie: XML in Theorie und Praxis Prof. Dr. G. Hellberg XML-Technologie: XML in Theorie und Praxis.
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Einführung XML XML Einführung Andreas Leicht.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
JAVA RMI.
Introducing the .NET Framework
RDF-Schema Seminar: „Semantic Web“ André Rosin,
XML – Grundlagen und Anwendungen Teil 6: Verarbeitung von XML-Dokumenten: XSLT Prof. Dr. Michael Löwe, FHDW Hannover.
Tobias Högel & Dennis Böck,
Seite Common Gateway Interface. Konzepte. Übersicht 1Einleitung 2Was ist CGI? 3Wozu wird CGI verwendet? 4Geschichtlicher Überblick 5Grundvoraussetzungen.
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
Data Documentation Initiative (DDI)
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
Coccon das Web-XML-Publishing System Thomas Haller.
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Vortrag HTML, XHTML, DHTML
Entstehung des Internet
Webservice Grundlagen
Basiswissen für Partner und interessierte Kunden Technologie.
Architekturen und Techniken für computergestützte Engineering Workbenches.
Wird ganz am Anfang der HTML-Datei geschrieben Doctype html public bedeutet, dass man sich auf die Öffentlichkeit der html-dtd bezieht Html ist die meist.
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Vergleich verschiedener Konzepte für das Software Engineering Praktikum.
Beschreiben Sie eine Web Interaktion mittels Java Applets.
CGI (Common Gateway Interface)
Wohlgeformtheit und Gültigkeit Grundlagen der Datenmodellierung Anke Jackschina.
ANDREAS LOHR, OLONDA S.R.O. Einfach anfangen mit HTML.
UML-Kurzüberblick Peter Brusten.
VU Semistrukturierte Daten 1
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
Oliver Spritzendorfer Thomas Fekete
XML (Extensible Markup Language)
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 1 Version 1.0a XML EXTENSIBLE MARKUP LANGUAGE.
XML1 XML-Motivation HTML definiert nur einen bestimmten Dokumenttyp Viele Web-Technologien benötigen eine allgemeinere Sprache zur Dokumentstrukturierung.
Version X des Programms: Datenaustausch-Probleme % ( ) (WIRBEL-BASISTEIL GR. 52) N1G29X150Y85I150J25 N2G0X150Y25 Version Y des Programms:
Web 2.0 & AJAX (A)sysnchrones (J)avaScript (A)nd (X)ML
XSL in der Praxis Anwendungsbeispiele für die eXtensible Stylesheet Language Andreas Kühne XML One 2000.
Drucken mit XSL-FO DaimlerChrysler  Drucken von Webseiten
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
Stundenplanung Programm zur Stunden- und Zimmerplanung auf der Basis von Datenbanken und unter Berücksichtigung von Mehrfachnutzung im (lokalen) Netz (Internet.
Vortrag - Diplomarbeiten (HS I)
Microsoft.NET InfoPoint 8. Juni 2005 Stefan Bühler.
JavaScript Geschichte : Netscape entwickelt LiveScript (Syntax angelehnt an Java) - Umbenennung von Live Script in JavaScript - Mircrosoft.
- Warum: Das HTML-Dilemma
IT-Zertifikat der Phil.Fak Kurs 4: Daten- und Metadatenstandards Patrick Sahle XML-BasicsWS 08/09.
Datenbanken im Web 1.
XML Die “E-Lance Economy” oder die “Digital Economy” stellt neue Anforderungen an Funktionalität im Netz. XML wurde vom World Wide Web Consortium (W3C)
Das World Wide Web Stephan Becker TIT05BGR SS06. Das World Wide Web Übersicht Hypertext & Hypermedia HTML Dokumentenidentifikation Dokumententransport.
Seminar Modellgetriebene Softwareentwicklung XMI - XML Metadata Interchange Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto.
Das Internet Ein Netzwerk, das viele Rechner miteinander verbindet
SGML, die Basis für eine optimierte Produktion von Windows-Online- Hilfen Thomas Bergerhoff, Tanner Dokuments Nürnberg.
ORB – Konzepte Ist – Analyse der betrieblichen Notwendigkeiten, Anforderungsableitung an moderne Lösungskonzepte, alternative ORB – Konzepte mit Zukunft,
Seminar Internettechnologie Prof. Dr. Lutz Wegner Julia Mikov WS 06/07
WebServices Vortrag zur Diplomarbeit WebServices Analyse und Einsatz von Thomas Graf FH Regensburg
 Präsentation transkript:

XML Ursprünglich zur besseren logischen Strukturierung von Dokumenten vorgesehen. Wird aber zunehmend in anderen Anwendungsfeldern genutzt, z.B. zur Beschreibung von Komponenten und deren Schnittstellen. XML Grundlagen oMängel von HTML : -Statische, nicht erweiterbare Menge von Markup-Elementen (Tags) -Unzureichende Trennung von Layout und Inhalt oXML basiert auf auf dem SGML (Standard Generalized Markup Language) Standard (echte Untermenge). oXML beschreibt die logische Struktur von Dokumenten auf der Basis von Markup-Elementen ohne dabei Informationen zum Layout zu liefern. Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

XML 2 Formen von XML Dokumenten Document Type Definition ( DTDs ) -Sind auf einer Metaebene angesiedelt und beschreiben, wie eine XML-Instanz aussehen soll ( Struktur eines Benutzerhandbuchs für ein Kraftfahrzeug ). -Auch die Syntax von HTML wird durch eine DTD beschrieben XML-Instanzen -Beinhalten die Nutzdaten ( Benutzerhandbuch selbst ). -In der Regel gemäß einer DTD strukturiert -Es ist aber möglich Instanzen zu erzeugen die nicht durch eine DTD beschrieben werden. Diese müssen jedoch gewissen allgemeinen Regeln genügen ( well-formed documents) -Dokument das mit einer DTD assoziert ist und den darin formulierten Einschränkungen genügt, wird gültig (valid) genannt. Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

XML Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung <! DOCTYPE artikel [ <! ELEMENT artikel ( kurzfassung verzeichnis*, kapitel+ ) > <!ELEMENT verzeichnis( inhalltsverzeichnis | abbildungsverzeichnis | tabellenverzeichnis ) >... ] > Beispiel eines DTD

XML Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung Ausblick Fuer die Zukunft ist zu erwarten, dass diese Entwicklung weiter gehen wird Beispiel einer XML-Instanz

XML XML ist kein Standard, der alleine steht, sondern es gruppieren sich eine Reihe von anderen Technologien und Standards um XML. In vielen Bereichen werden Standard-DTDs definiert, um z.B. den Datenaustausch zwischen verschiedenen Marktteilnehmern zu erleichtern. Manche dieser Standards haben für die Kommunikation zwischen Komponenten Bedeutung. Es sind : XSLT ( Extensible Stylesheet Language Transformations ) -Zur Transformation von XML-Dokumenten der Struktur A in XML- Dokumente der Struktur B. -Kann benutzt werden um verschiedene Sichten auf ein XML-Dokument zu definieren oder um eine interne Darstellung in einem Standard (z.B. BMEcat) zu überführen. XSL ( Extensible Stylesheet Language ) -Weiterentwicklung von DSSSL ( Document Style Semantics & Specification Language ) und der CSS (Cascading Style Sheets). -Definiert ein Vokabular von XML-Tags, das zum Zweck der geräte- unabhängigen Darstellung entwickelt wurde (formatting objects) -XML-Dokumente nach der XSL-Spezifikation aufformatierungstechnische Aspekte fokussiert. -Transformation von Dokumente die einer DTD X in Dokumente die XSL genügen wird durch XSLT durchgeführt. Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

XML BMEcat -Ist Initiative des Bundesverbands für Materialwirtschaft, Einkauf und Logistik. -In diesem Standard wird einheitliches Datenformat für den elektronischen Austausch von Katalogdaten. -Ist in einer Reihe XML-DTDs definiert ( ) XMI -Von der OMG definierten Standard, in dem XML zur Beschreibung und zum Austausch von Meta-Informationen verwendet wird. -In der Spezifikation wird eine umfangreiche DTD definiert, die das UML- Metamodell der OMG beschreibt. Dadurch wird ein Austausch zwischen UML-Modellierungswerkzeuge möglich. Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

XML XML als Kommunikationsprotokoll zwischen Komponenten Es bestehen Überlegungen, XML zur Kommunikation zwischen Komponenten einzusetzen (z.B. könnte man IIOP ( Internet Inter- ORB Protocol ) durch XML-Dokumente ersetzen die durch HTTP übertragen werden ). Wichtigstes Kriterium ist jedoch Performanz ( es wäre z.B. nicht sinnvoll die oben genannte Ersetzung durchzuführen ) Bei der Kommunikation über Firewalls in heterogenen Netzen oder bei der Kopplung unterschiedlicher Komponentenstandards wie CORBA und DCOM ist ist es jedoch eventuell sinnvoll, entfernte Methodenaufrufe über XML durchzuführen Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

Scripting JavaScript Entwickelt von Brendan Eich, Netscape, erstmalig in Navigator 2 Bekannte Nutzung: -In HTML-Seiten enthalten -Interpretation durch Web-Browser Heute aufgeteilt in Core JavaScript, Client-side JavaScript, Server-side JavaScript ECMAScript = Core JavaScript-Spezifikation Client-side JavaScript kann unabhängig vom Browser als normale Sprache genuzt werden Server-side JavaScript für dynamische Web-Seiten (DB, Mail usw.) als Alternative zu CGI-Skripten und ASP Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

Scripting VB Script Microsoft-Version für komplexere HTML-Seiten Teilmenge von Visual Basic Verarbeitung nur im Internet Explorer bzw. anderen MS-Produkten Jscript Microsoft-Version des ECMAScript (JavaScript) Spricht ActiveX-Controls, Automation Server und Java Applets an Nur durch Web-Browser oder Web-Server zu nutzen Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

Scripting – Zusammenfügen von Komponenten Ansatz Verbinden von systemnahen Programmkomponenten durch syntaktisch und konzeptuell einfache(re) Sprache Interpretation statt Kompilation Vorteile: -Flexibilität, kurze Entwicklungszyklen, Prototyping Bekannte Namen Perl -Starke String-Verarbeitung (Reguläre Ausdrücke) Tcl Tool command language -Erweiterbarkeit durch: Alles ist ein String Python -Objektorientiert, lesbarer, Programmieren im Großen Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung Script C, C++, Ada etc.

Ursachen für den Erfolg des Scriptings Füllen von Lücken -Variable, administrative Aufgaben ggf. wiederholt und organisationsoptimiert -Beispiel: File-System, Textdateien, Streams-Konzept: Reguläre Ausdrücke als effizientes Mittel sed, awk, perl, tcl Mängel in üblichen Programmiersprachen -Beispiel: Bibliotheken für reguläre Ausdrücke in C -Beispiel: Dynamisches Speichermanagement (malloc/free, new/delete ?) -Ausrichtung zu sehr auf langlebige Programme (z.B. C UNIX, Cobol PPS) Compiler, Portabilität nicht immer erforderlich oder gewünscht Schnelle Anpassung an neue Anforderungen -Beispiel: Perl-Script auf WWW-Servern -Beispiel: TK für GUIs unter X Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

Konzept -Script wird über Schnittstelle als Parameter übergeben Anwendungsszenario -Client-spezifische Verarbeitung Vorteil -Komponente wird programmierbar Nachteile -Sicherheit wohldefinierte Schnittstelle aber nicht wohldefiniertes Verhalten der Komponenten Design by Contract beeinträchtigt Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung Einbettung von Script-Interpretern in Komponenten Tcl

Diskussion Scripting Unlike mainstream component programming, scripts usaually do not introduce new components, but simply wire existing ones. Scripts can be seen as introducing new behaviour but no new state. C. Szyperski Verständlichkeit der Syntax fraglich (z.B. perl, sed) Häufig benutzt Metapher Kleber(Glue), Interpretation: -Script ruft Komponente spezifisch parametriert auf -Komponente liefert spezifisches Ergebnisformat (möglichst auf einheitlicher Basis, z.B. String oder White-Space-formatierter Datei) -Script bearbeitet Zwischenergebnis -Script ruft Komponente auf -usw. Scripting schafft keine neuen Komponenten?! Scripting macht einzelne Komponenten flexibler (Beispiel: Tcl-Interpreter einbetten) -Aber: Funktionalität vs. Wartbarkeit, Sicherheit, Design by Contract Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung

Zusammenfassung Objektorientierung setzt sich zwar durch, hat bisher nicht den erhofften Grad an Wiederverwendung erbracht Komponenten als nächst größere Objekte identifiziert Scripting relevant für administrative und prototypische Anwendungen Techniken zur Entwicklung und Nutzung von Componentware vorhanden (siehe Folgevorträge) Komponenten als natürliche Nachfolger der Modularisierung und Objektorientierung Komponenten erfordern technischen Support (Indexierung, Retrieval, Standards) Methoden zur Beherrschung komplexer Systeme stehen nach wie vor aus Schnittstellen zwischen den Technologien 2. Komponentenbasierte Software Entwicklung