public override ErrorList Validate() { var result = new ErrorList(); result.AddRange(base.Validate()); if (Request != null) { result.AddRange(Request.Validate()); } if (DateElement != null) { result.AddRange(DateElement.Validate()); } if (Who != null) { result.AddRange(Who.Validate()); } if (Authority != null) { result.AddRange(Authority.Validate()); } if (Cost != null) { result.AddRange(Cost.Validate()); } if (CodeElement != null) { result.AddRange(CodeElement.Validate()); } if (DescriptionElement != null) { result.AddRange(DescriptionElement.Validate()); } if (Fulfillment != null) { Fulfillment.ForEach(elem => result.AddRange(elem.Validate())); } return(result); }