**CDM TECHNICAL MEMORANDUM**

**\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_**

**To:** CDM Workgroup

**From:** Ken Howard

**Subject:** Message Processing for Exception Cases

**Date:** 1/12/97

This memo is to summarize the processing of CDM messages for exception
cases (e.g., diversions) as discussed in our telcon of 1/7/97. This memo
will serve as the requirements for this processing until this
information can be included in a new version of the Task 3 System
requirements. This memo consists of:

-   a little background

-   the processing rules

-   a number of examples

# Background

We have exercised the CDM messages in numerous HITL's. There seems to be
a good general understanding of how the what messages the airlines
should generate under normal circumstances and how these messages will
be processed by ATMS. However, there are unusual circumstances which
occur during the operation of flights which present some uncertainties.
The circumstances which we discussed at the telcon can be grouped as
follows:

-   *Return to Gate* - A flight which pushes back from the gate but due
    to some problem returns to the gate without departing.

-   *Diversion* - A flight which changes its planned destination, either
    while in the air or before it departs.

-   *Stub* - A flight which was originally scheduled as part of a
    multi-leg itinerary, but which is flown under a new flight number,
    typically because an earlier leg is running late.

Each of these cases can occur in a number of different contexts.

Prior to getting into the processing rules, it may be useful to explain
the ATMS perspective on what a flight is. ATMS is used for managing the
load on NAS resources from runway to runway. Any piece of equipment that
takes off and lands is considered a flight, regardless of whether it
flies its intended itinerary. Thus, a flight which departs, returns to
the originating airport, departs again, and flies to its intended
destination is two flights from a traffic management perspective,
although it may be considered to be one flight in an airline's database.
This may be helpful to keep in mind while going through the examples
below.

# Rules

As a result of our analysis of the ATMS processing and our discussions
at the telcon, we feel that it will be best to apply the following rules
to the flight processing.

## You may only divert a flight which is on the ground by cancelling the original flight and creating the new flight(s).

This means that ATMS will reject an FM that changes an origin or
destination for a flight that is on the ground. This restriction removes
a any ambiguity on how to generate messages in this case. This makes the
programming, error checking, and future software maintenance much more
straightforward. An airline may divert a flight any number of times in
this manner.

## You may not cancel a flight which is in the air.

## You may not modify the origin for a flight in the air.

Together, these rules means that an airborne flight may only be diverted
by sending an FM which changes the destination. Again, this removes any
ambiguity of what to do in this situation. A flight can be re-diverted
any number of times in this manner.

## You may not have two flights in the ATMS database with the same call sign which depart the same airport or arrive at the same airport and are airborne at the same time.

For example, you may not have a flight ABC123 departing ORD for BOS at
12:00 and a flight ABC123 departing ORD for LGA at 12:15. This rule
essentially means that when you divert a flight, you must send the
cancel or modify for the original flight prior to creating the new
flight.

## NAS origin/destination data will overrule CDM origin/destination data.

This means that once we have received a flight plan for a flight, we
expect to get notification of diversions from NAS prior to getting
notification from the airlines through the CDM messages. This further
implies that we will reject a CDM message that conflicts with previously
received NAS data (see examples in cases below).

NOTE: It was suggested at the telcon that there is no reason for
airlines to send in diversion data for airborne flights because the NAS
data would have precedence anyway. I would like to encourage the
airlines to send in the diversion data in all cases. We have generally
abided by the rule that ATMS should believe NAS data unless there are
strong reasons for doing otherwise. For example, we have agreed that
there are good reasons for believing airline information on
cancellations even in the face of conflicting NAS flight plans. It may
be that we will later determine that we should use the CDM diversion
information to overrule NAS data. If the airlines send in all diversion
data from the beginning, we can analyze the data and collectively decide
what processing rules will provide the most accurate data for ATMS.

## CDM origin/destination data will overrule OAG origin/destination data.

This means that when an airline create or modify message conflicts with
OAG data with respect to origin or destination, ATMS will simply correct
the existing database entry to reflect the CDM provided data. The
database will look as if the OAG data matched the CDM data from the
start.

# Cases - Message Generation

Hopefully I have recalled every significant case which we discussed at
the telcon. If I left any out, or if you have thought of new ones,
please let me know and I will incorporate them here. Each case is
described by an example, where needed, the messages that we expect, and
the outcome in the ATMS database with respect to slot allocation. The
outcome describe what an airline would be allocated in a GDP prior to
any compression or substitution.

## Case 1. Flight pushes back, then due to some problem (e.g., weather, mechanical) returns to the gate.

### Messages

-   If the flight will later fly its original itinerary under its
    original flight number:

-   send an FM to modify the times.

-   If the flight will fly but under a new call sign:

-   send an FM modifying the call sign and times

-   If the flight will fly but to a different destination:

-   send an FX to cancel the original flight, then an FC to create the
    new flight

-   If the flight will not fly,

-   send an FX to cancel the original flight

### Outcome

Airline allocated one class 1 slot at original destination based on the
scheduled arrival time. Slot is open or full depending on whether flies
or not.

## Case 2. Flight departs, then after airborne, returns back to the originating airport.

### Example

Flight ABC123 departs ORD for BOS. Thirty minutes out, it develops a
mechanical problem and must return to ORD.

### Messages

-   For the airborne flight, send an FM to modify the destination and
    arrival time.

-   If the flight will still fly:

-   send an FC to create the new flight leg (to ATMS, the original
    flight has already flown)

-   NOTE: this applies regardless of whether the flight will use its
    original flight number or fly its original itinerary

### Outcome

Airline allocated one class 1 slot at BOS for flight ABC123 based on the
original scheduled arrival time. Flight is open or full depending on
whether flight flies or not.

## Case 3. Flight departs, then after airborne, diverts to an intermediate airport

### Example

Flight ABC123 departs ORD for BOS. Thirty minutes out, it develops a
mechanical problem and diverts to DTW.

### Messages

-   For the airborne flight, send an FM to modify the destination and
    arrival time.

-   If the flight will continue to its original destination:

-   send an FC to create the new flight leg (from the intermediate
    airport to the original destination)

-   NOTE: this applies regardless of whether the continuing flight flies
    under the original flight number

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from ORD, and one full class 2 slot for
flight ABC123 departing DTW based on the arrival time on the create
message.

At DTW: Airline allocated one full class 2 slot for flight ABC123 based
on the arrival time in the modify message.

## Case 4. Flight on the ground, diverts through an intermediate airport

### Example

Flight ABC123 originally plans to fly ORD to BOS. The flight receives a
large ground delay. The airline decides to have the flight leave early
but stop at PIT and service a scheduled flight - ABC456 - to BOS as
well.

### Messages

-   Send an FX to cancel the original flight.

-   Send FC to create the new flight leg. (NOTE: In this case, the
    planned flight from PIT to BOS has already been created, thus only
    one FC is needed to create the ORD to PIT leg.)

### Outcome

At BOS: Airline allocated two class 1 slots, one open slot for flight
ABC123 based on the scheduled arrival time from ORD, and one full slot
for flight ABC456 based on the scheduled arrival time from PIT.

At PIT: Airline allocated one full class 2 slot for flight ABC123 from
ORD based on the arrival time on the create message.

## Case 5. Flight on the ground, planned to fly two legs, skips the intermediate airport

### Example

Flight ABC123 originally plans to fly ORD to PIT, PIT to BOS. Due to
delays and passenger loading, the airline decides to route the flight
direct from ORD to BOS.

### Messages

-   Send two FX's to cancel the original flights.

-   Send an FC to create the new flight.

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from PIT, and one full class 2 slot for
flight ABC123 departing ORD based on the arrival time on the create
message.

At PIT: Airline allocated one open class 1 slot for flight ABC123 based
on original schedule arrival time from ORD.

## Case 6. Flight in the air, planned to fly two legs, skips the intermediate airport

### Example

Same as Case 5. but the ORD to PIT flight is in the air when the
decision is made.

### Messages

-   Send an FX to cancel the second leg.

-   Send an FM to modify the destination and arrival time of the
    airborne flight.

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from PIT, and one full class 2 slot for
flight ABC123 departing ORD based on the arrival time on the modify
message.

At PIT: Airline allocated one open class 1 slot for flight ABC123 based
on original schedule arrival time from ORD.

## Case 7. Stub - Flight in the air, planned to fly two legs, second leg departs under new flight number prior to first flight arriving.

### Example

Flight ABC123 departs ORD for PIT, plans to continue from PIT to BOS.
The leg arriving PIT is running very late. The airline decides to fly
the PIT to BOS leg on-time using different equipment under number
ABC123A

### Messages

-   Send an FM to modify the call sign of the second flight.

### Outcome

At BOS: Airline allocated one full class 1 slot for flight ABC123A based
on the scheduled arrival time (for flight ABC123) from PIT.

-   At PIT: Airline allocated one full class 1 slot for flight ABC123
    based on original schedule arrival time from ORD.

# Cases - Message Processing

These are some additional cases to illustrate what ATMS will do when CDM
data conflicts with either OAG or NAS data. The format of the
descriptions is the same as above.

## Case 8. CDM create message has different destination but same origin as OAG-created flight.

### Example

Flight ABC123 was created from OAG data and departs ORD at 1200 for BOS.
An FC is received for flight ABC departing ORD at 1220 for LGA.

### Processing

-   ATMS overwrites the existing database entry to now arrive LGA. A
    good acknowledgment is sent to the airline.

### Outcome

At BOS: Airline gets no slot for flight ABC123.

At PIT: Airline allocated one full class 1 slot for flight ABC123 from
ORD based on the arrival time from the create message.

## Case 9. Flight diverted on ground, but ATMS receives NAS flight plan with new destination prior to the airline cancel and create messages.

### Example

Flight ABC123 originally scheduled to fly ORD to BOS is being diverted
through PIT while still on the ground. The airline sends the expected
cancel for the ORD-BOS leg, and creates for the ORD-PIT and PIT-BOS
legs. However, the NAS flight plan is received for the ORD to PIT leg
prior to receiving the CDM cancel and creates.

### Processing

-   OAG Data - ATMS creates a ORD to BOS flight.

-   NAS Flight Plan - ATMS cancels the ORD to flight and creates an ORD
    to PIT flight.

-   CDM Cancel - Accepted, but no changes to database required.

-   CDM Create for ORD to PIT - Accepted; ATMS updates flight plan entry
    with CDM data.

-   CDM Create for PIT to BOS - Accepted; ATMS creates new entry for PIT
    to BOS leg using the CDM data.

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from ORD, and one full class 2 slot for
flight ABC123 from PIT based on the arrival time in the create message.

At PIT: Airline allocated one full class 2 slot for flight ABC123 from
ORD based on the arrival time on the flight plan.

## Case 10. Flight diverted while in the air; ATMS receives NAS flight plan amendment with new destination prior to the airline modify message.

### Example

Flight ABC123 originally scheduled to fly ORD to BOS is being diverted
through PIT while in the air. A NAS flight plan amendment is received
for the ORD to PIT leg prior to receiving the CDM modify and create. The
airline then sends the expected modify message for the ORD-BOS leg
changing the destination to PIT, and a create message for PIT to BOS
leg.

### Processing

-   OAG Data/CDM Data/NAS Data - ATMS creates a ORD to BOS flight and it
    departs.

-   NAS Flight Plan Amendment - ATMS marks the ORD to BOS flight entry
    as diverted and creates a new one going from ORD to PIT.

-   CDM Modify - Accepted; ATMS updates flight plan entry with CDM data.

-   CDM Create for PIT to BOS - Accepted; ATMS creates new entry for PIT
    to BOS leg using the CDM data.

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from ORD, and one full class 2 slot for
flight ABC123 from PIT based on the arrival time in the create message.

At PIT: Airline allocated one full class 2 slot for flight ABC123 from
ORD based on the arrival time on the flight plan amendment.

## Case 11. Flight diverted while in the air; ATMS receives airline modify message with new destination prior to the NAS flight plan amendment.

### Example

Flight ABC123 originally scheduled to fly ORD to BOS is being diverted
through PIT while in the air. The airline sends the expected modify
message for the ORD-BOS leg changing the destination to PIT, and a
create message for PIT to BOS leg. Later, the NAS flight plan amendment
is received for the ORD to PIT leg prior to receiving the CDM modify and
create.

### Processing

-   OAG Data/CDM Data/NAS Data - ATMS creates a ORD to BOS flight and it
    departs.

-   CDM Modify - Rejected; ATMS sends error "DESTINATION CONTRADICTS NAS
    DATA".

-   CDM Create for PIT to BOS - Rejected; ATMS sends error "ORIGIN
    CONTRADICTS NAS DATA".

-   NAS Flight Plan Amendment - ATMS marks the ORD to BOS flight entry
    as diverted and creates a new one going from ORD to PIT.

### Outcome

At BOS: Airline allocated one open class 1 slot for flight ABC123 based
on the scheduled arrival time from ORD, and one full class 2 slot for
flight ABC123 from PIT based on the arrival time in the create message.

At PIT: Airline allocated one full class 2 slot for flight ABC123 from
ORD based on the arrival time on the flight plan amendment.

-   NOTE: Although the outcome of Case 11. is the same as Case 10, the
    processing is clearly not that satisfactory if it happens very
    often. Let's consider this a temporary solution until we observe how
    often this case happens and/or can think of something better to do.