-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathTrias_JourneySupport.xsd
870 lines (870 loc) · 37.8 KB
/
Trias_JourneySupport.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
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="http://www.vdv.de/trias" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.vdv.de/trias" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="Trias_Common.xsd"/>
<xs:include schemaLocation="Trias_LocationSupport.xsd"/>
<xs:include schemaLocation="Trias_SituationSupport.xsd"/>
<!-- ===========================================================================================================-->
<xs:complexType name="ServiceViaPointStructure">
<xs:annotation>
<xs:documentation>Stop place or stop point as a via point (in service pattern).</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="StopPointGroup"/>
<xs:element name="DisplayPriority" type="PriorityType" minOccurs="0">
<xs:annotation>
<xs:documentation>Priority of this via point to be displayed when space is limited.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ViaStructure">
<xs:annotation>
<xs:documentation>Via restrictions for a journey.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="ViaPoint" type="LocationRefStructure">
<xs:annotation>
<xs:documentation>Reference to specify the via location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DwellTime" type="xs:duration" minOccurs="0">
<xs:annotation>
<xs:documentation>Duration the passenger wants to stay at the via location. Default is 0.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:group name="StopSeqIntervalGroup">
<xs:annotation>
<xs:documentation>Interval of stop sequence numbers</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="FromStopSeqNumber" type="xs:positiveInteger" minOccurs="0">
<xs:annotation>
<xs:documentation>Stop sequence number, where the interval begins (inclusive). If missing, the interval begins at the beginning of the leg (or at the beginning of the journey for uses in StopEvents and TripInfo).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ToStopSeqNumber" type="xs:positiveInteger" minOccurs="0">
<xs:annotation>
<xs:documentation>Stop sequence number, where the interval ends (inclusive). If missing, the interval ends at the end of the leg (or at the end of the journey for uses in StopEvents and TripInfo).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="ServiceGroup">
<xs:annotation>
<xs:documentation>Properties of a service (line and direction).</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="LineIdentityGroup"/>
<xs:element name="Mode" type="ModeStructure">
<xs:annotation>
<xs:documentation>Vehicle mode.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PublishedLineName" type="InternationalTextStructure" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Line name or service description as known to the public, f.e. "512", "S8" or "Circle Line".</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element ref="OperatorRef" minOccurs="0"/>
<xs:element name="RouteDescription" type="InternationalTextStructure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Descriptive text for a route, f.e. "Airport via City Centre"</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Via" type="ServiceViaPointStructure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Via points of the service that may help identify the vehicle to the public.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:complexType name="ServiceSectionStructure">
<xs:annotation>
<xs:documentation>Properties of a service combined with a stop sequence interval.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="StopSeqIntervalGroup"/>
<xs:group ref="ServiceGroup"/>
</xs:sequence>
</xs:complexType>
<xs:group name="ServiceJourneyGroup">
<xs:annotation>
<xs:documentation>Vehicle journey (not dated).</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="JourneyRef"/>
<xs:element name="ServiceSection" type="ServiceSectionStructure" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Sequence of stop sequence intervals with respective service properties.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Attribute" type="ServiceAttributeStructure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Note or service attribute.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="ServiceOriginGroup">
<xs:annotation>
<xs:documentation>First serviced stop of a vehicle journey.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="OriginStopPointRef" type="StopPointRefStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>First stop of the vehicle journey.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="OriginText" type="InternationalTextStructure" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Label for first stop.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="ServiceDestinationGroup">
<xs:annotation>
<xs:documentation>Last serviced stop of a vehicle journey.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="DestinationStopPointRef" type="StopPointRefStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Last stop of vehicle journey.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DestinationText" type="InternationalTextStructure" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Label for last stop.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="DatedServiceGroup">
<xs:annotation>
<xs:documentation>Vehicle journey that runs at a specific date.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="OperatingDayRef"/>
<xs:element ref="VehicleRef" minOccurs="0"/>
<xs:group ref="ServiceJourneyGroup"/>
</xs:sequence>
</xs:group>
<xs:complexType name="DatedJourneyStructure">
<xs:annotation>
<xs:documentation>Structure for a vehicle journey at a specific date.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="DatedServiceGroup"/>
<xs:group ref="ServiceOriginGroup" minOccurs="0"/>
<xs:group ref="ServiceDestinationGroup"/>
<xs:group ref="ServiceStatusGroup"/>
<xs:element ref="SituationFullRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ParallelServiceStructure">
<xs:annotation>
<xs:documentation>Structure combining a parallel running service with a stop sequence interval.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="StopSeqIntervalGroup"/>
<xs:element name="Service" type="DatedJourneyStructure">
<xs:annotation>
<xs:documentation>Properties of the parallel service.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TripLocationStructure">
<xs:annotation>
<xs:documentation>Location of a passenger currently traveling in a vehicle.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element ref="OperatingDayRef"/>
<xs:element ref="JourneyRef"/>
<xs:group ref="LineIdentityGroup"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="OccupancyEnumeration">
<xs:annotation>
<xs:documentation>Passenger load status of a vehicle, according VDV 7052.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="low"/>
<xs:enumeration value="moderate"/>
<xs:enumeration value="high"/>
</xs:restriction>
</xs:simpleType>
<xs:annotation>
<xs:documentation>========================================= Times, Calls, Time context =================================================</xs:documentation>
</xs:annotation>
<xs:group name="TimeWindowGroup">
<xs:annotation>
<xs:documentation>The window of opportunity that the traveller has to perform this leg of the journey.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="TimeWindowStart" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Time at which window begins.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TimeWindowEnd" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Time at which window ends.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="ServiceTimeGroup">
<xs:annotation>
<xs:documentation>Contains at least scheduled time, but can contain real time and estimated times</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="TimetabledTime" type="xs:dateTime">
<xs:annotation>
<xs:documentation>time at point as it is published</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="RecordedAtTime" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>time as it was recorded</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EstimatedTime" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>estimated time (for prognosis)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="EstimatedTimeBandGroup" minOccurs="0"/>
</xs:sequence>
</xs:group>
<xs:complexType name="ServiceCallStructure">
<xs:annotation>
<xs:documentation>Contains information on an arrival or departure of a service, e.g. time.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="ServiceTimeGroup"/>
</xs:sequence>
</xs:complexType>
<xs:group name="EstimatedTimeBandGroup">
<xs:annotation>
<xs:documentation>Range for estimated time.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="EstimatedTimeLow" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Estimated lower limit for time.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EstimatedTimeHigh" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Estimated upper limit for time.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:complexType name="CallAtStopStructure">
<xs:annotation>
<xs:documentation>The meeting of a vehicle journey with a specific stop.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="StopPointGroup"/>
<xs:element name="ServiceArrival" type="ServiceCallStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Arrival times of the service at this stop.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ServiceDeparture" type="ServiceCallStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Departure times of the service at this stop.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="StopCallStatusGroup"/>
<xs:element ref="SituationFullRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:group name="StopCallStatusGroup">
<xs:annotation>
<xs:documentation>Status properties for the vehicle call at this stop.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="StopSeqNumber" type="xs:positiveInteger" minOccurs="0">
<xs:annotation>
<xs:documentation>Sequence number of this stop in the service pattern of the journey. Counted from the first stop (number 1) of the journey.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DemandStop" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The vehicle journey calls at this stop only on demand.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="UnplannedStop" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>This stop has not been planned by the planning department.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NotServicedStop" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The vehicle will not call at this stop despite earlier planning.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoBoardingAtStop" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Boarding will not be allowed at this stop of this journey.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoAlightingAtStop" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Alighting will not be allowed at this stop of this journey.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Occupancy" type="OccupancyEnumeration" minOccurs="0">
<xs:annotation>
<xs:documentation>Level of occupancy in the vehicle when leaving the stop. If omitted, not known.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:complexType name="DatedCallAtLocationStructure">
<xs:annotation>
<xs:documentation>Vehicle call at a general location.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="DatedJourneyRefGroup"/>
<xs:group ref="LineDirectionGroup"/>
<xs:element ref="OperatorRef" minOccurs="0"/>
<xs:element name="CallLocation" type="LocationRefStructure">
<xs:annotation>
<xs:documentation>More general location for a call than stop points. May be used with flexible services or "Area Dial-A-Ride".</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ServiceArrival" type="ServiceCallStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Arrival times of the service at this stop.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ServiceDeparture" type="ServiceCallStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Departure times of the service at this stop.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="StopCallStatusGroup"/>
</xs:sequence>
</xs:complexType>
<xs:group name="ServiceStatusGroup">
<xs:annotation>
<xs:documentation>Service status properties.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Unplanned" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether this trip is an additional one that has not been planned. Default is false.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Cancelled" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether this trip is cancelled and will not be run. Default is false.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Deviation" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether this trip deviates from the planned service pattern. Default is false.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Occupancy" type="OccupancyEnumeration" minOccurs="0">
<xs:annotation>
<xs:documentation>Level of occupancy in the vehicle during the trip (leg). The maximum during the trip (leg) should be considered. If omitted, not known.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:complexType name="ContinuousServiceStructure">
<xs:annotation>
<xs:documentation>A passenger movement on a continuous service.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:choice>
<xs:element name="ContinuousMode" type="ContinuousModesEnumeration">
<xs:annotation>
<xs:documentation>Continuous transport options.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IndividualMode" type="IndividualModesEnumeration">
<xs:annotation>
<xs:documentation>Individual transport options.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice>
<xs:group ref="DatedServiceGroup" minOccurs="0"/>
<xs:element name="SharingService" type="SharingServiceStructure" minOccurs="0"/>
</xs:choice>
<xs:group ref="ServiceOriginGroup" minOccurs="0"/>
<xs:group ref="ServiceDestinationGroup" minOccurs="0"/>
<xs:element ref="SituationFullRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="VehicleProgressEnumeration">
<xs:annotation>
<xs:documentation>Vehicle progress relative to timetable service pattern.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="Not yet operated"/>
<xs:enumeration value="Operation finished"/>
<xs:enumeration value="At stop"/>
<xs:enumeration value="Between stops"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="VehiclePositionStructure">
<xs:annotation>
<xs:documentation>Geographical and logical position of a vehicle.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="GeoPosition" type="GeoPositionStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Geographic position of vehicle.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Progress" type="VehicleProgressEnumeration" minOccurs="0">
<xs:annotation>
<xs:documentation>Logical progress of vehicle relative to service pattern.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Bearing" type="AbsoluteBearingType" minOccurs="0">
<xs:annotation>
<xs:documentation>Bearing in compass degrees in which vehicle is heading.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ProgressBetweenStops" type="ProgressBetweenStopsStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Provides information about the progress of the vehicle along its current link, that is link from previous visited top to current position.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ProgressBetweenStopsStructure">
<xs:annotation>
<xs:documentation>Type for Progress between stops.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="LinkDistance" type="DistanceType" minOccurs="0">
<xs:annotation>
<xs:documentation>The total distance in metres between the previous stop and the next stop.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Percentage" type="PercentType" minOccurs="0">
<xs:annotation>
<xs:documentation>Percentage along link that vehicle has travelled.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LocationContextStructure">
<xs:annotation>
<xs:documentation>A location and access to it by individual transport.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:choice>
<xs:element name="LocationRef" type="LocationRefStructure">
<xs:annotation>
<xs:documentation>Spatial location.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TripLocation" type="TripLocationStructure">
<xs:annotation>
<xs:documentation>Location within a (moving) vehicle.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:choice>
<xs:element name="DepArrTime" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>Time when departure/arrival from/to location is required.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TimeAllowance" type="xs:duration" minOccurs="0">
<xs:annotation>
<xs:documentation>Extra time needed before reaching/after leaving this location.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:choice>
<xs:element name="IndividualTransportOptions" type="IndividualTransportOptionsStructure" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Options how to access/leave the location by individual transport.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="AbstractResponseContextStructure">
<xs:annotation>
<xs:documentation>Abstract structure providing response contexts related to journeys.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Locations" minOccurs="0">
<xs:annotation>
<xs:documentation>Container for location objects.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Location" type="LocationStructure" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Situations" type="SituationsStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Container for SIRI SX situation objects.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:annotation>
<xs:documentation>========================================= Geographic context =================================================</xs:documentation>
</xs:annotation>
<xs:complexType name="LegTrackStructure">
<xs:annotation>
<xs:documentation>The sequence of tracks a journey leg travels along.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="TrackSection" type="TrackSectionStructure" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>One or more track sections that build the journey leg.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="TrackSectionStructure">
<xs:annotation>
<xs:documentation>A piece of a trip. A trip leg.may consist of multiple TrackSections. Describes the geographic embedding.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="TrackStart" type="LocationRefStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>Start location of this track.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TrackEnd" type="LocationRefStructure" minOccurs="0">
<xs:annotation>
<xs:documentation>End location of this track.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Projection" minOccurs="0">
<xs:annotation>
<xs:documentation>Geographic projection as polyline.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Position" type="GeoPositionStructure" minOccurs="2" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="RoadName" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:documentation>Name of the road this track section is attached to.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Duration" type="xs:duration" minOccurs="0">
<xs:annotation>
<xs:documentation>Duration the passenger needs to travel through this track section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Length" type="DistanceType" minOccurs="0">
<xs:annotation>
<xs:documentation>Length of this track section.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Extension" type="xs:anyType" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:annotation>
<xs:documentation>=========================================== Filter Groups ===========================================================</xs:documentation>
</xs:annotation>
<xs:group name="NumberOfResultsGroup">
<xs:annotation>
<xs:documentation>To control the number of trip results before/after a point in time. May NOT be used when departure time at origin AND arrival time at destination are set.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="NumberOfResultsBefore" type="xs:nonNegativeInteger">
<xs:annotation>
<xs:documentation>The desired number of trip results before the given time (at origin or destination).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NumberOfResultsAfter" type="xs:nonNegativeInteger">
<xs:annotation>
<xs:documentation>The desired number of trip results after the given time (at origin or destination).</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="BaseTripPolicyGroup">
<xs:annotation>
<xs:documentation>Policies that control the trip search behaviour for both public and individual transport.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:choice minOccurs="0">
<xs:element name="NumberOfResults" type="xs:positiveInteger" minOccurs="0">
<xs:annotation>
<xs:documentation>The number of trip results that the user wants to see at least.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="NumberOfResultsGroup" minOccurs="0"/>
</xs:choice>
<xs:element name="IgnoreRealtimeData" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The trip calculation should not use any realtime or incident data.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ImmediateTripStart" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the trip calculation should find a solution that starts immediately (f.e. because the user is already on the way) instead of finding the latest possible start opportunity.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="BaseTripMobilityFilterGroup">
<xs:annotation>
<xs:documentation>Base mobility options to be applied for both public and individual transport.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="NoSingleStep" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The user is not able to climb one step.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoStairs" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The user is not able to walk up/down stairs.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoEscalator" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The user is not able to use an escalator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoElevator" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The user is not able to use an elevator.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="NoRamp" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>The user is not able to use an ramp.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="TripMobilityFilterGroup">
<xs:annotation>
<xs:documentation>Parameters the user can set to restrict the mobility options - particularly for interchanging.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="BaseTripMobilityFilterGroup"/>
<xs:element name="LevelEntrance" type="xs:boolean" fixed="true" minOccurs="0">
<xs:annotation>
<xs:documentation>The user needs vehicles with level entrance between platform and vehicle, e.g. for wheelchair access.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BikeTransport" type="xs:boolean" fixed="true" minOccurs="0">
<xs:annotation>
<xs:documentation>The user wants to carry a bike on public transport.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="WalkSpeed" type="OpenPercentType" minOccurs="0">
<xs:annotation>
<xs:documentation>Deviation from average walk speed in percent. 100% percent is average speed, less than 100% is slower, greater than 100% is faster.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="BaseTripContentFilterGroup">
<xs:annotation>
<xs:documentation>Parameters to control the level of detail of both public and individual transport journey results.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="IncludeTrackSections" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include TrackSection elements to describe the geographic route of each journey leg.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IncludeLegProjection" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include the geographic projection (coordinates) of each journey leg.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IncludeTurnDescription" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include turn-by-turn instructions for each journey leg.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IncludeAccessibility" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include accessibility information.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IncludeEstimatedTimes" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include estimated times, stop cancellation, train cancellation, trip deviation etc.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="IncludeSituationInfo" type="xs:boolean" default="false" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether the result should include textual situation information etc.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:annotation>
<xs:documentation>=========================================== Assistance ===========================================================</xs:documentation>
</xs:annotation>
<xs:complexType name="PassengerAccessibilityStructure">
<xs:annotation>
<xs:documentation>Structure with elements to describe the passenger's abilities and accessibility requirements.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="PassengerRequirementsGroup"/>
<xs:group ref="PassengerProfileGroup"/>
</xs:sequence>
</xs:complexType>
<xs:group name="PassengerRequirementsGroup">
<xs:annotation>
<xs:documentation>Description of passenger's accessibility requirements</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:group ref="TripMobilityFilterGroup"/>
<xs:group ref="AssistanceGroup"/>
</xs:sequence>
</xs:group>
<xs:group name="AssistanceGroup">
<xs:annotation>
<xs:documentation>Requirement for the driver/staff to assist the passenger when boarding/alighting.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="BoardingAssistance" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether assistance is required for boarding. Could be offered by the driver or station staff. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AlightingAssistance" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Whether assistance is required for alighting. Could be offered by the driver or station staff. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="PassengerProfileGroup">
<xs:annotation>
<xs:documentation>Profile of the passenger's abilities.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="WheelchairUser" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger uses a wheelchair. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MotorizedWheelchair" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger uses a motorized wheelchair. The vehicle must have an appropriate transportation capability. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FoldableWheelchair" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger uses a foldable wheelchair. The vehicle must have an appropriate transportation capability. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="WalkingFrame" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger uses a walking frame. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="WalkingStick" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger uses a walking stick. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="WalkingImpaired" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger is (maybe temporarily) walking impaired. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Pram" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger has a pram, stroller or other kind of child/baby pushchair with him/her. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VisuallyImpaired" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger is visually impaired. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="HearingImpaired" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger is hearing impaired. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ReadingImpaired" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger is reading impaired. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:group name="LuggageRequirementsGroup">
<xs:annotation>
<xs:documentation>Service characteristics required for the luggage taken along to be booked.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="Bike" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>The user wants to carry a bike on public transport. The vehicle must have an appropriate transportation capability. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Dog" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>The user wants to take a dog on public transport. The vehicle must have an appropriate transportation capability. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="GuideDog" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>The user wants to take a guide dog on public transport. The vehicle must have an appropriate transportation capability. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="HeavyLuggage" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation>Passenger has got heavy luggage with him/her. Default is FALSE.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:group>
<xs:annotation>
<xs:documentation>=========================================== Service Attributes =============================================</xs:documentation>
</xs:annotation>
<xs:simpleType name="AttributeScopeEnumeration">
<xs:annotation>
<xs:documentation>Enumeration of attribute types.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="onRide"/>
<xs:enumeration value="atStop"/>
<xs:enumeration value="atBoardOnly"/>
<xs:enumeration value="atAlightOnly"/>
<xs:enumeration value="atBoardAndAlight"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ServiceAttributeStructure">
<xs:annotation>
<xs:documentation>Attributes that are not valid on the whole service, but only on part of the journey leg.</xs:documentation>
</xs:annotation>
<xs:complexContent>
<xs:extension base="GeneralAttributeStructure">
<xs:sequence>
<xs:element name="Scope" type="AttributeScopeEnumeration" minOccurs="0">
<xs:annotation>
<xs:documentation>Scope of the attribute. Defines where the attribute references to (on track, at stops, at boarding, at alighting).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:group ref="StopSeqIntervalGroup"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>