Fortsetzung DTDs, UML  XML

Slides:



Advertisements
Ähnliche Präsentationen
Extensible Markup Language
Advertisements

Worzyk FH Anhalt Datenbanksysteme für FÜ WS 2004/2005 XML - 1 XML Extensible Markup Language.
Hands On – Einführung in XML
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
HTML - Einführung Richard Göbel.
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
Java: Objektorientierte Programmierung
Java: Grundlagen der Objektorientierung
DOM (Document Object Model)
Eine Biografie aus ADB/NDB als XML Datenbanken vs. Markup Prof Dr. Manfred Thaller WS 2009 / 2010 Referent: Bilal Erkin.
HTML - Eine erste Annäherung
XML-basierte Techniken
XML-Parser Manuel Röllinghoff.
XHTML 1.1 C. Nimz Abstrakte Module XHTML 1.1 C. Nimz Was ist ein abstraktes Modul? Definition eines XHTML-Moduls in spezieller leichter.
Modularization of XHTML™
Überblick XML: Extensible Markup Language Entwickelt, um Informationen bereitzustellen, zu speichern und zu übertragen Im Gegensatz zu HTML keine vordefinierten.
Grundlagen von XML. © Prof. T. Kudraß, HTWK Leipzig Geschichte Grundidee generic coding - Trennung Information/Form formal definierter Dokumenttyp verschachtelte.
XML Standardisierungen und Abfragesprachen
Grundlagen von XML. © Prof. T. Kudraß, HTWK Leipzig Geschichte Grundidee generic coding - Trennung Information/Form formal definierter Dokumenttyp verschachtelte.
Einführung XML XML Einführung Andreas Leicht.
Geoinformation III Vorlesung 13b XML-Schema.
RDF-Schema Seminar: „Semantic Web“ André Rosin,
1 XML und Datenbanken Kapitel 7: Modellierung, Teil 1 Meike Klettke Universität Rostock Fakultät für Informatik und Elektrotechnik
XML und Datenbanken - Einführung in XML -
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
Was versteht man unter XML Schema?
FH-Hof HTML - Einführung Richard Göbel. FH-Hof Komponenten des World Wide Webs WWW Browser HyperText Transfer Protocol (HTTP) via Internet WWW Server.
FH-Hof 1 XML-Parser Richard Göbel. FH-Hof 2 XML-Parser- DOM Object Tree Parser Objekt der Klasse 'DocumentBuilderFactory' mit 'newInstance()' erzeugen.
XML DTD.
XML eXtensible Markup Language
XML – Schema (DTD).
Fortsetzung DTDs, UML  XML
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Objektorientierte Konzepte/UML Geoinformation I Vorlesung 2 WS 2000/2001.
SEMINAR: XML UND DATENBANKEN Matthias Haupt Thema 3: XML-Namensräume.
Wird ganz am Anfang der HTML-Datei geschrieben Doctype html public bedeutet, dass man sich auf die Öffentlichkeit der html-dtd bezieht Html ist die meist.
Java für Fortgeschrittene
Windows Presentation Foundation, Vorlesung Wintersemester 2013/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 2 Folie 2 XAML (1) s.a.
Daniel Kucher Proseminar XHTML. 1. HTML – Struktur und Versionen 2. Der – Teil 3. Der – Teil 4. Stylesheets (CSS) – Das Rückrat von XHTML.
Wohlgeformtheit und Gültigkeit Grundlagen der Datenmodellierung Anke Jackschina.
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
Kurzpräsentation von Herbert Schlechta
XML-Schema UML  XML-Schema
Hauptseminar Web-Services und verteilte Datenbanken Thema XML, DTDs und XML-Schema XML, DTDs und XML-Schema - Stefan Kurz, 25. April 2003.
Abbildung UML-Schema  Rel. Schema (1)
- Warum: Das HTML-Dilemma
IT-Zertifikat der Phil.Fak Kurs 4: Daten- und Metadatenstandards Patrick Sahle XML-BasicsWS 08/09.
Peter Brezany Institut für Softwarewissenschaften Universität Wien
Einführung in die Programmierung mit Java
Geoinformation3 Geoinformation III XML Grundlagen und Dokumentspezifikation Vorlesung 12b.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Dr. Thomas H. Kolbe Geoinformation III XML Grundlagen und Dokumentspezifikationen Vorlesung.
Geoinformation3 Geoinformation III XML Grundlagen, Namensräume und Hyperlinks Vorlesung 12b.
Geoinformation3 Geoinformation III XML-Schema Vorlesung 13a.
Einführung in die Programmierung mit Java
XML Grundlagen, Namensräume & Hyperlinks
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer, Dr. Thomas H. Kolbe Einführung in die Programmierung mit Java 9. Vorlesung WS 2001/2002.
DTD und W3C XML Schema Seminar XML und Datenbanken Vortrag: Sven Blüge.
XML – Grundlagen und Anwendungen Teil 4: Modellierung von Datenmodellen mit XML-Schema Prof. Dr. Michael Löwe, FHDW Hannover.
Ableitung UML  XML Schema
Sichtbarkeit einschränken
XML - Warum: Das HTML-Dilemma HTML, SGML, XML - Wie: Syntax, Konzepte, Sprachelemente Basics Wohlgeformte XML-Dokumente (ohne DTD) Gültige XML-Dokumente.
8.November 2006 ― 1Elektronisches Publizieren: XML Namespaces Kodierung strukturierter Dokumente im Web — XML Namespaces —
Document Type Definitions (DTDs) Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme
XML. Überblick In Anlehnung an Sprachmerkmale Wie jede Sprache verfügen auch ML über –Syntax  Wohlgeformtheit –Grammatik  DTD, XML-Schema.
Vorlesung April 2000 Polygon Overlay
Validierung vom XML mit XML Schema
Fortsetzung DTDs, UML  XML
Geography Markup Language GML
Document Type Definitions (DTDs)
XML-Schema UML  XML-Schema
Dokumentenproduktion im Medienzentrum
 Präsentation transkript:

Fortsetzung DTDs, UML  XML Geoinformation III Vorlesung 13 Fortsetzung DTDs, UML  XML

Übersicht über den dritten Vorlesungsblock 1. Offene Systeme, Rechnernetze und das Internet Die eXtensible Markup Language XML Grundlagen, Document Type Definitions (DTDs) 3. Fortsetzung DTDs, UML  DTD, Namensräume 4. XML Schema 5. Geographic Markup Language GML: der vom OpenGIS-Consortium als XML-Anwendung definierte Standard für Geo-Objekte Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attribut-Definition I Attribut-Definitionen spezifizieren die zu einem Element erlaubten Attribute mit ihren Datentypen. Syntax: für ein Element mit nur einem Attribut eine Zeile der Art: <!ATTLIST Elementname Attributname Attributtyp Option> Für welches Element wird das Attribut definiert? Bezeichner des Attributs Welche Art von Daten sollen zuge-wiesen werden? Verschiedene Elemente dürfen gleichnamige Attribute besitzen. Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attribut-Definition II Attribut-Definitionen spezifizieren die zu einem Element erlaubten Attribute mit ihren Datentypen. Syntax: für ein Element mit mehreren Attributen ein Block der Art: <!ATTLIST Elementname Attributname1 Attributtyp1 Option1 Attributname2 Attributtyp2 Option2 . . . Attributnamen Attributtypn Optionn > Innerhalb eines Elementes müssen alle Attributnamen unterschiedlich sein. Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtypen Auf diese Typen wird im Folgenden näher einge-gangen DTDs sehen zehn verschiedene Attributtypen vor: CDATA NMTOKEN NMTOKENS Aufzählung ENTITY ENTITIES ID IDREF IDREFS NOTATION Auf diese Typen wird im Folgenden näher einge-gangen Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: CDATA 1 2 1 2 Für Variante 1 sind und für Variante 2 nur Ein Attribut vom Typ CDATA kann jeden Textstring enthalten Attribut Element Attributtyp Attributliste optional <!ELEMENT Wild500 EMPTY> Variante 1: <!ATTLIST Wild500 Listenpreis CDATA #IMPLIED> Variante 2: <!ATTLIST Wild500 Listenpreis CDATA #REQUIRED> erforderlich <Wild500 Listenpreis=“17000DM“/> 1 <Wild500/> 2 1 2 Für Variante 1 sind und für Variante 2 nur zulässig Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: NMTOKEN (XML-Namens-Token) Ein Attribut vom Typ NMTOKEN darf folgende Zeichen enthalten alphanumerischen Zeichen ideographischen Zeichen Interpunktionszeichen ( _ ), ( - ), ( . ) und ( : ) keinerlei Leerzeichen Beispiel: <!ATTLIST Olympiade Eröffnung NMTOKEN #REQUIRED> <Olympiade Eröffnung=“21-07-2002“> Sport </Olympiade> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: NMTOKENS Ein Attribut vom Typ NMTOKENS enthalten: Ein oder mehrere NMTOKEN, welche durch Leerzeichen getrennt sind Beispiel: <!ATTLIST Auftritte Tourdaten NMTOKENS #REQUIRED> <Auftritte Tourdaten=“21-08-2002 26-08-2002“> Die Fantastischen Vier </Auftritte> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: Aufzählung Ein Attribut vom Typ Aufzählung besteht aus durch | voneinander getrennter möglichen Werte für ein Attribut Attributwerte dürfen nur aus den aufgezählten Werten stammen Beispiel: <!ATTLIST datum monat (Januar | Februar | März | April) #REQUIRED tag (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10) #REQUIRED jahr (1979 | 1980 | 1981 | 1982 | 1983) #REQUIRED> <datum monat=“März“ tag=“2“ jahr=“1979“/> f <datum monat=“Januar“ tag=“02“ jahr=“1979“/> f <datum monat=“Januar“ tag=“2“ jahr=“1978“/> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: ID Ein Attribut vom Typ ID: muss einen XML-Namen enthalten, der im Dokument eindeutig ist Beispiel: <!ATTLIST Abteilungsleiter Personalnummer ID #REQUIRED> <Abteilungsleiter Personalnummer=“_123-45-6789“> Jupp Zupp </Abteilungsleiter> Zahlen sind als ID-Werte problematisch, da sie keine XML-Namen sind. Deshalb muss ihnen z.B. ein Buchstabe oder Unterstrich vorangestellt werden. Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: IDREF Ein Attribut vom Typ IDREF verweist auf ein Attribut vom Typ ID eines Elements im Dokument Beispiel: <!ATTLIST Abteilungsleiter Personalnummer ID #REQUIRED> <!ATTLIST Angestellter Vorgesetzter IDREF #REQUIRED> <Abteilungsleiter Personalnummer=“_123-45-6789“> Jupp Zupp </Abteilungsleiter> <Angestellter Vorgesetzter=“_123-45-6789“> Kurt Knecht </Angestellter> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Attributtyp: IDREFS Ein Attribut vom Typ IDREF verweist auf die Attribute vom Typ ID mehrerer Elemente im Dokument IDs werden durch Leerzeichen voneinander getrennt Beispiel: <!ATTLIST Abteilungsleiter PersNr ID #REQUIRED Team IDREFS #REQUIRED> <!ATTLIST Angestellter PersNr ID #REQUIRED> <Abteilungsleiter PersNr=“C0815“ Team=“A911 A4711“> Jupp Zupp </Abteilungsleiter> <Angestellter PersNr=“A911“> Kurt Knecht </Angestellter> <Angestellter PersNr=“A4711>“ Rudi Rödler </Angestellter> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UML  XML U M L Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UML  XML U M L Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UML  XML M L Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UML  XML X M L Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Von UML zu XML (I) Objektorientierte Modellierung von Systemen und Datenstrukturen erfolgt heutzutage zumeist mittels UML-Diagrammen Für den Datenaustausch oder die Speicherung der Anwendungsdateien ist die Verwendung von XML sinnvoll Probleme: UML ist objektorientiert, XML elementorientiert Neben Klassen modelliert UML insbesondere auch Assoziationen XML besitzt kein direkt vergleichbares Konzept für Assoziationen (Einbettung von Kindelementen entspricht am ehesten der Aggregation) Keine 1:1-Abbildung von UML auf XML-Strukturen Abbildung von UML nach XML nicht eindeutig (mehrere Möglichkeiten) Festlegung auf Abbildungsvarianten sind sog. Entwurfsentscheidungen Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Von UML zu XML (II) UML XML Objekte Elemente Landkarte Objekte Elemente Eindeutigkeit Attributtyp ID Kindelement(e), Attributtyp IDREF(S) Assoziation, Aggregation mit DTDs nicht möglich! Vererbung 1..* Polygon 1,2 3..* Linie 2..* 2 Knoten Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Bestandteile werden durch Kindelemente repräsentiert UMLXML: Aggregation Aggregation ist eine spezielle Assoziation, deren beteiligte Klassen eine Ganzes-Teile-Hierarchie darstellen DTD-Deklaration <!ELEMENT Polygon (Linie,Linie,Linie+)> <!ELEMENT Linie (#PCDATA)> 3..* Polygon Linie Ganzes Teil Bestandteile werden durch Kindelemente repräsentiert Beispiel XML-Datei <Polygon> <Linie>1</Linie> <Linie>2</Linie> <Linie>3</Linie> </Polygon> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UMLXML: Assoziation 2..* 2 <!ATTLIST Linie Linien_ID ID #REQUIRED Knoten_IDs IDREFS #REQUIRED> <!ATTLIST Knoten Knoten_ID ID #REQUIRED Linien_IDs IDREFS #REQUIRED> Elemente erhalten ein eindeutiges Identifikationsattribut  Schlüssel Von jedem Element werden alle Verweise auf eine andere Klasse durch eine Menge von Referenzen (IDs der referenzierten Elemente) repräsentiert  Fremdschlüssel Linie Knoten 2..* 2 Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UMLXML: Assoziation 2..* 2 Linie Knoten <!ATTLIST Linie Linien_ID ID #REQUIRED Knoten_IDs IDREFS #REQUIRED> <!ATTLIST Knoten Knoten_ID ID #REQUIRED Linien_IDs IDREFS #REQUIRED> P9 P4 P7 P3 L7 L1 L6 L5 L3 <Linie Linien_ID=“L1“ Knoten_IDs=“P3 P7“ /> <Linie Linien_ID=“L3“ Knoten_IDs=“P7 P9“ /> <Linie Linien_ID=“L5“ Knoten_IDs=“P4 P7“ /> <Linie Linien_ID=“L6“ Knoten_IDs=“P4 P9“ /> <Linie Linien_ID=“L7“ Knoten_IDs=“P3 P9“ /> <Knoten Knoten_ID=“P3“ Linien_IDs=“L1 L7“ >100,100</Knoten> <Knoten Knoten_ID=“P4“ Linien_IDs=“L5 L6“ >250,200</Knoten> <Knoten Knoten_ID=“P7“ Linien_IDs=“L1 L3 L5“>200,100</Knoten> <Knoten Knoten_ID=“P9“ Linien_IDs=“L3 L6 L7“>150,200</Knoten> Linie Knoten 2..* 2 Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UMLXML: Vererbung Eine Vererbung, wie sie bei UML möglich ist, kann in XML nur manuell nachgebildet werden. Attribute von Oberklassen müssen ausdrücklich noch einmal deklariert werden: <!ELEMENT Person (Name,Vorname)> <!ELEMENT Student (Name,Vorname, Matrikelnummer)> Person Name Vorname Student Matrikelnummer Attribute von Student: Name geerbt von Vorname Person Matrikelnummer } Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

UMLXML: Vererbung Eine Vererbung, wie sie bei UML möglich ist, kann in XML nur manuell nachgebildet werden. Person Name Vorname Nachteil: Keine echte Vererbung, da sich die Attribute der Unterklassen bei Veränderung der Oberklasse nicht automatisch mitändern. Eine weitere Lösungsmöglichkeit ist die Nutzung von XML-Schema (siehe nächste Vorlesung) Student Matrikelnummer Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Beispiel Landkarten: 1. Möglichkeit (I) <!ELEMENT Landkarte (Polygon+)> <!ELEMENT Polygon (Linie, Linie, Linie+)> <!ELEMENT Linie (Knoten, Knoten)> <!ELEMENT Knoten (EMPTY)> <!ATTLIST Knoten xKoord CDATA #REQUIRED yKoord CDATA #REQUIRED> Landkarte 1..* Polygon 2 3..* Linie 2..* 2 Knoten Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Beispiel Landkarten: 1. Möglichkeit (II) <!ELEMENT Landkarte (Polygon+)> <!ELEMENT Polygon (Linie, Linie, Linie+)> <!ELEMENT Linie (Knoten, Knoten)> <!ELEMENT Knoten (#PCDATA)> <!ATTLIST Knoten xKoord CDATA #REQUIRED yKoord CDATA #REQUIRED> <Landkarte> <Polygon> <Linie> <Knoten xKoord=“100“ yKoord=“100“ /> <Knoten xKoord=“200“ yKoord=“100“ /> </Linie> <Knoten xKoord=“150“ yKoord=“200“ /> </Polygon> </Landkarte> 150, 200 200, 100 100, 100 Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Beispiel Landkarten: 2. Möglichkeit (I) <!ELEMENT Landkarte (Polygon+,(Linie, Linie, Linie+),(Knoten, Knoten, Knoten+))> <!ELEMENT Polygon EMPTY> <!ELEMENT Linie EMPTY> <!ELEMENT Knoten EMPTY> Landkarte 1..* 3..* 3..* Polygon Linie Knoten 2 3..* 2..* 2 Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Beispiel Landkarten: 2. Möglichkeit (II) <!ELEMENT Landkarte (Polygon+,(Linie,Linie, Linie+),(Knoten, Knoten, Knoten+))> <!ELEMENT Polygon EMPTY> <!ELEMENT Linie EMPTY> <!ELEMENT Knoten EMPTY> <!ATTLIST Landkarte Polygon_IDs IDREFS #REQUIRED> <!ATTLIST Polygon Polygon_ID ID #REQUIRED Linien_IDs IDREFS #REQUIRED> <!ATTLIST Linie Linien_ID ID #REQUIRED Knoten_IDs IDREFS #REQUIRED> <!ATTLIST Knoten Knoten_ID ID #REQUIRED xKoord CDATA #REQUIRED yKoord CDATA #REQUIRED> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Beispiel Landkarten: 2. Möglichkeit (III) <Landkarte Polygon_IDs=“P1 P2“> <Polygon Polygon_ID=“P1“ Linien_IDs=“L1 L3 L7“ /> <Polygon Polygon_ID=“P2“ Linien_IDs=“L3 L5 L6“ /> <Linie Linien_ID=“L1“ Knoten_IDs=“P3 P7“ /> <Linie Linien_ID=“L3“ Knoten_IDs=“P7 P9“ /> <Linie Linien_ID=“L5“ Knoten_IDs=“P4 P7“ /> <Linie Linien_ID=“L6“ Knoten_IDs=“P4 P9“ /> <Linie Linien_ID=“L7“ Knoten_IDs=“P9 P3“ /> <Knoten Knoten_ID=“P3“ xKoord=“100“ yKoord=“100“ /> <Knoten Knoten_ID=“P4“ xKoord=“250“ yKoord=“200“ /> <Knoten Knoten_ID=“P7“ xKoord=“200“ yKoord=“100“ /> <Knoten Knoten_ID=“P9“ xKoord=“150“ yKoord=“200“ /> </Landkarte> P9 P4 P7 P3 L7 L1 L6 L5 L3 Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Namensräume (Namespaces) XSLT CSS GXL SVG XLink XPath DTD GML XSL XHTML OWL SOAP UIML UXF PCX XDF SHOE Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Lokaler Element- oder Attribut-Name Namensräume (I) „Sonnensystem“: <Erde> <Pluto> <Saturn> <Jupiter> „Elemente“: <Erde> <Feuer> <Wasser> <Luft> Namensraum Namensraum < elemente : erde > < sonnensystem : erde > qualifizierter Name Namensraum-Präfix Lokaler Element- oder Attribut-Name Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Namensräume (II) XML-Dokumente dürfen Elemente aus mehreren DTDs enthalten verschiedene DTDs definieren u.U. gleichnamige Element Namenskonflikt Software-Module müssen erkennen, für welche Teile des Dokuments sie zuständig sind Lösung: Gruppierung von Namen für Elemente und Attribute und Zuordnung zu Namensräumen Jede Anwendung deklariert typischerweise ihren eigenen Namensraum (Beispiele siehe SVG, SMIL usw.) Verwendung von qualifizierten Namen erlaubt problemlose Verwendung unterschiedlicher DTDs Modularisierung Code-Recycling Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Namensraumdeklaration Namensräume werden weltweit eindeutig durch eine URI (Uniform Resource Identifier) identifiziert Namensraum-Präfix muss ein XML-Name sein darf keine Sonderzeichen usw. enthalten URI´s beinhalten aber oftmals Sonderzeichen (http://test.com/namespace) Namensraumdeklaration ordnet Präfix und URI einander zu: <person xmlns:job=“http://www.berufe-online.de/berufe“> <vorname>Carl Friedrich</vorname> <nachname>Gauß</nachname> <job:berufsbezeichnung>Mathematiker</job:berufsbezeichnung> </person> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Anwendung und Geltungsbereiche (I) Der Namensraum-Präfix muss im aktuellen oder einem übergeordneten Element deklariert sein Präfixe xml und xmlns werden nicht deklariert Eine Namensraumdeklaration gilt bereits für das Element, in dessen Start-Tag sie erfolgt: <?xml version=“1.0“?> <!-- alle Elemente hier stehen explizit im Namensraum Personen --> <pers:person xmlns:pers=“http://www.personenregister.de/personen“ <pers:vorname>Carl Friedrich</pers:vorname> <pers:nachname>Gauß</pers:nachname> <job:berufsbezeichnung xmlns:job=“http://www.berufe-online.de/berufe“> Mathematiker </job:berufsbezeichnung> </pers:person> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Anwendung und Geltungsbereiche (II) In einem Tag können mehrere Namensraum-Deklarationen stehen: <pers:person xmlns:pers=“http://www.personenregister.de/personen“ xmlns:job=“http://www.berufe-online.de/berufe“> <pers:vorname>Carl Friedrich</pers:vorname> <pers:nachname>Gauß</pers:nachname> <job:berufsbezeichnung>Mathematiker</job:berufsbezeichnung> </pers:person> <job:berufsbezeichnung Mathematiker </job:berufsbezeichnung> in diesem konkreten Beispiel äquivalent Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Deklaration hier ohne Doppelpunkt! Default-Namensräume gelten für alle Elemente, die keinen Namensraum-Präfix besitzen gelten nicht für Attributnamen ist die URI des Default-Namensraums leer, sind die Elemente ohne Präfix keinem Namensraum zugeordnet (unqualifizierter Name) Deklaration hier ohne Doppelpunkt! <?xml version=“1.0“?> <!–- anfangs ist der Default-Namensraum “Personen“ --> <person xmlns=“http://www.personenregister.de/personen“> <vorname>Carl Friedrich</vorname> <nachname>Gauß</nachname> <!-- neuer Default-Namensraum wird jetzt “Berufe“ --> <berufsbezeichnung xmlns=“http://www.berufe-online.de/berufe“> Mathematiker </berufsbezeichnung> </person> Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13

Geltungsbereiche von Default-Namensräumen person xmlns=“http://.../personen“ Namensraum Personen Namensraum Berufe name beruf xmlns=“http://.../berufe“ vorname nachname bezeichnung ausbildungsdauer Thomas H. Kolbe - Geoinformationen III - 5. Semester - WS 2/3 - Vorlesung 13