• Keine Ergebnisse gefunden

XML XML - - Technologien Technologien

N/A
N/A
Protected

Academic year: 2022

Aktie "XML XML - - Technologien Technologien"

Copied!
46
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

XML XML - - Technologien Technologien

(2)

Heutige Vorlesung Heutige Vorlesung

1.1. OrganisatorischesOrganisatorisches 2.2. Was ist XML?Was ist XML?

3.3. Anwendungen von XMLAnwendungen von XML

4.4. ÜÜberblick berblick üüber die Vorlesungber die Vorlesung 5.5. LiteraturLiteratur

(3)

Organisatorisches

Organisatorisches

(4)

Veranstalter Veranstalter

ƒ Vorlesung: Malgorzata Mochol, mochol@inf.fu-berlin.de

ƒ Übung: Lyndon Nixon, nixon@inf.fu-berlin.de

ƒ Mitarbeiter der AG Netzbasierte Informationssysteme von Prof. Tolksdorf

ƒ Büros: Fabeckstr. 15, 1.OG (NICHT Takustr. 9)

ƒ Sprechstunde: bitte per Mail vereinbaren

(5)

Webseite der Lehrveranstaltung Webseite der Lehrveranstaltung

ƒ http://www.ag-nbi.de/lehre/07/V_XML/

ƒ hier finden sich

- Folien der Vorlesungen - Termine der Übungen - Übungsblätter

- Musterlösungen

- Hinweise/Links auf Literatur

(6)

Anmeldung Anmeldung

ƒ 90 haben sich im Online-KVV bereits angemeldet

ƒ keine weiteren Anmeldungen mehr möglich!

ƒ Master- und Bachelor-Studierende:

ƒ zusätzlich verbindliche Anmeldung mit Unterschrift notwendig

ƒ Ohne diese Anmeldung dürfen keine Leistungen erbracht werden.

ƒ verbindliche Anmeldung für Msc-Studierende in der nächsten Woche

(7)

Übungen Ü bungen

GroßüGroßübungbung

ƒ Veranstalter: Lyndon Nixon

ƒ Termine:

ƒ Di 12:15 – 13:45, Hörsaal 028, Beginn: 8.5.

ƒ zweiter Termin wird bekannt gegeben

ƒ Genaue Termine & Themen auf der Webseite

ƒƒ Übung auf EnglishÜbung auf English Was erwartet Sie?

Was erwartet Sie?

ƒ Fragen zum Vorlesungsstoff: Sie fragen, Hr. Nixon antwortet

ƒ vertiefende Themen und Beispiele

ƒ Vorstellung einer Lösung des aktuellen Übungsblattes

Dienstag, 24.04. Vorlesung statt

Dienstag, 24.04. Vorlesung statt Ü Ü bung bung

Keine Vorlesung am Mittwochen, 25.04 !!!

(8)

Übungsaufgaben Ü bungsaufgaben

ƒ 7 Übungsblätter

ƒ wegen hoher Teilnehmerzahl werden diese nicht korrigiert

ƒ Musterlösung werden in Übung vorgestellt

ƒ in der Übung wird davon ausgegangen, dass Sie aktuelles Übungsblatt bearbeitet haben

ƒ Lösung (Ausdruck) bitte in Übung mitbringen

(9)

Scheinkriterien Scheinkriterien

Scheinkriterien Scheinkriterien

ƒ aktive Teilnahme an Übungen

ƒ Klausur bzw. Nachklausur erfolgreich bestanden

ƒ Schein wird grundsätzlich benotet Klausur

Klausur

ƒ Teilnahmevoraussetzung: Anmeldung im Online-KVV

ƒ Klausurtermin: 18.7.2007 Nachklausur

Nachklausur

ƒ Teilnahmevoraussetzung: Klausur nicht bestanden

ƒ einzige Ausnahme: ärztliches Attest für Klausurtermin

ƒ Termin: wird noch bekannt gegeben

(10)

Was ist XML?

Was ist XML?

(11)

HTML HTML

HTML hat sich für die Präsentation von Inhalten bewährt.

(12)

Warum reicht HTML nicht aus?

Warum reicht HTML nicht aus?

immer häufiger medienneutrale Darstellungmedienneutrale Darstellung nötig:

ƒ Vielfalt von Endgeräten und Bandbreiten macht Trennung Inhalt von Pr

Trennung Inhalt von Prääsentationsentation nötig

ƒƒ Austausch vonAustausch von DatenDaten und Dokumenten zwischen Computern

Ö z.B. Übermittlung eines Bestellformulars Ö z.B. Web Services

HTML: keine layoutunabhängige Darstellung von Inhalten

(13)

XML XML

ƒƒ EExxtensible tensible MMarkuparkup LLanguageanguage

ƒ erlaubt Strukturieren von Inhalten

ƒ Unterschiede zu HTML:

- medienneutral - Tag-Namen

<name>…</name>

beliebig

ƒƒ generische generische

Auszeichnungssprache Auszeichnungssprache

(14)

tag

Auszeichnungssprachen Auszeichnungssprachen

ƒƒ textbasierte Sprachen, die Dokumente mit zustextbasierte Sprachen, die Dokumente mit zusäätzlichen tzlichen TagsTags ((„„MarkierungenMarkierungen““) versehen:) versehen

<tag-name>ausgezeichneter Text</tag-name>

ƒ dadurch zusätzliche Information (Metainformationen)

ƒ Beispiel: Hypertext Markup Language (HTML)

ƒ kombinieren Vorteile von Binärdateien mit denjenigen von Textdateien:

ƒƒ anwendungsunabhäanwendungsunabhängigengige Dateiformate, die reichhaltige Dateiformate Metadaten enthalten können

(15)

Generische Auszeichnungssprachen

HTML HTML

ƒ vorgegebene Auswahl von Tags, keine anderen dürfen verwendet werden.

generische Auszeichnungssprache

generische Auszeichnungssprache (generalized markup language)

ƒ keine Tags vorgegeben, beliebige Tags erlaubt

ƒ Vorteil: beliebige Metainformationen darstellbar

ƒ Nachteil: Bedeutung der Metainformationen (Tags) offen

ƒ Beispiele: SGML und XML

(16)

Eine kurze Geschichte von XML Eine kurze Geschichte von XML

6060’er er Generische Kodierung – Graphic Communication Association (GCA).

1969 Charles Goldfarb entwickelt bei IBM die Generalized Markup1969 Language (GMLGML).

1980 ANSI veröffentlicht ersten Entwurf von SGML1980 SGML.

1986 ISO verabschiedet SGML1986 SGML.

1989 Bernes-Lee schlägt SGML-basiertes Hypertext-System vor.1989 1990 Beners-Lee entwickelt HTML1990 HTML, HTTPHTTP und URLURL. World Wide

Web nimmt Betrieb mit zwei Maschinen am CERN auf.

19951995 HTML 2.0HTML 2.0

1998 XML 1.0XML 1.0 (einschl. DTDs) 20002000 XML 1.0, 2XML 1.0, 2ndnd EditionEdition

XHTML 1.0

XHTML 1.0 (Reformulierung von HTML in XML) 20042004 XML 1.1XML 1.1

(17)

SGML SGML

ƒƒ SStandard tandard GGeneralizedeneralized MMarkuparkup LLanguageanguage

ƒ 1969 von Charles Goldfarb und zwei seiner Kollegen bei IBM für das Dokumentenmanagement entwickelt.

ƒ seit 1986 ein internationaler Standard

ƒ keine vorgegebenen Tags, auch keine für das Layout von Dokumenten

ƒ Vorgänger von XML

(18)

SGML SGML

ƒ gibt zwar keine konkreten Tags vor

ƒ Mit DocumentDocument Type Type DefinitionsDefinitions (DTDs) können aber DTDs spezielle Auszeichnungssprachen mit konkreten Tags definiert werden:

ƒ werden Anwendungen Anwendungen von SGML genannt

ƒ bekannteste Anwendung von SGML: HTML

ƒ Anwendung selbst kann keine Anwendung definieren

SGML Anwendung: spezieller

Wortschatz und Grammatik

DTD HTML

(19)

Vor Vor - - und Nachteile von SGML und Nachteile von SGML

+ kombiniert Vorteile von Binärdateien mit denjenigen von Textdateien

+ beliebig erweiterbar

+ erlaubt die Definition von konkreten Auszeichnungs- sprachen wie HTML

- sehr komplex: Spezifikation über 600 Seiten lang - SGML-Parser schwierig zu implementieren

(20)

Warum XML und nicht HTML/SGML?

Warum XML und nicht HTML/SGML?

HTMLHTML

ƒ für Präsentation von Web-Inhalten bewährt

ƒ keine medienneutrale Darstellung von Inhalten medienneutrale Darstellung

medienneutrale Darstellung

ƒ generische Auszeichnungssprachen (wie SGML) geeignet SGMLSGML

ƒ für das Web SGML viel zu komplex

XML: konsequente Vereinfachung von SGML, die für Web-Anwendungen hinreichend allgemein ist.

(21)

Was bedeutet Erweiterbarkeit?

Was bedeutet Erweiterbarkeit?

ƒ X in XML steht für erweiterbar (extensible).

ƒ Was bedeutet Erweiterbarkeit?

ƒ Vergleich mit HTML hilfreich:

HTMLHTML

ƒ vorgegebene Auswahl an Tags

ƒ Neues Tag kann nur eingeführt werden, wenn sich das W3C auf eine neue HTML-Version einigt!

XMLXML

ƒ beliebige Tags können benutzt werden

ƒ Nur Anwender des entsprechenden Tags müssen sich auf eine gemeinsame Interpretation des Tags einigen.

(22)

Die Die XML XML - - Familie Familie : Der Kern : Der Kern

XML 1.0 / 1.1 XML 1.0 / 1.1

ƒ Syntax wohlgeformter XML-Dokumente

ƒ Definition von Anwendungen (Untermengen) mit DTDs Namensr

Namensrääumeume

ƒ gleichzeitige Verwendung unterschiedlicher Vokabularien

ƒ z.B. Unterscheidung Titel einer Person vom Titel eines Buches

ƒ Festlegung der Bedeutung von Tags XMLXML--SchemaSchema

ƒ gleiche Aufgabe wie DTDs

ƒ jedoch wesentlich mächtiger

(23)

Der Rest der

Der Rest der XML XML - - Familie Familie

Extensible

Extensible StylesheetStylesheet Language (XSLT)Language (XSLT)

ƒ Transformation von XML-Dokumenten in beliebige Text-Formate:

XML Î HTML / WML / XML / ASCII / … XPath

XPath

ƒ Zugriff auf beliebige Teile eines XML-Dokumentes

ƒ z.B. Zugriff auf alle Buchtitel Document

Document ObjectObject Model (DOM) Model (DOM)

ƒ Parsen, Modifizieren und Erstellen von XML- Dokumenten

gesamte XML-Familie besteht aus lizenzfreien W3C-Standards

(24)

Exkurs: Das W3C Exkurs: Das W3C

ƒ 1994 als Projekt am MIT gegründet

ƒ keine Normierungsorganisation im klassischen Sinn

ƒ kann Einhaltung von Normen nicht auf rechtlichem Wege einklagen

ƒ definiert deshalb lediglich Empfehlungen (recommendations)

ƒ W3C-Recommendations lizenzfrei

(25)

Standardisierungsprozess des W3C Standardisierungsprozess des W3C

Working Draft (WD) Working Draft (WD)

Last Call WD Last Call WD

Proposed Proposed Recommendation

Recommendation (PR)(PR) Recommendation (REC) Recommendation (REC)

Candidate Candidate

Recommendation (CR) Recommendation (CR)

aktueller Diskussionsstand einer AG letztes WD, definierte

Anforderungen erreicht

offizieller Konsens der betreffenden AG dar, wird dem Advisory

Committee übergeben

offizieller W3C-Standard

Direktor: definierte Ziele erreicht, von entsprechender Community begutachtet

(26)

www.w3.org

www.w3.org

(27)

Anwendungen Anwendungen

von XML

von XML

(28)

XML ist fast

XML ist fast ü ü berall (versteckt)! berall (versteckt)!

HTMLHTML

ƒ neueste Version basiert auf XML: XHTML Internet Explorer/

Internet Explorer/FirefoxFirefox

ƒ können XML verarbeiten Microsofts .

Microsofts .netnet--ArchitekturArchitektur

ƒ basiert auf XML-Standards: SOAP und WSDL Microsofts Office 2003

Microsofts Office 2003

ƒ stellt XML-Schnittstelle bereit: WordML und SpreadsheetML

(29)

Anwendungen von XML Anwendungen von XML

1.1. anwendungsspezifischeanwendungsspezifische Standards Standards 2.2. Trennung Inhalt von PrTrennung Inhalt von Prääsentationsentation 3.3. WebWeb--Dienste (Web Services)Dienste (Web Services)

(30)

ƒ XML hat uneingeschränkten Wortschatz:

<xyz>David</xyz>, <αβγ>Hunter</αβγ>

Ö XML kein Standard für Publishing oder E-Business

ƒ für spezielle Anwendungen kann jedoch spezifischer Wortschatz und Grammatik festgelegt werden:

<book>

<title> STRING </title>

<authors>

<author> STRING </author>+

</authors>

<date> DATE </date>

<ISBN> STRING </ISBN> ?

<publisher> STRING </publisher>

ƒ werden XMLXML-- Sprachen

Sprachen (oder

Anwendungen von Anwendungen von XML) genanntXML

ƒ mit DTDsDTDs und XMLXML-- Schemata

Schemata möglich

1. Anwendungsspezifische 1. Anwendungsspezifische Standards Standards

(31)

SGML SGML - - vs. vs. XML XML - - Anwendungen Anwendungen

XML

L DTD/XML

-Schema

SGML Anwendung

von SGML SGML-DTD L

ƒ L muss nicht Teilsprache von SGML sein.

ƒ L kann keine neue Sprache definieren.

ƒ Beispiel: HTML

ƒ L immer Teilsprache von XML

ƒ L kann keine neue Sprache definieren.

XML-Sprache

= Anwendung von XML

(32)

XML- XML - Sprachen Sprachen : Beispiele : Beispiele

ƒƒ XHTML: Reformulierung von HTML 4 in XMLXHTML

ƒƒ WML: Präsentation von Inhalten für mobile EndgeräteWML

ƒƒ SVG: VektorgraphikenSVG

ƒƒ DocBook: strukturierte Darstellung von Bücher/ArtikelDocBook

ƒƒ XML/EDI: E-Business-Standard EDI als XMLXML/EDI

ƒƒ XSLT: Transformation & Layouten von XML-DokumentenXSLT

ƒƒ XMLSchema: Definition von XML-StandardsXMLSchema

ƒ unterschiedliche Anwendungen, einheitliche Syntax

ƒ unglaubliche Erfolgsgeschichte!

(33)

SGML, HTML, XML, XHTML?!

SGML, HTML, XML, XHTML?!

HTMLHTML

ƒ Anwendung von SGML XMLXML

ƒ Teilsprache von SGML

SGML

HTML XML

XHTML

XHTML XHTML

ƒ XML-Sprache

= Anwendung von XML

ƒ alle XHTML-

Dokumente immer wohlgeformte XML-

(34)

2. Trennung Inhalt von Pr

2. Trennung Inhalt von Prä äsentation sentation

ƒƒ MultiMulti--Delivery: Trennung Inhalt von PräsentationDelivery

ƒ weit verbreitet, aber nicht sichtbar!

ASCII EXCEL

XHTML

Transformation (XSLT)

WML

Inhalt (XML)

(35)

3. Web

3. Web- -Dienste (Web Services) Dienste (Web Services)

Browser

Anwendung traditionelle Web

traditionelle Web--AnwendungAnwendung

HTML

Webseiten

Ö Mensch-Mensch-MaschineMaschine--KommunikationKommunikation

Anwendung Anwendung

Web Service Web Service

SOAP Daten

(36)

Beispiel:

Beispiel: ohne Browser ohne Browser

ƒ Suchanfrage: SOAP-Nachricht (XML)

ƒ Suchergebnis: SOAP-Nachricht (XML)

ƒ Anwendung: in periodischen Abständen zu bestimmten Thema nach neuen Webseiten suchen lassen

With Google Web APIs, your With Google Web APIs, your

computer can do the computer can do the

searching for

searching for you.you.

http://

http://code.google.com/apiscode.google.com/apis

(37)

Eigenschaften von Web Services Eigenschaften von Web Services

ƒ implementieren keine neuen Systeme

ƒ Fassade für bestehende Systeme, um diese einfach zuzugreifen

ƒ unabhängig von Programmiersprachen und Betriebssystemen

ƒ keine revolutionär neue Technologie

ƒ nutzen gängige Internet-Protokolle wie HTTP(S) und SMTP

ƒ erstmals jedoch alle bedeutenden IT-Unternehmen auf gemeinsame Standards geeinigt: SOAP/WSDL

(38)

Ü Ü berblick berblick ü ü ber die ber die Vorlesung

Vorlesung

(39)

Vorlesungsinhalt Vorlesungsinhalt

1.1. XML-XML-BasistechnologienBasistechnologien 6 Termine

2.2. Web-Web-Dienste (Web Services)Dienste (Web Services) 4 Termine

3.3. RRückblickückblick 1 Termin 4.4. KlausurKlausur

1 Termin

(40)

Vorlesungsinhalt Vorlesungsinhalt

1.1. XMLXML--Basistechnologien: 6 TermineBasistechnologien

ƒ XML-Syntax, einschl. Namensräume

ƒ DTDs und XML-Schemata

ƒ XML-Parser

ƒ XSLT

ƒ Datenmodellierung mit XML

nicht behandelt werden:

nicht behandelt werden:

ƒ XML-Technologien zur Präsentation von Dokumenten wie XHTML oder WML

ƒ anwendungspezifische XML-Standards wie SVG oder VoiceXML

(41)

Vorlesungsinhalt Vorlesungsinhalt

2.2. Web-Web-Dienste (Web Services): 4 TermineDienste (Web Services)

ƒ diensteorientierte Architekturen

ƒ SOAP

ƒ WSDL

ƒ Web Services in der Praxis & Ausblick

3.3. RRückblickückblick: 1 Termin

ƒ kleine Wiederholung

4.4. Klausur: 1 TerminKlausur

(42)

Literatur

Literatur

(43)

Literaturempfehlungen Literaturempfehlungen

ƒ Hunter et al., Beginning XML (3rd Edition), Wrox Press, 2004.

ƒ Vorlesungsskript von Mario Jeckle (160 Seiten):

http://www.jeckle.de/vorlesung/xml/

ca. 41 €

(44)

Literaturempfehlungen Literaturempfehlungen

XMLXML--SchemaSchema

ƒ XML Schema Part 0: Primer Second Edition, W3C, 2004

XSLTXSLT

ƒ XSL Transformations (XSLT) Version 1.0, W3C, Nov. 1999

ƒ XSL Transformations (XSLT) Version 2.0, W3C, Jan. 2007

Web Services Web Services

ƒ SOAP Version 1.2 Part 0: Primer, W3C, 2003

ƒ Web Services Description Language (WSDL) 1.1, W3C, 2001

(45)

Wie geht es n

Wie geht es nä ächste Woche weiter? chste Woche weiter?

; Organisatorisches

; Was ist XML?

; Anwendungen von XML

; Überblick über die Vorlesung

; Literatur

ƒƒ XMLXML--SyntaxSyntax

ƒƒ NamensräNamensräumeume

ƒƒ Semantik von Semantik von XML-XML-TagsTags

(46)

Wann geht es n

Wann geht es nä ä chste Woche weiter? chste Woche weiter?

Nächste Vorlesung am 24.04 (Dienstag) !!!

KEINE Vorlesung am 25.04 !!!

Referenzen

ÄHNLICHE DOKUMENTE

Anfragesprache zur Auswahlvon Knoten in einem XML-Dokument, über Patternmatch und Filter. ● Weist gewisse Ähnlichkeiten zur

Zwischenstands jeden Mittwoch (zwei Folien erlaubt). • dienstags:

&lt;!ELEMENT Book (Title, Author, Date, ISBN?, Publisher)&gt;.. &lt;!ELEMENT

Sowohl das shipTo- als auch das billTo-Element enthält immer ein Attribut type aus dem Namensraum http://www.w3.org/2001/XMLSchema-instance, jeweils mit dem Werten ipo:EU-Address

Das XSLT-Stylesheet soll nicht nur das obige XML-Dokument, sondern alle gültigen Instanzen des XML-Schemas document.xsd auf analoge Art und

• Mit Document Type Definitions (DTDs) können aber spezielle Auszeichnungssprachen mit konkreten Tags definiert werden:. • werden Anwendungen von

• Mit Document Type Definitions (DTDs) können aber spezielle Auszeichnungssprachen mit konkreten Tags definiert werden:. • werden Anwendungen von

• Mit Document Type Definitions (DTDs) können aber spezielle Auszeichnungssprachen mit konkreten Tags definiert werden:. • werden Anwendungen von