JSON is generally poorly suited for markup. Unless the structure of the documents is extremely simple it will be difficult for humans to read the source and make much sense from it. To the best of my knowledge, JSON is used in some text-oriented systems but only to save an internal representation that the application makes use of, not for interchange purposes.
For document-oriented content, XML will work much better. You can interleave content and structure more readably. Don't bother with anything like XML Schema, it's absolutely useless for documents, but if you can reuse an existing language it's even better as your users might have a chance to reuse tooling they may already have.
Finally, have you considered HTML? It has a lot of tooling (you're likely reading this in one) and a lot of users. It has become pretty good at capturing the core structure of documents, and has the extension points that make it possibly to overlay richer semantics onto a document. I would certainly recommend looking at it twice, it's usually a very good choice.
This post has been migrated from the Open Science private beta at StackExchange (A51.SE)