JAVA und XML Programmierpraktikum XML 1.0 / Namespaces Von Markus Lucht & Timo Stollenwerk

  • View
    215

  • Download
    2

Embed Size (px)

Text of JAVA und XML Programmierpraktikum XML 1.0 / Namespaces Von Markus Lucht & Timo Stollenwerk

  • JAVA und XML ProgrammierpraktikumXML 1.0 / NamespacesVon Markus Lucht &Timo Stollenwerk

  • InhaltEinfhrung (Markus)XML 1.0 (Timo)Namespaces (Markus)

  • Komponenten eines DokumentesEin Dokument besteht aus 3 Teilen:Inhalt (Text, Bilder)Informationen zur (visuellen) DarstellungStruktur des Textes (Aufteilung in Kapitel, Abschnitte ...)

  • Darstellung von Dokumenten(1)Zwei Anstze zur Dartellung:WYSIWYG (What You See Is What You Get, ca. 1984)Erlaubte erstmals eine identische Darstellung von Text auf Papier und auf dem BildschirmDie Arbeitsweise orientiert sich fast nur am Layout, an der Formatierung und an der Darstellung des TextsProblem, wenn ein anderes Ausgabemedium als Papier gewhlt wird

  • Darstellung von Dokumenten(2)generic coding (1967 W. Tunnicliffe)Idee: Struktur und die logischen Informationen bleiben erhaltengeneric markup (ende der 60er S. Rice)generic markup konzentriert sich darauf Auszeichnungen in den Text einzubringen, die eine Aussage ber die Bedeutung der markierten Textstelle machen

  • Enstehung von GML und SGMLWeiteres Konzept: der Dokumenttypder Dokumenttyp beschreibt eine Klasse von Dokumenten, die sich in ihrem strukturellem Aufbau gleichenEnstehung von GML und SGMLAuf den o.g. Ideen entwickelten 1969 C. Goldfarb, E. Mosher und R. Lorie bei IBM die Generalized Markup Language (GML)Erstmals das Konzept eines formal def. Dokumenttyps mit verschachtelter StrukturDokumente enthalten Informationen ber den Text (Meta-Daten)Vorteil: Unabhngigkeit vom Ausgabemedium, da keine Formatierungsanweisungen gespeichert werden1984 wird SGML (S:Standardized) als ISO-Standard verffentlicht

  • XML ist SGML fr das WWWMan suchte nach einem Kompromiss zwischen zu viel Komplexitt (SGML, was das WWW angeht) und zu wenig Gestaltungsmglichkeiten (HTML)Lsung: XML (=Extensible Markup Language) 1.Recommendation 1998 durch das W3CXML kann mehr als HTML, da:(1)man beliebige Elemente verwenden kann (OO hiee das quivalent abstrakte Datentypen)(2)XML ist eine Metasprache (Sprachbeschreibungssprache), HTML eine Strukturbeschreibungssprache fr Web-DokumenteXML ist als Teilmenge von SGML nicht so komplex

  • Vor- und Nachteile von XMLVorteile:Offenes Format (XML-Standard ist offen zugnglich)Systemunabhngigkeit (unabhngigkeit von Betriebs-/Computersystem)Medienneutral (unabhngig vom Ausgabeformat)Anpassbar (kein starres Format)Nachteile:Hoher InitialaufwandLaufende Entwicklung

  • Entwurfsziele (1)XML soll sich im Internet auf einfache Weise nutzen lassenXML soll ein breites Spektrum von Anwendungen untersttzenXML soll zu SGML kompatibel seinEs soll einfach sein, Programme zu schreiben, die XML-Dokumente verarbeitenDie Zahl optionaler Merkmale soll minimal sein, idealerweise Null

  • Entwurfsziele (2)XML-Dokumente sollen fr Menschen lesbar und angemessen verstndlich seinDer XML-Entwurf sollte zgig abgefasst seinDer Entwurf von XML soll formal und przise seinXML-Dokumente sollen leicht zu erstellen seinKnappheit von XML-Markup ist von minimaler Bedeutung

  • XML als MarkierungsspracheXML ist eine MarkierungsspracheXML dient der Strukturierung und Beschreibung von DatenXML trennt den Inhalt von der Formatierung

    Mir Jemand Ein Text Hallo!

  • Struktur von XML-DokumentenEin Dokument ist ein XML-Dokument, wenn es wohlgeformt ist, gengt es bestimmten weiteren Beschrnkungen, kann es gltig sein.Wohlgeformt (well formed): Logische Struktur ist korrekt Alle Wohlgeformtheitsbeschrnkungen sind erflltGltig (valid): Passende DTD (Dokumenttyp-Deklaration) Beschrnkungen der DTD sind eingehalten

  • XML als BaumstrukturDATUMKURSKUERZELWERTKURSZETTELPLATZ

  • Wohlgeformtes XML-Dokument

    DBKFSE58,880

  • DTD: Kurse.dtd

  • Logische StrukturXML-Deklaration / Dokumenttyp- DeklarationProlog: Spezifikation ber den DokumenttypElement: eigentlicher Inhalt des DokumentsDas Dokument-Element enthlt alle Daten

    ...Beliebige Anzahl verschachtelter UnterelementeDBKFSE

  • Physikalische StrukturBesteht aus dem gesamten Inhalt des DokumentesDokument wird in Entities (Speichereinheiten) unterteiltDokument-Entitie ist die Anlaufstelle fr ParserAnalysierte / nicht analysierte Daten

  • Namespaces(1)Problem:Bei XML-Anwendungen kann es durch die Verwendung von Elementen und Attributen (=Markup-Vokabular) zu folgenden Problemen kommen (besonders bei Softwarewiederverwendung):-Mehrdeutigkeit-Namenskollisionen

  • Namespaces(2)Lsung:Dokumentkonstrukte sollten einzigartige Namen haben, deren Geltungsbereich ber den des beinhaltenden Dokuments hinausgeht. XML-Namespaces ist ein Mechanismus, der diese Anforderungen erfllt. Namespaces erreichten die W3C-Recommendation am 14.01.99

  • DeklarationNamespacedeklarationen bestehen aus einem reservierten Bezeichner : xmlns und seinem Wert, der URI. Die URI ist oft eine URL, welche auf eine DTD verweist.

  • Geltungsbereich fr Namespaces(1)Namespace-Deklarationen haben einen Geltungsbereich wie Variablendeklarationen in Programmiersprachen. Die Namespace-Deklaration gilt fr das Element, in dem sie angegeben ist und fr alle Elemente im Inhalt dieses Elements (Kinder-Elemente), es sei denn, sie wird durch eine andere Namespace-Deklaration berschriebenMan unterscheidet zwei Arten: default und qualified

  • Geltungsbereich fr Namespaces(2)Default:Alle unqualifizierten Namen innerhalb des Wirkungsbereichs der Deklaration gehren automatisch zum default-namespace

    NamespacesM.L.

    ...Nun eine Tabelle

    Hallo

  • Geltungsbereich fr Namespaces(3)Qualified:Namespaces werden am Anfang eines Dokumentes deklariert und erst bei Gebrauch qualifiziert

    86

    120

  • Beispiel: Qualified NamespacesNamespaceNamespaceKatalog.dtd...

    Order.dtd...

    Dokumentxmlns:Kat:=Katalog.dtdxmlns:Order=Order.dtd

    ...

    ...

  • Einzigartigkeit von AttributenEs sollte kein Tag geben, das zwei Attribute enthlt, die:(1)identische Namen haben, oder(2) Qualified Names mit dem gleichen lokalen Namensteil haben und mit Prfixen, die mit Namespacenamen verbunden sind, die Identisch sind (Der voreingestellte Namensraum gilt nicht fr Attribute)

  • LiteraturangabenExtensible Markup Language (XML) 1.0 / Empfehlung des W3C, 10. Februar 1998Die Sprachen des Web: HTML & XHTML Robert Tolksdorf; dpunkt-Verl.,2000Java & XML Brett McLaughlin, OReilly, 2001IX / Magazin fr Professionelle Informationstechnik, Juni 2001Seminar Erweiterung von XML Namespaces / Humboldt-Universitt zu Berlin (Becker/Zubow)XML in der Praxis Behme,Mintert, Addison-Wesley

    2.+3.) SGML untersttzt eben eine Vielzahl von viele Anwendungen4.+5.) Einfach

    10) Maschinen knnen Mengendaten leicht verarbeiten / Fr Rechner ist es unerheblich wie ausfhrlich die Sprache istbesonderen Auszeichnung elektronischer Dokumente / z.B. Formatierung von Text bzw. Festlegung der Bedeutung von TextelementenElemente werden durch Tags markiert, den Tags wird eine Bedeutung zugewiesen

    KURSZETTEL: Wurzelelement (muss in jedem XML-Dokument vorkommen) / Name der DTDKURSZETTEL: DATUM darf 0 oder 1 mal vorkommen / KURS beliebig oft; Komma legt die Reihenfolge festDATUM EMPTY: Kein Tag darf DATUM umschlieen (ATTLIST DATUM: welche Attribute das Tag tragen darf; CDATA: beliebige Zeichenkette; #REQUIRED: Attribut VALUE muss existierenATTLIST KURS: #IMPLIED: kann Attribut KURS haben; Kann Werte Heute|Gestern annehmenELEMENT KUERZEL: ANY: knnen beliebigen Inhalt umschlieenELEMENT WERT: optionaler Wert Whrung bestehend aus Zeichen

    XML- Deklaration: Identifiziert die verwendete XML VersionDokumenttyp- Deklaration: grammatische Regeln fr den DokumenttypInhalt kann sein: Elemente, Zeichenketten, Kommentare, ...Nicht analysiert: Referenz auf weiteres EntitiesAnalysiert: die Referenz wird durch den Inhalt des Entities ersetzt

View more >