public static ValidationResponse Validate(this BaseUblDocument doc, string xsdLocation)
		{
			var response = new ValidationResponse {IsValid = true, Errors = ""};

			var schemas = new XmlSchemaSet();
			using (var xr = new XmlTextReader(xsdLocation))
			{
				schemas.Add(XmlSchema.Read(xr, null));
			}

			var xmlReader = XmlReader.Create(new StringReader(doc.ToXml()));
			var xDoc = XDocument.Load(xmlReader);

			xDoc.Validate(schemas, (o, e) =>
			{
				response.Errors += e.Message + Environment.NewLine;
				response.IsValid = false;
			});

			return response;
		}
        public static ValidationResponse Validate(this BaseUblDocument doc, string xsdLocation)
        {
            var response = new ValidationResponse {
                IsValid = true, Errors = ""
            };

            var schemas = new XmlSchemaSet();

            using (var xr = new XmlTextReader(xsdLocation))
            {
                schemas.Add(XmlSchema.Read(xr, null));
            }

            var xmlReader = XmlReader.Create(new StringReader(doc.ToXml()));
            var xDoc      = XDocument.Load(xmlReader);

            xDoc.Validate(schemas, (o, e) =>
            {
                response.Errors += e.Message + Environment.NewLine;
                response.IsValid = false;
            });

            return(response);
        }