Orderly is a textual format for describing JSON. Orderly can be compiled into JSONSchema. It is designed to be easy to read and write.
A little bit of orderly...
object {
  string name;
  string description?;
  string homepage /^http:/;
  integer {1500,3000} invented;
}*;

...describes a little bit of JSON...
{
  "name": "orderly",
  "description": "A schema language for JSON",
  "homepage": "http://orderly-json.org",
  "invented": 2009
}  

...and compiles into JSONSchema.
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "description": {
      "type": "string",
      "optional": true
    },
    "homepage": {
      "type": "string",
      "pattern": "^http:"
    },
    "invented": {
      "type": "integer",
      "minimum": 1500,
      "maximum": 3000
    }
  },
  "additionalProperties": true
}


Lloyd Hilaiel
Creative Commons License