- min: number
- max: number
- min: number
- max: number
- extensions: [".txt",".msh"]
- options: ["these","are","options"]
- required: list of fields required for this object to be valid
- optional: list of fields that are optional. Every optional field must have at least one rule with a default
- type-name: the object must have a type field with the same name
- min: minimal size
- max: maximal size