Your "Image JSON Schema" section isn't a JSON Schema - it's an example JSON plus a set of textual descriptions only readable by humans. Versioned machine-readable JSON Schema is the way to go for specs. This is a great guide to get started: http://spacetelescope.github.io/understanding-json-schema/
Yea, I absolutely want to make the spec a schema once we get further along. We would have done it from the beginning but it makes discussing the spec a lot harder since it raises the bar from "I understand JSON syntax" to "I understand JSON and JSON Schema". In any case I am a huge JSON schema fan, we use it in a number of APIs to make client bindings code generated. For example: https://github.com/coreos/fleet/blob/master/schema/v1.json
Update: Sorry, I thought you were taking a look at the appc spec, would appreciate your feedback on appc too.
His parent was shykes comment, so I think he was referring to the sample JSON document posted in the docker spec file, which docker calls a schema even though it's clearly not.
Hi. I'm the original author of the aforementioned docker image spec document.
Sorry for the confusion. I had not known that "JSON Schema" was a commonly used term like this.
Thank you for bringing this to my attention. I've just opened a pull request on the docker github repo to use a different word for the title of this section [1]. In the context of docker images, the term "Image JSON" is commonly used to mean the image metadata JSON file. This section was titled "Image JSON Schema" not to say that it is a "JSON Schema". Rather, I used the word "Schema" more generically here to mean that this section is an outline/description for the format of this file.
I also agree that this thread is not an appropriate place to discuss the docker image format. If you have any feedback or questions related to it, please open an issue on the github repository, ping me, and I'll gladly help.