public override ErrorList Validate() { var result = new ErrorList(); result.AddRange(base.Validate()); if (Identifier != null) { result.AddRange(Identifier.Validate()); } if (Type != null) { result.AddRange(Type.Validate()); } if (Source != null) { Source.ForEach(elem => result.AddRange(elem.Validate())); } if (Subject != null) { result.AddRange(Subject.Validate()); } if (AccessionIdentifier != null) { AccessionIdentifier.ForEach(elem => result.AddRange(elem.Validate())); } if (ReceivedTimeElement != null) { result.AddRange(ReceivedTimeElement.Validate()); } if (Collection != null) { result.AddRange(Collection.Validate()); } if (Treatment != null) { Treatment.ForEach(elem => result.AddRange(elem.Validate())); } if (Container != null) { Container.ForEach(elem => result.AddRange(elem.Validate())); } return(result); }