|
2008-10-06
|
Einführung und Überblick
:
Die
Extensible Markup Language (XML)
wurde im Jahr 1998 durch das World Wide Web Consortium (W3C)
als Standard verabschiedet. Sie wurde vor dem Hintergrund
der Expansion der Internetnutzung in Richtung
applikationsspezifischer Formate erdacht. HTML als die
"Sprache des Web" war rein zum web-basierten Publizieren von
(Text-)Dokumenten erdacht. Mit XML hingegen eröffnete sich
zum ersten Mal die Möglichkeit, Daten im Web maschinenlesbar
und flexibel auszutauschen. Das
Semantic Web
versucht seit nunmehr einigen Jahren, mit XML-Mitteln
semantische Information darzustellen und nutzbar zu machen.
Mittlerweile hat sich die XML als weltweit akzeptiertes
Austauschformat für maschinenlesbare und strukturierte Daten
etabliert.
|
Introduction
(33 Slides)
|
XML 1.0 Press Release
|
|
2008-10-13
|
XML-Dokumente und Wohlgeformtheit
:
Nach einer einführenden Übersicht über die einzelnen
Mitglieder der XML-Sprachfamilie werden in diesem Abschnitt
die grundlegenden Strukturelemente der XML und des XML
Information Set eingeführt.
Sie erfahren, welche Strukturelemente es in der XML gibt und
was die Wohlgeformtheit eines XML-Dokuments bedeutet.
|
dokumente-und-wohlgeformtheit
(68 Slides)
|
|
|
2008-10-13
|
Übungsaufgaben zum Thema XML-Dokumente / Wohlgeformtheit
:
Übungsaufgaben zum Thema XML-Dokumente / Wohlgeformtheit.
|
uebungsaufgabenWohlgeformtheit
(4 Slides)
|
|
|
2008-10-20
|
Namensräume
:
Nach einer Einführung der Namensräume als Erweiterung zur
XML und einem Exkurs über IRIs, URIs, URLs und URCs erfahren
Sie, wie Namensräume syntaktisch deklariert werden können.
Sie sehen an Beispielen, wie Namensräume schlecht angewendet
werden und erfahren, wie Sie es besser machen können. Sie
erhalten Kenntnis über die Vorrang-Regelungen bei
Namensräumen und erhalten abschließend einen einfachen
Regelsatz zur Bestimmung von zu Elementen und Attributen
zugeordneten Namensräumen.
|
namensräume
(51 Slides)
|
|
|
2008-10-20
|
Übungsaufgaben zum Thema Namensräume
:
Übungsaufgaben zum Thema XML-Dokumente / Wohlgeformtheit.
|
uebungsaufgabenNamensraeume
(13 Slides)
|
|
|
2008-10-27
|
Document Type Definition (DTD)
:
Die XML-Spezifikation definiert ein Format für strukturierte
Daten (XML-Dokumente) und eine grammatikbasierte Sprache, um
Regelsätze für diese Dokumente zu definieren (DTD). In
SGML-basierten Systemen waren DTDs oft sehr komplexe und
mächtige Konstrukte, mit denen die Verarbeitung von
SGML-Dokumenten stark gesteuert wurde. XML vereinfacht die
DTDs sehr stark, und ihre Verwendung hat sich noch mehr
vereinfacht: DTDs werden oft überhaupt nicht verwendet oder
von Tools aus Beispieldokumenten generiert (das gilt auch
für andere Schemata). DTDs haben heute gegenüber den
XML-Schemasprachen stark an Bedeutung verloren. Schemata an
sich sollten Sie jedoch für nicht triviale XML-Anwendungen
sehr ernst nehmen. Sie bilden die Repräsentation des
Datenmodells der Applikation (das oft viel zu wenig
spezifiziert wird).
|
DTD
(25 Slides)
|
|
|
2008-10-27
|
Übungsaufgaben zum Thema DTDs
:
Übungsaufgaben zum Thema Dokumenttypdefinitionen (DTDs).
|
uebungsaufgabenDTDs
(4 Slides)
|
|
|
2008-10-27
|
Übungen zum Thema DTDs
:
Übungen aus der Vorlesung zum Thema Dokumenttypdefinitionen
(DTDs).
|
uebungenDTDs
(5 Slides)
|
|
|
2008-11-03
|
XML Schemasprachen am Beispiel XML Schema
:
Neben den Document Type Definitions ist in jüngerer Zeit ein
alternativer Ansatz in den Blickpunkt des Interesses
gerückt: die XML-Schemasprachen.
XML Schema
(im Jahre 2001 als Empfehlung des W3C veröffentlicht) ist
dabei die heutzutage am meisten verwendete Schemasprache für
XML. Sie wurde ersonnen, um die Einschränkungen der DTDs,
die in ihrer Dokumentenorientierung wurzeln, zu umgehen und
insbesondere die Möglichkeit zur Datentypisierung zu
realisieren.
|
schemasprachen
(59 Slides)
|
XML Schema
des W3C
|
|
2008-11-03
|
Übungsaufgaben zu XML Schema.
:
Übungsaufgaben zu XML Schema.
|
uebungsaufgabenXMLSchema
(6 Slides)
|
|
|
2008-10-27
|
Übungen zu XML Schema
:
Übungen aus der Vorlesung zu XML Schema.
|
uebungenSchema
(2 Slides)
|
|
|
2008-11-10
|
Die Simple API for XML (SAX)
:
Für diverse Programmiersprachen existieren mittlerweile
gängige Schnittstellen, um auf XML-Dokumente zuzugreifen und
diese weiterzuverarbeiten. Die
Simple API for XML (SAX)
ist eine sehr einfach (=leichtgewichtig) gehaltene API für
die
ereignisbasierte
Verarbeitung von XML-Dokumenten. Die Charakterisierung als
leichtgewichtiger Ansatz bezieht sich sowohl auf den
Implementierungsaufwand der API selbst, als auch ihren
Integrationsaufwand in eigene Applikationen.
|
SAX
(36 Slides)
|
Die
ursprüngliche SAX Seite
von David Megginson
Webseite des SAX Projekts
Die JAXP Projektseite
|
|
2008-11-10
|
Übungsaufgaben zum Thema SAX.
:
Übungsaufgaben zum Thema SAX.
|
uebungsaufgabenSAX
(6 Slides)
|
|
|
2008-11-17
|
Exkurs: Netzwerken mit Java
:
Zugriff auf das Internet mit Java
|
JavaNetworking
(5 Slides)
|
|
|
2008-11-17
|
Das Document Object Model (DOM)
:
Die W3C-Spezifikation des
Document Object Models
(abgekürzt als: DOM) definiert eine
Programmiersprachen-unabhängige und plattformneutrale Menge
abstrakter Schnittstellen, mit denen Programme und Skripte
lesend und schreibend auf gültige HTML-Dokumente und
wohlgeformte XML-Dokumente sowie eine Reihe weiterer Formate
zugreifen können.
HTML: Das Dokument kann weiterverarbeitet werden, das
Ergebnis dieser Verarbeitung kann direkt in die angezeigte
Seite eingebunden werden.
|
DOM
(52 Slides)
|
W3C DOM Webseite
|
|
2008-12-01
|
Übungsaufgaben zum Thema DOM.
:
Übungsaufgaben zum Thema DOM.
|
uebungsaufgabenDOM
(2 Slides)
|
|
|
2008-12-01
|
XML Pull Parser
:
In letzter Zeit hat sich ein weiterer Ansatz zur lesenden
Verarbeitung von XML-Dokumenten durch Programmiersprachen
etabliert: die sogenannten
extrahierenden Parser
(engl. pull parser). Ihr Verarbeitungsmodell wurde gezielt
im Kontrast zu den bisher vorgestellten Mechanismen
entwickelt.
SAX und DOM verarbeiten XML-Eingaben, ohne dabei dem
Anwender den Eingriff in den Fluß der Verarbeitung zu
gestatten. Der Kontrollfluß wird nicht durch den Code im
Programm definiert, sondern wird zur Ausführungszeit durch
die Struktur des verarbeiteten XML-Dokuments bestimmt. Bei
SAX spiegelt sich dies in der Reihenfolge der durch den
Parser aufgerufenen Call-back-Routinen wieder, bei DOM sind
im Verlauf der Baumkonstruktion durch einen Parsers
keinerlei Eingriffsmöglichkeiten für den Programmierer
vorgesehen.
Extrahierende Parser kehren dies Paradigma um. Sie
definieren eine Schnittstelle um innerhalb des
Programmflusses aktiv Inhalte eines XML-Dokumentes zu
extrahieren. Allerdings erfolgt der Zugriff nicht wahlfrei
(wie es beispielsweise bei Abfragen mit XPath der Fall ist),
sondern konsekutiv entlang der Reihenfolge der einzelnen
Primitive im XML-Dokument. Dieses Verhalten ist daher
weniger mit einer Anfrage, als eher mit dem Vorrücken eines
Dateizeigers bei linearer Konsumption vergleichbar.
|
XMLPP
(10 Slides)
|
Webseite der XML Pull API
und
Webseite der Implementierung XPP3
|
|
2007-12-10
|
Die Lokatorsprache XPath
:
XML strukturiert Daten in einigen wenigen Konstrukten,
hauptsächlich in Elementen und Attributen. Die Sprache
XML Path Language (XPath)
definiert eine Möglichkeit, wie Teile von XML-Dokumenten für
die weitere Verarbeitung selektiert werden können. XPath
wird hauptsächlich von XSL Transformations (XSLT) verwendet,
aber auch von anderen XML-Sprachen wie etwa XML Schema.
XPath ist eine sehr kompakte Sprache mit einer Syntax, die
Pfadausdrücke widerspiegelt, wie sie aus Dateisystemen wohl
bekannnt sind. Diese Pfadausdrücke sind jedoch generalisiert
und damit sehr viel mächtiger als die vergleichsweise
einfachen Pfadausdrücke für Dateisysteme. Aufgrund ihrer
Verwendung in vielen verschiedenen XML-Sprachen ist XPath
eine der wichtigsten XML Sprachkomponenten.
|
xPath
(26 Slides)
|
W3C Webseite zu XSL
,
XPath Spezifikation
|
|
2008-12-08
|
Übungsaufgaben zum Thema XPath.
:
Übungsaufgaben zum Thema XPath.
|
uebungsaufgabenXPath
(4 Slides)
|
|
|
2008-12-22
|
Web Services / Service-orientierte Architekturen
:
Unter einem Web-Service versteht man zunächst eine
Dienstleistung im klassischen Sinne (mit Merkmalen wie
Immaterialität und damit nicht-Lagerfähigkeit,
standortunabhängiger Produktion und der mangelnden
Entkopplung von Erzeugung und Konsumption), die über das
World Wide Web erbracht wird.
Die einzigen hierbei verbindlich benötigten Standards sind
die namensgebenden Web-Techniken. Hierzu gehören in erster
Linie die physischen Hardwareinfrastrukturen sowie die
benötigten Internet-Protokolle, z.B. TCP/IP.
|
soa-webservices
(8 Slides)
|
W3C Webseite zu Web Services
|
|
2008-12-22
|
RDF und RSS
:
RDF (Resource Description Framework) bietet ein
leichtgewichtiges System an Ontologien, um den Austausch von
Wissen über das Web zu ermöglichen.
RSS (Really Simple Syndication) ist XML-Format, das der
Syndikatisierung von Inhalten des WWW dient.
|
rdf-rss
(21 Slides)
|
W3C Webseite zu RDF
,
Webseite des RSS Advisory Board
|
|
2009-01-12
|
Transformation von XML-Dokumenten: XSL Transformations
:
Weil eine XML-Sprache ein bestimmtes Vokabular
repräsentiert, kommt oft der Wunsch auf, verschiedene
Vokabulare in etwas anderes zu transformieren. Dies kann
entweder ein anderes XML-Vokabular sein (zum Beispiel beim
Datenaustausch), oder beispielsweise auch HTML (zum
Publizieren von Daten im Web). Mit
XSL Transformations (XSLT)
können solche Abbildungen leicht erstellt werden. XSLT macht
sich die Mächtigkeit von XPath zunutze und setzt es in der
recht einfach zu verwendenden Programmiersprache ein. Die
Programme in XSLT werden oft auch
Stylesheets
genannt. Einfache Aufgaben können mit XSLT ohne viel
Programmierarbeit erledigt werden. Es wird ausschließlich
spezifiziert, wie die Bestandteile einer Ausgangssprache in
die Bestandteile einer Zielsprache abgebildet werden sollen.
Dennoch stellt XSLT eine Turing-vollständige
Programmiersprache dar.
|
XSLT
(34 Slides)
|
W3C Webseite zu XSL
,
XSLT Spezifikation
|
|
2009-01-12
|
XForms
:
Mit XForms entwickelt das W3C die nächste Generation von
Web-Formularen. Ziel dabei ist es, die Komplexität
beherrschbar zu machen, die notwendige Dynamik zu
unterstützen, multimodale Interaktion zu unterstützen und
Geräteunabhängigkeit zu garantieren.
|
xforms
(26 Slides)
|
W3C XForms Spezifikation
XForms Plugin für Firefox
|