livr
Version:
Lightweight validator supporting Language Independent Validation Rules Specification
78 lines (73 loc) • 2.56 kB
JSON
{
"order_id": ["required", "positive_integer"],
"product1": ["required", { "variable_object": [
"product_type", {
"material": {
"product_type": "required",
"material_id": ["required", "positive_integer"],
"quantity": ["required", {"min_number": 1} ],
"warehouse_id": "positive_integer"
},
"service": {
"product_type": "required",
"name": ["required", {"max_length": 10} ]
}
}
]}],
"product2": ["required", { "variable_object": [
"product_type", {
"material": {
"product_type": "required",
"material_id": ["required", "positive_integer"],
"quantity": ["required", {"min_number": 1} ],
"warehouse_id": "positive_integer"
},
"service": {
"product_type": "required",
"name": ["required", {"max_length": 10} ]
}
}
]}],
"product3": ["required", { "variable_object": [
"product_type", {
"material": {
"product_type": "required",
"material_id": ["required", "positive_integer"],
"quantity": ["required", {"min_number": 1} ],
"warehouse_id": "positive_integer"
},
"service": {
"product_type": "required",
"name": ["required", {"max_length": 10} ]
}
}
]}],
"product4": ["required", { "variable_object": [
"product_type", {
"material": {
"product_type": "required",
"material_id": ["required", "positive_integer"],
"quantity": ["required", {"min_number": 1} ],
"warehouse_id": "positive_integer"
},
"service": {
"product_type": "required",
"name": ["required", {"max_length": 10} ]
}
}
]}],
"product5": ["required", { "variable_object": [
"product_type", {
"material": {
"product_type": "required",
"material_id": ["required", "positive_integer"],
"quantity": ["required", {"min_number": 1} ],
"warehouse_id": "positive_integer"
},
"service": {
"product_type": "required",
"name": ["required", {"max_length": 10} ]
}
}
]}]
}