def parse(self, schema, strict=True):
        """Update C{args} and C{rest}, parsing the raw request arguments.

        @param schema: The L{Schema} the parameters must be extracted with.
        @param strict: If C{True} an error is raised if parameters not included
            in the schema are found, otherwise the extra parameters will be
            saved in the C{rest} attribute.
        """
        self.args, self.rest = schema.extract(self._raw_params)
        if strict and self.rest:
            raise APIError(400, "UnknownParameter",
                           "The parameter %s is not "
                           "recognized" % self.rest.keys()[0])