Python schema syntax
If you want to construct a schema from Python code instead of storing it as JSON or YAML, sureberus provides a more terse syntax for it.
Here's a standard dict-based schema, using an 80-character limit and strict newline/indent-based line wrapping:
myschema = {
'type': 'dict',
'anyof': [
{'fields': {'gradient': {'type': 'string'}}},
{
'fields': {
'image': {'type': 'string'},
'opacity': {'type': 'integer', 'default': 100},
}
},
],
}
And here is a sureberus.schema
-based schema, using the same line-wrapping
rules:
from sureberus.schema import Dict, String, Integer
myschema = Dict(
anyof=[
dict(gradient=String()),
dict(image=String(), opacity=Integer(default=100))
]
)