XML-Technologien

Modellierung von Daten 

Beratung XML-Technologien Marco SkulschusIn vielen Branchen hat sich XML schon so weit verbreitet, dass für eine große Anzahl von Anwendungsfällen XML-Formate für den Datenaustausch existieren. Diese werden von Branchen-Organisationen, dem Gesetzgeber oder auch führenden Unternehmen in einer Branche entwickelt und gepflegt. In solchen Fällen erübrigt sich eine Datenmodellierung mit einer externen Perspektive. Lediglich der Prozess, diese Schnittstelle zu nutzen und XML-Daten in diesem Formatzu importieren oder dieses XMLzu erzeugen, steht im Vordergrund. 

In anderen Fällen müssen nicht nur für interne Verwendung, sondern möglicherweise auch für die Kommunikation mit Partnern oder anderen Anwendungen und damit für die externe Verwendung Daten modelliert werden. Hierbei können die unterschiedlichsten Anforderungen auftreten. Neben einer korrekten Modellierung und möglichst guten Abbildung der realen Daten-Eigenschaften und ihren Beziehungen lassen sich hier auch noch die folgenden nennen: möglichst leichte Erweiterbarkeit, möglichst leichte Verarbeitung der Daten, leichte Nutzung des Modells bei sehr großen Datenmengen, leichte Integrierbarkeit mit Programmiersprchen wie .NET/Java oder auch Datenbanken wie Oracle/MS SQL Server.

Daher sind die folgenden meine Aufgaben in XML-Projekten:

  • Modellierung von Daten für XML-Strukturen
  • Beschreibung der Modelle in Standards wie XML Schema, DTD oder RelaxNG
  • Berücksichtigung von unterschiedlichen weiteren Anforderungen an das Datenmodell
  • Semantische Modellierung und ihre Umsetzung mit Techniken wie RDF Schema oder OWL (Web Ontology Language)
  • Gemeinsame Modellierung von Datenstrukturen für relationale Datenbanken und objektorientierte Software

Planung und Umsetzung von Daten-Prozessen

Beratung XML-Technologien Marco SkulschusXML bietet umfassende Möglichkeiten, Daten zu beschreiben, zu speichern und dann auch in Form von Abfragen oder Umwandlungen zu verarbeiten. Oftmals steht dies in Zusammenhang mit dem Aufbau von Schnittstellen, der Integration verschiedener Anwendungen oder Plattformen sowie der regelbezogenen und damit komplexen Verarbeitung von Daten. Dies erfordert eine geschäftsprozessbezogene Planung mit Fokus auf die resultierenden Datenprozesse sowie eine konkrete Implementierung der Software bzw. der Service-Orientierten Architektur (SOA), die dabei häufig entstehen soll.

Daher sind die folgenden meine Aufgaben in XML-Projekten:

  • Modellierung von Daten-Prozessen und Berücksichtigung ihrer Eigenschaften und Anforderungen im Datenmodell
  • Konzeption von Service-Orientierten Architekturen und Entwurf von Systemen
  • Projektleitung bei der Umsetzung von Software-Lösungen für Import/Export-Szenarien, Transformation 
  • Betreuung von Software-Entwicklung mit XSLT, XSL-FO  sowie Java/.NET und PL/SQL / T-SQL

Betreuung  von komplexen XML-Fragestellungen

Beratung XML-Technologien Marco SkulschusEs gibt einige sehr fortgeschrittene und anspruchsvolle Fragestellungen, die beim Einsatz von XML auftreten können. In diesem Umfeld unterstütze ich Unternehmen und Organisationen insbesondere in den beiden folgenden Themen.

Integration von XML in Datenbanken

Die beiden Datenbanksysteme Oracle und MS SQL Server bieten sehr viele Möglichkeiten, XML zu integrieren:

  • Erzeugung von XML aus relationalen Daten mit SQL-Abfragen
  • Verarbeitung und damit Zerlegung von XML-Daten über die Programmiersprachen
    PL/SQL und T-SQL
  • Direkte Speicherung von XML-Daten
  • Einsatz von XPath und XQuery für Abfragen
  • Einsatz von XML Schema für die Validierung
  • Einsatz von XSLT für die Transformation

Semantische Technologien

Ein relativ neues Feld in der Software-Entwicklung ist der Einsatz von semantischen Technologien oder auch Ontologien dar. Hierbei handelt es sich um die derzeit komplexeste und anspruchsvollste Modellierungstechnik von Daten. Mit den XML-Technologien RDF Schema und OWL (Web Ontology Language) gibt es zwei Standards vom W3c und mit XML Topic Maps (XTM) einen Standard von der ISO für die Abbildung und Modellierung solcher Datenstrukturen. Dazu existieren verschiedene APIs, mit denen in Java oder .NET Daten abgefragt und verarbeitet werden können. Verarbeitung meint hier insbesondere die Ableitung von Schlussfolgern aus den Daten.