Hello all!
I'm trying to validate an XML file against a DTD using Microsoft DOM in C++.
I do something like:
IXMLDOMDocumentPtr pDTDDoc = NULL;
pDTDDoc.CreateInstance(CLSID_DOMDocument);
pDoc->load("D:\A.xml"
;
// Add the DTD header
_bstr_t TheXmlString = "<!DOCTYPE RuleSet SYSTEM 'D:\\Dtd\\RuleSet.dtd'>"
+ pDoc->GetfirstChild()->Getxml();
// Validate
pDTDLoadedDoc->PutresolveExternals(true);
pDTDLoadedDoc->PutvalidateOnParse(true);
pDTDLoadedDoc->loadXML(TheXmlString);
_bstr_t Error = pDTDLoadedDoc->GetparseError()->GeterrorCode();
And the error is allways 0, even when the XML does not follows the DTD rules.
Someone knows why and what to do?
Thanks
I'm trying to validate an XML file against a DTD using Microsoft DOM in C++.
I do something like:
IXMLDOMDocumentPtr pDTDDoc = NULL;
pDTDDoc.CreateInstance(CLSID_DOMDocument);
pDoc->load("D:\A.xml"
// Add the DTD header
_bstr_t TheXmlString = "<!DOCTYPE RuleSet SYSTEM 'D:\\Dtd\\RuleSet.dtd'>"
+ pDoc->GetfirstChild()->Getxml();
// Validate
pDTDLoadedDoc->PutresolveExternals(true);
pDTDLoadedDoc->PutvalidateOnParse(true);
pDTDLoadedDoc->loadXML(TheXmlString);
_bstr_t Error = pDTDLoadedDoc->GetparseError()->GeterrorCode();
And the error is allways 0, even when the XML does not follows the DTD rules.
Someone knows why and what to do?
Thanks