我试图根据架构的引用来验证XML文件。 (使用Delphi和MSXML2_TLB)的代码(相关部分)看起来是这样的:在delphi中使用msxml进行模式验证
procedure TfrmMain.ValidateXMLFile;
var
xml: IXMLDOMDocument2;
err: IXMLDOMParseError;
schemas: IXMLDOMSchemaCollection;
begin
xml := ComsDOMDocument.Create;
if xml.load('Data/file.xml') then
begin
schemas := xml.namespaces;
if schemas.length > 0 then
begin
xml.schemas := schemas;
err := xml.validate;
end;
end;
end;
这有缓存加载的结果(schemas.length> 0),但随后的下一个任务将引发异常:“只能使用XMLSchemaCache-schemacollections”。
我应该怎么办?
谢谢,米尔。
我不能得到这个工作。 TXMLDocument出现“Undeclared identifier”错误。我是否需要导入除msxml以外的其他内容才能使其工作? – Miel 2009-01-20 12:28:00
您还需要使用XMLDoc单元。 – 2009-01-26 08:27:31