Why are professional athletes' salaries made public?

It seems to me that there are various reasons why they wouldn’t be. From an owner’s perspective, keeping salaries “secret” can only help the ‘me-too’-ism when athletes negotiate. From an athlete’s perspective, knowing the rates of your fellow employees can be distracting and detrimental (I know I hate to learn what my colleagues earn).

I can understand why agents want it so, and maybe the union. But why is it we know every athlete’s salary?

First, we don’t know what the contract really reads nor all the bonuses or other items.

Second, from a player’s perspective, if the player is a “high quality” player that commands high money, he can always use it as bargaining leverage.

XicanoreX

I can only speak for baseball, but in baseball the salary arbitration process requires that every player and his agent, every owner and his negotiators, and every arbitrator have access to accurate data about what every other player is earning. Given that requirement, I imagine trying to keep the data secret from the public would be an exercise in futility.