name: MAIN
type: map
required: yes
mapping: &main-rule
"name":
type: str
"desc":
type: str
"classname":
type: str
"type":
type: str
#required: yes
enum:
- seq
#- sequence
#- list
- map
#- mapping
#- hash
- str
#- string
- int
#- integer
- float
- number
#- numeric
- bool
#- boolean
- text
- date
- time
- timestamp
#- object
- any
- scalar
#- collection
"required":
type: bool
"enum":
type: seq
sequence:
- type: scalar
unique: yes
"pattern":
type: str
"assert":
type: str
pattern: /\bval\b/
"range":
type: map
mapping:
"max":
type: scalar
"min":
type: scalar
"max-ex":
type: scalar
"min-ex":
type: scalar
"length":
type: map
mapping:
"max":
type: int
"min":
type: int
"max-ex":
type: int
"min-ex":
type: int
"ident":
type: bool
"unique":
type: bool
"sequence":
name: SEQUENCE
type: seq
sequence:
- type: map
mapping: *main-rule
name: MAIN
#required: yes
"mapping":
name: MAPPING
type: map
mapping:
=:
type: map
mapping: *main-rule
name: MAIN
#required: yes