Sprawdzanie poprawności plików XML względem XSD w FireMonkey

Opracowuję aplikację wieloplatformową (dla Windows, Mac itp.) Oraz dla maszyn 32-bitowych i 64-bitowych. Mam wiele plików XML, które muszę zweryfikować na ich podstawieXSD.

Czy można to zrobić w Delphi XE3?

Próbowałem sprawdzania poprawności DTD, ale zawsze otrzymuję błąd „DTD zabroniony”. Wypróbowałem również rozwiązania wymienione na wielu stronach internetowych, aby rozwiązać ten błąd, ale nie udało mi się.

Z góry dziękuję.

Poniżej kod, którego użyłem ...

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;

questionAnswers(1)

yourAnswerToTheQuestion