XML. XML extensible. Markup. Language TECHNISCHE UNIVERSITÄT DRESDEN. Internet in der AT SS 06 Koycheva/Braune. Lehrstuhl für Automatisierungstechnik

Ähnliche Dokumente
Kurzeinführung in XML. Was ist XML? Well-formed u. gültiges XML Erste Anwendung in XML Externe DTD Attribute und Entities Datenausgabe mit XSL

XHTML. Lernfragen zu XHTML. Was ist HTML? Überblick

Einführung in die extensible Markup Language

XML Extensible Markup Language

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

Android will doch nur spielen XML

Einführung in XML. Seminarunterlage. Version 3.05 vom

Komponenten-basierte Entwicklung Teil 2: Einführung in XML

XML steht für Extensible Markup Language. Helmut Vonhoegen (2007) beschreibt XML unter anderem so:

Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis HANSER

03 XML Grundlagen. Manuel Burghardt Lehrstuhl für Medieninformatik

1 Was ist XML? Hallo XML! Kommentare in XML 52

Linux I II III Res WN/TT NLTK XML Weka E XML BNC XSLT BNC/XML 7 BNC/XML XML BNC XSLT. Ressourcen-Vorkurs

<XML und XSLT Eine Einführung/> Katharina Hemmeter, Claus Ludewig SQ: Digitale Dokumente

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

Einführung in XML Extensible Markup Language

XML-Technologien Tutorium 1

Eine Dokumenttypdefinition lässt sich im Kopfbereich des XML-Dokumentes (interne DTD) oder in einer separaten Datei formulieren (externe DTD).

IN A NUTSHELL. Elliotte Rusty Harold & W, Scott Means. Deutsche Übersetzung von Kathrin Lichtenberg & Jochen Wiedmann O'REILLY*

Semistrukturierte Daten

Kurze Einführung in XML

Web Technologien XML, XQuery, XPath und XSLT

Datenaustauschformate. Datenaustauschformate - FLV

XML exemplarisch. nach: André Bergholz, Extending Your Markup: An XML Tutorial IEEE Internet Computing, Jul./Aug. 2000, 74 79

XML RSS. 1. Einführung 2. Syntax 3. Eigenschaften 4. Validierung 5. Fazit. 1. Einführung 2. Struktur 3. Fazit. Seite 2

Textauszeichnung mit XML

Was ist SGML. - welche Auszeichnungen (Mark up) sind erlaubt? - welche Auszeichnungen sind notwendig?

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016

XML-Einführung. Entwicklung Begriffe Vorteile/Möglichkeiten von XML Adressen Beispiele. Fachhochschule Nordwestschweiz FHNW Martin Hüsler

ASN.1 <-> XML TRANSLATION

Kritik von HTML. Multimedia-Technik XML. Syntax von XML-Dokumenten. Extensible Markup Language (XML) reine Strukturbeschreibung

Seminar im Sommersemester 2006 Institut für Mikrosystemtechnik, niversität Siegen

Agenda GRUNDKURS INFORMATIK 8 BESCHREIBUNG VON DATEN XML. Von SGML zu XML. Grundbegriffe XML Dokument. XML Beispiel

Document Type Definition (DTD)

TEI und XSLT. Referat von Hannah Goldschmidt und Christian Lütticke Datenbanktechnologie Sommersemester 2011

XSLT XSL Transformations

XML-Übersicht. Von HTML zu XML

XML-Übersicht. Von HTML zu XML. Nutzen von XML. Geschichte von XML. Eigenschaften von XML. Nutzen von XML (extensible Markup Language)

Inhaltsverzeichnis. Vorwort... 15

Projektseminar "Texttechnologische Informationsmodellierung"

Inhaltsverzeichnis. Teil 1 - XM L Einleitung Motivation...15

12. Jgst. 3. Kursarbeit Datum: Fach: Informationsverarbeitung (Leistungskurs) & )!!*+,!- -.!-

Web (Site) Engineering (WebSE)

XSLT XSL Transformations

Webcode Übungsdateien E68F C6 XML 1.1. Elmar Fuchs, Heiko Schröder. Grundlagen. 5. Ausgabe, Januar 2015 XML11 ISBN:

GRUNDKURS INFORMATIK. Marcel Götze

Seminar Document Engineering

Diese neuen Gestaltungsmöglichkeiten können nun auf den Web-Anzeigenmarkt angewandt werden: Wissensbaustein»Anzeigenmarkt: CSS-Einsatz«(S.

Literatur. VA SS Teil 12/XML

Verteilte Anwendungen. Teil 12: XML-Einführung

Textkodierung mit XML

Single Source Publishing mit XML

bitflux CMS ein crossmedia-fähiges opensource System ein Vortrag von Marcel Linnenfelser

Wege zur Anzeige. XSL die extensible Stylesheet Language. Wege zur Anzeige. Folie 1. Institut für Dokumentologie und Editorik

Transformation von XML-Dokumenten mit XSLT

1HX SIZNVUJ. ua6unpnqqv LZi ÜIAI

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis

artikel.dtd: Document Type Definition mit der Strukturbeschreibung artikel.xml: XML-Datei mit den durch Tags markierten Daten.

Thoma ; ' " >) Einstieg für Anspruchsvolle PEARSON ADDISON-WESLEY. [ in Kooperation mit ] Studium

Textkodierung mit XML

Information und Struktur Einführung in XML

<B1>Skript</B1> Skript zur Vorlesung Auszeichnungssprachen Stand: September 2016

Extensible Stylesheet Language Transformations XSLT

Hauptseminar Informatik. Die Strukturierung von XML-Dokumenten mit Hilfe von DTDs und XML Schema

Document Type Definitions (DTDs)

XML Extensible Markup Language

Knowledge Management im Bildungsbereich KMB: Teil 4

Grundlagen der Extensible Stylesheet Language

Logische Dokumentenstruktur mit SGML und XML

extended Markup Language (XML)

2 XML-Basiskonzepte. 2.1 XML-Dokumente

Strukturierung von Inhalten

<XML/> Eine kleine Einführung Sascha Kohlmann <XML/> Eine kleine Einführung

XML Schema 2016 S h_da S Seite 1

XML Extensible Markup Language

Eine Schnelleinführung in XSL

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Einführung in XML. Seminar: XML in der Bioinformatik Frank Schönmann WS 2002/03

XML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen

Das Einsteigerseminar

XML - die zukünftige Sprache des WWW? Daten im WWW strukturiert speichern, übertragen, darstellen und verketten. Max Riegel XML

Softwaretechnik 2 - XML -

Praktikum zur Veranstaltung XML-Technologie: Übung 09

Softwareentwicklung mit Komponenten

Gruppe A Bitte tragen Sie sofort und leserlich Namen, Studienkennzahl und Matrikelnummer ein und legen Sie Ihren Studentenausweis

Einführung in XML. Von Klammern, Schachteln und gefüllten Keksen. Hier im Folienmaster Präsentationstitel eintragen

Übungsaufgaben zu XML:

XML und Dokumentenmanagement

Erstellen von Web-Seiten HTML und mehr...

XML und SOAP Einführung und Grundlagen

Webseite in XML Kurzeinführung

... MathML XHTML RDF

XML Grundlagen. Andreas Rottmann,Sebastian Riedl. 27. August Quit Full Screen Previous Page Next Page GoTo Page Go Forward Go Back

GRUNDKURS INFORMATIK. Marcel Götze

Hans Buschmann. InnoData GmbH

XML Extensible Markup Language

XML. XML: Extensible Markup Language. Vorlesung und Übung Universität Paderborn Wintersemester 2016/2017 Dr. Peter Pfahler

Präsentation von XML-Dokumenten mit Hilfe von Stylesheets

Web-Programmierung (WPR)

Transkript:

XML extensible Markup Language

Gliederung: 1. XML als Auszeichnungssprache 2. Aufbau von XML-Dokumenten 3. Dokumentdefinition 4. Darstellung von XML-Dokumenten 5. Eigenschaften von XML 6. XML in der Automatisierung Ein wichtiger Link: www.w3c.org (World Wide Web Consortium)

Teil 1 : XML als Auszeichnungssprache

Auszeichnungssprachen XML Eine Auszeichnungssprache hat die Aufgabe, die logischen Bestandteile eines textorientierten Dokuments zu beschreiben DTD von SGML HTML SGML XML DTD von XML MathML WML XHTML 1986 SGML (Standard Generalized Markup Language) eine Metasprache Regeln zur Erzeugung einer Auszeichnungssprache (DTD) zu komplex (500 Seiten Dokumentation) und kompliziert veraltet 1989 HTML (Hypertext Markup Language) SGML-Anwendung fürs Web begrenzte Anzahl an Auszeichnungselementen für jedes Element ist die Darstellung im Browser vordefiniert (seit Version 4.0 durch CSS(Cascading Style Sheets) verbessert) 1998 XML (extensible Markup Language) eine SGML-Teilmenge, leistungsfähig wie SGML, aber nicht so akademisch Metasprache!

HTML vs. XML (2) <html> <head> <title>titel der Seite</title> </head> <body> <h1>überschrift der 1. Ebene</h1> <p>absatz mit Informationen</p> </body> </html> <?xml version="1.0" encoding="utf-8"?> <dokument> <kopf> <titel>titel der Seite</titel> </kopf> <koerper> <ueber>überschrift der 1. Ebene</ueber> <absatz>absatz mit Informationen</absatz> </koerper> </dokument> Quelle: XML 1.0 RRZN, Hannover, 2001

Teil 2 : Aufbau von XML-Dokumenten

XML-Dokumente 3 Bestandteile: Struktur Inhalt Layout

-Dokumente XML Prolog Prossesing Instruction (PI) System Identifier (SI) Kommentar Struktur: Root-Element Element Attribut Inhalt <?xml version= 1.0 encoding= ISO8859-1?> <?xml-stylesheet type="text/xsl" href= geraet.xsl"?> <!DOCTYPE Gerätekatalog SYSTEM 'geraet.dtd'> <Gerätekatalog Hersteller= Fa. Fielddevices Inc. > <Gerät Nr= 9876001 > <Name>Temperaturtransmitter T100</Name> <Preis Währung= USD >500</Preis> <Preis Währung= EUR >456</Preis> <MinRange Unit= C >-25</MinRange> <MaxRange Unit= C >75</MaxRange> <Funktionen> <Function Nr= 1 >setdimension</function> <Function Nr= 2 >resetdevice</function> <!-- Andere Funktionen --> </Funktionen> </Gerät> <Gerät Nr= 9876002 > <Name>Drucktransmitter P7</Name> <Preis Währung= USD >1000</Preis> <MinRange Unit= Pa >1000</MinRange> <MaxRange Unit= Pa >1200</MaxRange> <Funktionen>...</Funktionen> </Gerät> </Gerätekatalog>

XML-Dokumente : Überblick Ein wohlgeformtes XML-Dokument (engl.: well formed ) muß gemäß der XML- Spezifikation so aufgebaut werden: XML-Deklaration und mindestens ein Datenelement; genau ein Wurzelelement; jedes Tag muß durch ein end-tag abgeschlossen werden (leere Elemente: <leereselement/>) Baumartige Struktur des XML-Dokumentes XML-Deklaration (obligatorisch): <?xml version="1.0"?> Angaben zum Zeichensatz (optional): Beispiel : <?xml version="1.0" encoding="iso-8859-1"?> (oder UTF-8 ) Standart ISO-8859-1 ist Zeichensatz für westeuropäische Sprachen Der Inhalt von XML-Dateien steht in XML-Elementen. XML-Elemente werden durch Tags markiert. XML ist Case sensitiv!

Teil 3 : Dokumentdefinition

Dokumentdefinition Möglichkeiten der Definition der XML-Dokumentenstruktur: DTD (Document Type Definition) XSD (XML Schema Description Language) DTD (Document Type Definition) ist eine formale Beschreibung der Dokumentenstruktur (Elemente, Attribute, Verschachtelungsmöglichkeiten...) Daten zur reinen Datenverarbeitung speichert man in den Attributen Für Daten, deren Inhalt z.b. am Bildschirm ausgegeben werden soll, definiert man eigene Elemente (Buchstaben, Ziffern (nicht am Anfang), Unterstrich); Keine Markup-Zeichen (z.b. < oder & ) im Text Dokumenttyp-Deklaration: Format einer internen DTD: <!DOCTYPE Name [DTD-Definition]> Einbinden einer externen DTD: <!DOCTYPE Name SYSTEM Dateiname.dtd > (Name ist der Name des Wurzelelements) Ein XML-Dokument ist gültig (engl.: valid ), wenn es wohlgeformt ist, eine DTD/XSD enthält und nach den Regeln der DTD/XSD aufgebaut ist. Die Gültigkeitsprüfung nennt man Validierung; Internet-Browser validieren nicht!

Dokumentdefinition (2) Definition von XML-Elementen in DTD: <!ELEMENT Name (Inhalttyp)> (z. B.: <!ELEMENT Funktion (#PCDATA)>) Definition von Attributen von XML-Elementen in DTD: <!ELEMENT Elementname (Inhalt)> <!ATTLIST Elementname Attributname_1 Inhalt [#REQUIRED #IMPLIED #FIXED "Wert" Defaultwert]... > <?xml version= 1.0 encoding= ISO-8859-1?> <!ELEMENT Gerät (Name, Preis+, MinRange, MaxRange, Funktionen?)> <!ATTLIST Gerät Nr #REQUIRED> <!--- Weitere Elemente: --> <!ELEMENT Name (#PCDATA)> <!ELEMENT Preis (#PCDATA)> <!ATTLIST Preis Währung (USD EUR CHF) USD <!ELEMENT Funktionen (Function*)> Legende - Elemente:? optionales Element (kein- oder einmal) * gar nicht oder beliebig oft + mindestens einmal Wahlmöglichkeit zwischen den Subelementen

Dokumentdefinition (3) DTD Nachteile Beschreibung von Kardinalitäten umständlich Elemente nicht vererbbar wenige Datentypen Keine Namensräume DTD verwendet keine XML-Syntax XSD (XML Schema Description Language) eine Weiterentwicklung der DTD, wird in Zukunft DTD ersetzen, relativ neu, noch nicht vollständig standardisiert Einfache Typen (vordefiniert) integer, float, byte, short, time,... = insgesamt 44 einfache Typen) Komplexe Typen (Abstrakte Typen)

ein XML Schema (XSD): Dokumentdefinition (4) <?xml version= 1.0 encoding= ISO-8859-1?> <xs:schema xmlns:xs= http://www.w3c.org/2001/xmlschema... <xs:element name="gerät"> <xs:complextype> <xs:sequence>... <xs:element name="maxrange"/> <xs:element name="funktionen"/>... </xs:sequence> </xs:complextype> </xs:element>... </xs:schema>

Teil 4 : Darstellung von XML-Dokumenten

Darstellung von XML XML strukturiert und beschreibt die Daten aber nicht, wie eine interpretierende Software die Daten bearbeiten soll; dafür benötigt man Stylesheet-Sprachen (CSS,XSL) XSL ist eine Sprache für die Umwandlung von XML-Dokumenten in ein anderes Ausgabeformat : HTML,WML,PDF,... WML-Dateien HTML-Dateien PDF-Dateien XML-Dateien Mit XML ist es möglich, die Information von ihrer Darstellung zu trennen und so verschiedene Präsentationen der gleichen Information zu ermöglichen

Transformation und Formatierung: XSL XSL (extensible Stylesheet Language) besteht aus 2 Komponenten: Transformation: XSLT (XSL Transformation) Formatierung: XSL:FO (XSL Formatting Objects) Einbinden einer XSL-Datei ins XML-Dokument: Beispiel : <?xml-stylesheet href="addr2.xsl" type="text/xsl"?> Einbinden einer CSS-Datei ins XML-Dokument : Beispiel : <?xml-stylesheet href="addr2.css" type="text/css"?>

Transformation und Formatierung: XSL (2) XSL-Definition: <xsl:stylesheet version= 1.0 xmlns:xsl= http://www.w3c.org/1999/xsl/transform > Grundelement einer XSL-Datei ist die Schablone (Templates): beschreibt, wie ein ausgewähltes XML-Element transformiert wird Bei der Transformation in HTML stellt man eine Verbindung zwischen den Elementen der XML-Datei und bestimmten HTML-Konstrukten her <doc> <item>1</item> <item>2</item> <item>3</item> </doc> XML-Dokument <xsl:template match="item"> <li><xsl:value-of select="."/></li> </xsl:template> XSL-Stylesheet <li>1</li> <li>2</li> <li>3</li> HTML Schleifen-Anweisung ( für jedes Element aus einer Menge wiederholen ): Beispiel: <xsl:for-each select= Name"></xsl:for-each> Den Inhalt eines XML-Elements ausgeben: Beispiel: <xsl:value-of select= Name"/>

Teil 5 : Eigenschaften von XML

XML-Co-Standards

XML-Werkzeuge

Eigenschaften von XML (2) Vorteile: Inhalt, Struktur und Darstellung getrennt Metasprache Typen von XML-Dokumenten von Menschen, Maschinen und Programmen lesbar Unicode-Codierung, d.h. unterstützt alle herkömmlichen Zeichenformate Betriebssystemunabhängig Systemarchitekturneutral beschädigte Teile haben keinen Einfluss Prüfung auf Korrektheit Unmenge von Werkzeugen Nachteile: Informationsredundanz benötigt mehr Speicherplatz Erheblicher Lernaufwand wegen Anzahl der zusammenspielenden Standards

Einsatzgebiete von XML Einsatz von XML: wenn anwendungsspezifische Datenstrukturen und Datenaustausch von Bedeutung sind; Für Internet-Browser geeignet: ein XML-Dokument läßt sich einfach im HTML-Format darstellen Plattformunabhängiges, präzises Dateiformat: als Format für die Konfigurations- und Installationsdateien Trend: Basisformat in weit verbreiteten Programmen (in StarOffice 6.0, demnächst im Microsoft Office,...) XML-fähige Internet-Browser : MS Internet Explorer: ab Version 5.0; Netscape Communicatior: ab Version 6.0; andere

Teil 6 : XML in der Automatisierung

XML in der Automatisierung XML als Beschreibungssprache: Einheitliche Beschreibung von Geräten Beschreibung von Prozessen Beschreibung von Protokollen XML zum Informationsaustausch XML im Web

XML als Beschreibungssprache XML zur Beschreibung von Geräteeigenschaften Beispiel: FDCML (Field Device Configuration Markup Language) Quelle: www.fdcml.org

XML als Beschreibungssprache (2) XML zur Beschreibung von Prozessdaten Beispiel: PDML (Process Data Markup Language)

XML als Beschreibungssprache (3) Definition von Protokollen im Beispiel XML-RPC Request: <methodcall> <methodname>device.gettemperature</methodname> <params/> </methodcall> Response: <methodresponse> <params> <param> <value> <double>20.5</double> </value> </param> </params> </methodresponse>

als Beschreibungssprache (4) XML Einheitliches System für Anzeige, Datenbank-ablagerung, Dokumentation und Protokollierung

Informationsaustausch zwischen Feldbusebene und Web/XML-Anwendung <?xml version="1.0"?> <request xmlns="http://www.mynamespace.org/myfeldbusmessages"> <device name="17"> <channel number="5" operation="5">210</channel> </device> </request> <xsl: template match= /request/device[@name= 17 ] /channel[@number= 5 and @operation= 5 ]"> Write(88,99,<xsl:value-of select=. />); </xsl: template> Write(88,99,210);

Informationsaustausch (2) OPC nutzt DCOM begrenzt auf Microsoft-Betriebssystem untergräbt die Sicherheitsstrategien (Firewalls) OPC XML DA (Austausch in vertikale Richtung) Für den Menschen und die Maschine lesbar Plattformunabhängig Einfache Einbindung in Web-Anwendungen OPC DX (Austausch in horizontale Richtung)

Informationsaustausch (3) Austausch zwischen Datenbanken

XML im Web Verteilte Gerätehomepages