Thema: Delphi Validierung mit MSXML

Einzelnen Beitrag anzeigen

Benutzerbild von weltaran
weltaran

Registriert seit: 12. Sep 2003
Ort: Offenburg
78 Beiträge
 
Delphi 5 Enterprise
 
#1

Validierung mit MSXML

  Alt 26. Apr 2005, 10:22
Hi Leute!

Folgendes xml-File (test.xml) wird von MSXML beanstandet:

XML-Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!DOCTYPE tsq [
<!ELEMENT tsq (abc)>
<!ELEMENT abc EMPTY>
]>
<tsq>
   <abc/>
</tsq>

Fehlertext:
Validate failed because the root element had no associated DTD/schema.

Aber: Sämtliche online-Validatoren finden das Dokument ganz OK!

Quelltext:
Delphi-Quellcode:

procedure TForm1.Button1Click(Sender: TObject);
var
   i, j: integer;
   error: IXMLDOMParseError;

begin
     myDoc := CoDOMDocument40.Create;
     myDoc.setProperty('NewParser', true);
     myDoc.async:= false;

     if not FileExists('test.xml') then
     begin
          myDoc.loadXML('<?xml version="1.0"?><tsq></tsq>');
     end else
         myDoc.load('test.xml');

     if myDoc.parseError.errorCode <> 0 then
     begin
          MessageDlg('Die XML-Datei ist nicht korrekt!' + #13#10
                          +'Das Programm wird nun beendet.',
                          mtError, [mbOK], 0);
          Application.Terminate;
     end;

     error:= myDoc.validate;

     Edit1.Text:= error.Get_reason;

end;

Idee?
  Mit Zitat antworten Zitat