blob: d2308b303cb5567a231cdfc766f5f06aab5e00f7 [file] [log] [blame]
-- basic.json --
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"title": "Main schema",
"description": "Specify who you are and all.",
"properties": {
"person": {
"description": "A person is a human being.",
"type": "object",
"required": [ "name" ],
"properties": {
"name": { "type": "string" },
"address": {
"description": "where does this person live?",
"type": "string",
"minLength": 4,
"maxLength": 20
},
"children": {
"description": "A very large comment that will be wrapped after a certain line length. Let's keep on going and see what happens.",
"type": "array",
"items": { "type": "string" },
"default": []
},
"home phone": {
"type": "string",
"deprecated": true
}
}
}
}
}
-- out.cue --
import "strings"
// Main schema
//
// Specify who you are and all.
@jsonschema(schema="http://json-schema.org/draft-07/schema#")
// A person is a human being.
person?: {
name: string
// where does this person live?
address?: strings.MinRunes(4) & strings.MaxRunes(20)
// A very large comment that will be wrapped after a certain line
// length. Let's keep on going and see what happens.
children?: [...string]
"home phone"?: string @deprecated()
...
}
...