<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def create_search_index(self, index, schema=None, n_val=None, timeout=None):
 """ Create a Solr search index for Yokozuna. :param index: a name of a yz index :type index: string :param schema: XML of Solr schema :type schema: string :param n_val: N value of the write :type n_val: int :param timeout: optional timeout (in ms) :type timeout: integer, None :rtype boolean """

        if not self.yz_wm_index:
            raise NotImplementedError("Search 2.0 administration is not "
                                      "supported for this version")

        url = self.search_index_path(index)
        headers = {'Content-Type': 'application/json'}
        content_dict = dict()
        if schema:
            content_dict['schema'] = schema
        if n_val:
            content_dict['n_val'] = n_val
        if timeout:
            content_dict['timeout'] = timeout
        content = json.dumps(content_dict)

        # Run the request...
        status, _, _ = self._request('PUT', url, headers, content)

        if status != 204:
            raise RiakError('Error setting Search 2.0 index.')
        return True