public override ErrorList Validate()
        {
            var result = new ErrorList();

            result.AddRange(base.Validate());

            if (Identifier != null)
            {
                result.AddRange(Identifier.Validate());
            }
            if (Criticality_Element != null)
            {
                result.AddRange(Criticality_Element.Validate());
            }
            if (SensitivityType_Element != null)
            {
                result.AddRange(SensitivityType_Element.Validate());
            }
            if (RecordedDateElement != null)
            {
                result.AddRange(RecordedDateElement.Validate());
            }
            if (StatusElement != null)
            {
                result.AddRange(StatusElement.Validate());
            }
            if (Subject != null)
            {
                result.AddRange(Subject.Validate());
            }
            if (Recorder != null)
            {
                result.AddRange(Recorder.Validate());
            }
            if (Substance != null)
            {
                result.AddRange(Substance.Validate());
            }
            if (Reaction != null)
            {
                Reaction.ForEach(elem => result.AddRange(elem.Validate()));
            }
            if (SensitivityTest != null)
            {
                SensitivityTest.ForEach(elem => result.AddRange(elem.Validate()));
            }

            return(result);
        }
        public override ErrorList Validate()
        {
            var result = new ErrorList();

            result.AddRange(base.Validate());

            if (DateElement != null)
            {
                result.AddRange(DateElement.Validate());
            }
            if (VaccineType != null)
            {
                result.AddRange(VaccineType.Validate());
            }
            if (Subject != null)
            {
                result.AddRange(Subject.Validate());
            }
            if (RefusedIndicatorElement != null)
            {
                result.AddRange(RefusedIndicatorElement.Validate());
            }
            if (ReportedElement != null)
            {
                result.AddRange(ReportedElement.Validate());
            }
            if (Performer != null)
            {
                result.AddRange(Performer.Validate());
            }
            if (Requester != null)
            {
                result.AddRange(Requester.Validate());
            }
            if (Manufacturer != null)
            {
                result.AddRange(Manufacturer.Validate());
            }
            if (Location != null)
            {
                result.AddRange(Location.Validate());
            }
            if (LotNumberElement != null)
            {
                result.AddRange(LotNumberElement.Validate());
            }
            if (ExpirationDateElement != null)
            {
                result.AddRange(ExpirationDateElement.Validate());
            }
            if (Site != null)
            {
                result.AddRange(Site.Validate());
            }
            if (Route != null)
            {
                result.AddRange(Route.Validate());
            }
            if (DoseQuantity != null)
            {
                result.AddRange(DoseQuantity.Validate());
            }
            if (Explanation != null)
            {
                result.AddRange(Explanation.Validate());
            }
            if (Reaction != null)
            {
                Reaction.ForEach(elem => result.AddRange(elem.Validate()));
            }
            if (VaccinationProtocol != null)
            {
                result.AddRange(VaccinationProtocol.Validate());
            }

            return(result);
        }