Proposed Syntax
$_internalSchemaAllowedProperties has the following form:
{ $_internalSchemaAllowedProperties: {
properties: <list of strings>,
namePlaceholder: "i",
patternProperties: <regex-expression-list>,
otherwise: <schema>
}
}
<regex-expression-list> has the following form:
[
{regex: <regex>, expression: <MatchExpression>},
....
]
To constrain a subobject, wrap it in an $_internalSchemaObjectMatch.