Service Description



asrv.aero

Aircraft Braking Action Service 



Until this note is removed the documentation is a work in progress, and revisions to the documentation will not be tracked.


Namespace: http://www.asrv.aero/webservices/1.0/AircraftBrakingActionService


Document revisions

Date
Description
Author
yyyy-mm-dd First complete version of the documentation




1. Introduction

1.1. Overview

This service description defines an interface to submit friction / braking status data as reported by one aircraft. All data elements are defined by the Airport Data Dictionary.

The service is primarily designed to meet the need for winter operation of runways, which includes making the data available for other systems (including Eurocontrol/NMOC). 

As it is always an actual report that is submitted using NIL values is not supported. 

The service, as designed, is intended to be accessed using HTTP(S) POST.

1.2. Implementation considerations

Any implementation of this service MUST use the XSD files provided here: XSD

It is however up to the service provider to decide which data elements to actually update.

Any service provider should make available documentation about the actual implementation, including:

    • the address of the service.
    • any limitations in the implementation.
    • any limitations on how often a client can use the service.

1.3. Purpose of this service description

This service description has the following purpose:

      • Describe of service in enough detail for a service provider to implement it.
      • Describe the service so that a client (of this service) developer can use it.
      • Make available the XSD files necessary to implement and use the service.
      • Make it possible for relevant people at airports, airlines, handlers and other aviation partners to understand the available functionality and then to decide if to implement/use it or not.

1.4. Intended readership

    • IT architects
    • Developers
    • Business architects
    • Interested parties in the aviation community

2. Service overview

The figure below shows the available operations on the Aircraft Braking Action Service. The operations are described in detail in Service operations.

The operations can set the following types of data:

3. Service operations

3.1. SubmitAircraftBrakingActionReport ( aircraftBrakingActionReportDataIn: AircraftBrakingActionReportDataIn )

Submits data about the braking action the aircraft experienced, typically reltad to a winter landing.

Parameters: 

aircraftBrakingActionReportDataIn: AircraftBrakingActionReportDataIn 

Contains transaction metadata and the actual braking report data. 

Returns:  See Service Return Codes for the used HTTP/S return codes.

4. Data entities

4.1. AircraftBrakingActionReportData

Airport Data Dictionary Element Description
FlightLegIdentifier

Identifies the relevant flight leg and aircraft for this report. For the SubmitAircraftBrakingActionReport operation the following is required, in addition to enough information to identify the flight leg:

ALDT

Actual Landing Time. The time that an aircraft lands on a runway. (Equivalent to ATC ATA –Actual Time of Arrival = landing, ACARS=ON). Always UTC time.

Runway

Identifies one runway, including direction. It consists of the compass direction (by 10 degrees per scale) and optional Left/Centre/Right indication when parallel runways. For example "01L", "19R" for the west runway at OSL.

RunwaySection

A section of the runway that is exactly one third of the runway length. The runway sections are named A, B and C. Section naming starts at the lowest runway name (number).

RunwaySurfaceConditionCode

This is a code that defines how slippery the runway is. The code is defined by FAA, ref: Runway Condition Assessment Matrix

FrictionCoefficient

Measure of the friction between two objects. See Wikipedia: https://simple.wikipedia.org/wiki/Coefficient_of_friction

BrakingWasFrictionLimited

Indicates that ABS braking was used.


True if the braking (of an aircraft) was limited by friction between the wheels and the runway. This implies that ABS activated.  False otherwise.

4.3. FlightLegIdentifier

This is the standard Airport Data Dictionary FlightLegIdentifier. None of the elements are required, but enough have to be present to actually uniquely identify a flight.

 


IFPLID

Defined by Eurocontrol as "A unique flight plan identifier, assigned by the IFPS". Two letters followed by eight digits.
callsign
A call sign is used to uniquely identify an aircraft using the airspace around a particular airport.  Call signs in aviation are derived from several different policies, depending upon the type of flight operation. In most countries, unscheduled general aviation flights identify themselves using the call sign corresponding to the aircraft's registration number.  Commercial operators, including scheduled airline, air cargo and air taxi operators, will usually use an ICAO or FAA-registered call sign for their company. These will typically consist of the ICAO code of the operating airline followed by a flight identification.  The flight identification is very often the same as the flight number, but could be different due to call sign confusion, if two or more flights close to each other have similar flight numbers (i.e. KLM649 and KLM645 or BAW466 and BAW646).
aircraftRegistration
An aircraft registration is a unique alphanumeric string that identifies an aircraft. In accordance with the Convention on International Civil Aviation all aircraft must be registered with a national aviation authority and they must carry proof of this registration in the form of a legal document called a Certificate of Registration at all times when in operation.

An aircraft can be re-registered in special cases, for instance if it's sold to an operator in another country.
ssrCode
Secondary Surveilence Radar Code

A four-digit octal number received from the aircraft transponder when it is interrogated by a secondary surveillance radar (SSR).

flightId
IATA based identifier for this flight, usually issued long before the flight actually takes place.

FlightId is normally the concatenation of OperatingAirlineIATA, FlightNumber and OperationalSuffix.

FlightId typically identifies a flight to the majority of systems, but it is not unique across time. It's unique only in conjunction with FlightDepartureDate.

Exception: Some airlines use their ICAO code (OperatingAirlineICAO) instead of OperatingAirlineIATA. This might be because they aren't an IATA member or because they just prefer the ICAO code. Regardless, this means that it is allowed to use OperatingAirlineICAO as part of FlightId.

FlightId is then defined as the concatenation of AirlineIATAorICAO, FlightNumber and OperationalSuffix.

flightDepartureDate

The scheduled date (based on UTC) of departure of flight. For flights with multiple legs this is the departure of the first leg. This date must not change once set as it is used to make the FlightIds unique.
departureAirportIATA
Departure airport IATA code (see AirportIATA for description of term).
arrivalAirportIATA
Arrival airport IATA code (see AirportIATA for description of term).
departureAirportICAO
Departure airport ICAO code (see AirportICAO for description of term).
arrivalAirportICAO
Arrival airport ICAO code (see AirportICAO for description of term).

4.4. TransData

Airport Data Dictionary Element Description
CorrelationId

Identifier that can be used to correlate messages, transactions, log entries etc. The identifier should be unique across all relevant systems. It is the responsibility of the creator of the message/transaction/log entry/...  to guarantee uniqueness. The CorrelationId can for instance be a GUID, or something shorter based on site specific rules.

SourceOrganization

Name of the organization/company that created the original data. This will typically be an airline company or an handler. The value set are site specific.

SourceTimestamp

UTC timestamp for when the source was updated. If unknown, use current (UTC) time.

5. Service Return Codes

The service uses standard HTTP return codes - as follows:
  • 200 OK - the request has succeeded.
  • 400 Bad Request - The server will not process the request due to XML-schema validation error.
  • 401 Unauthorized - The request has not been applied because it lacks valid authentication credentials.
  • 403 Forbidden - The access is permanently forbidden and tied to the application logic, such as insufficient rights to a resource.
  • 405 Method Not Allowed - The request method is known by the server but is not supported by the target resource (we only support HTTP POST).
  • 500 Internal Server Error - The server encountered an unexpected condition that prevented it from fulfilling the request.
  • 503 Service Unavailable - The server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded.

6. XML Usage

This service does not support using NIL values to delete data. It is always one full braking report that is submitted.


6.1. Nil Values in Schema

For any particular data element, there is an important distinction between the following cases:

(a) the element is missing
(b) the element is present but has a 'nil' attribute assigned to it

In the first case, this means that the sender is supplying no information about the element. This would typically be because no information is available, or because there has been no change in the value of the element. A recipient would not be expected to take any action as a result of this. In particular, it would not be expected to clear any existing value.

In the second case, this means that the sender has explicitly cleared the element. As a result of this, a recipient would typically clear any value that it had previously stored for this element.

The following table shows an example sequence of messages, and the expected actions taken by the data recipient. It should be noted, however, that the action is up to the recipient. The message from the sender is a notification, and not a command for the recipient to take action.

Message contents

Expected action by recipient

aircraftRegistration element missing

Does not set or change aircraft registration value

<aircraftRegistration>ABC123</aircraftRegistration>

Sets the value to ABC123

aircraftRegistration element missing

Does not change the value

<aircraftRegistration>

Clears the aircraftRegistration value

Note that the sender should not use blank data elements such as <aircraftRegistration/> or <aircraftRegistration></aircraftRegistration> as these may cause validation errors. For example, if the schema specifies a format or a minimum length for an element, then a zero-length element will be invalid. This problem does not occur if using the nil attribute.

Note - Where a field is defined as mandatory in the schema, it must not contain a nil value.

7. XSD


  • No labels