Text NOTAM production rules

This section provides rules for the automated production of the text NOTAM message items, based on the AIXM 5.1.1 data encoding of the Event. Therefore, AIXM specific terms are used, such as names of features and properties, types of TimeSlices, etc:

In general, the ICAO DOC 8126 and the OPADD rules shall be followed. These have not been copied in this document in order to avoid duplication with those documents. Only instructions that are specific to the AIXM encoding of this event are stated here.

Item A

The item A shall contain the AD.BL.designator if AD.BL.locationIndicatorICAO='YES'. Otherwise, the nationality letter(s) as defined in ICAO Doc 7910 followed by “XX” or “XXX”.

Q code

The following mapping shall be used:

Declared Distance

Corresponding Q code

Declared Distance Change

QMDCH

Scope

Insert the value ‘A’.

Lower limit / Upper limit

Use “000/999”

Geographical reference

Insert the coordinate of the ARP (BL.ARP.ElevatedPoint) of the airport, formatted as follows:

Items B, C and D

Items B and C shall be decoded following the common production rules.

If at least one RCP.TD.associatedDeclaredDistante.RunwayDeclaredDistanceValue.timeInterval exists (the Event has an associated schedule), then it shall be represented in item D according to the common NOTAM production rules for {{Item D, E - Schedules}}. Otherwise, item D shall be left empty.

Item E

The following pattern should be used for automatically generating the E field text from the AIXM data:

template = ["(1)" "AHP.BL.type (2)" ("AHP.BL.name (3a)" | "AHP.BL.ARP (3b)")  ] "\n" \n
"Declared distances changed:" "\n" \n 
["unpaved(4)"] "RWY" "RDN.BL.designator" ("RCP.TD.RunwayDeclaredDistance.type(5)" "RCP.TD.RunwayDeclaredDistance.distance(6)" {"RCP.TD.RunwayDeclaredDistance.type(5)" "RCP.TD.RunwayDeclaredDistance.distance(6)"} | "RCP[n].BL.RunwayDeclaredDistance.type(5)" "RCP[n].BL.RunwayDeclaredDistance.distance(6)" {"RCP[n].BL.RunwayDeclaredDistance.type(5)" "RCP[n].BL.RunwayDeclaredDistance.distance(6)"}) {("RCP.TD.RunwayDeclaredDistance.type(5)" "RCP.TD.RunwayDeclaredDistance.distance(6)" {"RCP.TD.RunwayDeclaredDistance.type(5)" "RCP.TD.RunwayDeclaredDistance.distance(6)"} | "RCP[n].BL.RunwayDeclaredDistance.type(5)" "RCP[n].BL.RunwayDeclaredDistance.distance(6)" {"RCP[n].BL.RunwayDeclaredDistance.type(5)" "RCP[n].BL.RunwayDeclaredDistance.distance(6)"})}"." \n
["\n" "Other declared distances unchanged.(7)"]\n
["\n" "RCP.TD.annotation(8)" "."].

Reference

Rule

(1)

If AD.BL.locationIndicatorICAO=YES, then ignore this branch.

(2)

Insert here the type of the airport decoded as follows

AHP.BL.type

Text to be inserted in Item E

AD or AH

"AD"

HP

"Heliport"

LS or OTHER...

"Landing site"

(3)

  1. If AHP.BL.name is not NIL, then insert it here. Otherwise,

  2. insert here the text "located at " followed by the AHP.BL.ARP.ElevatedPoint decoded according to the text NOTAM production rules for aixm:Point

(4)

Insert the word “unpaved” if RW.BL.SurfaceCharacteristics.composition has one of the values CLAY, CORAL, EARTH, GRASS, GRAVEL, ICE, LATERITE, MACADAM, SAND, SNOW, WATER, OTHER. Otherwise do not insert anything.

(5)

Insert here the declared distance type decoded as follows in the order below. Only the RCP.TD.RunwayDeclaredDistance and RCP[n].BL.RunwayDeclaredDistance which do not have an associated Note with purpose=REMARK and the text="Baseline data copy. Not included in the NOTAM text generation" shall be included.

If AHP.BL.type=AD, LS or OTHER

RCP.TD.DeclaredDistance.type

Text to be inserted in Item E

TORA

"TORA"

TODA

"TODA"

ASDA

"ASDA"

LDA

“LDA”

If AD.BLtype=HP

RCP.TD.DeclaredDistance.type

Text to be inserted in Item E

TODAH

"TODAH"

RTOAH"RTODAH"

LDAH

"LDAH"

(6)

Insert here the declared distance value followed by its unit of measurement decoded according to the {{text NOTAM production rules for distances}}

(7)

If there are:

    1. RCP.TD.DeclaredDistance and RCP[n].BL.DeclaredDistance that have an associated Note with purpose=REMARK and the text="Baseline data copy. Not included in the NOTAM text generation"; and/or
    2. other RunwayCentrelinePoint BASELINE TimeSlices associated with the same RDN.BL as RCP.TD and RCP[n].BL. and which contain associatedDeclaredDistance,

add here "Other declared distances unchanged.". Otherwise insert nothing.

(8)

Annotations shall be translated into free text according to the rule for {{decoding annotations}}.

Note: The objective is to fully automate generation, without human intervention. However, the implementers of the specification might consider reducing the cost of a fully automated generation by allowing the operator to fine-tune the text in order to improve its readability (with the inherent risk for human error when re-typing is allowed).

Items F & G

Leave empty.

Event Update

The eventual update of this type of event shall be encoded following the general rules for {{Event updates or cancellation}}, which provide instructions for all NOTAM fields, except for item E and the condition part of the Q code, in the case of a NOTAMC

If a NOTAMC is produced, then the 4th and 5th letters (the "condition") of the Q code shall be "AK" unless there is a new NOTAM to follow, in which case the Q code shall be “XX” and the following pattern should be used for automatically generating the E field text from the AIXM data:

template_cancel = ["(1)" "AHP.BLtype (2)" ("AHP.BL.name (3a)" | "AHP.BL.ARP (3b)")  ] "RWY" "RDN.BL.designator" ["."] \n
["resumed normal operations"]  ["New NOTAM to follow (9)"] ".".


Reference

Rule

(9)

If the NOTAM will be followed by a new NOTAM concerning the same situation, then the operator shall have the possibility to specify "New NOTAM to follow" and this text shall be appended at the end of item E of the NOTAM C.

Note: in this case, the 4th and 5th letters of the Q code shall also be changed into “XX”