![Page 1: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/1.jpg)
1
Java und XMLStephan Baldes
14.04.2008
![Page 2: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/2.jpg)
2
Warum XML?
In welchem Format wurden die Daten gespeichert?
Bernd;Thomas;3;5;1987;Freiburg;KarlsruhePeter;Maier;7;9;1980;Karlsruhe;Freiburg
CSV(Comma-Separated Values)
Im CSV-Format ist die Bedeutung der Daten nicht bekannt.
![Page 3: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/3.jpg)
3
Java und XML
Was ist XML?
![Page 4: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/4.jpg)
4
XML: EXtensible Markup Language
• 1998: XML-Spezifikation World Wide Web Consortium (W3C)
• Darstellung hierarchisch strukturierter Daten in Form von Text.
• Austausch von Daten zwischen verschiedenen Systemen: Menschen- und maschinenlesbar.
• Idee: Trennung von Inhalt und Darstellung.
• Techniken: DTD, Schema, XSLT, XPATH,...
![Page 5: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/5.jpg)
5
book
<Qty unit="g"></Qty>↔
XML: EXtensible Markup Language
![Page 6: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/6.jpg)
6
XML: EXtensible Markup Language<?xml version="1.0" encoding="ISO-8859-1" ?> <wikipedia> <titel>Wikipedia Städteverzeichnis</titel> <!-- Jetzt folgen alle Städte --> <eintrag> <stichwort>Genf</stichwort> <eintragstext>Genf ist der Sitz von ...</eintragstext> </eintrag> <eintrag> <stichwort>Köln</stichwort> <eintragstext>Köln ist eine Stadt, die ...</eintragstext> </eintrag> </wikipedia>
• Ausdrücke sind wohlgeformt.
• Meta-Tags, Kommentare
• Das Dokument enthält nur ein Wurzelelement.
![Page 7: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/7.jpg)
7
Arbeitsauftrag CSV-Datei in wohlgeformtes XML-Dokument
umwandelnKopieren Sie die Datei adressliste.csv aus dem Vorlagenlaufwerk und
wandeln Sie sie in ein wohlgeformtes XML-Dokument um. Speichern Sie die Datei unter dem Namen adressliste.xml und öffnen Sie
sie im Firefox.
Zeit: 5 Minuten
![Page 8: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/8.jpg)
8
Java und XML
XML-Verarbeitung in Java
![Page 9: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/9.jpg)
9
• JDK stellt ab Version 1.4 alle benötigten Technologien bereit.
• Zwei Ansätze:
• SAX: Simple API for XML
• DOM:Document Object Model
• Andere Ansätze: StAX, JDOM, XSLT, XPATH, …
public void startElement(String name, …) { System.out.println("Start element: " + name); } …
XML-Verarbeitung in Java
![Page 10: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/10.jpg)
10
•XMLReader xr = XMLReaderFactory.createXMLReader(); xr.parse(new InputSource(new FileReader("Personen.xml")));
• public void startElement(…,String name, Attributes atts) { System.out.println("Start element: " + name); }
• public void endElement(…,String name, Attributes atts) { System.out.println("End element: " + name); }
• public void characters(char ch[], …) { System.out.println("Content: " + String.valueOf(ch));}
SAX
![Page 11: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/11.jpg)
11
SAX Beispiel
![Page 12: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/12.jpg)
12
SAX Beispiel
![Page 13: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/13.jpg)
13
• DocumentBuilderFactory factory = … DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(…"Personen.xml"...);
• Node root = document.getFirstChild();
• NodeList personListe = root.getChildNodes();
• Node aktuellePerson = personListe.item(i);
• String tagName = aktuellesTag.getNodeName();
• String tagInhalt = aktuellesTag.getTextContent();
DOM
![Page 14: 1 Java und XML Stephan Baldes 14.04.2008. 2 Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg](https://reader030.vdocuments.site/reader030/viewer/2022033102/570491c81a28ab14218dc3ad/html5/thumbnails/14.jpg)
14
DOM Beispiel