XML1 XML-Motivation HTML definiert nur einen bestimmten Dokumenttyp Viele Web-Technologien...
-
Upload
viktoria-kaskel -
Category
Documents
-
view
103 -
download
0
Transcript of XML1 XML-Motivation HTML definiert nur einen bestimmten Dokumenttyp Viele Web-Technologien...
XML 1
XML-Motivation
• HTML definiert nur einen bestimmten Dokumenttyp
• Viele Web-Technologien benötigen eine allgemeinere Sprache zur Dokumentstrukturierung
• SGML (Standard Generalized Markup Language):– Basis von HTML– stellt Mechanismus dar, der Strukturierungsregeln für
beliebieg strukturierte Daten enthält, ist jedoch bzgl. Implementierung sehr komplex
• XML: Profil (Teilmenge) von SGML
XML 2
Spezialisierter SGML Parserfür HTML
Document
SGML Declaration DTD
Parser
XML 3
Spezialisierter SGML Parserfür XML
ParserSGML Declaration
Parser
XML DTD Document
SGML Declaration for XML
XML 4
Publishing mit XML
XML-Konverter XML-Browser
Benutzer-definierterDok.typ
Benutzer-definiertesDokument
XMLDok.typ
XMLDokument
Darstellung
www
XSLStyle Sheet
XML 5
Beispiel<?xml version = “1.0“><result>
<item> <name>Mylopoulos</name>
<email>[email protected]</email> <item/><item>
<name>Storey</name> <email>[email protected]</email>
<item/></result> <result>
<item> <item>
<name> <email> <name> <email>
XML 6
Beispiel - Verallgemeinerung<?xml version = “1.0“><!DOCTYPE result [
<!ELEMENT result (item*) ><!ELEMENT item (name, phone?, email?) > <!ELEMENT name (# PCDATA) ><!ELEMENT phone (# PCDATA) ><!ELEMENT email (# PCDATA) >
] > <result>
<item><name>Mylopoulos</name><email>[email protected]</email>
</item><item>
<name>Storey</name><email>[email protected]</email>
</item/></result>
XML 7
Beispiel für ein CSS 2-Style-Sheet
item {display: block; margin-bottom: 5 mm}
name {display: list-item; font-weight: bold}
phone {display: list-item; font-style: italic}
email {display: list-item; text-decoration: underline}Anmerkung:
ähnlich HTML, jedoch kann die Verarbeitung des XML Dokumentes spezieller sein, z.B. nur Suchoperationen innerhalb von name-Elementen zulassen.
XML 8
Konvertierung - Vorteile
• Sich selbst beschreibende Dokumente• Durchsuchbare Datenstukturen• Mächtige Verknüpfungen (XLink, XPointer)• Einfache Konvertierung in Web-Datenformate
– insbesondere in XML
– heute wichtig XML HTML;
– Umwandlung über XML DTD für HTML = XHTML
• Plattformunabhängigkeit
XML 9
XML und XML-Schema
• XML DTD beschreibt die Struktur von Dokumenttypen in textueller Form und ist daher unübersichtlich und schwer verständlich
• XML-Schema ist eine Sprache zur Definition der Struktur von XML Dokumenten bestimmter Dokumenttypen.
• XML-Schema bietet strong typing, Wiederverwendung, Modularisierung
• XML-Schema kann die XML DTD Syntax ersetzen, aber auch beide parallel möglich (bessere Performance bei DTD Evaluierung)
XML 10
XML-Schema und UML
• XML etabliert sich als Metagrammatik für interorganisatorische Kommunikation im Internet.
• Es wird immer notwendiger, dass Systemanalytiker und SW-Entwickler fähig sind:– zu repräsentierende Informationen in XML zu
modellieren,– Beziehungen zwischen XML und den Systemen, die
XML verarbeiten, zu beschreiben.
• Die Transformation zwischen XML Schema und UML soll helfen, Systeme, die mit XML Dokumenten arbeiten, einheitlich zu spezifizieren und zu entwickeln.
XML 11
Beispiel 1: Klasse/Element Author
<!ELEMENT author ( firstname,middlename*,lastname,suffix?
) ><!ELEMENT firstname (#PCDATA)><!ELEMENT middlename (#PCDATA)><!ELEMENT lastname (#PCDATA)><!ELEMENT suffix (#PCDATA)>. . .
author
firstnamemiddlename [0..1]*lastnamesuffix [0..1]
XML 12
Beispiel 2: Content Modell XML - UML
<!ELEMENT chapter
(head?, (p | citation | table )*, section*)
chapter
headsection
p citation table
{sequence: 1}
{choice: 0 ..*}{1}
{2} {3}0..1 0..*
XML 13
Transformation XML Schema - UML
• Betrifft UML‘s Statische Struktur Diagramme• 2 Varianten: Allgem. Abb. von UML Klassen
nach XML Schema versus Erweiterung von UML• Erweiterungsvariante durch Stereotypen und
Tagged Values hat zahlreiche Vorteile:– XML Schema wird direkt, eindeutig abgebildet
– macht Toolerstellung von Tools, die nur den XML content bearbeiten, einfacher
– ermöglicht 2-phasige Bearbeitung des UML Modells.
XML 14
Überblick zur Abbildung XML Schema - UML
• Alle Element- und Datentypen von XML-Schema werden in Klassen mit Stereotypen übergeführt.
• Die Stereotypen geben die Semantik des entsprechenden XML-Schema Konzeptes an.
• Da in Dokumenten i. A. die Reihenfolge der Elemente wichtig ist, UML dies aber nicht direkt unterstützt, muss eine Form der Angabe der Reihenfolge gefunden werden.
• Zu diesem Zweck wird in UML eine Sequenznummer für die Angabe der Reihenfolge von Content-Model-Elementen eingeführt.
XML 15
Beispiel eines UML - XML Schema Mappings
Zu Diskutieren:
- Darstellung der Reihenfolge
- Darstellung von Sequenz und Auswahl
- Kardinalitäten und sonstige NFR bei den Attributen in UML
Thema des Beispiels:
Datenmodell für ein vereinfachtes Dokument eines Verkaufsauftrags.
XML 16
XML Konzeptuelle Modellierung mit UML
• Produktkataloge, EDI (Electronic Data Interchange), digitale Bibliotheken, basieren auf XML, die entsprechenden DTD können aber dzt. nicht konzeptuell modelliert werden.
• UML kann als das Bindeglied zwischen Software Engineering und Dokumentdesign gesehen werden.
• Mit UML kann OO-Software gemeinsam mit den benötigten XML Strukturen entwickelt werden.
XML 17
XLink: XML Linking Language
• XLink und XPointer sind Bestandteile der Extensible Linking Language (XLL)
• HTML Links sind immer Bestandteil der Ressource, die sie verknüpfen: Einschränkung
• HTML Links verknüpfen immer genau zwei Ressourcen.
• XML: – Inline Links: ähnlich HTML– Out-of-Line Links: allgemeiner, werden an anderer
Stelle festgelegt
XML 18
Inline- versus Out-of-Line Links(beachte auch Bidirektionalität)
Dokument1
Dokument2Dokument2
Dokument1
Ressource1 Ressource1
Ressource2 Ressource2
Link
XML 19
Out-of-Line Links - Motivation
• Weitere Stufe der Indirektheit• Multidirektionale Links:
– es ist nicht sinnvoll, multidirektionale Links einer der Ressourcen zuzuordnen
• Herausgehende Links für schreibgeschützte Dokumente– ermöglicht die Erstellung herausragender Links in
scheibgeschützten Dokumenten
• höhere Änderbarkeit/Anpassbarkeit von Dokumenten
XML 20
Out-of-Line Links - Motivation
• Beispiel für die Verknüpfung mehrerer Ressourcen: Mailing-Liste, die selbst mit allen Teilnehmern verknüpft ist.
– Mailing Liste ist eine Webseite mit der Bescheibung des Zweckes
– Links zu den Teilnehmern können Links zu ihren Home-Pages oder zu ihren Email-Adressen sein
– Jeder Teilnehmer der Mailing Liste kann den Mailing-Listen-Link verwenden, um alle anderen Teilnehmer (oder die Mailing-Listen Webseite) herauszufinden.
XML 21
Link Informationen und Link Typen
• Locator: in der Regel ein URI• Link Semantics• Local Resource Semantics
– Rolle– Titel
• Remote Resource Semantics– Rolle und Titel– Verhalten
• Link Typen: – Simple Links– Extended Links und Extended Link Groups
XML 22
Xpointer: XML Pointer Language
• Xpointer dient zur Definition von Links auf Subressourcen, d.h. Auf Ressourcen innerhalb eines XML Dokumentes.
• Xpointer soll allgemein die Benutzung von Fragment Identifiern in URI‘s ermöglichen (#).
• Grundlegender Bestandteil: Location Term.• I.A. geben Xpointer ein Element innerhalb eines
Dokuments an, sie können aber auch nur Teile von Elementen oder mehrere Elemente bezeichnen.
XML 23
XSL Extensible Style Language
• XSL ist ein Profil (funktionale Teilmenge) der DSSSL (Document Style Semantics and Specification Language);
• Verhältnis XSL zu DSSSL ähnlich wie XML zu SGML
• XSL hat bzgl. XML eine größere Bedeutung als CSS bzgl. HTML hat, da HTML eine Standardformatierung für alle Elemente vorsieht
• XSL ist erheblich leitungsfähiger als CSS, da XML keine vordefinierte Formatierng vorsieht.
XML 24
XSL Verarbeitung
• Zwei Schritte:– Result Tree Construction aus Source Tree– Formatierung
• Beispiel: XSL Result Tree; Abb. von XML auf HTML <html>
<head> <body>
<title> <h1> <h2> <u1> <h2> <h2><book>
<li> <li><title> <chapter> <chapter>
XML 25
Example HTML, XML, DTD, XSL
• Incorporate example from Vidgen, Fig‘s. 11.1 – 11.4 (existing as word file)
XML 26
Die Zukunft von XML• Größte Innovation der Content-Architekturen seit dessen
Einführung.• Es wird noch dauern, bis XML die Verbreitung erreicht,
die HTML heute hat, XML‘s Vorteile sollten jedoch ausreichen, eine Konvertierung von HTML-Lösungen in XML einzuleiten.
• Weitere Unterstützung:– XML Namespaces zur eindeut. Namensgebung– Internet RFC definiert XML Medientypen , die im
content-type-Header eines HTT-Response angeführt werden
• RDF (Resource Description Framework) baut auf XML auf; XML etabliert sich als allgemeine Plattform für strukturierte Daten imWeb.
XML 27
XML – Quellen (der Folien)
• http://www.w3.org
• Sehr gut lesbares Überblicksbuch, (Kap.7: XML) Eric Wilde: “World Wide Web“; Springer, 1999.
• G. Booch et al.: “UML for XML Schema Mapping Specification“; http://www.rational.com/UML
• R. Conrad et al.: „“XML Conceptual Modeling Using UML“; ER2000 Conference Proceedings, A. Laender et al. (ed.), LNCS 1920; Springer 2000.
• J. Conallen: „“Working with XML Documents in UML“; RoseAchitect, Spring 2000. http://www.rosearchitect.com