BGL structure documentation and analysis
FSX BGL file structure - Document created and published by Winfried Orthmann (C)

FS9 BGL file structure by the same author

BGLviewer - A .NET application for dumping the content of any BGL file (interpreted or raw hex display). A "must" have
for all developpers. Written and maintained by Patrick Germain

BGL File format - Wiki page on FSDeveloper site written and maintained by Patrick Germain
BGL decompilers
Downloads
Note that reverse engineering may violate copyright and break EULA. So legality should always be considered and usage
has to be be limited to personal projects and/or analysis. See a discussion on the subject here
Decompilers often provide small differences in some XML section outputs.

BGLAnalyze9 and BGLAnalyzeX by Winfried Orthmann (AVSIM library link, 2007)

BGLXML by Alessandro G. Antonini (v2.10, 2007)

BGL2XML by Jon Masterson (scruffyduck), the creator of Airport Design Editor - the newest and, on many aspects, the
more complete decompiler (2015, still updated)
BGL compilers
FS9 compiler
FSX compiler
P3D compiler (SDK link)

FSX default scenery objects

BGL Facility Scanner v2.12
[An application that will provide details of all VOR, NDB, ILS, waypoint, airport records at specific locations using different search criteria. Works with FS9/X/P3Dv1-v5] 
BGL structure and analysis