public static Scorm2004.objectiveType Translate(Scorm1_2.objectiveType i)
        {
            if (i == null)
            {
                return(null);
            }

            Scorm2004.objectiveType ret = new Scorm2004.objectiveType();
            ret.completion_status = Enums.Translate(i.status);
            ret.description       = new Scorm2004.objectiveTypeDescription();
            ret.description.lang  = "en-US";
            ret.description.Value = "";
            ret.id = i.id;
            ret.progress_measure = null;
            ret.score            = Types.Translate(i.score);
            ret.success_status   = Enums.TranslateSuccess(i.status);
            return(ret);
        }
        public static Scorm1_2.objectiveType Translate(Scorm2004.objectiveType i)
        {
            if (i == null)
            {
                return(null);
            }

            Scorm1_2.objectiveType ret = new Scorm1_2.objectiveType();
            if (i.success_status == Scorm2004.successStatusType.passed || i.success_status == Scorm2004.successStatusType.failed)
            {
                ret.status = Enums.Translate(i.success_status);
            }
            else
            {
                ret.status = Enums.Translate(i.completion_status);
            }
            ret.id = i.id;

            ret.score = Types.Translate(i.score);

            return(ret);
        }
        public static Scorm2004.objectiveType Translate(Scorm1_2.objectiveType i)
        {
            if (i == null) return null;

            Scorm2004.objectiveType ret = new Scorm2004.objectiveType();
            ret.completion_status = Enums.Translate(i.status);
            ret.description = new Scorm2004.objectiveTypeDescription();
            ret.description.lang = "en-US";
            ret.description.Value = "";
            ret.id = i.id;
            ret.progress_measure = null;
            ret.score = Types.Translate(i.score);
            ret.success_status = Enums.TranslateSuccess(i.status);
            return ret;
        }