As a general rule of thumb, I would moderate in keeping with how you want your website to be perceived. For example, if you have a business website, it may not be in your best interests to allow profanity or crude humor in your forums. Ultimately, you're responsible for what appears on your website, either by what you create or what you allow, and the perception of your site will reflect your policies.
Edit: In response to your added questions, again, it depends on what you're comfortable allowing. In some people's eyes, though not everyone's, what you allow on your site could be considered tacit approval. There are a few ways this could be handled:
- Promote an open atmosphere and
clearly state that the views
presented by users don't necessarily
represent those of the website. Only
curtail the most egregious
- Keep the site strictly on-topic only
and moderate any and everything
off-topic. You haven't mentioned
what your site is about, but
depending on the community, it might
be easiest to simply ban political
discussion. Part of this is in how
your site is organized. If you have
a forum, simply don't create a
political sub-forum. If you allow
social bookmarking with comments,
don't create a category for
politics. Look at how StackOverflow
is designed - How easy is it to have
a political discussion there?
- Somewhere in between. You allow open
discussion...to a point. You could
post this very same list of
questions as examples of discussions
or questions that go over the line.
However you go about doing it, I would make it clear from the beginning what is allowed and what isn't. It's important that you have something to point to for consistency's sake. The community will adjust itself around your rules.
You had asked in the comments if I was using this myself. Again, not on my site yet, but I do help moderate a popular webmaster forum. There is a politics section there and we generally moderate it according to the third method I mentioned. It does get heated sometimes, but for the most part, people behave themselves. We have had to ban a few people, though. Our policy is usually to give a warning first (unless it's really bad), then a temporary ban, then a permanent ban. There are a few members that like to push the boundaries, but we keep an eye on them and as long as they don't go too far, they are generally tolerated.
Honestly, spam is a far bigger problem than hate speech, and the forum I help moderate has very low tolerance for it. The serial spammers will be obvious and they get an instant ban. Some people get a warning if it looks like they unknowingly did something spammy (there are actually a lot of these). We edit a lot of posts as well. Again, it's important to clearly and prominently post your policies. If you don't moderate consistently in regards to spam, word will spread and you will get more of it, especially if you have high PageRank (Adobe in particular has been a glaring example of this). In addition to aggressively moderating spam, I'd recommend either not allowing links or no-following all user submitted links.
In the end, you'll have to make a decision for how you want your site to be perceived and how you want your community to function. It's important to keep in mind, however, that internet communities aren't democracies - they're governed by the rules set forth by the site owners, administrators, and moderators. Unlimited free speech is not a fundamental right on any website, so it's up to you if you want to allow it.