1 / 64

ECM – Enterprise Content Management

ECM – Enterprise Content Management. Konzepte und Techniken rund um Dokumente. 2009 / 1. Auflage. Kapitel 2 / Capture - XML. Gliederung. XML- Historie, Ziel, Position zu HTML Struktur und Syntax XPath, XQuery, Ablage. Warum XML ?. XML ist die einzige Möglichkeit,

wilma
Download Presentation

ECM – Enterprise Content Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ECM – Enterprise Content Management Konzepte und Techniken rund um Dokumente 2009 / 1. Auflage Kapitel 2 / Capture - XML

  2. Gliederung XML- Historie, Ziel, Position zu HTML Struktur und Syntax XPath, XQuery, Ablage

  3. Warum XML ? XML ist die einzige Möglichkeit, die Vielzahl der Daten, Anwendungen und Geräte des E-Business zu verwalten

  4. Historische Entwicklung

  5. Entwicklungsmotive Zwei Motive haben die Entwicklung von XML ausgelöst: Die seit 1969 für die Beschreibung von Dokumentenstrukturen verwendete Standard Generalized Markup Language SGML war zu komplex. HTML als die einflussreichste aus SGML abgeleitete Auszeichnungssprache erwies sich wegen des weitgehend fixierten Satzes von Elementtypen als zu starr

  6. XML-Beispiel Quelle: GS1 Germany

  7. XML-Merkmale • XML ist ein offener Standard • XML basiert auf selbstbeschreibenden Merkmalen (Kontext als auch Inhalt) • XML ist leicht erlernbar • XML ist leicht sowohl von Rechnern als auch von Menschen zu lesen • XML Dokumente sind leicht erweiterbar • XML ist plattform- und anwendungsunabhängig

  8. XML als Integrationswerkzeug Business-to-Consumer Transaktion EDI VS. Inhaltsverteilung Kommunikation zwischen Anwendungen Quelle : Hochberg, SAG-Symposium, 2000

  9. XML-Dokumententypen Projekt- daten existierende Datenbanken Briefe kj flsjd kjs lskjlkj lskjd lksjl fslk jdlksj fksjdlkjlkjf lskjdlkjf slkjkj flskdjljdkfj s lkjlkjlsd s dfl skjd f slkdjflskdj lslkjdflk lskjd lfksjdlk lskdjfl aölskjdfölskdjf söldkfjlskdj föaslkdjlskdjf ösldkfjlskd föalskdj ksjdlfkjslkjd zentralesDatenmanagement Fax Edmund Boister Minimillennium Minga Kunden# 08/15-4711 Sehr geehrte Damen und Herren! Bitte fakturieren Sie folgenden Auftrag: # Beschreibung Audio Listen asdas ddas(asdsad) asdasddasda asdasdsd asdasdsdasdsdasdas sdassdsdasd sdas sdasds dassdasdsdasd(werwe) sdasdaskjl lkjf ölkjglkdf jgs kjlkfjgölkfjg lkdfjg ldkfjglö dkfjlgdkk Video E-Mails kjfskdjfl asdasdasdasd lkjfkjdflks fa sdf asdfsdf as kjlfkjslkjkjl df asdf sdfsd sdksldjfslkdf laskjdkdjf lskdj sd hflaksjdhf skk fksjdlfj öalsjdlfksjdf slkd lksdjf slkdfjlkdj aölskdjf skdjf slkjlj öa södlfjlkd föjkal slkdf lkjflksjdföa ljls df lskjd flkj llksd fjlakkjshd fkahlkh kshd flaksh kj flkahksjd flkajkjsh flkajsh dfkj h ksj fksjdhf la Bilder Prozess- beschreibungen

  10. XML für verschiedene Layouts und Geräte Wetter- daten Drucker CD Bild Bericht News Ticker Frankfurt: Wind 4 WNW / Rain / 22°C Internet

  11. XML - Überblick Einordnung – Demo-Video

  12. XML: Trennung von Content und Layout Darstellung der logischen Struktur von Dokumenten Layoutinformationen davon separat Quelle: Roland Boendgen

  13. XML-Strukturphilosophie

  14. XML-Nutzen • XML Tags • erlaubt selbstbeschreibende Daten • XML Programming Interface • arbeitet mit jedem Programmiermodell zusammen • XML Style Sheets • erleichtert die Personalisierung von Informationen • XML Document Type Definitions • gestattet eine Dokumentenbeschreibung für unterschiedlichste Belange Quelle : Viljoen, SAG-Symposium, 2000

  15. Struktur von XML Im Mittelpunkt stehen Dokumente

  16. HTML vs. XML HTML XML Struktur Festgelegt durch Struktur-Tags. Dokumentstruktur bestimmt Anordnung der Tags. Nicht erweiterbar. Festlegung einer eigenen Struktur durch selbstdefinierte Tags. Anordnung der Tags bestimmt Struktur des Dokuments. Beliebig erweiterbar. Inhalt Wird vom Autor festgelegt. Tags dienen der Formatierung des Textes zwischen den Tags. Dynamischer Zugriff auf den Text ohne Hilfsmittel nicht möglich. Wird vom Autor festgelegt. Tags beinhalten den Text des Dokuments. Dynamischer Zugriff durch spezielle Zugriffsmethoden auf den Inhalt der Tags möglich. Darstellung Zentral im HTML Dokument durch Tags, die Formatanweisungen enthalten Formatanweisungen sind ausgelagert in externe Datei

  17. Darstellung von XML-Dokumenten • HMTL Seiten nutzen vordefinierte Tags für die Formatierung – der Browser interpretiert diese • XML zeichnet sich durch eine unendliche Menge möglicher Tags aus – daher ist es unmöglich ein definiertes Layout für diese Tags im Browser festzulegen • XSL (Extensible Stylesheet Language) ist ein Zusatzstandard, der XML-Dokumente formatiert und mit bedingten Anweisungen ausgeben kann

  18. Gliederung XML- Historie, Ziel, Position zu HTML Struktur und Syntax XPath, XQuery, Ablage

  19. Besonderheiten Anwender definieren ihre eigenen Tags oder greifen auf öffentlich verfügbare Tagmengen zurück, die für verschiedene Anwendungsbereiche angeboten werden. Inhaltliche Strukturen lassen sich in beliebiger Tiefe schachteln Die verwendeten Tagnamen lassen einen Rückschluss auf die Bedeutung der Daten zu. Dagegen wird die Darstellung nicht explizit festgelegt. XML erlaubt die Festlegung externer Bezüge für ein Dokument. Derartige Referenzen werden aufgelöst und durch die entsprechende Entität ersetzt. Mittels Referenzen werden Entitäten in einem Dokument bei Bedarf mehrfach verwendet. Auf diese Weise lässt sich ein XML-Dokument aus vorgefertigten Teilen zusammensetzen.

  20. Informationseinheiten Elf Typen von Informationseinheiten werden unterschieden: Dokument Element Attribut Verarbeitungsanweisung Entitätsreferenz Zeichen Kommentar Dokumenttyp-Deklaration Ungeparste Entität Notation Namensraum

  21. Bedeutung der Informationseinheiten Die wichtigsten Komponenten in der sich der Inhalt widerspiegelt, sind Elemente und Attribute. Das XML-Dokument ist als Baum strukturiert mit einer Wurzel, die alle Elemente umschließt

  22. XML-Syntax Um wohlgeformt zu sein, muss ein Dokument syntaktische Regeln der XML-Grammatik erfüllen. Dabei gilt: Jedes wohlgeformte Dokument beginnt mit einem Prolog, dem mindestens ein Element folgt. Danach sind Kommentare oder Verarbeitungsanweisungen erlaubt. Hinter dem Prolog beginnen die XML-Daten in Form eines Baumes aus Elementen und Attributen. Das erste Element ist das Wurzelelement, das alle anderen Elemente einschließt

  23. XML-Deklaration - Video XML-Deklaration

  24. XML - Baum

  25. Aufbau eines XML-Dokumentes Bestandteile eines XML-Dokumentes Vorspann DTD (intern oder extern) XML

  26. XML-Dokumentenstruktur

  27. XML-Dokumentenbeispiel

  28. XML-Dokument - Baum XML definiert Baumstruktur! Wurzel heißt Dokumentelement Blattelemente enthalten Werte Einziger Datentyp: Zeichenkette

  29. XML - Objekte XML nennt seine Objekte Elemente Elemente sind begrenzt durch Tags Tagnamen sind "case-sensitive" Jedes geöffnete Tag muss auch wieder geschlossen werden Tags dürfen einander nicht überlappen; nicht erlaubt z. B.: <A> <B> </A> </B> Tags leerer Elemente haben besondere Syntax: <A/> (Shortcut für <A> </A>) Tags können Attribute enthalten: <A Attributname="Wert" ...> </A> Eine korrekte Schachtelung ist notwendig (anders als in HTML). XML-Elemente dürfen nicht überlappen.

  30. Vorspann eines XML-Dokumentes version gegenwärtig nur 1.0, 1.1 falls zukünftig weitere Versionen als Empfehlung vom W3C verabschiedet werden, dann ermöglicht der Parameter die Verarbeitung verschiedener Versionen. encoding (optional) Kodierung des Dokuments,Beispiele (UTF-8 – auchDefaultwert, UTF-16 - müssen ebenfalls alle XML-Prozessoren unterstützen). standalone (optional) 'yes' - spezifiziert, dass dem Dokument eine externe Markup-Deklaration (DTD oder XML-Schema) zugeordnet wird, sonst 'no' Defaultwert 'no'‚ wenn externe Deklaration definiert ist und standalone nichtangegeben ist

  31. Beispiele - Vorspann <?XML version="1.0" encoding="UTF-8" standalone="yes"> <?XML version="1.0" encoding="UTF-16" standalone="no"> <!DOCTYPE tourismus-infos SYSTEM "tourismus.dtd">

  32. XML - Grammatik

  33. Grammatik - Besonderheiten Anders als bei HTML ist auf Groß- und Kleinschreibung zu achten. Ein Name muss mit einem Buchstaben, einem Unterstrich oder einem Doppelpunkt beginnen Elemente sind mit beliebig vielen Attributen definierbar, mit Paaren von Attributname und Attributwert Jedes angegebene Attribut muss einen Wert haben, der in Hochkommata oder Anführungszeichen eingeschlossen ist. Mehrere Attribute werden durch Leerzeichen getrennt. Ob in einer Dokumentenstruktur ein Objekt besser als Element oder Attribut behandelt wird, obliegt dem Anwender

  34. Grammatik - Namensräume Die freie Namenswahl bei Elementen und Attributen wirft Probleme auf, wenn die gleichen Namen mit unterschiedlicher Bedeutung verwendet werden. <beitrag> kann Mitgliedsbeiträge oder Artikel für eine Zeitschrift bedeuten. Um Mehrdeutigkeiten zu vermeiden, ordnet man Namen Namensräumen zu. Diese werden durch eine eindeutige URI-Referenz identifiziert. Der URI wird über ein xmlns-Attribut ein Präfix zugeordnet: <mitglieder xmlns:mtg=„http://mitglieder.de/organisation“> Ein Element dieses Namensraums wird wie folgt angesprochen: <mtg:beitrag>100</mtg:beitrag>

  35. Aufbau von XML-Dokumenten 1 Komponenten eines Buchs Elemente eines XML Dokuments

  36. Aufbau von XML-Dokumenten 2 <content> XML builds on the principles of two existing languages, <emph>HTML </emph> and <emph>SGML </emph> to create a simple mechanism .. The generalized markup concept .. </content> <order> <customer>Meyer</customer> <position> <isbn>1-234-56789-0</isbn> <number>2</number> <price currency=´Euro´>30.00</price> </position> </order> Markup in Volltexten Mixed Content Elemente Elemente und Attribute hierarchische Schachtelung Sequenz Quelle: Viele der folgenden Folien basieren auf Meike Klettke, UNI Rostock

  37. Syntax von Elementen /1 Ein Element besteht aus: Start-Tag Ende-Tag und Elementinhalt Beispiel: <vortragender> Ronald Bourret </vortragender> Start-Tag Elementinhalt Ende-Tag

  38. Syntax von Elementen /2 Leere Elemente sind möglich: Beispiel: <koordinaten/> Elemente können verschachtelt werden: <vortragender> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> Start-Tag Elementinhalt Ende-Tag

  39. Graphische Darstellung von XML-Dokumenten XML-Dokumente sind Bäume! Beispiel: <vortragender> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> korrekte Schachtelung der Elemente notwendig Elementknoten Textknoten

  40. Document Type Definition • Einordnung von Dokumenten in Kategorien, macht Dokumente unterscheidbar • Entscheidend dafür sind die Elemente, die das jeweilige Dokument enthält • Um Elemente, die zu einem Dokument gehören zu definieren, verwendet man in XML die DTD

  41. Schemabeschreibung - DTD Darstellung, welche Elemente auftreten können und wie sie geschachtelt werden Deklaration von Strukturinformationen Vorteile einer DTD: Entspricht einer Dokumentation für die XML-Dokumente Anwendungen können darauf reagieren Fehler in XML-Dokumenten können erkannt werden Oft: bessere Qualität der XML-Dokumente, weil durchdachteres Vorgehen PCDATA = Parsed Character Data

  42. Definition von Elementen in einer DTD XML-Dokument: <vortragender> Ronald Bourret </vortragender> Zugehörige DTD: <!ELEMENT vortragender (#PCDATA)> XML-Dokument: <vortragender> <name> Bourret </name> <vorname> Ronald </vorname> </vortragender> Zugehörige DTD: <!ELEMENT vortragender (name, vorname)> <!ELEMENT name (#PCDATA)> <!ELEMENT vorname (#PCDATA)>

  43. Definition von Elementen in einer DTD (Inhaltsmodelle) Sequenz (A , B) A und B müssen in der angegebenen Reihenfolge im Dokument auftreten Alternative (A | B) entweder A oder B treten im Dokumente auf Wiederholung A? - 0..1 Mal A+ - 1..n Mal A* - 0..n Mal Mixed Content (#PCDATA | A | B)* A, B oder beliebiger Text treten im Dokument auf <!ELEMENT hotel (name, adresse)> <!ELEMENT name (#PCDATA)> <!ELEMENT adresse (plz, ort, ((strasse, nummer?) | postfach))> <!ELEMENT beschreibung (#PCDATA | ausstattung | gastronomie)*>

  44. Beispiele zur Definition von Elementen in einer DTD /1 <!ELEMENT hotel (name, adresse)> <hotel> <name>Hotel am Leuchtturm</name> <adresse>...</adresse> </hotel>

  45. Beispiele zur Definition von Elementen in einer DTD /2 <!ELEMENT adresse (plz, ort, ((strasse, nummer?) | postfach))> <adresse> <plz>18119</plz> <ort>Warnemuende</ort> <strasse>Seestrasse</strasse> <nummer>12</nummer> </adresse> <adresse> <plz>18051</plz> <ort>Rostock</ort> <postfach>12345</postfach> </adresse>

  46. Beispiele zur Definition von Elementen in einer DTD /3 <!ELEMENT beschreibung (# PCDATA | ausstattung | gastronomie)*> <beschreibung>Das Hotel am Leuchtturm befindet sich direkt am Alten Strom, mit Blick auf die Hafeneinfahrt, die Mole und den Strand.</beschreibung> <beschreibung>Unser Hotel verfügt über eine <ausstattung> Sauna </ausstattung> und eine <ausstattung> Meerwasserschwimmhalle </ausstattung>. Das <gastronomie> Hotelrestaurant</gastronomie> bietet regionale Küche und Fischspezialitäten. </beschreibung>

  47. Syntax von Attributen /1 Attribute werden einem Element des XML-Dokumentes zugeordnet: <vortragender tutorial=´T1´> Ronald Bourret </vortragender> Zugehörige DTD: <!ELEMENT vortragender (#PCDATA)> <!ATTLIST vortragender tutorial CDATA #REQUIRED> Attributwert Attributname Elementinhalt Ende-Tag Start-Tag

  48. Syntax von Attributen / 2 XML-Dokument <koordinaten x=´200´ y=´300´ z=´150´ /> DTD <!ELEMENT koordinaten (EMPTY)> <!ATTLIST koordinaten x CDATA #REQUIRED y CDATA #REQUIRED z CDATA #IMPLIED >

  49. Darstellung von XML-Dokumenten XML-Dokumente sind Bäume! Beispiel: <vortragender tutorial=´T1´> <name>Bourret</name> <vorname>Ronald</vorname> </vortragender> vortragender tutorial name vorname T1 Ronald Bourret Elementknoten Textknoten Attributknoten

  50. Deklaration von Attributen in einer DTD Attribute haben einen Namen einen Typ (CDATA, ID, IDREF/IDREFs, ENTITY/ENTITYS, NMTOKEN/NMTOKENS oder (wert1|wert2|...) Aufzählung möglicher Werte eine Angabe, ob das Attribut auftreten muss (#REQUIRED, #IMPLIED oder #FIXED) oder einen optionalen Defaultwert (bei #FIXED ist dieser auch erforderlich) <!ATTLIST preis waehrung CDATA #REQUIRED> <!ATTLIST projekt id ID #REQUIRED> <!ATTLIST person projekt IDREF #REQUIRED> <!ATTLIST plz xml-sqltype CDATA #FIXED ´INTEGER´>

More Related