1 / 22

XML – Grundlagen und Anwendungen

XML – Grundlagen und Anwendungen. Teil 1: Dokumenten- und Datenstrukturen in XML Prof. Dr. Michael Löwe, FHDW Hannover. Inhalt. Gehirnsturm: Was ist XML? Warum ist XML so erfolgreich? Was sind Dokumentenstrukturen? Elemente, Tags und Texte Attribute

Download Presentation

XML – Grundlagen und Anwendungen

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. XML – Grundlagen und Anwendungen Teil 1: Dokumenten- und Datenstrukturen in XML Prof. Dr. Michael Löwe,FHDW Hannover

  2. Inhalt Gehirnsturm: Was ist XML? Warum ist XML so erfolgreich? Was sind Dokumentenstrukturen? Elemente, Tags und Texte Attribute Kommentare und Standard-Entity-Referenzen Zusammenfassung XML Grundlagen und Anwendungen

  3. Was ist XML? Weiterentwicklung von HTML Untermenge von SGML (DTD-lite) Metasprache – Sprache zur Definition von Sprachen Alles und Nichts Ein Satz von Kerntechnologien (XML, DTD, XML-Schema, XPath, XSL-T, XSL-FO,…) Die Menge aller definierten Instanzen (SOAP, WSDL, UDDI, XMI, BPEL, VoiceXML,…) XML Grundlagen und Anwendungen

  4. Warum ist XML erfolgreich? Alle machen mit (MicroSoft, Sun, IBM, etc.) XML ist einfach Es ist Alles aber eben auch Nichts XML ist nur technisches Mittel zum fachlichen Zweck XML ist nur Dokumentenform und nicht –Inhalt Kommunikationsplattform/Austauschformat/Trägermedium Konkrete Dokumente benötigen XML-Anwendung Bei den Inhalten ist die Standardisierung viel geringer XML Grundlagen und Anwendungen

  5. e1 e1 e2 e3 e4 … e2 e3 e4 e5 e6 e1 e2 e3 e4 e5 e6 Dokumentenstruktur Reihenfolge Totale Ordnung der Elemente „nach“: Gliederung Starke partielle Ordnung der Elemente „in“: Es gibt genau eine Wurzel ohne Vater Alle anderen haben genau einen Vater Gliederung + Reihenfolge Totale Ordnung pro Element „nache“: Rekonstruktion von „nach“ aus „in“ und „nache“ XML Grundlagen und Anwendungen

  6. e1 e2 e3 e4 e5 e6 Dokumentenstruktur Linearisierung (e1 (e2(e4 )e4 )e2 (e3(e5 )e5 (e6 )e6 )e3)e1 SGML-isierung (e = <e> )e = </e> XML-Parser <e1><e2><e4> </e4></e2><e3><e5> </e5><e6> </e6></e3></e1> XML Grundlagen und Anwendungen

  7. Wo ist der Text? <e1> Da ist der Text. <e2> <e4> Er kann überall </e4> zwischen den und in den </e2> Elementen stehen. <e3> <e5> Es kann auch leere Elemente wie </e5> <e6> </e6> </e3> das Element 6 geben. </e1> Start-Tag Gemischter Inhalt Element e2 Reiner Textinhalt Reiner Elementinhalt Inhalt von e3 End-Tag XML Grundlagen und Anwendungen

  8. 0..1 0..1 Node nextBrother nextBrother 0..1 firstSon Text Element value:String name:String Empty Element Non-Empty Element firstSon Element und Text print()  pT() + nextBrother.print() value()  vT() + nextBrother.value() vT()  value pT()  value pT()  “<“ + name + “/>“ vT()  ““ vT()  firstSon.value() pT()  “<“ + name + “>“ + firstSon.print() + “</“ + name + “>“ XML Grundlagen und Anwendungen

  9. Beispiel 1: Message receiver.operation(12,“argument“) <MessageSend> <Receiver> receiver </Receiver> . <AppliedOperation> operation </AppliedOperation> ( <ActualParameter> 12 </ActualParameter> , <ActualParameter> „argument“ </ActualParameter> ) </MessageSend> XML Grundlagen und Anwendungen

  10. Beispiel 2: Buch <Book> <Title> Tolles Buch </Title> <Author> Michael Löwe </Author> <Chapter> <Title> Tolles Kapitel </Title> <Section> <Title> Toller Abschnitt </Title> <Paragraph> blabla 1 …</Paragraph> <Paragraph> blabla 2 …</Paragraph> ….. </Section> … </Chapter> … </Book> XML Grundlagen und Anwendungen

  11. Name: im Glück Vorname: Hans Tel: 0511 12 34 56 Fax: 0511 12 34 57 Email: h.i.g@gans.de <Entry> <Name>im Glück</Name> <Vorname>Hans</Vorname> <Tel>0511 12 34 56</Tel> <Fax>0511 12 34 57</Fax> <Email>h.i.g@gans.de</Email> </Entry> Beispiel 3: Adresseintrag XML Grundlagen und Anwendungen

  12. <a> bla1 <b/> bla2 <c>ccc</c> bla3 </a> <a> <text>bla1 </text> <b/> <text> bla2 </text> <c>ccc</c> <text> bla3 </text> </a> Vermeidung gemischten Inhalts XML Grundlagen und Anwendungen

  13. 0..1 Node 0..1 nextBrother Text Element 0..1 0..1 value:String name:String Empty Element Non-Empty Element firstSon XML ohne Gemischten Inhalt nextBrother XML Grundlagen und Anwendungen

  14. <MessageSend> <Receiver> receiver </Receiver> . <AppliedOperation> operation </AppliedOperation> ( <ActualParameter> 12 </ActualParameter> , <ActualParameter> „argument“ </ActualParameter> ) </MessageSend> <MessageSend> <Receiver> receiver </Receiver> <Dot>.</Dot> <AppliedOperation> operation </AppliedOperation> <BracketOpen>(</BracketOpen> <ActualParameter> 12 </ActualParameter> <Separator>, </Separator> <ActualParameter> „argument“ </ActualParameter> <BracketClose>) </BracketClose> </MessageSend> Von der Form zum Inhalt <MessageSend> <Receiver> receiver </Receiver> <Dot/> <AppliedOperation> operation </AppliedOperation> <BracketOpen/> <ActualParameter> 12 </ActualParameter> <Separator/> <ActualParameter> „argument“ </ActualParameter> <BracketClose/> </MessageSend> <MessageSend> <Receiver> receiver </Receiver> <AppliedOperation> operation </AppliedOperation> <ActualParameter> 12 </ActualParameter> <ActualParameter> „argument“ </ActualParameter> </MessageSend> XML Grundlagen und Anwendungen

  15. <Entry> <Name>im Glück</Name> <Vorname>Hans</Vorname> <Tel>0511 12 34 56 </Tel> <Fax>0511 12 34 57 </Fax> <Email>h.i.g@gans.de</Email> </Entry> <Entry> <Name value = “im Glück“/> <Vorname value = “Hans“/> <Tel value = “0511 12 34 56“/> <Fax value = “0511 12 34 57“/> <Email value = “h.i.g@gans.de“/> </Entry> Attribute: Beispiel 1 XML Grundlagen und Anwendungen

  16. <MessageSend Receiver = “receiver“ AppliedOperation = “operation“> <ActualParameter value = “12“/> <ActualParameter value = ‘“argument“‘ /> </MessageSend> <MessageSend> <Receiver> receiver </Receiver> <AppliedOperation> operation </AppliedOperation> <ActualParameter> 12 </ActualParameter> <ActualParameter> „argument“ </ActualParameter> </MessageSend> Attribute: Beispiel 2 Attributwerte können in einfachen oder doppelten Hochkommata eingeschlossen werden XML Grundlagen und Anwendungen

  17. 0..1 Node nextBrother * Text Element Attribute name 0..1 value:String name:String name:String value:String firstSon Empty Element Non-Empty Element Modell mit Attributen XML Grundlagen und Anwendungen

  18. Unterelement: Trägt zum Wert bei Ist Inhalt Kann Struktur haben Kann mehrfach auftreten Position ist signifikant Erfordert Textknoten Attribut: Trägt nicht zum Wert bei Ist Form Hat keine Struktur Kann nur einmal auftreten Position ist unerheblich Textknoten überflüssig Attribute vs. Unterelemente XML Grundlagen und Anwendungen

  19. Kommentare Beginnen mit: <!-- Enden mit: --> Können beliebig im Text (auch vor und nach der Wurzel) vorkommen Können nicht in Tags vorkommen Beispiel: <a> bla1 <!--Kommentar-->bla2<b/></a> XML Grundlagen und Anwendungen

  20. Character (Entities) Standard: Unicode 16-Bit-Kodierung Groß- und Kleinschreibung ist signifikant Sonderzeichen: &lt; für “<“ &amp; für “&“ &gt; für “>“ &quot; für “““ &apos; für “‘“ XML Grundlagen und Anwendungen

  21. Zusammenfassung XML-Dokumente sind Texte mit • Gliederungsstruktur (Kompositum aus Element und Text) Gliederungsstruktur realisiert mit passenden Klammern (Tags) • Reihenfolge (Unterknoten eines Elements sind geordnete Liste) Elemente können mit Attributen dekoriert sein Attribute werden im öffnenden Tag des Elements angegeben • Attributnamen müssen pro Element eindeutig sein • Attributwerte sind Texte (in Hochkommata eingeschlossen) XML-Dokumente müssen in diesem Sinne wohlgeformt sein XML Grundlagen und Anwendungen

  22. Übung 1 Beschreiben Sie die Struktur des folgenden XML-Dokuments nur mit den Elementen „Element“, „Attribute“ und „Text“: <Program> <Function name = “f“> <Parameter name = “x“ type =“int“/> <ReturnType type = “int“/> <Body> ?(x = 0, 1, x * f(x – 1) </Body> </Function> <Type name = “pair“ type = “product“> <Component name = “x“>int</Component > <Component name = “y“>int </Component > </Type> </Program> XML Grundlagen und Anwendungen

More Related