Agreed. When I have tried to work with it [1], the format has been anything but open. It's been a mixture of other people's libraries and reverse-engineering to make Garmin files work for my needs.
There is an SDK with a license agreement that is probably more descriptive, but the license terms are not what one expects from measurement instrumentation.
[1] https://news.ycombinator.com/item?id=15825838