On the one hand, I agree with the principle of free speech. Plus, firms should not be able to take action on the way someone acts outside of work, unless they're wearing work uniform (if applicable) or are otherwise representing the company in any way (in which case take whatever action you want, bosses, I won't stop you).
However, on the other hand, if you are making nasty comments about somebody, regardless of whether or not they deserve it, then either do it to their face, or don't do it at all. And certainly don't do it in public where anyone can see. I was on a night out a while ago with some colleagues, and some of my bosses, and we were having a laugh and a joke, but if I (outside work) had called my boss a "dick" or "scumbag" then I would have fully deserved to be punished at work, or at least called out on it. And why shouldn't the same apply to Facebook? If I call my manager something bad over Facebook, which is worse because then anyone can see it, who are we to say that I don't deserve some form of punishment? The whole basis of a happy, healthy, productive working environment, revolves around people getting on, and if you don't get on with your boss then you should either try and build bridges, or find a new job. And if you're stupid enough to air your grievances in public, then you deserve everything you get.
If anyone has a valid, decent, sensible point about why this woman shouldn't have been disciplined, then please, quote me, and I would be more than happy to have a sensible debate about the matter...