Content
Calendar-objects
A Service Calendar defines days, daytypes, operational periods and other calendar items, as well as the connections between them . These definitions are further used (mainly) in the Timetable to specify when a Line operates.
Link
The entire XML sample file is located in the GitHub repository: https://github.com/entur/profile-norway-examples/blob/master/netex/schedule/ServiceCalendar-example.xml
Elements
Below is a more detailed description of the most important elements of modeling a calendar object.
Note that this is only a simplified example of NeTEx XML.
PublicationDelivery
All XML files according to the Norwegian NeTEx profile should be of type PublicationDelivery containing relevant Frames. (See GitHub for complete example.)
Description of the dummy ServiceFrame and TimetableFrame in the example is only included to indicate a complete PublicationDelivery.
ServiceCalendarFrame
All calendar objects are defined in a ServiceCalendarFrame. It can be done in a ServiceCalendar object, but given that most components are often reused across the dataset, it is recommended to define these directly in ServiceCalendarFrame.
dayTypes
Definition of day type by which weekdays the DayType applies. The type can be further clarified with additional features, e.g. holiday type, if applicable.
Definisjon av type dag ved hjelp av hvilke ukedager dagtypen gjelder. Typen kan presiseres nærmere med ytterligere egenskaper, f.eks. ferie-type, hvis relevant. CONVOLUTED
<dayTypes> <DayType version="any" id="RUT:DayType:weekdays"> <Name>Ukedager</Name> <properties> <PropertyOfDay> <DaysOfWeek>Monday Tuesday Wednesday Thursday Friday</DaysOfWeek> </PropertyOfDay> </properties> </DayType> [...] </dayTypes>
timebands
Timeband shows time indication.
- StartTime and EndTime or Duration specify the period span.
- If StartTime and EndTime are equal it specifies a specific time. E.g. when specifying a repeating hourly departure (in Rhythmical Journey), this is indicated by a consistent time of "00".
<timebands> <Timeband version="any" id="RUT:Timeband:TM15"> <!--Name>15 minutes past the hour</Name--> <StartTime>00:15:00</StartTime> <EndTime>00:15:00</EndTime> </Timeband> </timebands>
operatingDays
Specification of an operating day, possibly also the start and length of an operating day. Can be linked to a daytype, e.g. 637370378.
<operatingDays> <OperatingDay version="any" id="RUT:OperatingDay:default:1"> <CalendarDate>2016-05-01</CalendarDate> <EarliestTime>10:10:00</EarliestTime> <DayLength>PT12H45M</DayLength> </OperatingDay> <OperatingDay version="any" id="RUT:od:default:2"> <CalendarDate>2016-07-07</CalendarDate> <EarliestTime>11:11:00</EarliestTime> <DayLength>PT9H10M</DayLength> </OperatingDay> </operatingDays>
operatingPeriods
Specification of an operating period, based on previously defined start and end days.
<operatingPeriods> <OperatingPeriod version="any" id="RUT:op:default"> <FromOperatingDayRef ref="RUT:OperatingDay:default:1"/> <ToOperatingDayRef ref="RUT:od:default:2"/> </OperatingPeriod> </operatingPeriods>
dayTypeAssignments
Attaching a daytype to a specific date or pre-defined OperatingDay/Period for a given calendar, i.e. a daytype will be valid within the time period specified by the calendar object to which it is associated.
<dayTypeAssignments> [...] <DayTypeAssignment version="any" order="1" id="RUT:DayTypeAssignment:period"> <OperatingPeriodRef ref="RUT:OperatingPeriod:default"/> <DayTypeRef version="any" ref="RUT:DayType:weekdays"/> </DayTypeAssignment> </dayTypeAssignments>