forked from BISONNL/KV1-index
-
Notifications
You must be signed in to change notification settings - Fork 0
/
kv1index-811.xsd
313 lines (313 loc) · 16.6 KB
/
kv1index-811.xsd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
<?xml version="1.0" encoding="UTF-8"?>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Copyright: Dit document is eigendom van Platform BISON onder Samenwerkingsverband DOVA, -->
<!-- en wordt gepubliceerd onder de Creative Commons Licentie by-nd/3.0/nl, -->
<!-- zie http://creativecommons.org/licences/by-nd/3.0/nl -->
<!-- Opmerking: XSD betreft KV1 index. Met KV1 index is het mogelijk KV1 bestanden automatisch in te lezen/verwerken. -->
<!-- In de index wordt vastgelegd in welke volgorde de verschillende KV1 sets moeten worden verwerkt/ingelezen om tot een -->
<!-- voor een volledige geldige dienstregeling. De KV1 index kan met verschillende versies van de Bison kv definitie worden -->
<!-- gebruikt. Per setperiode wordt de vroegste ingangs/startdatum van de KV1 set in de index vastgelegd. Uit de informatie -->
<!-- in de index kan worden afgeleid of een vorige KV1 set volledig of deels wordt vervangen of naast een voorgaande set -->
<!-- geldig blijft. -->
<!-- -->
<!-- Versie: 8.1.0a (januari 2020) -->
<!-- -->
<!-- Historie: -->
<!-- 0.4: initiële versie XSD, gebaseerd op versie zoals besproken in Bison WA op 1 oktober 2015 -->
<!-- 0.5: voorstel voor integratie met GVB versie KV1 index, incl. verwijzing naar ppt file -->
<!-- 0.6: Aangepast voorstel n.a.v. bespreking in KV1 werkgroep 18 febuari '16 -->
<!-- 0.7: Aangepast voorstel n.a.v. bespreking in KV1 werkgroep 29 febuari '16 -->
<!-- 0.8: Aangepast voorstel n.a.v. bespreking in AW 24-3-2016; kv1/ppt versienummers zijn nu strings -->
<!-- 0.9: Aangepast voorstel n.a.v. document concept (c): velden nu conform document -->
<!-- 0.91: Aangepast voorstel n.a.v. document concept (d): alle velden in lowercase -->
<!-- -->
<!-- 8.1.0: Root structuur die alle setgeldigheidsperiodes bevat. -->
<!-- 8.1.0a: Copyright aangepast. -->
<!-- 8.1.1: Verwijzing naar bijbehorende NeTEx-levering toegevoegd. -->
<!-- -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tmi8="http://bison.connekt.nl/tmi8/kv1/msg" targetNamespace="http://bison.connekt.nl/tmi8/kv1/msg" elementFormDefault="qualified" version="8.1.1">
<!-- KV1 index -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- KV1 index wordt (optioneel) gelijktijdig met een KV1 dataset aangeleverd. -->
<!-- De KV1-index bevat metadata over de KV1 dataset, waardoor ontvanger de -->
<!-- mogelijkheid heeft de KV1 dataset automatisch te verwerken. -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- De KV1 index wordt samen met de KV1set en optioneel PPTset op een -->
<!-- ftp-server van de ontvanger geplaatst. Het ontvangstproces bepaalt cyclisch -->
<!-- of er nieuwe KV1 indexen klaar staan voor verwerking. -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- De Setgeldigheidsperiode beschrijft de geldigheid van een kv1(-delta). -->
<!-- Sleutel van een setgeldigheidsperiode: DataOwnerCode + setcode + index + versie -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Het vastleggen van lijnen bij setgeldigheidsperiode is optioneel bij aanleveren -->
<!-- van een KV1 baseline en verplicht bij KV1-planning delta om te bepalen op -->
<!-- welke lijnen de delta planning betrekking heeft. -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Root element -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xs:element name="kv1index">
<xs:annotation>
<xs:documentation xml:lang="nl">
Het root niveau van het kv1index bestand..
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="tmi8:mutatiedatum"/>
<xs:element ref="tmi8:lastindex"/>
<xs:element ref="tmi8:setgeldigheidsperiode" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Structuren -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xs:element name="setgeldigheidsperiode">
<xs:annotation>
<xs:documentation xml:lang="nl">
De gegevens van één KV1-set (en de bijbehorende PPT-set en evt. NeTEx-levering).
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="tmi8:dataownercode"/>
<xs:element ref="tmi8:setcode"/>
<xs:element ref="tmi8:index"/>
<xs:element ref="tmi8:versie"/>
<xs:element ref="tmi8:publicatiedatum"/>
<xs:element ref="tmi8:isgeldig"/>
<xs:element ref="tmi8:startdatum"/>
<xs:element ref="tmi8:einddatum"/>
<xs:element ref="tmi8:isbaseline"/>
<xs:sequence minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="nl">
Verwijzing naar een KV1-set.
</xs:documentation>
</xs:annotation>
<xs:element ref="tmi8:zipfile"/>
<xs:element ref="tmi8:kv1dossier"/>
<xs:element ref="tmi8:kv1variant"/>
</xs:sequence>
<xs:sequence minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="nl">
Verwijzing naar de bijbehorende NeTEx-levering.
</xs:documentation>
</xs:annotation>
<xs:element ref="tmi8:netexfile" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>
Meer dan één alleen in het geval van NeTEx-lijnleveringen!
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="tmi8:netexversie"/>
</xs:sequence>
<xs:sequence minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="nl">
Verwijzing naar de bijbehorende PPT-set.
</xs:documentation>
</xs:annotation>
<xs:element ref="tmi8:pptfile"/>
<xs:element ref="tmi8:pptdossier"/>
</xs:sequence>
<xs:element ref="tmi8:lijnen"/>
</xs:sequence>
<xs:attribute name="key" type="tmi8:keyType" use="optional"/>
</xs:complexType>
</xs:element>
<xs:element name="lijnen">
<xs:annotation>
<xs:documentation xml:lang="nl">
Geeft aan welke LinePlanningNumbers in de set zitten.
</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element ref="tmi8:lineplanningnumber" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Elementen -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xs:element name="mutatiedatum" type="tmi8:datetimeType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de tijdsaanduiding van de laatste wijziging van dit kv1index bestand.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lastindex" type="tmi8:indexType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de index van de laatste aan dit kv1index bestand toegevoegde setgeldigheidsperiode.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="dataownercode" type="tmi8:dataownerType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit veld geeft de eigenaar van het bestand weer in de vorm van een code. Bijvoorbeeld “CXX” of “GVB”.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="setcode" type="tmi8:setType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit veld geeft het gebied weer volgens indeling vervoerder voor een deel van zijn dienstregeling.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="index" type="tmi8:indexType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is een nummer binnen het indexbestand van een vervoerder. De index moet oplopend zijn, nummers behoeven niet aaneengesloten te zijn. Bij het bereiken van de max. waarde opnieuw beginnen bij 1.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="versie" type="tmi8:versionType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Een gepubliceerde periode krijgt in eerste instantie altijd versienummer 1. Mocht er iets wijzigen in een KV1, dan wordt het versienummer opgehoogd. Bij het bereiken van de max. waarde opnieuw beginnen bij 1.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="publicatiedatum" type="tmi8:datetimeType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de tijdsaanduiding van het moment waarop deze versie van het bestand beschikbaar wordt gesteld aan afnemers.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isbaseline" type="tmi8:booleanType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Indicator die aangeeft of dit bestand de basisjaardienstregeling bevat (“true”) of een tijdelijke gedeeltelijke wijziging op de basisdienstregeling (“false”).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="startdatum" type="tmi8:dateType">
<xs:annotation>
<xs:documentation xml:lang="nl">
De startdatum is de vroegste operationele dag waarbinnen de KV1 geldig wordt. Deze startdatum kan de geldigheid van de operationele kalender in de KV1 set beperken.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="einddatum" type="tmi8:dateType">
<xs:annotation>
<xs:documentation xml:lang="nl">
De laatste operationele dag van de geldigheid van het KV1-bestand. Indien in de operationele kalender in de KV1-set een latere datum voorkomt dan “einddatum”, prevaleert de “einddatum” zoals opgenomen in de KV1-index.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="isgeldig" type="tmi8:booleanType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Veld dat aangeeft of het bestand geldig is. In principe is dit veld altijd gevuld met “true”; in de situatie dat en eerder gepubliceerde afwijkende delta planning ingetrokken moet worden, bijv. omdat een geplande omleiding niet doorgaat, zal dit veld de waarde “false” krijgen. Bij een waarde 'false' wordt de eerder gepubliceerde KV1 set met dezelfde dataownercode, setcode, index en versienummer ingetrokken.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="zipfile" type="tmi8:fileType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de verwijzing naar de bestandsnaam van het ZIP-bestand. Conventie: KV1_[DataOwnerCode]_[setcode]_[Index]_[Versie].zip
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kv1dossier" type="tmi8:dossierType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Versienummer van het BISON KV1 koppelvlak (drie niveaus: [major].[minor].[fix]). Dit versienummer wordt gebruikt om de KV1-data met de juiste definitie te valideren en in te laden.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="kv1variant" type="tmi8:variantType">
<xs:annotation>
<xs:documentation xml:lang="nl">
De gebruikte KV1 variant: "rijtijdgroepen" (geel) of "passeertijden" (blauw).
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="netexfile" type="tmi8:fileType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de verwijzing naar de bestandsnaam van het ZIP-bestand. Conventie: NeTEx_[domein]_[partitie](_[lijnnr])_[pubdatum]_[ingangsdatum]_[eigen info].zip. Het gedeelte "_[eigen info]" is optioneel; het gedeelte "_[lijnnr]" is alleen relevant voor lijnleveringen.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="netexversie" type="tmi8:dossierType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Versienummer van het NL NeTEx Profiel (drie niveaus: [major].[minor].[fix]). Dit versienummer wordt gebruikt om de NeTEx-data met de juiste definitie te valideren en in te laden.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pptfile" type="tmi8:fileType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Dit is de verwijzing naar de bestandsnaam van het PPT-bestand.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="pptdossier" type="tmi8:dossierType">
<xs:annotation>
<xs:documentation xml:lang="nl">
Versienummer van het BISON PPT koppelvlak (drie niveaus: [major].[minor].[fix]). Dit versienummer wordt gebruikt om de PPT-data met de juiste definitie te valideren en in te laden.
</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="lineplanningnumber" type="tmi8:linenumberType">
<xs:annotation>
<xs:documentation xml:lang="nl">
LinePlanningnumber, unieke systeemlijnnummer in domein vervoerder.
</xs:documentation>
</xs:annotation>
</xs:element>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Typedefinities -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<xs:simpleType name="variantType">
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="rijtijdgroepen"/>
<xs:enumeration value="passeertijden"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="booleanType">
<xs:restriction base="xs:boolean"/>
</xs:simpleType>
<xs:simpleType name="datetimeType">
<xs:restriction base="xs:dateTime"/>
</xs:simpleType>
<xs:simpleType name="dateType">
<xs:restriction base="xs:date"/>
</xs:simpleType>
<xs:simpleType name="indexType">
<xs:restriction base="xs:unsignedInt"/>
</xs:simpleType>
<xs:simpleType name="versionType">
<xs:restriction base="xs:unsignedInt"/>
</xs:simpleType>
<xs:simpleType name="dossierType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="fileType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="linenumberType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="dataownerType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="setType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="keyType">
<xs:restriction base="xs:string"/>
</xs:simpleType>
</xs:schema>