So far my use of markup languages and/or data serialization formats have been limited to using json and a little bit of XML to store data in my early attempts at leaning video game development. Recently though I have been trying writing different types of applications, and in the cases where I need to store data I have been mainly using the json format because that is what I am most comfortable using. I am starting to feel that I have been blindly throwing json at my problems, which I doubt is any better than blindly throwing XML at my problems.
Mainly my question is what things do you have to consider when choosing the right language or format and what are some common abuses or misuse of these tools that I should watch out for?