Namensräume. Allgemeines Deklaration Komponenten aus beliebigen Namensräumen

Ähnliche Dokumente
XML Schema S 2010/2011 a W _d Seite 1 h

XML Schema 2012/2013 S Seite 1 h_da W

Erweiterbare Schemata

XML Schema S 2012 h_da S Seite 1

XML Schema 2015 S h_da S Seite 1

Android will doch nur spielen XML

Einleitung. Schema root Übersicht Dokumentation

Aufgabe 1 : XML Schema ( (g,h,i) Punkte) Das folgende XML-Schema modelliert beliebig große Matrizen mit Elementen aus den rationalen Zahlen.

XML Schema S 2011 h_da S Seite 1

XML Schema 2016 S h_da S Seite 1

Namespaces. Namensräume...

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

Semistrukturierte Daten

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

Übungsblatt 6 Ausgabe: Prof. Dr. Dr. Lars Schmidt-Thieme, André Busche SoSe 2012

XML. Teil 5: XML-Schemas. Abteilung Informatik WS 02/03

XML Schema Kurzreferenz

LGBl. Nr. 92/ ausgegeben am 14. Dezember von 10

XML Schema. Seite 1. h_da SS 22007

XSD - XML Schema Definition

XML Schema 2015 S h_da S Seite 1

Tutorial zu Kapitel WT:III

LGBl. Nr. 59/ ausgegeben am 11. August von 6

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

urn:schemas-microsoft-com:xml-msdata 1.1 DefaultTypes.xsd MoveIn MoveInDate STDDate UnitType UnitType NumOccupants

XML-Technologien

XML Schema. Marco Skulschus Marcus Wiederstein. Webseite zum Buch: Comelio Medien

LGBl. Nr. 114/ ausgegeben am 28. Dezember von 17

Einführung. Hallo-Welt in XSLT

Matrikelnummer: Bitte Namen und Matrikelnummer auf jeder Seite der Vorgabe und allen Arbeitsblättern eintragen!

XML. extensible Markup Language

Nonstandard Datenbanken

1. Übung zur Vorlesung Service-orientierte Architekturen

2a) Rekursion (zugeschnitten auf Anfrage) (C) Prof. E. Rahm Universität Leipzig

Einführung in XML. Präsenzveranstaltung zur E-Learning-Veranstaltung. Sommersemester Prof. Dr. Klaus-Peter Fähnrich Dr.

XML Vorlesung ETHZ SS XML Vorlesung ETHZ, Sommersemester

Zusammenfassung XML. Metasprache um Dokumenttypen zu definieren

DTDs und XML- Schemata

1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken

Übung 3 Klaus Schild,

Gunther Heinrich, Tobias Steimer. XML-Schema. Im Fach SOA, ISM 2008

LGBl. Nr. 135/ ausgegeben am 30. November von 6

Übung 3 Klaus Schild,

Mondsee. Nußdorf am Attersee. Nussdorf. Tiefgraben. Tiefgraben. Oberwang. Hof. Oberwang. Lichtenbuch. Oberaschau. Innerschwand am Mondsee Innerschwand

Literatur. Verteilte Anwendungen WS Teil 2/Namensräume

Diese Version ist anwendbar für die Übermittlung von Daten, die die folgenden Veranlagungszeiträume betreffen:

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

Beschreibung von Dokumenten mit DTDs

Kapitel WT:III (Fortsetzung)

XML Schema Marco Skulschus Marcus Wiederstein Sarah Winterstone

Deklaration standalone="yes" Quelle:

Koordinatenbezogene Grenze des Naturschutzgebiets "Langmoos" im GML-Standard

XML-Schema Datentypen

Koordinatenbezogene Grenze des Naturschutzgebiets Fuschler-Ache im GML-Standard

Tutorial: Ein Benutzerprofil erstellen. Version: 2.0 Autoren: Anja Beuth, Stefan Suermann

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

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

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

22 Reproduktion oder Verwendung dieser Unterlage bedarf in jedem Fall der Zustimmung des Autors.

Namespaces 2015/2016 S h_da W Seite 1

Seminar: mobile GIS Austausch von Geodaten

Kapitel WT:III (Fortsetzung)

XML Schema vs. Relax NG

Herbstsemester Januar Datenbanksysteme II

Document Type Definition (DTD)

XML Schema 2012/2013 S Seite 1 h_da W

Whitepaper Lucene 2.0

DTDs und XML-Schema. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

XML Schemasprachen. Übersicht und Einordnung. Übersicht. ! DTDs und XML Schema. ! Schemasprachen als Konzept. ! Schemasprachen selbstgemacht

Einführung in XML. Seminarunterlage. Version 3.05 vom

B Babuschka. Siehe Matrjoschka Babuschka-Design 294, 296, 301, 357 base 102, 109, 238 base64binary 74

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

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

XML Schema 2016 S h_da S Seite 1

Oracle XML DB: XML Schema Handling für Entwickler und Administratoren

<is web> Information Systems & Semantic Web University of Koblenz Landau, Germany

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

Musterlösung des Übungsblattes 1

XML-Schema. Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme

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

Zusammenfassung M. Rigling 1/22 Version 1.0

Schema gettsdstatus_v1.2.xsd

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

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

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

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

XJustiz: Elektronischer Rechtsverkehr mit XML

XML Kurs LRZ 1

Web Technologien XML, XQuery, XPath und XSLT

XSLT XSL Transformations

Studienprojekt SKilLEd

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

Verwirrende Vielfalt. Modellierungsvarianten mit XML Schema. XML Schema. Seite 1

XML Vorlesung FHA SS

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

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

9. Fortgeschrittene Techniken

Exkurs: Backus-Naur-Form (BNF) Document Type Definition (DTD) W3C XML Schema (XSD) RELAX NG. Diskussion

Transkript:

Namensräume

Namensräume Allgemeines Deklaration Komponenten aus beliebigen Namensräumen

Sinn und Zweck von Namensräumen Die Verwendung von Namensräumen in XML erlaubt es einer Anwendung, Elemente einer Teilanwendung, einer Organisation oder einer beliebig definierbaren Einheit Inhalte zuzuordnen. Dies ermöglicht es wiederum, gleichnamige Elemente in Abhängigkeit von ihrem Namensraum zu verarbeiten. Es steht demnach ein Mechanismus für die Kollisionsverhinderung und das ungewollte Vermischen von Informationsbestandteilen aus unterschiedlichen Bereichen zur Verfügung.

Sinn und Zweck von Namensräumen Für die Einrichtung eines Namensraums benötigt man nur noch das xmlns-attribut mit folgenden Eigenschaften: Es enthält eine URI-Angabe, die möglichst einzigartig für die Anwendung oder besser noch für alle möglichen Anwendungen sein sollte, die das Instanzdokument verarbeiten. Daher handelt es sich in den meisten Fällen um Internetadressen, wobei allerdings auch einfache Bezeichner möglich wären. Sie bringen jedoch unter Umständen den Nachteil mit sich, mit anderen solchen Bezeichnungen zu kollidieren und daher das Namensraumprinzip zur Unterscheidung und Zuordnung von Elementen und Attributen zu unterlaufen. Alternativ kann ein Präfix angegeben werden, der als Kurzform für den Namensraum steht. Er besteht aus einer meist kurzen Bezeichnung, die jedem Element oder Attribut vorangehen kann.

Beispiel (1) <?xml version="1.0" encoding="iso-8859-1"?> <Umsatzuebersicht xmlns="http://www.ruhrfon.biz" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xsi:nonamespaceschemalocation="71_03.xsd">... <Umsatz> <Tarif> <Name>Abendessen</Name> <Typ>p</Typ> <Jahr>2003</Jahr> <Gueltigkeit Typ="Datum"> <GueVon>03-01-01</GueVon>

Beispiel (2) <?xml version="1.0" encoding="iso-8859-1"?> <Umsatzuebersicht xmlns:rf="http://www.ruhrfon.biz"> <rf:umsatz> <rf:tarif> <rf:name>abendessen</rf:name> <rf:typ>p</rf:typ> <rf:jahr>2003</rf:jahr> <rf:gueltigkeit Typ="Datum">...

Beispiel (3) Im Gegensatz zu einem Standardnamensraum (1) ist für jedes Element genau zu erkennen (2), dass es in einem bestimmten Namensraum liegt. Inhaltlich und im Hinblick auf die Zuordnung zu einem Namensraum sind beide Dokumente identisch. Was allerdings überaus unterschiedlich ist, ist die Verwendung von XPath-Ausdrücken, da diese auf solche Präfixe Rücksicht nehmen. Sie erwarten also den vollen, qualifizierten Namen wie z.b. //rf:typ, um alle Typ-Elemente zu finden. Mit entsprechenden Funktionen wie z.b. local-name() lässt sich dann der Namensraumbestandteil entfernen, um auf den lokalen, unqualifizierten Namen zuzugreifen: //*[localname()='gueltigkeit']. Dies entspricht der Verwendung der Funktion name() im Beispielausdruck //*[name()='rf:gueltigkeit'].

Beispiel (4)

Beispiel (5)

Fragen...

Namensräume Allgemeines Deklaration Komponenten aus beliebigen Namensräumen

Deklaration Wie bei allen anderen Design-Alternativen auch legt man den eigentlichen Namensraum innerhalb des schema- Elements mit dem targetnamespace-attribut fest. Hier befindet sich noch keine Angabe für das Namensraum-Präfix. Diesen legt man zusätzlich über das bereits bekannte xmlns-attribut wie in jedem anderen XML-Dokument fest. Beim einfachen Babuschka-Design ändert sich für die Deklaration von Elementen und Attributen kein einziges Zeichen. Lediglich die Namensraum-Angabe ist neu.

Deklaration Es ist immer zu unterscheiden: Matrjoschka-Design Verwendung von globalen Komponenten

Deklaration: Matrjoschka-Design <?xml version="1.0" encoding="iso-8859-1"?> <xs:schema targetnamespace="http://www.ruhrfon.biz" xmlns:rf="http://www.ruhrfon.biz" xmlns:xs="http://www.w3.org/2001/xmlschema" elementformdefault="unqualified"> <xs:element name="umsatzuebersicht"> <xs:complextype> <xs:sequence> <xs:element name="umsatz" maxoccurs="unbounded"> <xs:complextype> <xs:sequence> <xs:element name="tarif"> <xs:complextype> <xs:sequence>

Deklaration: Allgemein schema-element: elementformdefault legt mit den Werten unqualified/qualified fest, ob Elemente bei einer Namensraumangabe standardmäßig qualifiziert oder unqualifiziert im Instanzdokument auftreten. Diese Einstellung kann über lokale Angaben geändert werden. attributeformdefault legt mit den Werten unqualified/qualified fest, ob Attribute bei einer Namensraumangabe standardmäßig qualifiziert oder unqualifiziert im Instanzdokument auftreten. Diese Einstellung kann über lokale Angaben geändert werden. element-/attribute-element: Im Attribut form legt man mit den Werten unqualified/qualified fest, ob das jeweilige Element oder Attribut bei einer Namensraumangabe qualifiziert oder unqualifiziert im Instanzdokument auftreten muss. Diese Einstellung überschreibt die globalen Angaben.

Deklaration: Globale Komponenten

Deklaration: Globale Komponenten

Übernahme

Fragen...

Namensräume Allgemeines Deklaration Komponenten aus beliebigen Namensräumen

Beliebige Komponenten any lässt dort, wo es in einem Schema-Dokument verwendet wird, Elemente aus anderen Namensräumen zu. anyattribute lässt dort, wo es in einem Schema- Dokument verwendet wird, Attribute aus anderen Namensräumen zu.

Beliebige Komponenten Neben den Attributen id, minoccurs und maxoccurs, die ihre übliche Bedeutung behalten, sind die beiden folgenden Attribute von besonderer Bedeutung: Namespace: Dieses Attribut enthält die Angabe des Namensraums, aus dem beliebige Inhalte übernommen werden können. Für allgemeine Angabe stehen noch verschiedene Platzhalter zur Verfügung: ##local: ein unqualifiziertes Element ##targetnamespace: Zielnamensraum ##any: jeder Namensraum, darunter auch der Zielnamensraum ##other: alle Namensräume außerhalb des Zielnamensraums

Beliebige Komponenten processcontents: Dieses Attribut enthält Angaben, welche Verhaltensweisen vom XML-Validator gefordert werden. Folgende Angaben sind möglich: lax: Der XML-Validator soll versuchen, ein geeignetes Schema zu finden, d.h., er wird versuchen, den Namensraum aufzurufen. Hier sollte die angegeben URI auch zu einer tatsächlich vorhandenen Ressource im Internet oder im lokalen Speicher führen. skip: Die Elemente und Attribute werden keiner Prüfung unterzogen, sondern einfach übergangen. strict: Der XML-Validator wird versuchen, ein geeignetes Schema zu finden, d.h., er wird versuchen, den Namensraum aufzurufen. Hier muss die angegeben URI auch zu einer tatsächlich vorhandenen Ressource im Internet oder im lokalen Speicher führen.

Fragen...