RUNWAYS XML PROPERTIES

This page lists the different elements and attributes required to generate properly formed XML for runways. The information on this page is used along with the information for creating an Airport - since you can't have a runway without first having an airport - which can be found here:

The <Runway> element would go inside of the <Airport> element, and you can define multiple runways in a single airport, but you can't define an airport without at least one runway.

 

 

<Runway>

The <Runway> element is a modular element used to represent the variety of runways that might be encountered in the world. In its minimal configuration, it is necessary to have two <RunwayStart /> elements to be usable. Even though a runway is considered a single item, it has two distinct ends that are referenced as PRIMARY or SECONDARY in many of the sub-elements required to define the runway. The PRIMARY one is the one that is referenced by the attributes number and designator of the <Runway>. Note that you can use the "WATER" designator for the runway surface if the runway is a seaplane landing area.

 

This element is allowed to contain the following sub-elements, which must occur in the following order:

  1. <Markings />
  2. <Lights />,
  3. <OffsetThreshold />
  4. <BlastPad />
  5. <Overrun />
  6. <ApproachLights />
  7. <Vasi />
  8. <Ils>
  9. <IlsReference />
  10. <RunwayStart />
  11. <RunwayDeformation />
  12. <RunwayColoration />
  13. <Material />
  14. <Coloration />

 

A <Runway> has the following attributes :

 

Attribute Description Type Required
lat Latitude of the center point of the runway, in degrees between -90.0° and 90.0°. Yes
lon Longitude of the center point of the runway, in degrees between -180.0° and 180.0°. Float Yes
alt Altitude of the center point of the runway, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F". Float Yes
altType This is used to determine the referential for the alt field.

Enum:

  1. GEOID
  2. ELLIPSOID
No
surface Material to apply to the runway surface.

String:

  1. "CONCRETE"
  2. "GRASS"
  3. "WATER"
  4. "GRASS_BUMPY"
  5. "ASPHALT"
  6. "SHORT_GRASS"
  7. "LONG_GRASS"
  8. "HARD_TURF"
  9. "SNOW"
  10. "ICE"
  11. "URBAN"
  12. "FOREST"
  13. "DIRT"
  14. "CORAL"
  15. "GRAVEL"
  16. "OIL_TREATED"
  17. "STEEL_MATS"
  18. "BITUMINUS"
  19. "BRICK"
  20. "MACADAM"
  21. "PLANKS"
  22. "SAND"
  23. "SHALE"
  24. "TARMAC"
  25. "WRIGHT_FLYER_TRACK"
Yes
transparent Make the runway surface transparent (TRUE) or not (FALSE). Boolean No
heading The heading of the runway, relative to True North, from 0.0° to 360.0°.

Float

Yes
length Length of the runway, in meters, but you can suffix the value with "F" for feet, eg: "2000F". Float Yes
width Width of the runway, in meters, but you can suffix the value with "F" for feet, eg: "200F". Float No
number Number of the runway being added. Note that you do not suffix the designator onto this value, but instead define it separately in the designator attribute.

Integer:

  1. 1 - 36

 

or Enum:

  1. EAST
  2. NORTH
  3. NORTHEAST
  4. NORTHWEST
  5. SOUTH
  6. SOUTHEAST
  7. SOUTHWEST
  8. WEST
Yes
designator Designator of the runway being added.

Enum:

  1. NONE
  2. C
  3. CENTER
  4. L
  5. LEFT
  6. R
  7. RIGHT
  8. W
  9. WATER
  10. A
  11. B
  12. E
  13. N
  14. NE
  15. NW
  16. S
  17. SE
  18. SW
  19. W
No
primaryDesignator The primary designator for the runway.

Enum:

See the designator attribute, above.

No
secondaryDesignator The secondary designator for the runway.

Enum:

See the designator attribute, above.

No
patternAltitude Relative altitude to the runway at which traffic patterns are done, in meters. You may add the "F" suffix to convert the value to feet, for example: "1800.0F". Float No
falloff Defines the range affected by the flattening of the runway, higher value meaning an increase range. Float No
primaryTakeoff Defines if aircraft can takeoff from the PRIMARY end of the runway (TRUE) or not (FALSE). Boolean No
primaryLanding Defines if aircraft can land on the PRIMARY end of the runway (TRUE) or not (FALSE). Boolean No
secondaryTakeoff Defines if aircraft can takeoff from the SECONDARY end of the runway (TRUE) or not (FALSE). Boolean No
secondaryLanding Defines if aircraft can land on the SECONDARY end of the runway (TRUE) or not (FALSE). Boolean No
primaryPattern Side for traffic patterns taking of in the PRIMARY end of the runway. Can be either "LEFT" or "RIGHT".

Enum:

  1. LEFT
  2. RIGHT
No
secondaryPattern Side for traffic patterns taking of in the SECONDARY end of the runway. Can be either "LEFT" or "RIGHT".

Enum:

  1. LEFT
  2. RIGHT
No
primaryMarkingBias Offset from the end of the runway for the marking on the PRIMARY half, in meters. You can suffix the value with "F" for feet, eg: "350F". Float No
secondaryMarkingBias Offset from the end of the runway for the marking on the SECONDARY half, in meters. You can suffix the value with "F" for feet, eg: "350F". Float No
groundMerging Adds detail from the ground beneath the runway to the runway material (TRUE) or not (FALSE). Boolean No
excludeVegetationAround Exclude any vegitation from the surrounding area for the runway (TRUE) or not (FALSE). Boolean No

 

The rest of the elements listed below are all sub-elements of the main <Runway> element.

 

 

<Markings />

This element is used to add markings to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
alternateThreshold Set to TRUE to indicate international rather than US Threshold markings. Boolean No
alternateTouchdown Set to TRUE to indicate international rather than US Touchdown markings. Boolean No
alternateFixedDistance Set to TRUE to indicate international rather than US Fixed Distance markings. Boolean No
alternatePrecision Set to TRUE to indicate international rather than US Precision markings. Boolean No
leadingZeroIdent Set to TRUE to indicate runway numbers have a leading zero (for runway numbers 0 to 9). Boolean No
noThresholdEndArrows Set to TRUE to ignore Threshold End Arrows. Boolean No
edges Runway has edge lines or not. Boolean No
threshold Runway has threshold marks or not. Boolean No
fixedDistance Runway has fixed distance marks or not. Boolean No
dashes Runway has dashed line down center or not. Boolean No
ident Runway has number and designator or not. Boolean No
primaryClosed Primary end is closed with "X" or not. Boolean No
secondaryClosed Secondary is closed with "X" or not. Boolean No
touchdown Runway has touchdown marks or not. Boolean No
precision

Runway has precision markings or not.

NOTE: When this is set to "True", it will also activate the yellow light at the end of the runway. These lights will follow the FAA reglementation for their length.

Boolean No
edgePavement Runway has pavement past edge lines or not. Boolean No
singleEnd Runway is single-ended with no markings on secondary end or not. Boolean No
primaryStol Primary end STOL or not. Boolean No
secondaryStol Secondary end STOL or not. Boolean No

 

 

<Lights />

This element is used to add lights to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
edge Edge runway lights

Enum:

  1. NONE (default)
  2. LOW
  3. MEDIUM
  4. HIGH
No
center Center runway lights

Enum:

  1. NONE (default)
  2. LOW
  3. MEDIUM
  4. HIGH
No
centerRed Boolean indicating that the last part of the center line lights are RED/WHITE and then RED Boolean No

 

 

<OffsetThreshold />

This element is used to add an offset threshold to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway that the offset threshold applies to.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
length Length of pavement. This length is included in the main runway length and is in meters, but you can suffix the value with "F" for feet, eg: "2000F". Float Yes
width Width of pavement (if different from runway), in meters, but you can suffix the value with "F" for feet, eg: "200F". Float No
surface Surface type for the pavement.

String:

  1. "CONCRETE"
  2. "GRASS"
  3. "WATER"
  4. "GRASS_BUMPY"
  5. "ASPHALT"
  6. "SHORT_GRASS"
  7. "LONG_GRASS"
  8. "HARD_TURF"
  9. "SNOW"
  10. "ICE"
  11. "URBAN"
  12. "FOREST"
  13. "DIRT"
  14. "CORAL"
  15. "GRAVEL"
  16. "OIL_TREATED"
  17. "STEEL_MATS"
  18. "BITUMINUS"
  19. "BRICK"
  20. "MACADAM"
  21. "PLANKS"
  22. "SAND"
  23. "SHALE"
  24. "TARMAC"
  25. "WRIGHT_FLYER_TRACK"
No

 

 

<BlastPad />

This element is used to add a blast pad to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway that the blast pad applies to.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
length Length of blast pad. This value is added to main runway length and is in meters, but you can suffix the value with "F" for feet, eg: "200F". Float Yes
width Width of blast pad (if different from runway), in meters, but you can suffix the value with "F" for feet, eg: "200F". Float No
surface Surface of the blast pad if different from the runway.

String:

  1. "CONCRETE"
  2. "GRASS"
  3. "WATER"
  4. "GRASS_BUMPY"
  5. "ASPHALT"
  6. "SHORT_GRASS"
  7. "LONG_GRASS"
  8. "HARD_TURF"
  9. "SNOW"
  10. "ICE"
  11. "URBAN"
  12. "FOREST"
  13. "DIRT"
  14. "CORAL"
  15. "GRAVEL"
  16. "OIL_TREATED"
  17. "STEEL_MATS"
  18. "BITUMINUS"
  19. "BRICK"
  20. "MACADAM"
  21. "PLANKS"
  22. "SAND"
  23. "SHALE"
  24. "TARMAC"
  25. "WRIGHT_FLYER_TRACK"
No

 

 

<Overrun />

This element is used to add an overrun to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway that the overrun applies to.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
length Length of overrun. This value is added to main runway length and is in meters, but you can suffix the value with "F" for feet, eg: "200F". Float Yes
width Width of overrun (if different from runway), in meters, but you can suffix the value with "F" for feet, eg: "200F". Float No
surface Surface of the overrun if different from the runway.

String:

  1. "CONCRETE"
  2. "GRASS"
  3. "WATER"
  4. "GRASS_BUMPY"
  5. "ASPHALT"
  6. "SHORT_GRASS"
  7. "LONG_GRASS"
  8. "HARD_TURF"
  9. "SNOW"
  10. "ICE"
  11. "URBAN"
  12. "FOREST"
  13. "DIRT"
  14. "CORAL"
  15. "GRAVEL"
  16. "OIL_TREATED"
  17. "STEEL_MATS"
  18. "BITUMINUS"
  19. "BRICK"
  20. "MACADAM"
  21. "PLANKS"
  22. "SAND"
  23. "SHALE"
  24. "TARMAC"
  25. "WRIGHT_FLYER_TRACK"
No

 

 

<ApproachLights />

This element is used to add approach lights to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway that the lights are for.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
system Type of approach light system.

Enum:

  1. NONE
  2. ALSF1
  3. ALSF2
  4. CALVERT
  5. CALVERT2
  6. MALS
  7. MALSF
  8. MALSR
  9. ODALS
  10. RAIL
  11. SALS
  12. SALSF
  13. SSALF
  14. SSALR
  15. SSALS
No
reil Boolean indicating that the runway has runway end identifier lights. Boolean No
strobes Number of sequenced strobes. Positive Integer No
endLights Boolean indicating that runway has end lights. Boolean No
touchdown Boolean indicating that runway has touchdown lights. Boolean No
snapToGround Indicates if the lights should be snapped to fit the ground terrain or not. Boolean No
spacing The spacing between the lights, in meters. You can suffix the value with "F" for feet, eg: "10F". Float No
offset The offset for the lights, in meters. You can suffix the value with "F" for feet, eg: "20F". Float No
slope Angle in degrees for the light slope, between -360.0° and 360.0° Float No

 

 

<Vasi />

This element is used to add a VASI to an airport runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end End of runway that the VASI is for.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
type Type of VASI being used.

Enum:

  1. PAPI2 - 2 light PAPI
  2. PAPI4 - 4 light PAPI
  3. PVASI - Pulsating VASI
  4. TRICOLOR - Tri Color VASI
  5. TVASI - colored VASI in a shared-"T" shape
  6. VASI21 - 2 rows, 1 box/row
  7. VASI22 - 2 rows, 2 boxes/row
  8. VASI23 - 2 rows, 3 boxes/row
  9. VASI31 - 3 rows, 1 box/row
  10. VASI32 - 3 rows, 2 boxes/row
  11. VASI33 - 3 rows, 3 boxes/row (far row has only two boxes, 8 light system)
  12. BALL - presently remapped to PVASI
  13. APAP - panels
  14. PANELS - presently remapped to PAPI2
No
side Side of runway that the lights are on.

Enum:

  1. LEFT
  2. RIGHT
No
biasX

Distance from the runway center-line across the runway width to the reference point of the VASI, in meters.

You can suffix the value with "F" for feet, eg: "50F", if required.

Float No
biasZ

Distance along the runway from the runway center point to the VASI reference point, in meters.

You can suffix the value with "F" for feet, eg: "50F", if required.

Float No
spacing

Distance between light rows, in meters.

You can suffix the value with "F" for feet, eg: "10F".

Note that this is only applicable to the following types: VASI21, VASI31, VASI22, VASI32, VASI23, VASI33, and TVASI.

Float No
pitch Approach angle in degrees. A value from 0.0 to 10.0. Float No

 

 

<Ils>

This element is used to add one or more ILS beacons to an airport runway. This element may contain <GlideSlope />, <Dme /> and <VisualModel> sub-elements.

NOTE: Editing ILS data may prevent the simulation performing further automatic updates to the navigation data for the airport. Please see the following section for more information: Note On Navigation Data

The element may also have the following attributes:

 

Attribute Description Type Required
lat Latitude of the ILS beacon, in degrees between -90.0° and 90.0°.

Float

Yes
lon Longitude of the ILS beacon, in degrees between -180.0° and 180.0°. Float Yes
alt Altitude of the ILS beacon, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F".

Float

Yes
heading The heading of main ILS beam, from 0.0° to 360.0°, relative to magnetic north.

Float

Yes
frequency The ILS frequency in MHz, from 108.0 to 136.992. String Yes
end Which end of the runway the ILS beacon is for.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
range Range of ILS in meters or nautical miles. If no suffix is supplied, then the range will be set in meters, however using the "N" suffix converts the range into nautical miles, eg: "45N". If this attribute is not set, it will default to "27N". String No
magvar Magnetic variation at the ILS beacon to True North in degrees. Negative for values to the east and positive for values to the west, measured in degrees between -360.0° and 360.0°. Float Yes
ident ICAO code identity for this ILS beacon, with a maximum of five characters. String Yes
width Localizer beam width in degrees, from 0.0° to 360.0°. If the attribute is not supplied a default value of 5.0° will be used. Float No
name Friendly name for ILS beacon. String No
backCourse Boolean indicating that this ILS has a back course. Boolean No

 

<GlideSlope />

Set the glideslope sub-element for the <Ils> beacon. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
lat Latitude of the object, in degrees between -90.0° and 90.0°.

Float

Yes
lon Longitude of the object, in degrees between -180.0° and 180.0°. Float Yes
alt Altitude of the object, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F".

Float

Yes
pitch The pitch of glide slope, from 0.0° to 360.0°.

Float

Yes
range Range of glide slope in meters or nautical miles. If no suffix is supplied, then the range will be set in meters, however using the "N" suffix converts the range into nautical miles, eg: "45N". If this attribute is not set, it will default to "27N". String Yes

 

<Dme />

Set the DME values for the <Ils> beacon. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
lat Latitude of the object, in degrees between -90.0° and 90.0°. Float Yes
lon Longitude of the object, in degrees between -180.0° and 180.0°. Float Yes
alt Altitude of the object, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F". Float Yes

 

 

<IlsReference />

Reference one or more existing ILS using the ICAO code for the runway (you can call this element multiple times). Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway the ILS being defined goes at.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
ident

The ICAO code identity for the ILS (maximum five characters)

String Yes

 

 

 

<RunwayStart />

This element is used to add a start location for a runway, and you can call this element twice per runway if required (once to define the PRIMARY start position and once for the SECONDARY start position). Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
end Which end of the runway to flag as the starting point. When selecting the end on the world map for the start of the flight, the plane will be place at the (lat, lon) coordinates.

Enum:

  1. PRIMARY
  2. SECONDARY
Yes
lat Latitude of the starting point, in degrees between -90.0° and 90.0°. Float Yes
lon Longitude of the starting point, in degrees between -180.0° and 180.0°. Float Yes
alt Altitude of the starting point, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F". Float Yes
altType This is used to determine the referential for the alt field.

Enum:

  1. GEOID
  2. ELLIPSOID
No
heading Angle relative to true north towards which the plane will face when starting, measured in degrees between 0.0° and 360.0°. Float Yes

 

 

<RunwayDeformation />

This element is used to add some deformation to an airport runway, and you can call this sub-element multiple times to define different deformations. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
ratio Ratio along the runway at which the other attributes are applied, where 0.0 corresponds to the PRIMARY end and 1.0 to the SECONDARY end. Float Yes
alt

Altitude for the runway at the position corresponding to the ratio distance, in meters. You may add the "F" suffix to convert the value to feet, for example: "13.0F"

Float Yes
altType This is used to determine the referential for the alt field.

Enum:

  1. GEOID
  2. ELLIPSOID
No
controlPointBefore Determine the shape of the flattening before the point. 0.0 meaning that it should be flat, while positive (+) values indicate a bump and negative (-) values indicate a crease. Float No
controlPointAfter Determine the shape of the flattening after the point. 0.0 meaning that it should be flat, positive values (+) indicate a bump and negative (-) values indicate a crease Float No

 

Please note that this element can also be used as part of a general Scenery Object file as a sub element of the <Rectangle> element. In these cases it is used exactly the same way only to deform a rectangular surface area rather than a runway. You can see an example of it being used for this purpose here.

 

<RunwayColoration />

This element can be used to change the color blending for the runway. Note that this is a self-closing element and has the following attributes:

 

Attribute Description Type Required
red Red component of the coloration (between 0 and 255). Integer Yes
green Green component of the coloration (between 0 and 255). Integer Yes
blue Blue component of the coloration (between 0 and 255). Integer Yes
alpha Alpha component of the coloration (between 0 and 255). Integer No