Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

+ disy Informationssysteme ++ Stephanienstraße 30 ++ D-76133 Karlsruhe ++ www.disy.net + XHydro Umsetzung in ein XML Schema Dr. Gabor Nagypal Projektleiter.

Ähnliche Präsentationen


Präsentation zum Thema: "+ disy Informationssysteme ++ Stephanienstraße 30 ++ D-76133 Karlsruhe ++ www.disy.net + XHydro Umsetzung in ein XML Schema Dr. Gabor Nagypal Projektleiter."—  Präsentation transkript:

1 + disy Informationssysteme ++ Stephanienstraße 30 ++ D-76133 Karlsruhe ++ www.disy.net + XHydro Umsetzung in ein XML Schema Dr. Gabor Nagypal Projektleiter Dr. Wassilios Kazakos Leiter Geschäftsentwicklung

2 2 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Die Themen Neue oder veränderte Anforderungen Performanz Leichte Verarbeitung durch Programme Modularität Struktur Umsetzung Erweiterungsmöglichkeiten Einsatzszenarien

3 3 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Neue oder veränderte Anforderungen Performanz hat Vorrang vor Menschenverständlichkeit Grund: kurze Dokumente auch ohne Komprimierung auf dem ersten Workshop ein häufig geäußerter Wunsch Folge: kurze Tagnamen Leichte Verarbeitung in Programmen Grund: Daten sollten bereits anhand des Tagnamens erkennbar sein deutlich einfachere Programmierung in XSLT oder JavaScript Folge: eindeutige Tagnamen gegenläufige Forderung zur Performanz, da Tagnamen evtl. länger werden Hohe Modularität Grund: es ist unmöglich „das perfekte Schema“ zu entwickeln verschiedene Anforderungen in verschiedenen Einsatzszenarien viele Anforderungen werden erst im Einsatz sichtbar leichte Erweiterbarkeit und/oder Veränderbarkeit ist gewünscht Folge: das Schema besteht aus mehreren Modulen

4 4 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Performanz: kurze Tagnamen Das offizielle Schema Version verwendet kurze Tagnamen das XML Dokument ist nicht mehr verständlich für Menschen aber immer noch Menschenlesbar mit Standard XML Technologie ist eine verständliche Version leicht erstellbar z.B. durch XSLT eine HTML Seite Beispiel: lange vs. kurze Tagnamen...... 1.0......... 1.0...

5 5 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Performanz: das kürzeste Dokument Übermittlung eines Werts mit Zeitstempel Unformatiert: nur 166 Bytes <tsel xmlns="http://www.xhydro.org/schemas/official/2007/05" 2007-04-02T08:30:56 1.0

6 6 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Leichte Verarbeitung in Programmen Es gibt Elementnamen die mehrmals im UML Modell vorkommen name, description... für organization, device... Aufgabe: Direkter Zugriff auf den Wert über XSLT, JavaScript, etc. Falls der Name global eindeutig ist, ist es einfach z.B. JavaScript: getElementByName(„xxx“) Methode z.B. XSLT: „*//xxx“ XPath Muster Daher: eindeutige Namen für jedes Element im Schema u.U. längere Namen oName (on), oDescription (od) statt name (n) und description (d) widerspricht der Performanz Anforderung in der Praxis sind die Unterschiede aber nicht groß Konvention: Elemente, die sehr häufig vorkommen, bekommen die kürzeren Namen

7 7 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Modularität: Struktur Parameter Codes Unit Codes... DataValue MetaData Common Location TimeSeries XHydro Archive... } } } Code-Listen Module Schemata Ref. System Codes

8 8 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Modularität: Umsetzung... <xs:complexType name="dataValueQualityType">... <xs:group name="dataValueGroup">... targetNamespace=„http://www.xhydro.org/schemas/official/2007/05“...... TimeSeries.xsd MetaData.xsd DataValue.xsd XHydro.xsd

9 9 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Modularität: Veränderung... <xs:complexType name="dataValueQualityType">... <xs:group name="dataValueGroup">... targetNamespace=„http://www.xhydro.org/schemas/archive/2007/05“...... TimeSeries.xsd MetaDataStrict.xsd DataValue.xsd XHydroArchive.xsd

10 10 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Praktische Schwierigkeiten Modularität erhöht die technische Komplexität Laut W3C-Spezifikation sollte beispielsweise das redefine XML Schema Konstrukt verwendet werden Die untersuchten Werkzeuge haben unterschiedliche Bugs Beispiel XML Spy: Probleme mit redefine Beispiel Apache Xerces: Probleme mit relativen URIs Unser Ziel: eine Lösung, die möglichst mit allen Werkzeugen und auf allen Plattformen funktioniert praktisch unmöglich alles auszuprobieren Das Schema wurde/wird mit den folgenden Werkzeugen getestet XML Spy 2006/2007 (Marktführender XML Editor) Eclipse Web Tools Platform (sehr weit verbreitetes Entwicklungswerkzeug) Java JDK 6 Programm, also Apache Xerces (offizielle Lösung von Sun).NET 2.0 C# Programm (offizielle Lösung von Microsoft)

11 11 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Einsatzszenario: XHydro Archive Im XHydro-Schema sind alle Metadaten-Elemente optional wichtig um auch kompakte Dokumente zu unterstützen Metadaten werden beim Austausch zwischen Messgerät und Zentrale häufig nicht benötigt Während der Archivierung werden die vollständigen Metadaten benötigt sollte auch durch XML Schema validiert werden Lösung MetaDataStrict.xsd Modul leichte Veränderung von MetaData.xsd die meisten Elemente obligatorisch z.B. aus wird TimeSeriesStrict.xsd Modul leichte Veränderung von TimeSeries.xsd globale Metadaten-Elemente obligatorisch XHydroArchive.xsd MetaDataStrict und TimeSeriesStrict anstatt MetaData und TimeSeries einfügen neuer Namensraum definieren

12 12 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Einsatzszenario: XHydro „Küste“ Beispielszenario (fiktiv) Im Küstenbereich könnten ganz andere Ortsangaben nützlich sein Lösung Location Modul ganz austauschen LocationShore.xsd XHydroShore.xsd LocationShore anstatt Location einbinden neuer Namensraum

13 13 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Einsatzszenario: herstellerspezifische Angaben XHydro untertützt ad-hoc Erweiterungen durch das „any“ Konstrukt keine Schema-Erweiterungen sind nötig! Fiktives Beispiel: disy möchte auch die Serialnummer eines Messgeräts übermitteln Lösung... <tsel xmlns="http://www.xhydro.org/schemas/official/2007/05" xmlns:d="http://www.disy.net/device"... ABCDEFG Device #1 This is the disy device #1...

14 14 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Das Schema praktisch einsetzen XML Generierung (z.B. am Messgerät) Schema ist nicht erforderlich Der richtige Namensraum soll verwendet werden <tsel xmlns=„http://www.xhydro.org/schemas/official/2007/05“... Fall 1: XML Dokumente enthalten keinen Hinweis auf die Schemadatei Schema ist durch den Namensraum definiert Die Datei kann ohne Validierung eingelesen/verarbeitet werden Für eine Validierung muss der Parser/Editor konfiguriert werden Das Mapping „Namensraum Schemadatei“ muss definiert werden Fall 2: XML Dokumente enthalten einen Hinweis auf die Schemadatei <tsel xsi:schemaLocation= „http://www.xhydro.org/schemas/official/2007/05 http://www.xhydro.org/schemas/official/2007/05/XHydro.xsd“ Für die Validierung kann die im Dokument spezifizierte Datei verwendet werden, ohne weitere Konfiguration Eine andere Datei (z.B. eine lokale Kopie) kann trotzdem konfiguriert werden.

15 15 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Das Schema im Web http://www.xhydro.org/schemas/official/2007/05 Enthält eine Beschreibung der Module Enthält Download-Links auf das Schema die Module die Code-Listen Konventionen: Unter dem Schema-Namensraum wird ein Verweis auf die Schemadateien bereitgestellt neue Schemaversionen erzeugen neue Namensräume schon jetzt: http://www.xhydro.org/schemas/archive/2007/05http://www.xhydro.org/schemas/archive/2007/05 z.B. in der Zukunft: http://www.xhydro.org/schemas/official/2099/01http://www.xhydro.org/schemas/official/2099/01

16 16 © disy Informationssysteme GmbH, www.disy.net, info@disy.net, +49 721 1600600 Besten Dank für Ihre Aufmerksamtkeit Besuchen Sie uns… www.disy.net Dr. Gabor Nagypal Dr. Wassilios Kazakos


Herunterladen ppt "+ disy Informationssysteme ++ Stephanienstraße 30 ++ D-76133 Karlsruhe ++ www.disy.net + XHydro Umsetzung in ein XML Schema Dr. Gabor Nagypal Projektleiter."

Ähnliche Präsentationen


Google-Anzeigen