Aeronautical Information Exchange Model AIXM GML Encoding Guidelines

  • Slides: 30
Download presentation
Aeronautical Information Exchange Model (AIXM) – GML Encoding Guidelines

Aeronautical Information Exchange Model (AIXM) – GML Encoding Guidelines

Objective • Guidelines for aviation specific aspects • E. g. srs. Name (WGS 84

Objective • Guidelines for aviation specific aspects • E. g. srs. Name (WGS 84 is imposed in aviation) • E. g. Surface and lines - specials • Parallels • Arcs • E. g. Embedded curves/points • Geographical borders re-used in Surface definitions • In relation with the use of AIXM for aeronautical data encoding • GML Profile Copyright EUROCONTROL 2011

http: //external. opengeospatial. org/twiki_public/Aviation. DWG/GMLGuidelines. For. AIXM Copyright EUROCONTROL 2011

http: //external. opengeospatial. org/twiki_public/Aviation. DWG/GMLGuidelines. For. AIXM Copyright EUROCONTROL 2011

Positions - encoding ICAO Annex 15, all “published aeronautical geographical coordinates (indicating latitude and

Positions - encoding ICAO Annex 15, all “published aeronautical geographical coordinates (indicating latitude and longitude) shall be expressed in terms of the WGS-84 geodetic reference datum” First latitude, then longitude … <aixm: Elevated. Point srs. Name="urn: ogc: def: crs: EPSG: : 4326" gml: id="ID 55"> <gml: pos>52. 2889 -32. 0350</gml: pos> </aixm: Elevated. Point> … Copyright EUROCONTROL 2011

Lines and surfaces EAP 25 (The Castle) 52° 11'08. 00"N 005° 12'30. 00"E; 52°

Lines and surfaces EAP 25 (The Castle) 52° 11'08. 00"N 005° 12'30. 00"E; 52° 12'22. 00"N 005° 17'15. 00"E; 52° 11'21. 00"N 005° 17'56. 00"E; 52° 10'09. 00"N 005° 17'56. 00"E; (then along the parallel to) 52° 10'09. 00"N 005° 13'11. 00"E; to point of origin. • No explicit indication of the type of interpolation between two points • Assumed “Straight lines” • Unless same latitude -> assumed “parallel” Copyright EUROCONTROL 2011

Straight lines gml: Geodesic. String … <aixm: Surface gml: id="S 01" srs. Name="urn: ogc:

Straight lines gml: Geodesic. String … <aixm: Surface gml: id="S 01" srs. Name="urn: ogc: def: crs: EPSG: : 4326"> <gml: patches> <gml: Polygon. Patch gml: id=”PP 01”> <gml: exterior> <gml: Ring> <gml: curve. Member> <gml: Curve gml: id="C 001"> <gml: segments> <gml: Geodesic. String> <gml: pos. List>52. 18556 5. 20833 52. 20611 5. 2875 52. 18917 5. 29889 52. 16917 5. 29889 52. 18556 5. 20833</gml: pos. List> </gml: Geodesic. String> … Copyright EUROCONTROL 2011

Parallels Linear interpolation in a geodetic CRS Latitude axis (NORTH) Lat 1 Long 1

Parallels Linear interpolation in a geodetic CRS Latitude axis (NORTH) Lat 1 Long 1 Linear interpolation -> parallel Lat 1 Long 2 Longitude axis Copyright EUROCONTROL 2011

Arc by centre point <gml: Arc. By. Center. Point gml: id="A 01"> <gml: pos>lat_P

Arc by centre point <gml: Arc. By. Center. Point gml: id="A 01"> <gml: pos>lat_P 3 long_P 3</gml: pos> <gml: radius uom="m">radius</gml: radius> <gml: start. Angle uom="deg">calculated_start_angle</gml: start. Angle> <gml: end. Angle uom="deg">calculated_end_angle</gml: end. Angle> </gml: Arc. By. Center. Point> Copyright EUROCONTROL 2011 gml: Arc. By. Center. Point

Re-calculate centre If necessary for spatial calculations! Copyright EUROCONTROL 2011

Re-calculate centre If necessary for spatial calculations! Copyright EUROCONTROL 2011

Arc by edge gml: Arc … <gml: Polygon. Patch> <gml: exterior> <gml: Ring gml:

Arc by edge gml: Arc … <gml: Polygon. Patch> <gml: exterior> <gml: Ring gml: id=”…”> Can we not change our practices? Use Arc by edge! -Less ambiguous -No problems with projections -Perfectly supported in GIS tools Copyright EUROCONTROL 2011 … <gml: curve. Member> <gml: Curve gml: id="…"> <gml: segments> <gml: Arc gml: id=”…”> <gml: pos>P 2</gml: pos> <gml: pos>P 3</gml: pos> <gml: pos>P 4</gml: pos> </gml: Arc> </gml: segments> </gml: Curve> </gml: curve. Member>

Circle gml: Circle. By. Center. Point <gml: Curve gml: id="CUR 001"> <gml: segments> <gml:

Circle gml: Circle. By. Center. Point <gml: Curve gml: id="CUR 001"> <gml: segments> <gml: Circle. By. Center. Point num. Arc="1"> <gml: pos>51. 01555556 2. 57138889</gml: pos> <gml: radius uom="[nmi_i]">12</gml: radius> </gml: Circle. By. Center. Point> </gml: segments> </gml: Curve> Copyright EUROCONTROL 2011

Other suggested subjects • Wind Spiral Copyright EUROCONTROL 2011

Other suggested subjects • Wind Spiral Copyright EUROCONTROL 2011

Airspace aggregation By reference - between synchronized databases By copying the geometry - geometrical

Airspace aggregation By reference - between synchronized databases By copying the geometry - geometrical data for direct consumption Combined if necessary Copyright EUROCONTROL 2011

Point references gml: point. Property “E) AIR DISPLAY WILL TAKE PLACE WI LATERAL LIMITS:

Point references gml: point. Property “E) AIR DISPLAY WILL TAKE PLACE WI LATERAL LIMITS: 443838 N 0200818 E (NDB OBR) - 444508 N 0201455 E (VILLAGE JAKOVO) - 443445 N 0202447 E - 443838 N 0200818 E (NDB OBR). * Edge point * Centre point * Etc. Copyright EUROCONTROL 2011

With annotation information provided is “for human consumption” <gml: Geodesic. String> <gml: pos>52. 16917

With annotation information provided is “for human consumption” <gml: Geodesic. String> <gml: pos>52. 16917 5. 29889</gml: pos> <gml: point. Property> <aixm: Point gml: id="P 001"> <gml: pos>52. 16917 5. 21972</gml: pos> <aixm: annotation> <aixm: Note gml: id="N 001"> <aixm: translated. Note> <aixm: Linguistic. Note gml: id="N 002"> <aixm: note lang="ENG">VILLAGE JAKOVO</aixm: note> </aixm: Linguistic. Note> </aixm: translated. Note> </aixm: Note> </aixm: annotation> </aixm: Point> </gml: point. Property> </gml: Geodesic. String> Copyright EUROCONTROL 2011

With xlink: href Remote references as well • to the feature! • Looking into

With xlink: href Remote references as well • to the feature! • Looking into other xlink attributes… • include xlink: title for display purpose Local Copyright EUROCONTROL 2011

Progress • Initial version • November 2010 after ADWG meeting in Brussels • Task

Progress • Initial version • November 2010 after ADWG meeting in Brussels • Task for the Aviation Domain WG • Current version (0. 6) • http: //external. opengeospatial. org/twiki_public/Aviation. DWG/ GMLGuidelines. For. AIXM • 80% mature, still to do: • GML profile details (exact list of GML elements) • interpolation/densification issues (should this be in? ) • Other geometries (wind spiral, etc. ? ) • Target: finalise end 2011 • Release during TC meeting in March 2012 as “Discussion paper” (March 2012) Copyright EUROCONTROL 2011

& A Copyright EUROCONTROL 2011 Q

& A Copyright EUROCONTROL 2011 Q

Other issues – accuracy, resolution, integrity Copyright EUROCONTROL 2011

Other issues – accuracy, resolution, integrity Copyright EUROCONTROL 2011

Other issues – data quality • ICAO, European ADQ Regulation (73/2010) • Data accuracy

Other issues – data quality • ICAO, European ADQ Regulation (73/2010) • Data accuracy • Data publication resolution • Data integrity • Problems • Understanding of requirements • Different interpretations by different people • Pre-imposition of some technical solutions • Such as use of CRC • Lack of direct support in GML • But maybe there was a good reason for that Copyright EUROCONTROL 2011

Data accuracy • AIXM • extension of GM_Point, GM_Curve, GM_Surface • also, use of

Data accuracy • AIXM • extension of GM_Point, GM_Curve, GM_Surface • also, use of Metadata for global values (data set, feature) Copyright EUROCONTROL 2011

Data publication resolution Copyright EUROCONTROL 2011

Data publication resolution Copyright EUROCONTROL 2011

Data publication resolution • AIXM business (data verification) rules, but: • GML lat /long

Data publication resolution • AIXM business (data verification) rules, but: • GML lat /long format is not DDMMSS. ssss! • No place in AIXM/GML for specifying the precision of an individual x or y position in gml: pos or gml: pos. List • Although explicitly required by ICAO • We can use metadata for global values - data set level or feature level • Need to treat lat/long position as character string, not as numbers! • Preserve trailing zeros • Pay attention to database conversions • In: 22. 2200 • Out: 23: 21999999 (not OK!) Copyright EUROCONTROL 2011

Data integrity • ICAO Annex 15, Point 3. 2. 12 • “Electronic aeronautical data

Data integrity • ICAO Annex 15, Point 3. 2. 12 • “Electronic aeronautical data sets while stored or in transit shall be protected by the inclusion in the data sets of a 32 -bit cyclic redundancy check (CRC) implemented by the application dealing with the data sets. This shall apply to the protection of all integrity levels of data sets as specified in 3. 2. 10 (critical, essential and routine data). ” • ADQ IR, Annex VI (1) • “All data transferred in an electronic format shall be protected against loss or alteration of data by the application of the CRC 32 Q algorithm as referred to in point 21 of Annex III. The cyclic redundancy check (hereinafter CRC) value shall be applied before the final verification of the data prior to storage or transfer. ” Copyright EUROCONTROL 2011

CRC - guidelines • operational principles • AIXM 5. 1 support • extension Copyright

CRC - guidelines • operational principles • AIXM 5. 1 support • extension Copyright EUROCONTROL 2011

The VERY IMPORTANT question 1. Do we need to allocate a CRC value when

The VERY IMPORTANT question 1. Do we need to allocate a CRC value when the data is originated and preserve (store/transmit) that same CRC value along the whole data chain, up to the end user? Or 2. Is it OK if CRC are used just for data in transit, meaning that they are calculated 'on the fly' when the data is packed for transmission, checked at the other end and then dropped? Copyright EUROCONTROL 2011

Option 1 - CRC “per data record” Data merging – re-calculate CRCV! Copyright EUROCONTROL

Option 1 - CRC “per data record” Data merging – re-calculate CRCV! Copyright EUROCONTROL 2011

AIXM 5. 1 – proposed encoding • AIXM Extensions • Each AIXM Feature •

AIXM 5. 1 – proposed encoding • AIXM Extensions • Each AIXM Feature • CRC “subjects” - x. Path expression • Would also work if option 2 is chosen • Just allow multiple <crc: item> elements! … <aixm: extension> <crc: items>//aixm: ARP//gml: pos | //aixm: ARP//aixm: elevation/@uom</crc: items> <crc: value>582 C 2727</crc: value> </aixm: extension> … Copyright EUROCONTROL 2011

AIXM 5. 1 – proposed solution • General principle • Use xpath to indicate

AIXM 5. 1 – proposed solution • General principle • Use xpath to indicate which elements are included • If complex elements are indicated, all their content is included • Several CRCV per feature • supports both Option 1 and Option 2 • CRC algorithm specification • Metadata? • Extension? • Any known ‘list of values’? Copyright EUROCONTROL 2011

& A Copyright EUROCONTROL 2011 Q

& A Copyright EUROCONTROL 2011 Q