Hi Krzysztof > However you have there > multiple ifs, thus finding the one related to clocks is not obvious now > and won't be anyhow easier later. What's more, clocks have constraints > in top-level, thus seeing clock-names without the constraints also > raises reviewers question. Someone might bring a new compatible with > another set of clocks (quite likely), thus else won't be valid anymore > and you will have to define constraints per *each* variant (each > if:then:). Do you mean you want to tell was keeping minItems/maxItems on top ?? I think I could understand what you want to tell if your indicated link was pointing to "clock-name" line, and/or if you indicated like "please keep minItems/maxItems on top for constraints" or something. But pointed link was to "allOf:" line with very unclear comment, and no response to my question mail. And your words of "constraints". I have been thoughting that you are indicating was "if-then-else" need to catch all "compatible" (but don't use "else if"). It is using "if-then-else", and "else" has minItems/maxItems, I think it is there is no difference. But if my above assumption was correct and Krzysztof agreed to it, I will post v4 patch which keeps min/maxItems on top. Otherwise I will do nothing to avoid endless pointless ping-pong, becuase it already got Reviewed-by. To avoid pointless ping-pong, I think v4 will be like this ---------- clock-names: description: List of necessary clock names. minItems: 1 maxItems: 31 ... - if: properties: compatible: contains: const: renesas,rcar_sound-gen4 then: properties: clock-names: maxItems: 3 ... else properties: clock-names: ... ------------- Thank you for your help !! Best regards --- Kuninori Morimoto