Schema content expression question

I want my schema to allow horizontal_rules only between blocks and forbid horizontal_rule to be followed by another horizontal_rule. So I use a group block_divider which has only horizontal_rules belonging to it.

What is the best way to achieve this? I try to define my doc with the following content expression:

doc: {
  content: '(block+ block_divider | block+)+',

unfortunately this causes an exception:

Uncaught SyntaxError: Invalid content expression '(block+ block_divider | block+)+' at 0
    at Function.ContentExpr.parse

This isn’t something schema content expressions can currently express, so the only way to enforce it is to use a plugin with an appendTransaction function.