@abc.abstractmethod<EOL><INDENT>def get_commitments_by_genus_type_for_event(self, event_id, commitment_genus_type):<DEDENT>
return<EOL>
Gets the commitments for the given event and commitment genus type including any genus types derived from the
        given genus type.

        :param event_id: ``Id`` of the ``Event``
        :type event_id: ``osid.id.Id``
        :param commitment_genus_type: commitment genus type
        :type commitment_genus_type: ``osid.type.Type``
        :return: list of commitments
        :rtype: ``osid.calendaring.CommitmentList``
        :raise: ``NullArgument`` -- ``event_id`` or ``commitment_genus_type`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``PermissionDenied`` -- authorization failure

        *compliance: mandatory -- This method is must be implemented.*