using FluentValidator.Interface;
using FluentValidator.Validator;
namespace FluentValidator.Interface
public interface IDocument
public IValidateSyntax Create();
public interface IValidateSyntax
public IValidateStructure CheckSyntax();
public interface IValidateStructure
public IValidated CheckStructure();
public interface IValidated
public IValidationResult CheckContent();
public IValidationResult TransformContent();
public interface IValidationResult
public string GetMessage();
namespace FluentValidator.Validator
public class ValidateXML : IValidateSyntax, IValidateStructure, IValidated, IValidationResult, IDocument
private StringBuilder message = new StringBuilder();
public IValidateSyntax Create()
return new ValidateXML();
public IValidateStructure CheckSyntax()
message.Append("Syntax validated\r\n");
public IValidated CheckStructure()
message.Append("Structure validated\r\n");
public IValidationResult CheckContent()
message.Append("Content validated\r\n");
public IValidationResult TransformContent()
message.Append("Stylesheet applied\r\n");
public string GetMessage()
return message.ToString();
namespace FluentValidator
static void Main(string[] args)
ValidateXML validate = new ValidateXML();
Console.WriteLine("Validate XML file:");
Console.WriteLine("------------------");
Console.WriteLine("Validate and transform XML file:");
Console.WriteLine("--------------------------------");