velo..connect 1.0 - Spezifikation (rev. 6.4.2006)

Dr. Ludwig Balke


Inhaltsverzeichnis

1. Einleitung
2. Abhängigkeit von anderen Spezifikationen
3. Überblick
3.1. Bindungen
3.2. Transaktionen
3.3. Übersicht der Regeln
4. Veloconnect XML-Schema
5. Basis-Komponenten
5.1. Primitive Datentypen
5.2. Basis-Typen
5.3. Grundlegende zusamengesetzte Typen
5.4. Beschreibung von Gegenständen
6. Operationen
6.1. RequestType
6.2. ResponseType
6.3. Operation: GetStatus
6.4. Operation: Rollback
6.5. Operation: GetProfile
7. Transaktion: Order
7.1. Operation: CreateOrder
7.2. Operation: UpdateOrder
7.3. Operation: FinishOrder
7.4. Operation: ViewOrder
7.5. Operation: GetItemDetails
8. Transaktion: OrderInOnlineShop
9. Testbetrieb
10. Zukünftige Versionen
11. Beispiele
11.1. GetProfile
11.2. Abfrage von Artikeldetails (Operation: GetItemDetails)
11.3. Bestellung erzeugen (Transaktion: Order, Operation: CreateOrder)
11.4. Bestellung ändern (Transaktion: Order, Operation: UpdateOrder)
11.5. Bestellung abschließen (Transaktion: Order, Operation: FinishOrder)
11.6. Bestellung in Verbindung mit Online-Shop (Transaktion: OrderInOnlineShop)
12. Urheberrechtliche Hinweise
12.1. velo..connect
12.2. UBL
13. Referenzen
14. Korrekturen/Klarstellungen

1. Einleitung

Diese Spezifikation richtet sich an ein Publikum mit entsprechenden Vorkenntnissen (vgl. Abschnitt 2, „Abhängigkeit von anderen Spezifikationen“). Angesprochen sind zum einen Entscheider, die den Aufwand für eine Umsetzung dieser Spezifikation abschätzen wollen, und zum anderen Entwickler, die eine solche Schnittstelle implementieren. Die allgemeinen Gründe für velo..connect brauchen daher hier nicht wiederholt zu werden, man findet sie auf der Website [1].

Der eilige Leser orientiere sich an den Beispielen in Abschnitt 11, „Beispiele“ und schlage dann nach Bedarf die Details nach.

Diese Spezifikation beruht auf offenen und verbreiteten Standards, um sich auf die spezifischen Aufgaben konzentrieren zun können, die durch diese Schnittstelle gelöst werden sollen. Als Sprache zur Übermittlung von Daten wird XML eingesetzt, da hiermit strukturierte Daten übertragen werden können und die Struktur in flexibler und verläßlicher Weise derart festgelegt werden kann, dass eine automatische Validierung möglich ist. Damit einher geht natürlich ein gewisser Overhead, der allerdings bei den zur Verfügung stehenden Ressourcen und Komprimierungsmöglichkeiten keine Rolle spielt. Ferner gibt es für die gängigen Betriebssysteme und Programmiersprachen fertige und frei verfügbare Bibliotheken zum Parsen und Generieren von XML-Dokumenten.

Zur Modellierung der Entitäten, die mittels XML beschrieben werden sollten, wird die „Universal Business Language (UBL)“ [3] eingesetzt, ein vom OASIS-Konsortium [2] etablierter offener Standard. Dabei handelt es sich um ein umfangreiches XML-Schema zur Beschreibung geschäftsrelevanter Entitäten. Im Unterschied zu anderen Standards wie z.B. OpenTrans oder cXML sind hier nicht Geschäftsprozesse, die am Einkaufsprozedere großer Firmen orientiert sind, fest in der Schemadefinition verankert, sondern es wird ein allgemeines Vokabular zur Verfügung gestellt, mit dem auch die für velo..connect spezifischen Prozesse abzubilden sind.

Dieses Dokument ist wie folgt aufgebaut: Nachdem zunächst die Abhängigkeit von anderen Spezifikationen expliziert wird (Abschnitt 2, „Abhängigkeit von anderen Spezifikationen“), wird ein genereller Überblick über das der Spezifikation zugrunde liegende Modell gegeben (Abschnitt 3, „Überblick“). In den folgenden beiden Abschnitten werden die konstituierenden Elemente des XML-Schemas erläutert, welches zur Übermittlung von Daten verwendet wird (Abschnitt 4, „Veloconnect XML-Schema“, Abschnitt 5, „Basis-Komponenten“). Die generischen Regeln für die über eine velo..connect-Schnittstelle kommunizierenden Parteien, sowie die spezifischen Anforderungen für den Bestellvorgang finden sich in Abschnitt 6, „Operationen“ bzw. Abschnitt 7, „Transaktion: Order“ und Abschnitt 8, „Transaktion: OrderInOnlineShop“. Anschließend wird erläutert, welcher Testmechanismus vorgesehen ist (Abschnitt 9, „Testbetrieb“), sowie nach welchen Regeln in zukünftigen Versionen der Spezifikation für Auf- und Abwärtskompatibilität gesorgt ist (Abschnitt 10, „Zukünftige Versionen“). Den Abschluss bilden einige Beispiele in Abschnitt 11, „Beispiele“

Diese Spezifikation basiert auf der UBL-Spezifikation, deren Urheberrechte das OASIS-Konsortium [2] innehat; die Lizenzbestimmungen finden sich in Abschnitt 12, „Urheberrechtliche Hinweise“. Die Urheberrechte dieser Spezifikation besitzt der Verbund Selbtsverwalteter Fahrradbetriebe e. V. (VSF) [4]. Die genauen Lizenzbestimmungen finden sich ebenfalls in Abschnitt 12, „Urheberrechtliche Hinweise“.

Hinweise auf Fehler und Vorschläge werden gerne unter der Adresse entgegengenommen.