Validando archivos XML contra XSD en FireMonkey
Estoy desarrollando una aplicación multiplataforma (para Windows, Mac, etc.) y para máquinas de 32 y 64 bits. Tengo muchos archivos XML que necesito validar contra suXSD.
¿Hay alguna manera de hacer esto en Delphi XE3?
He intentado la validación de DTD pero siempre recibo un error "DTD prohibido". También he intentado las soluciones mencionadas en muchos sitios web para resolver este error, pero no he tenido éxito.
Gracias por adelantado.
A continuación se muestra el código que he usado ...
function TForm2.ValidateXML(const xmlFile : TFileName) : boolean;
var
xmlDoc: TXMLDocument;
begin
result := false;
xmlDoc := TXMLDocument.Create(nil) ;
try
xmlDoc.ParseOptions := [poResolveExternals, poValidateOnParse];
try
xmlDoc.LoadFromFile(xmlFile) ;
xmlDoc.Active := true; //this will validate
result := true;
except
on EX : EDOMParseError do
begin
ShowMessage('Invalid XML: ' + Ex.Message) ;
end;
end;
finally
xmlDoc := nil;
end;
end;