<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _is_valid_templates_dict(policy_templates_dict, schema=None):
 """ Is this a valid policy template dictionary :param dict policy_templates_dict: Data to be validated :param dict schema: Optional, dictionary containing JSON Schema representing policy template :return: True, if it is valid. :raises ValueError: If the template dictionary doesn't match up with the schema """


        if not schema:
            schema = PolicyTemplatesProcessor._read_schema()

        try:
            jsonschema.validate(policy_templates_dict, schema)
        except ValidationError as ex:
            # Stringifying the exception will give us useful error message
            raise ValueError(str(ex))

        return True