Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

- XML: Das Sprachkonzept

Ähnliche Präsentationen


Präsentation zum Thema: "- XML: Das Sprachkonzept"—  Präsentation transkript:

1 - XML: Das Sprachkonzept
Basics Wohlgeformte XML-Dokumente (ohne DTD) Gültige XML-Dokumente (mit DTD) Attribute, Style Sheets - XML und EDI: Vision u. Initiativen - XML/EDI: Eine Anwendung

2 HTML - eine Sprache zur Auszeichnung von Dokumenten
Das HTML-Dilemma HTML - eine Sprache zur Auszeichnung von Dokumenten <H1>Überschrift 1</H1> <H2>Überschrift 2</H2> <p>Absatz<p> ...

3 HTML ist ... ...aber leider... Das HTML-Dilemma einfach
Erweiterbarkeit: Semantische Auszeichnung unmöglich Struktur: Komplexere Strukturen nicht abbildbar Validierung: Strukturelle Schwächen

4 XML: Das Sprachkonzept
Was ist XML ? Die eXtensible Markup Language XML ist eine textbasierte Meta-Auszeichnungssprache, die die Beschreibung, den Austausch, die Darstellung und die Manipulation von strukturierten Daten erlaubt, so daß diese von einer Vielzahl von Anwendungen genutzt werden können.

5 XML: Das Sprachkonzept
Tags können individuell definiert und benannt werden. Dokumentenstrukturen können in beliebiger Komplexität abgebildet werden. XML-Dokumente können - müssen aber nicht – eine formale Beschreibung ihrer Grammatik enthalten.

6 XML: Das Sprachkonzept
XML besteht also aus Tags <TAG>Inhalt</TAG> ...die ineinander geschachtelt sind <TAG> <NochEinTag>Inhalt</NochEinTag> </TAG> ...und zusammen mit einer XML-Deklaration bereits ein vollständiges XML-Dokument ergeben. Dabei müssen nur wenige „Wohlgeformtheits-Regeln“ beachtet werden. <?xml version="1.0"?>

7 Wohlgeformte Dokumente
Jeder geöffnete Tag muß explizit geschlossen werden Tags ohne Inhalt (<IMG> in HTML) werden in XML als <IMG/> geschrieben oder geschlossen Attribut-Werte in doppelte Anführungszeichen, z. B.: <?xml version=”1.0”?> Das Markup muß, wie bei SGML, streng hierarchisch gegliedert sein Keine Markup-Zeichen (< oder &) im Text, alle Attribute – die für alle Elemente verwendet werden können – müssen Default-Typ CDATA sein. Am Anfang des Dokumentes sollte der Hinweis auf die XML-Version erfolgen: <?xml version=”1.0”?>

8 Wohlgeformtes Dokument
„Bestellung“ <?xml version="1.0" ?> <BESTELLUNG> <AUFTRAGSKOPF> <NAME>Mustermann</NAME> <DATUM> </DATUM> </AUFTRAGSKOPF> <AUFTRAGSPOSITIONEN> <POSITION> <BEZEICHNUNG>Festplatte</BEZEICHNUNG> <ARTIKELNUMMER>123456</ARTIKELNUMMER> <ANZAHL>5</ANZAHL> </POSITION> <BEZEICHNUNG>Monitor</BEZEICHNUNG> <ARTIKELNUMMER>9876</ARTIKELNUMMER> <ANZAHL>1</ANZAHL> </AUFTRAGSPOSITIONEN> </BESTELLUNG>

9 XML Grundlagen XML stellt die Regeln bereit, um Auszeichnungssprachen zu definieren. Es gibt zwei Arten, diese Regeln (also die Grammatik der konkreten Auszeichnungssprache) zu spezifizieren: Sind die grundlegenden Anforderungen an die XML-Syntax erfüllt, spricht man von wohlgeformten (well-formed) Dokumenten Zu XML-Dokumenten kann eine explizite Definition der nötigen/ möglichen Tags und ihrer Struktur gehören. Hierfür verwendet XML eine formale Grammatik, die Document Type Definition (DTD).

10 Gültiges Dokument „Bestellung“
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE BESTELLUNG SYSTEM "BESTELLUNG.DTD"> <BESTELLUNG> <AUFTRAGSKOPF> <NAME>Mustermann</NAME> <DATUM> </DATUM> </AUFTRAGSKOPF> <AUFTRAGSPOSITIONEN> <POSITION> <BEZEICHNUNG>Festplatte</BEZEICHNUNG> <ARTIKELNUMMER>123456</ARTIKELNUMMER> <ANZAHL>5</ANZAHL> </POSITION> <BEZEICHNUNG>Monitor</BEZEICHNUNG> <ARTIKELNUMMER>9876</ARTIKELNUMMER> <ANZAHL>1</ANZAHL> </AUFTRAGSPOSITIONEN> </BESTELLUNG>

11 DTD zu gültigem Dokument
„Bestellung“ <!ELEMENT BESTELLUNG (AUFTRAGSKOPF, AUFTRAGSPOSITIONEN)> <!ELEMENT AUFTRAGSKOPF (NAME, DATUM, )> <!ELEMENT NAME (#PCDATA)> <!ELEMENT DATUM (#PCDATA)> <!ELEMENT (#PCDATA)> <!ELEMENT AUFTRAGSPOSITIONEN (POSITION)+> <!ELEMENT POSITION (BEZEICHNUNG, ARTIKELNUMMER, ANZAHL)> <!ELEMENT BEZEICHNUNG (#PCDATA)> <!ELEMENT ARTIKELNUMMER (#PCDATA)> <!ELEMENT ANZAHL (#PCDATA)> BESTELLUNG.DTD

12 Deklaration von Elementen in der DTD
Elemente können i. Allg. andere Elemente oder Zeichendaten enthalten <!ELEMENT AUFTRAGSKOPF (NAME, DATUM, )> <!ELEMENT NAME (#PCDATA)> Elemente können als sequentiell, optional etc. definiert werden <!ELEMENT a (b, c?, (d|e)+, f*) <!ELEMENT (adresse, cc*, message, signature?) Elemente können auch gemischten Inhalt haben <!ELEMENT a (#PCDATA | b | c)*>

13 Attribute Alle Elemente können Attribute haben:
<AUFTRAGSKOPF edifact=„UNH D0062.1“ lala=„123“> Die Attribute müssen wie Elemente deklariert werden <!ATTLIST AUFTRAGSKOPF edifact CDATA #REQUIRED> Attribute können optional, obligatorisch oder „fixed“ sein <!ATTLIST BEZEICHNUNG ean CDATA #REQUIRED abbildung CDATA #FIXED „ status (angebot | normal) „normal“>

14 Gültiges XML-Dokument
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE BESTELLUNG SYSTEM „bestellung2.dtd“> <BESTELLUNG> <AUFTRAGSKOPF edifact=„UNH D0062.1“> <NAME>Mustermann</NAME> <DATUM> </DATUM> </AUFTRAGSKOPF> <AUFTRAGSPOSITIONEN> <POSITION> <BEZEICHNUNG ean=„ “ abbildung=„ status=„angebot“>Festplatte</BEZEICHNUNG> <ARTIKELNUMMER>123456</ARTIKELNUMMER> <ANZAHL>5</ANZAHL> </POSITION> </AUFTRAGSPOSITIONEN> </BESTELLUNG>

15 DTD <!ELEMENT BESTELLUNG (AUFTRAGSKOPF, AUFTRAGSPOSITIONEN)>
<!ELEMENT AUFTRAGSKOPF (NAME, VORNAME*,DATUM, +)> <!ATTLIST AUFTRAGSKOPF edifact CDATA #REQUIRED> <!ELEMENT NAME (#PCDATA)> <!ELEMENT VORNAME (#PCDATA)> <!ELEMENT (#PCDATA)> <!ELEMENT DATUM (#PCDATA)> <!ELEMENT AUFTRAGSPOSITIONEN (POSITION)+> <!ELEMENT POSITION (BEZEICHNUNG, ARTIKELNUMMER, ANZAHL)> <!ELEMENT BEZEICHNUNG (#PCDATA)> <!ATTLIST BEZEICHNUNG ean CDATA #REQUIRED abbildung CDATA #FIXED „ status (angebot | normal) „normal“> <!ELEMENT ARTIKELNUMMER (#PCDATA)> <!ELEMENT ANZAHL (#PCDATA)>

16 Gültige XML-Dokumente
Ein XML-Dokument ist gültig (valid), wenn es wohlgeformt ist und darüber hinaus den Spezifikationen einer DTD entspricht. Ein wohlgeformtes XML-Dokument kann ein gültiges werden, sofern es die Regeln der DTD erfüllt. Funktional ist eine DTD dem Relationenschema einer Datenbank oder einer IDL analog Programme können mit einer DTD XML-Dokumente auf strukturelle Fehler überprüfen und neue „Instanzen“ dieses Dokument-Typs erstellen.

17 Präsentation von XML-Dokumenten Die Darstellung eines XML-Dokumentes erfolgt mit Hilfe einer Formatvorlage, eines Style Sheet. In diesem Style Sheet wird das Layout des Dokumentes festgelegt. Auf Style Sheets wird durch entsprechende processing instructions verwiesen, z. B. : <?xml-stylesheet href="style1.css"?> Das W3C entwickelt mit (XSL) eigene Style Sheet Sprache für XML Daneben ist die Darstellung mit von HTML bekannten CSS möglich

18 + = XML mit CSS <?xml version="1.0" ?>
<?xml-stylesheet type="text/css" href="style1.css"?> <BESTELLUNG> <AUFTRAGSKOPF> <NAME>Mustermann</NAME> </BESTELLUNG> + = BESTELLUNG { Display: Block; background-color: blue; float: left; padding: 15pt} NAME, DATUM, {Display: Block; font-size: 28pt; font-family: Times, serif} {color:yellow} AUFTRAGSPOSITIONEN {Display: Block; background-color: green; float: left; padding: 12pt} BEZEICHNUNG {font-size: 28pt; font-family: Times, sans-serif}

19 Die “XML-Familie” Neben den eigentlichen Sprachspezifikationen von XML (seit eine Recommendation), gibt es weitere Initiativen des W3C aus dem XML-Umfeld. Die wichtigsten sind: XLink (Working Draft, ) XPointer (Working Draft, ) XML Namespaces (Recommendation, ) XSL (Working Draft ) XSLT, XPath (Recommendation, ) DOM (Recommendation, ) RDF (Recommendation, ) XML Schemas (Working Drafts, ) (XML-Data, DCD, SOX, DDML)

20 Vorteile von XML Die installed base von HTML, HTTP und Webbrowsern
XML ist einfach und portabel XML kann Dokumente beliebiger Komplexität abbilden XML ist mehr als nur eine Auszeichnungssprache Internationalität  Daten, die mit XML ausgezeichnet sind, können prinzipiell von allen Anwendungen weiterverarbeitet und auf verschiedensten Medien ausgegeben werden

21 XML und EDI  klassische EDI-Beziehungen: Langfristig, nur für hochvolumige Transaktionen vor einem langen Zeithorizont lohnenswert  XML/EDI: Investitionsbereitschaft in kompatible, offene IT-Infrastrukturen v.a. für KMU an jeder Stelle der Value Chain wesentlich größer („Investitionsruinen“) Datenstrom, den der XML-Parser den verschiedensten Anwendungen übergibt, ist einfach zu verarbeiten (Manipulation, Anzeige und Transformation!) Mit XML ausgezeichnete Daten sind leicht an die Bedürfnisse unterschiedlichster Applikationen und Medien anpaßbar XML-Basierung ermöglicht die Definition flexibler, offener Schnittstellen Vorteile der Verwendung von XML (Einfachheit, Flexibilität, Einbindung bestehender Produkte und Legacy-Systeme) ist auch die Grundlage des E-Business-Framework der XML/EDI-Group

22 Anwendungen: XML/EDI Die Grundidee:
XML/EDI Dokumente nutzen eine im Industriestandard spezifizierte DTD Diese DTD wird in Repositories zur Verfügung gestellt Damit können Dokumente von jeder empfangenden Anwendung validiert und verarbeitet werden Andere Möglichkeit: Wohlgeformte XML-Dokumente/Schemas

23 XML Anwendungen: XML/EDI Vorteil Nachteil
EDI-Standards definieren Syntax und Elemente von Geschäftsdokumenten. Es gibt Bemühungen, traditionelles EDI in XML-Syntax zu formulieren. XML Vorteil Nachteil Eigene Beschreibung und Strukturdefinition möglich

24 Anwendungen: XML/EDI ANSI ASC X12 (Namensvergabe, Hierarchien/Schachtelungen etc.) DIN/Nbü und dedig (Norm-Entwurf DIN ) UN/CEFACT (EC XML Initiative mit OASIS, simpl-EDI, oo-EDI) ebXML (seit Nov. 1999, UN/CEFACT, OASIS...) CEN/ISSS und EBES XML/EDI-Group (Migration mit 100% Rückwärtskompatibilität) OASIS, commerceNet, cXML, rosettaNet... ...

25 2 Beispiele für eine EDIFACT-Nachricht
in XML-Syntax UNH+ELFE INVOIC:D:95A:UN:ETEB+1:C’ <elfe_segment name="message header" zweck="Beginn der Telekom-Rechnung" elfe="UNH"> <elfe_0062>ELFE </elfe_0062> <elfe_S009> <elfe_0065>INVOIC</elfe_0065> <elfe_0052>D</elfe_0052> </elfe_S009> </elfe_segment> UNH + ELFE INVOIC:D... ... <UNH D0062=" ELFE ” S009D0065=" INVOIC” S009D0052=“D” />

26 XML/EDI Austausch von Geschäftsdokumenten via HTTP Grundlage ist Extranet Plattform von Lufthansa AirPlus 1) XML-Generator konvertiert Inhouse-Daten zu XML  basiert auf XML Template (dictionary) 2) Kunde kontaktiert Webseite und wird authentisiert 3a) Der Kunde sieht/druckt XML-Datei im Browser oder... 3b) speichert XML-Datei aus dem Browser und verarbeitet die Daten mit eigenen Tools oder... 3c) ...nutzt ein signiertes Java-Applet zum automatischen Import der Rechnungsdaten in die eigene Datenbank.

27 Extranet Directory Service
XML/EDI - Architektur Extranet Directory Service EDIFACT XDI XML WWW- Browser + Java-Applet XML XML EDIFACT2XML Converter database WWW- Server + Java-Servlets

28 EDIFACT-to-XML Konverter

29 EDIFACT Nachricht und Repräsentation in XML

30 Mapping Tool

31 XML/EDI Ausschließlich offene Standards Darstellung durch Style Sheets (XSL!) Einzige Voraussetzung: SmartCard Lesegerät, Internet-Zugang Unterstützung unterschiedlichster Standards Flexibel und sicher “custom-size EDI” anstelle von “full-size EDI” Einfache Integration: XML-Daten sind einfach zu verarbeiten Alle größeren Softwareanbieter haben XML-Schnittstellen angekündigt (Tamino!)

32 Das „Competence Center XML“ am Institut für Wirtschaftsinformatik
der J. W. Goethe-Universität in Frankfurt


Herunterladen ppt "- XML: Das Sprachkonzept"

Ähnliche Präsentationen


Google-Anzeigen