Gets the objective form for updating an existing objective.
        A new objective form should be requested for each update
        transaction.
        arg:    objectiveId (osid.id.Id): the Id of the Objective
        return: (osid.learning.ObjectiveForm) - the objective form
        raise:  NotFound - objectiveId is not found
        raise:  NullArgument - objectiveId is null
        raise:  OperationFailed - unable to complete request
        raise:  PermissionDenied - authorization failure
        compliance: mandatory - This method must be implemented.

def get_objective_form_for_update(self, objective_id=None):
        """Gets the objective form for updating an existing objective.
        A new objective form should be requested for each update
        transaction.
        arg:    objectiveId (osid.id.Id): the Id of the Objective
        return: (osid.learning.ObjectiveForm) - the objective form
        raise:  NotFound - objectiveId is not found
        raise:  NullArgument - objectiveId is null
        raise:  OperationFailed - unable to complete request
        raise:  PermissionDenied - authorization failure
        compliance: mandatory - This method must be implemented.

        """
        if objective_id is None:
            raise NullArgument()
        try:
            url_path = construct_url('objectives',
                                     bank_id=self._catalog_idstr,
                                     obj_id=objective_id)
            objective = objects.Objective(self._get_request(url_path))
        except Exception:
            raise
        objective_form = objects.ObjectiveForm(objective._my_map)
        self._forms[objective_form.get_id().get_identifier()] = not UPDATED
        return objective_form