Tagging conventions change with the application, so the best guide you have is what's already been done on that particular site. That being said, here are some additional guidelines:
Tagging works best when the tags are as simple as they can possibly be without being too vague. Start with the simplest language and then increase detail; shorter words generally make better tags. When choosing a tag, imagine yourself as a user who's only access to the content is that single tag. What do you expect to see when you click that tag?
For example: You want to find a picture of a yorkshire terrier. What tag would you click? The first one would probably be "yorkshire+terrier", if it's there. If not, you look for the next closest tag that applies with decreasing levels of detail. Maybe "toy+dogs" or "lap+dogs", followed by "terrier" and finally "dog" would be your last resort. All of these tags should be included.