geoinformation iii
DESCRIPTION
Geoinformation III. Vorlesung 12b. XML Grundlagen, Namensräume und Hyperlinks. 6. Namensräume (Namespaces). XSLT. CSS. GXL. SVG. XLink. XPath. DTD. GML. XSL. XHTML. OWL. SOAP. UIML. UXF. PCX. XDF. SHOE. „Sonnensystem“:. „Elemente“:. . . . . - PowerPoint PPT PresentationTRANSCRIPT
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Geoinformation III
XML
Grundlagen, Namensräume und Hyperlinks
Vorlesung 12b
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
6
Namensräume (Namespaces)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Namensraum
7
Namensräume (I)
A 7x
Namensraum
„Sonnensystem“:
<Erde>
<Pluto>
<Saturn>
<Jupiter>
„Elemente“:
<Erde>
<Feuer>
<Wasser>
<Luft>
< elemente : erde >< sonnensystem : erde >
Namensraum-Präfix Lokaler Element- oder Attribut-Name
qualifizierter Name
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
8
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 GML, SVG, SMIL usw.)
• Verwendung von qualifizierten Namen erlaubt– problemlose Verwendung unterschiedlicher DTDs– Modularisierung– Code-Recycling
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
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:
9
<person xmlns:job=“http://www.berufe-online.de/berufe“><vorname>Carl Friedrich</vorname><nachname>Gauß</nachname><job:berufsbezeichnung>Mathematiker</job:berufsbezeichnung>
</person>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
10
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>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
11
Anwendung und Geltungsbereiche (II)
• In einem Tag können mehrere Namensraum-Deklarationen stehen:
A 1x
<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>
<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>
in diesem konkreten Beispiel äquivalent
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
12
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)
<?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>
Deklaration hier ohne Doppelpunkt!
Deklaration hier ohne Doppelpunkt!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
13
Geltungsbereiche von Default-Namensräumen
A 1x
personxmlns=“http://.../
personen“
personxmlns=“http://.../
personen“
namename
vornamevorname nachnamenachname
berufxmlns=“http://.../
berufe“
berufxmlns=“http://.../
berufe“
bezeichnung
bezeichnung
ausbildungsdauer
ausbildungsdauer
Namensraum Personen
Namensraum Personen Namensraum
Berufe
Namensraum Berufe
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
XML Linking Language (XLink)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
XML Linking Language (XLink)
• XLink beschreibt, wie in XML-Dokumenten Verweise auf– andere XML-Elemente (in der selben Datei
sowie in externen Dateien) und – andere externe Datenobjekte angegeben werden können
• Referenzierung über Uniform Resource Identifier (URI); dieser ist entweder ein– Uniform Resource Locator (URL) oder– Uniform Resource Name (URN)
• Spezifikation von XLink– W3C Recommendation, 27. Juni 2001– http://www.w3c.org/TR/xlink/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Eigenschaften von Verweisen
Spezifizierbare Eigenschaften von Verweisen
• beteiligte Ressourcen
• textuelle Beschreibung
• Angaben zur Traversierung: von welcher Ressource kann zu welcher anderen navigiert werden?
• Aktionen, die beim Erkennen (Einlesen) des Links durchgeführt werden sollen
• Darstellungshinweise, wie das Zieldokument bei der Traversierung eines Verweises dargestellt werden soll
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Simple & Extended Links
• Simple Link– zeigt von einer lokalen auf genau eine externe Ressource
(ausgehender Link; vergleichbar mit Hyperlinks in HTML)– Verweisendes Element besitzt spezifische Attribute
• Extended Link – kann Referenzen zwischen zwei und mehreren lokalen und
externen Ressourcen beschreiben– unterstützt sowohl aus- als auch eingehende Links – Verweis erfolgt über spezifische Attribute + Kindelemente
GML3 verwendet ausschließlich Simple Links
GML3 verwendet ausschließlich Simple Links
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Realisierung von XLink• Verweise sind Elemente, die spezifische Attribute
des Namensraums xlink enthalten:
Attribut Funktion
type Art des Verweises (simple, extended usw.)
href URI einer referenzierten Ressource
role URI einer den Verweis beschreibenden Ressource
arcrole URI einer die Traversierung beschreibenden Ress.
title beschreibender Text zu dem Verweis
show Angabe zur Darstellung bei Aktivierung des Link
actuate Angabe zur Aktivierung dieser Referenz
label Traversierungsattribut; Markierung von Ressourcen
from Traversierungsattribut; Quellressource
to Traversierungsattribut; Zielressource
Wird im Wesentlichen für GML3 benötigt
Wird im Wesentlichen für GML3 benötigt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Geoinformation3
Beispiel für einen Simple Link
<vaterElement xmlns:xlink=“http://www.w3.org/1999/xlink“>... <meinVerweis xlink:type=“simple“ xlink:href=“meineDatei.xml#e117“ xlink:title=“Zweite Datei, Element mit der ID e117“ Ein Verweis auf ein externes XML-Element </meinVerweis>...</vaterElement>
• Verweis auf das Element mit der ID „e117“ in der Datei „meineDatei.xml“
• Der Namensraum xlink muss in dem Verweis-Element oder einem übergeordneten Element deklariert werden