def METHOD_NAME(self, product_key, product_version):
    # create a model with every element.
    # verify that there are no unknown types or structures.
    try:
        if not os.path.exists(self._model_dir):
            os.makedirs(self._model_dir)
        file_path = self._model_dir + "/" + product_key + "-" + product_version + ".yaml"
        self.out_file = open(file_path, "w")
        this_crd_helper = model_crd_helper.get_product_helper(product_key, product_version)
        self._write_line(this_crd_helper.get_model_section() + ":  # " + product_version)
        crd_folders = this_crd_helper.get_crd_folders()
        for crd_folder in crd_folders:
            indent = "  "
            if crd_folder.has_model_key():
                self._write_line(indent + crd_folder.get_model_key() + ":")
                indent = indent + "  "
            self._write_folder(crd_folder.get_schema(), crd_folder.is_array(), "", indent)
        self.out_file.close()
    except Exception, e:
        self.fail(str_helper.to_string(e))