Files
loot.github.io/masterlist.schema.yaml
T

83 lines
2.0 KiB
YAML

###
# Kwalify YAML schema definition for LOOT masterlists.
#
# LOOT masterlist YAML reference:
# - https://loot.github.io/docs/dev/LOOT Metadata Syntax.html
#
# Kwalify schema definition reference:
# - http://www.kuwata-lab.com/kwalify/ruby/users-guide.html
###
type: map
mapping:
'common':
# This is not strictly part of the spec., see:
# https://github.com/loot/loot.github.io/wiki/Masterlist-Editing#common-metadata
type: seq
sequence:
- type: any
'globals':
&msg
type: seq
sequence:
- type: map
mapping:
'type':
type: str
enum: [ 'say', 'warn', 'error' ]
required: yes
'content':
type: any
required: yes
'condition':
type: str
'plugins':
type: seq
sequence:
- type: map
mapping:
'name':
type: str
unique: yes
required: yes
'enabled':
type: bool
'priority':
type: int
range: { min: -2000000000, max: 2000000000 }
'after':
&sequenceOfAny
type: seq
sequence:
- type: any
'req':
*sequenceOfAny
'inc':
*sequenceOfAny
'msg':
*msg
'tag':
*sequenceOfAny
'url':
*sequenceOfAny
'dirty':
type: seq
sequence:
- type: map
mapping:
'crc':
type: int
range: { min: 0, max: 4294967295 } # 0x00000000 to 0xFFFFFFFF
required: yes
'util':
type: str
required: yes
'itm':
&dirtyValue
type: int
assert: '0 <= val'
'udr':
*dirtyValue
'nav':
*dirtyValue