{ "allOf": [ {"$ref": "file:enchantable.json#"}, { "dependencies": { "speed": {"properties": {"type": {"not": {"const": "Shield"}}}} }, "properties": { "acBonus": {"type": "integer", "minimum": 0}, "type": { "type": "string", "enum": ["Light", "Medium", "Heavy", "Shield"] }, "maxDex": {"type": "integer", "minimum": 0}, "checkPenalty": {"type": "integer", "maximum": 0}, "spellFailure": {"type": "integer", "minimum": 0, "maximum": 100}, "speed": {"type": "integer"} }, "required": [ "bonus", "type", "checkPenalty", "spellFailure" ], "type": "object" } ] }