{ "string1": "STRING1",
  "string2": "@string2",
  "number1": 42,
  "number2": {"@min":  150, "@max":  300, "@positive": 0.5},
  "number3": {"@min": -300, "@max": -100},
  "number4": {"@min": -300, "@max": -100, "@positive": 1.0},
  "int1":    {"@min":  150, "@max":  300, "@integer": true},
  "int2":    {"@min": -300, "@max": -100, "@integer": true},
  "some":    ["@some", "a", 2, [], {"d": 4}],
  "object1": {"a": "@a", "b": {"bb": "@b"}},
  "array1":  [{"a": "@a"}, {"a": "@a", "b": {"bb": "@b"}}]
}