1 Norm 240 Versionierung 2 3 Release und Version Release 1, Version 2.0, vom 19. Juni 2007 4 5 Status Offizielle Norm 6 7 Editor Sascha Klose, VHV Versicherung 8 9 10 11 12 13 14 15 16 Autoren Markus Heussen, RheinLand Gruppe (markus.heussen@creditlife.net) Sascha Klose, VHV Versicherung (sklose@vhv.de) Dr. Thomas Kippenberg, Nürnberger (thomas.kippenberg@nuernberger.de) Dr. Torsten Schmale, inubit AG (ts@inubit.com) Jörg Treiner, IDEAL Gruppe (treiner@ideal-versicherung.de) John Bodenstein, AssFiNET AG (john.bodenstein@assfinet.de) Thomas Belting, RheinLand Gruppe, (thomas.belting@rheinland-versicherungen.de) 17 18 19 Gegenstand der Norm Die Norm 240 definiert technisch wie BiPRO-konforme Service Schnittstellen (WSDL, XSD) und übertragene Dokumente zu versionieren sind. 20 21 22 Voraussetzung Norm 210, Release 1 Version 2 23 Norm 225, Release 1 Version 2 24 25 - Seite 1 von 6 -
26 27 28 29 30 31 32 33 Hinweis zur Veröffentlichung Die anliegend überreichte Norm ist urheberrechtlich für die BiPRO geschützt. Das Dokument wird Ihnen im Rahmen Ihrer Mitgliedschaft bei der BiPRO und damit als Mitglied dieses geschlossenen Empfängerkreises überlassen. Dementsprechend stellt die Überlassung an Sie keine Erstveröffentlichung der Norm dar. Zur Erstveröffentlichung gegenüber Dritten bleibt somit die BiPRO alleine berechtigt. Die Veröffentlichung erfolgt gemäß Norm100. Aufgrund der besonderen Wertigkeit der Normen für die Mitglieder sind wir gehalten, Verstöße gerichtlich zu ahnden. 34 35 36 - Seite 2 von 6 -
37 Inhaltsverzeichnis 38 39 40 41 42 43 44 45 Norm 240 Versionierung... 1 Inhaltsverzeichnis... 3 Versionierung... 4 Allgemein... 4 Definition der Versionsnummern... 4 Bildung der Gesamtversion... 5 Schematische Übersicht über den Aufbau... 5 Übertragung von Versionsnummern... 5 46 - Seite 3 von 6 -
47 Versionierung 48 49 50 Allgemein Dieses Dokument beschreibt den Aufbau und das Handling der Versionierung im Rahmen der BiPRO. Folgende einzelne Themen werden im speziellen behandelt: 51 52 53 54 XML-Schema Wie die Versionierung der einzelnen Schema Dateien aufgebaut ist. WSDL und Webservices Aufbau und URL der Webservices in Hinblick auf die Versionierung. 55 56 57 58 59 Definition der Versionsnummern Es wird zwischen zwei Versionsnummern unterschieden, der BiPRO-Versionsnummer und der Schemaversionsnummer. Die BiPRO-Versionsnummer repräsentiert den aktuellen Versionsstand der BiPRO-Spezifikation. Die Schema-Versionummer dient zur Versionierung der einzelnen Teile des Schemas bzw. der WSDL. 60 61 62 63 64 65 66 67 68 69 70 71 72 73 Einzelne Dateien MÜSSEN die Schema-Version sowohl im Dateinamen als auch in einem Attribut beinhalten. Zusätzlich MUSS die BiPRO-Version in einem Attribut mit aufgeführt werden. Es findet keine Versionierung auf Objektebene statt, sondern auf Ebene der Dokumente die den Service definieren (Service Contract). Die Versionsnummern MÜSSEN wie folgt aufgebaut sein: Major.Minor (z.b. 10.3) Semantik: Major - inkompatible Änderungen zur Vorgängerversionen Minor - additive Erweiterungen zur Vorgängerversion (z.b. weitere Methoden oder optionale Daten im Request oder Response), d.h. ein Consumer der Vorgängerversion MUSS auch mit dieser Version funktionieren, wobei die Erweiterungen dann nicht nutzbar sind Die Versionierung der VU-unabhängigen Bestandteile obliegt ausschließlich der BiPRO. Die Versionierung der VU-spezifischen Bestandteile obliegt dem VU. - Seite 4 von 6 -
74 75 76 77 78 Bildung der Gesamtversion Die Gesamtversion des Service Contracts bildet sich aus dem Major.Minor-Part der BiPRO- Version und dem der Schemaversion. Führend bei der Schema-Version ist die Version der WSDL-Datei. Diese stützt sich auf die anderen versionierten Dokumente ab und legt somit die Schema-Gesamtversion fest. 79 80 Die Gesamtversion wird sowohl für den Versionsabschnitt des Servicenamen als auch im Versions-Attribut des jeweiligen Request-Objektes verwendet. 81 82 83 Schematische Übersicht über den Aufbau 84 85 Abbildung 1 Prinzipielle Dateistruktur eines BiPRO Service Contract 86 87 88 89 Übertragung von Versionsnummern Von einem WebService KÖNNEN je VU mehrere Versionen parallel existieren. Eine Gesamt- Versionskennung MUSS in den Nutzdaten im Versions-Attribut des Request- bzw. des Response-Objektes übertragen werden. - Seite 5 von 6 -
90 91 92 93 Die verschiedenen Versionen eines Webservices MÜSSEN zusätzlich anhand der URL zu unterschieden sein. Der Aufbau der URL setzt sich aus VU-spezifischen und BiPROspezifischen Bestandteilen zusammen und MUSS folgender Struktur folgen: https://${x1}/${x2}/.../${x3}_${x4}.${x5}.${x6}.${x7} 94 Variable Wert ${X1} Domain, VU-spezifisch ${X2} Pfad, VU-spezifisch ${X3} Servicename, VU-spezifisch ${X4} Versionsnummer Major, BiPRO-spezifisch ${X5} Versionsnummer Minor, BiPRO-spezifisch ${X6} Versionsnummer Major, VU-spezifisch ${X7} Versionsnummer Minor, VU-spezifisch 95 96 Beispiele einer URL mit verschiedenen Versionen: 97 98 https://vu-domain/vu/services/hausrat/tarifrechner_1.0.3.2 https://vu-domain/vu/services/leben/tarifrechner_1.4.2.11 - Seite 6 von 6 -