Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Restrictions

The coding guidelines for the ICAO Data Sets include general coding rules for Schedules [PWS]. These are also applicable to Digital NOTAM Events. However, more restrictive rules apply to NOTAM schedules, such as excluding the possibility to use 'HOL' and other special dates. These limitations lead to a smaller number of coding patterns for Digital NOTAM Event schedules, which are presented in this section.

Table of Contents



Supported schedules

There are three types of schedules supported for Digital NOTAM Events:

  • daily schedules;
    e.g. "daily from 09:00 to 17:00";
  • date based schedules, including "on date" and "date range" options;
    e.g. "1/10 09:00-15:00 and on 3/10 10:00-12:00";
  • days of the week based schedules, including "on weekday", or "from weekday...to weekday" options;
    e.g. "every Monday from 13:00 to sunset".

Not supported schedules

Combining different schedule types in a single NOTAM is forbidden. It is considered that such combined schedules could become too complex for being understood and would have a high potential for providing conflicting information. For example, "daily 0900-1700 and each MON 1900-2300" would not have a clear meaning. Is the schedule for Mondays just 1900-2300, or is it both 0900-1700 and 1900-2300? Therefore, such combined schedules are not supported.

Note that the concept of "weekday ranges" (such as "MON-WED") is also not supported in this specification. However, the automatic NOTAM generation rules for item D ensure that a set of consecutive weekdays with a similar start/end time will generate a "weekday range", according to the OPADD recommendations. This does not exclude implementing an HMI that allows the input of weekday ranges, for efficiency reasons. They will have to be converted into individual weekday records in AIXM.

Also not supported are schedules that use both startTime and StartEvent or both endTime and endEvent, such as "SR or 07:00, whichever is earliest". Such schedules are sometimes encountered for static data, as they need to cover longer time periods. It is not justified to use such combinations in a NOTAM schedule.

In addition, according to the OPADD, item D is not allowed to exceed 200 characters. The application interface should check the length of the item D that results from the schedule encoding and invite the operator to split the NOTAM into two separate events in case this limit is exceeded. The HMI should allow copying a draft event into a second draft event.

UML class diagrams representation

The limitations identified above correspond to a subset of the general AIXM model for schedules. The following UML diagram shows only the classes and properties which may be used for Digital NOTAM coding. For reference, the full AIXM schedules model is described here: AIXM - Schedules).

The data type or the sub-sets of allowable values that may be used in a Digital NOTAM encoding are shown in the following diagram: 

TEMPDELTA - additional versus complete hours


As explained in the general coding rules for schedules - Relation with TimeSlice validity, a TEMPDELTA shall contain a complete description of the operating times. 

Schedules are usually used when encoding availability or activation information, such as in the SAA.ACT, RTE.CLS, AD.CLS, etc. scenarios. In this situation, it is recommended that the input interface provides a "calendar/level" view of the activation/availability, enabling the operator to graphically visualise the status of the feature different times and levels (if applicable), such as in the example below:

In the calendar view, the BASELINE information that remains valid during the Event validity time shall be visibly identified from the information that is specific to the Event, for example by using a different color and fill pattern.

The TEMPDELTA shall contain the complete definition of the activity times, including any eventual time ranges that are recuperated from the BASELINE schedules. Note that according to the OPADD, notification of a schedule modification by NOTAM shall be done by including the new schedule in item E, not in item D. Therefore, the list of Event Scenarios has to include separate scenarios for such situations.

Common coding patterns

The Common coding patterns apply also for Digital NOTAM Event schedules, but with the limitations specified above. This means that only two three types of schedules can be used in Digital NOTAM Events - "Daily/", "date based" or "Weekday based"

"Daily

/date

" based schedules

This applies to schedules that occur every day or on specific dates during the validity period of the data, without distinction between weekdays. However, it is possible to exclude specific dates from the applicable times of the schedule. For example:

  • "daily from 09:00 to 12:00 and from17:00 to 1721:00"
  • "daily from SR until 18:00 "
  • "daily from 07:00 to 23:00 except for 25 Dec and 1st Jan"

The data input elements that are specified for such schedules are indicated in the diagram below:

Image Added

Code Block
titleEBNF source code
collapsetrue
Input_Daily = "[TSH]" ("'daily'") ("start time" | ("start event" ["rel. start"])) ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]" { "[TSH]" ("'daily'") ("start time" | ("start event" ["rel. start"])) ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]"} \n 
{"[TSH]" "excluded date" {note} "[/TSH]"} {"schedule note"}.

"Date" based schedules

This applies to schedules that occur on specific dates during the validity period of the data, without distinction between weekdays. It is not possible to specify a "date period" (such as "from 09 SEP 07:00 until 16 SEP 16:00). However, it is possible to exclude specific dates from the applicable times of the schedule. For example:

  • "from 09 until 16 SEP and on 18 SEP, daily from SR until 18:00" (note that this would require two separate Timesheets, one for 9-16 SEP and one for 18 SEP, as it is not possible to specify multiple startDate/endDate on a single Timesheet).

The data input elements that are specified for such schedules are indicated in the diagram below:

Image Added

Code Block
titleEBNF source code
collapsetrue
Input_Date = "[TSH]" (("start date" "end date") | "on date") ("start time" | ("start event" ["rel. start"])) ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]" { "[TSH]" (("start date" "end date") | "on date") ("start time" | ("start event" ["rel. start"])) ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]"} \n
{"[TSH]" "excluded date" {note} "[/TSH]"} {"schedule note"}.
  • "daily from 07:00 to 23:00 except for 25 Dec and 1st Jan"
  •  

    "Days of the week" based schedules

    This applies to schedules that occur with a weekly pattern, during the validity period of the data. It is possible to specify both individual weekdays (MON, TUE, etc.) and weekday periods (from FRI 17:00 to MON 07:00). It is possible to exclude specific dates (but not  holidays or other special dates!) from the applicable times of the schedule. For example:

    • "MON, TUE, WED, THU, FRI from 13:00 to sunset; SAT, SUN. from 13:00 to 15:00" (this requires five distinct Timesheet, but which have identical values for all fields, except for the day property);
    • "SUN, 2300 (2200) to MON, 0500 (0400)"
    • "MON to FRI, 09:00 to 17:00, excluding 09 SEP" ("MON to FRI" is coded as five distinct Timesheet, but which have identical values for all fields, except for the day property)

    The data input elements that are specified for such schedules are indicated in the following diagram below:Image Removed:

    Image Added

    where:

    Image Added

    Image Added


    Code Block
    titleEBNF source code for the diagrams
    collapsetrue
    Input_Daily_DateWeekdays = ("weekday" | "week_period") {"weekday" | "week_period"}.
    
    weekday = "[TSH]" "on weekday" ("start time" | ("start date"  event" ["rel. start"])) ("end datetime") | "on date" | "daily")("end event" ["rel. end"])) {note} "[/TSH]" { "[TSH]" "on weekday" ("start time" | ("start event" ["rel. start"])) ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]"} \n
    {"[TSH]" "excluded date" {note} "[/TSH]"} {"schedule note"}. 
    
    week_period = "[TSH]" "from weekday" ("start time" | ("start dateevent" ["endrel. datestart"])) |"to weekday" ("onend datetime" | "daily") ("end event" ["rel. end"])) {note} "[/TSH]" { "[TSH]" "from weekday" ("start time" | ("start event" ["rel. start"])) "to weekday" ("end time" | ("end event" ["rel. end"])) {note} "[/TSH]"} \n
    
    {"[TSH]" "excluded date" {note} "[/TSH]"} {"schedule note"}.  


    Data input elements

    The following table provides provides the mapping of each information item within the AIXM 5.1.1 structure. The name of the variable (first column) is recommended for use as label of the data field in human-machine interfaces (HMI).

    Data Item

    Coding

    Comments

    [TS] and [/TS]

    All the elements that appear between [TS] and [/TS] are encoded as a single timesheet


    dailyTimesheet.startDate = NIL and Timesheet.endDate = NIL

    start date

    Timesheet.startDate


    end date

    Timesheet.endDate

    If the end time is 24:00, then the convention for "end of day' needs to be applied (coded as 00:00 of the next date)

    on dateTimesheet.startDate and Timesheet.endDate 

    "on date" needs to be coded with both startDate and endDate having the same value, unless

    there is a full day (00:00 to

    the end time is 24:00

    )

    , in which case the convention for "end of day' needs to be applied and the endDate gets the value of the next date after the startDate

    weekdayTimesheet.
    dailyTimesheet.startDate = NIL and Timesheet.endDate = NIL
    dayIf the end time is 24:00, then the convention for "end of day' needs to be applied (coded as 00:00 of the next day)
    from weekdayTimesheet.day
    to weekdayTimesheet.dayTilIf the end time is 24:00, then the convention for "end of day' needs to be applied (coded as 00:00 of the next day)

    start time

    Timesheet.startTime


    start event

    Timesheet.startEvent


    relative start

    Timesheet.startTimeRelativeEvent

    Positive values indicate that the actual start time is after the event.

    end time

    Timesheet.endTime

    If the end time is 24:00, then the convention for "end of day' needs to be applied (coded as 00:00 of the next day or date)

    end event

    Timesheet.endEvent


    relative end

    Timesheet.endTimeRelativeEvent

    Positive values indicate that the actual end time is after the event.

    note

    Timesheet.annotation

    Examples of such notes:
    "Departures till 2000 LT. However, latest ready time (with explanation of what that implies) is then often 15 minutes earlier or the departure"

    excluded date

    Timesheet 

    Each excluded date is coded as a separate Timesheet with excluded='YES', startDate equal the "excluded date", endDate equal to "excluded date +1 day", day='ANY', dayTill='ANY', startTime='00:00', endTime='00:00', timeReference='UTC+/-X' (local time as UTC zone).

    schedule note

    Note associated with the class that owns the schedule

    , with

    The Note shall have propertyName='timeInterval' and purpose='REMARK'

    .

    "Days of the week" based schedules

    Refer to the Common coding patterns "Days of the week" schedules diagram

    .


    Data verification rules


    The data verification rules provided in this section shall be followed in order to ensure the harmonisation of the digital encodings provided by different sources. These rules shall be used as complementing the General coding rules for Schedules defined in AIXM Coding Overview - Common Coding Rules - Common coding patterns. In case of contradiction, the rules described below are superseding the general ones. 

    IdentifierData encoding ruleRemarks (column to be deleted at the end)
    TSH.EVT-01Any Timesheet that is part of a TimeSlice associated with an Event that isNotifiedBy NOTAM shall have timeReference='UTC'In NOTAM is mandatory to use UTC times only.
    TSH.EVT-02Any Timesheet that is part of a TimeSlice associated with an Event that isNotifiedBy NOTAM shall have daylightSavingAdjust='NO'In NOTAM it is not allowed to use auto-adjusted summer time values.
    TSH.EVT-03Any Timesheet that is part of a TimeSlice associated with an Event that isNotifiedBy NOTAM and that has assigned values for startDate and endDate, must have day equal-to 'ANY'.In NOTAM it is not possible to mix date ranges with week days.
    TSH.EVT-04Any Timesheet that is part of a TimeSlice associated with an Event that isNotifiedBy NOTAM cannot use 'WORK_DAY', 'BEF_WORK_DAY', 'AFT_WORK_DAY', 'HOL', 'BEF_HOL', 'AFT_HOL' and 'BUSY_FRI'  as day or dayTill values.HOL and similar are not allowed in NOTAM schedules
    TSH.EVT-05It is not allowed to use "overnight" time periods in Event Schedules.

    It is not allowed to use "overnight" time periods in Schedules, e.g. 2200-0600. These shall be split into two separate time periods, e.g. 2200-2400 and 0000-0600.

    newThe startTimeRelativeEvent@uom cannot be other-than 'MIN'proposed by Indra/Avitech, based on OPADD 4.1, section 2.3.20.2
    newThe endTimeRelativeEvent@uom cannot be other-than 'MIN'proposed by Indra/Avitech, based on OPADD 4.1, section 2.3.20.2
    newThe startTimeRelativeEvent value cannot be higher-than 99proposed by Indra/Avitech, based on OPADD 4.1, section 2.3.20.2
    newThe endTimeRelativeEvent value cannot be higher-than 99proposed by Indra/Avitech, based on OPADD 4.1, section 2.3.20.2
    newIt is not allowed to have both startTime and startEvent in the same Timesheetfollowing comments made in the decoding scenarios
    newIt is not allowed to have both endTime and endEvent in the same Timesheetfollowing comments made in the decoding scenarios