2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit



Ähnliche Dokumente
XML 1. Einführung, oxygen. Ulrike Henny. IDE Summer School 2013, Chemnitz

... MathML XHTML RDF

IT-Zertifikat: Daten- und Metadatenstandards

XML Grundlagen Teil I

Ressourcen-Beschreibung im Semantic Web

Daten- und Metadatenstandards Wintersemester 2011/ März 2012 Text / XML: Erste Schritte

XSL Templates. Mit Templates arbeiten. XSL Templates

XML-Namensräume. Marc Monecke

Java: Kapitel 9. Java und XML. Programmentwicklung WS 2008/2009. Holger Röder

WEBSEITEN ENTWICKELN MIT ASP.NET

RDF und RDF Schema. Einführung in die Problematik Von HTML über XML zu RDF

Datenaustauschformate. Datenaustauschformate - FLV

Klaus Schild, XML Clearinghouse Namensräume

XML Extensible Markup Language

Errata-Liste zum Kurs: Einführung in XML (2. Auflage)

Gemeinsam mit Book Industry Study Group, New York, und Book Industry Communication, London. ONIX for Books Supply Update Nachricht Überblick

Daten- und Metadatenstandards Wintersemester 2011 / November 2011 XML II: DTD

XML-Austauschformat für Sicherheitsdatenblätter

XML 1.1. Grundlagen. Heiko Schröder. 4. Ausgabe, 1. Aktualisierung, Oktober 2013 XML11

Tobias Hauser. XML-Standards. schnell+kompakt

Norm 240 Versionierung

Motivation. Inhalt. URI-Schemata (1) URI-Schemata (2)

XML. Teil 3: Namensräume. Abteilung Informatik WS 02/03

XML Extensible Markup Language

LOC 02. XML in der Übersetzung. tekom Herbsttagung 2015 in Stuttgart Angelika Zerfaß,

etutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche

Beuth Hochschule Die erweiterbare Markierungssprache XML WS10/11

HTML5. Wie funktioniert HTML5? Tags: Attribute:

Installation der Eicon Diva PCI Karte unter Windows XP

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Internet Explorer Version 6

Ursprung des Internets und WWW

2. Einführung in Datenbanken und XML

Verteilte Systeme: Übung 4

Im Folgenden werden die jeweiligen Elemente erklärt. Im Anschluss folgt ein Beispieldatensatz in xml.

Rundung und Casting von Zahlen

Erfahrungen mit Hartz IV- Empfängern

Java und XML 2. Java und XML

Verteilte Anwendungen. Teil 2: Einführung in XML

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Vorgaben und Erläuterungen zu den XML-Schemata im Bahnstromnetz

Melde- und Veröffentlichungsplattform Portal (MVP Portal) Hochladen einer XML-Datei

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Klaus Schild, XML Clearinghouse Aufbau von XML- Dokumenten

Lehrer: Einschreibemethoden

Klausur in 13.1 Thema: Das Internet (Bearbeitungszeit: 90 Minuten)

Text-Bild-Link-Editor

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

Übersicht Die Übersicht zeigt die Zusammenfassung der wichtigsten Daten.

Screening for Illustrator. Benutzerhandbuch

XSLT Vortrag. 2. Beispiel XML. 3. Anwendungsmöglichkeiten von XSLT 4. XHTML

Uniform Resource Identifiers (URI) und Domain Name Service (DNS)

Bewusstkaufen.at XML Produkt Importschnittstelle für Händler

Übungsaufgaben zu XML:

Online-Publishing mit HTML und CSS für Einsteigerinnen

EPICUR-Uniform Resource Name (URN)-Generator

Graphic Coding. Klausur. 9. Februar Kurs A

1 Mathematische Grundlagen

Einführung in XML von Julian Bart

Webseite in XML Kurzeinführung

Avisierungsservice für Pakete und Swiss-Express

Arbeitsblätter. Sinnvolle Finanzberichte. Seite 19

IBM SPSS Statistics Version 23. Einführung in Installation und Lizenzierung

getting started mit WinVetpro Die Oberfläche von WinVetpro gliedert sich in mehrere Bereiche: Seite 1

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

HTML5. Grundlagen der Erstellung von Webseiten. Linda York, Tina Wegener. 2. Ausgabe, 3. Aktualisierung, Januar 2013 HTML5

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Grundkenntnisse am PC Das Internet

Einführung in die Programmierung (EPR)

dato Denkwerkzeuge nut.s Software TS Technische Spezifikation Import AS400 Projekt nut.s Software Betrifft Import AS400 Autor Bernd Maierhofer

Aufgaben zu XPath und XQuery

Es gibt situationsabhängig verschiedene Varianten zum Speichern der Dokumente. Word bietet im Menü DATEI unterschiedliche Optionen an.

Gegeben ist das folgende XML-Dokument.

3. Baumstrukturen. 3.1 Dateien und Ordner

Containerformat Spezifikation

e-books aus der EBL-Datenbank

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Auf der linken Seite wählen Sie nun den Punkt Personen bearbeiten.

XML Extensible Markup Language

FLASH IMAGESLIDER PROFESSIONELL 4

Anleitung auf SEITE 2

Modellierung und Programmierung 1

Durch einen Doppelklick (linke Maustaste) wird das Programm gestartet und es erscheint folgender Bildschirm.

Word 2010 Schnellbausteine

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Spielanleitung. Art.-Nr.: Spieleautoren: Arno Steinwender und Christoph Puhl

Leere Zeilen aus Excel-Dateien entfernen

Proofreading Was solltest Du beim Korrekturlesen beachten?

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Installationshinweise und Systemvoraussetzungen

Anleitung zur Erstellung von Serienbriefen (Word 2003) unter Berücksichtigung von Titeln (wie Dr., Dr. med. usw.)

AutoCAD Dienstprogramm zur Lizenzübertragung

Multimedia und Datenkommunikation

Kapitel 3. Codierung von Text (ASCII-Code, Unicode)

Containerformat Spezifikation

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Anleitung für die Online-Bewerbung über LSF auf Lehrveranstaltungen aller Lehramtsstudiengänge

Inhaltsverzeichnis Dokumentverwaltung Organisation von Dokumenten Ordner erstellen Dokumente im Dateisystem behandeln...

Transkript:

XML- und Webservice- Sicherheit 2. XML 2.1 XML 1.0 und XML Schema

Gliederung 1. XML 1.0 2. XML Namespaces: URI, URL und URN 3. XML Schema Literatur: A. Tanenbaum, Computer Networks. E. R. Harold and W. S. Means, XML in a Nutshell. 3rd Edition, O Reilly Köln. J. Rosenberg and D. Remy, Securing Web Services with WS- Security, www.samspublishing.com

1. XML 1.0 - Beispiel Beispiel für ein wohlgeformtes XML-Dokument Unicode-Unterstützung Präambel <?xml version="1.0" encoding="utf-8" standalone="yes"?> <conversation> Wurzelelement <greeting>hello, world!</greeting> (nur eins!) <response> ( Dokumentwurzel) Stop the planet, I want to get off! </response> </conversation> Problem: der <response>-tag könnte in einem anderen Dokument eine andere Bedeutung haben (z.b. der http Return Code)

1. XML 1.0 - Baumstruktur <?xml version="1 1.0" standalone="yes"?> \ <conversation> <greeting> <response> Hello, world! Stop the planet, I want to get off!

1. XML - Sprachbestandteile Case-Sensitive: XML unterscheidet zwischen Groß- und Kleinschreibung Element: Beginnt mit einem Start-Tag und endet mit einem End-Tag (Bspl. <greeting>hello, world!</greeting>) Content t eines Elements: Alles zwischen dem Start-Tag und dem End- Tag, einschl. Whitespaces (Bspl.: Der Textstring Hello, world!) Markup: Gliederung des Dokuments, z.b. Tags (Bspl. <greeting> und </greeting>) Character Data: Nicht weiter strukturierter Inhalt eines Elements. Jeder internationale Schriftsatz (Kyrillisch, Chinesisch) kann verwendet werden (Bspl. Hällo, wörld!) Die XML-Sonderzeichen <, >, & und die einfachen und doppelten Anführungszeichen müssen als Entity References <, >, &, &apos; und "eingefügt f werden. Innerhalb von <![CDATA[ und ]]> darf jedes Zeichen vorkommen.

1. XML - Sprachbestandteile Attribute: Paar name= wert oder name= wert. Wert muss im Gegensatz zu HTML IMMER in Anführungszeichen (einfach oder doppelt) stehen. Jedes Attribut gehört zu einem XML-Element und wird innerhalb des Start- Tags notiert. Jeder Attributname darf nur einmal innerhalb eines Elements auftreten. Attributwerte sind nur Strings, und können nicht weiter strukturiert sein. Content eines Elements kann oft auch als Attribut dargestellt werden; hier gibt es keine klaren Regeln. Beispiel: <conversation> <greeting text= Hello, world! /> <response text= Stop the planet, I want to get off! /> </conversation>

1. XML - Sprachbestandteile Kommentare: Dürfen überall im Character data-teil eines Dokuments erscheinen. Sie sind in <-- und --> (genau zwei Bindestriche!) eingeschlossen. Processing Instructions: Möglichkeit der Weitergabe von bestimmten Informationen an Programme. Sie sind in <?target und?> eingeschlossen. target ist in der Regel der Name des Programms, für das die Daten bestimmt sind. Beispiele: <?xml version="1 1.0" encoding="utf-8" standalone="yes"?> <?php mysql_connect(...);?> <?javascript alert(alarm!);?>

1. XML - Sprachbestandteile XML-Deklaration: Die Deklaration <?xml version="1.0" encoding="utf-8" standalone="yes"?> bedeutet: t version="1.0": Es wird XML Version 1.0 verwendet. encoding="utf-8": Es werden Unicode-Zeichen mit variabler Codierung verwendet, die ASCII als Teilmenge enthält (Default-Wert). t) Viele andere Codierungen sind möglich (UTF-16 für Chinesisch, Japanisch, Koreanisch, ISO 8859-1 für westeuropäische Sonderzeichen, etc.) standalone="yes": Es ist nicht nötig, eine DTD oder ein XML Schema zur Validierung heranzuziehen. Der Default-Wert ist "no".

1. XML 1.0 erweitertes Beispiel Beispiel für ein wohlgeformtes XML-Dokument (2) <?xml version="1.0"?> <conversation linefeed="yes"> Hier ist eine typische englische Konversation wiedergegeben: <greeting style="italic">hello, world!</greeting> <response style="bold"> Stop the planet, I want to get off! </response> </conversation>

1. XML 1.0 - Baumstruktur <conversation> Hier ist eine <greeting> <response> linefeed="yes" " typische englische Konversation wiedergegeben: Hello, world! style="italic" Stop the planet, I want to get off! style="bold" Textknoten Attributknoten Elementknoten

2. XML Namespaces Lösung des Problems mehrdeutiger Tag-Namen: Verlängerung des Strings response durch eindeutigen Präfix Präfix ist ein Uniform Ressource Identifier (URI), der nur als String interpretiert wird (auch URLs!) Abkürzungen sind erlaubt (z.b. können URIs Zeichen enthalten, die nicht den Namenskonventionen von XML entsprechen), führen aber auch zu Problemen. <?xml version="1.0" standalone="yes"?> <conv:conversation xmlns:conv="http://conversation.org"> <conv:greeting>hello, world!</conv:greeting> <conv:response> Stop the planet, I want to get off! </conv:response> </conv:conversation>

2. XML Namespaces URI, URN, URL: URI: Uniform Ressource Identifier, kann URN oder URL sein URN: Uniform Ressource Name Weltweit eindeutiges Namensschema Beispiel: ISBN-Nummern für Bücher: urn:isbn:0-672-32651-5 Beispiel: URLs URL: Uniform Ressource Locator WWW-weit eindeutiger Ort, an dem man eine Datei finden kann stabile URLs können als URNs verwendet werden Beispiel: http://www.w3.org/2000/09/xmldsig#

XML: Überblick http://www.jeckle.de/xml/index.html

3. XML-Schema: Bücherliste Schwenk <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" text/xsl href="book book_list.xsl list.xsl"?> <book_list xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:nonamespaceschemalocation= D:\Lehre\xml\book_list.xsd"> <book> <title> Moderne Verfahren der Kryptographie, 5. Aufl. </title> <author> A.Beutelspacher, J.Schwenk, K.Wolfenstetter </author> <year> 2003 </year> </book> <book> <title> Sicherheit und Kryptographie im Internet, 2. Aufl. </title> <author> J. Schwenk </author> <year> 2005 </year> </book> </book_ list>

3. XML Schema Beschreibt die Struktur eines XML-Dokument somit teilweise auch seine Bedeutung XML-Dokumente, deren Struktur dem XML Schema entspricht, heißen valid ( gültig ). (g g) Veraltete Alternative: Document Type Definitions (DTD) Namespace für XML Schema: xmlns:xsi= http://www.w3.org/2001/xmlschema-instance Angabe des Speicherorts des XML Schemas zum book_list- Dokument: xsi:nonamespaceschemalocation= D:\Lehre\xml\ book_list.xsd"> Wenn für das Dokument ein Namespace verwendet wird, wird der Speicherort des Schemas durch das Attribut xsi:schemalocation angegeben.

3. XML-Schema: Bücherliste Schwenk <?xml version="1.0" encoding="utf-8"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/xmlschema"> /2001/XMLS h "> <xsd:element name="book_list" type="bl"/> <xsd:complextype name="bl"> <xsd:sequence> <xsd:element name="book" type="b" maxoccurs="unbounded"/> </xsd:sequence> </xsd:complextype> <xsd:complextype name="b"> <xsd:sequence> <xsd:element name="title" type="xsd:string"/> <xsd:element name="author" type="xsd:string"/> <xsd:element name="year" type="xsd:positiveinteger"/> </xsd:sequence> <xsd:attribute te name="id" type="xsd:id" use="optional"/> </xsd:complextype> </xsd:schema>