def set_assessments(self, assessment_ids=None):
        """Sets the assessments.

        arg:    assessmentIds (osid.id.Id): the assessment Ids
        raise:  INVALID_ARGUMENT - assessmentIds is invalid
        raise:  NullArgument - assessmentIds is null
        raise:  NoAccess - metadata.is_read_only() is true
        compliance: mandatory - This method must be implemented.

        """
        if assessment_ids is None:
            raise NullArgument()
        metadata = Metadata(**settings.METADATA['assessment_ids'])
        if metadata.is_read_only():
            raise NoAccess()
        if self._is_valid_input(assessment_ids, metadata, array=True):
            for assessment_id in assessment_ids:
                self._my_map['assessmentIds'].append(str(assessment_id))
        else:
            raise InvalidArgument