Add IXMLDOMParseError.

diff --git a/include/xmldom.idl b/include/xmldom.idl
index 86dcd1b..e8ca234 100644
--- a/include/xmldom.idl
+++ b/include/xmldom.idl
@@ -613,6 +613,41 @@
     HRESULT notations( [out,retval] IXMLDOMNamedNodeMap **notationMap );
 };
 
+[
+local,
+object,
+odl,
+dual,
+oleautomation,
+/*nonextensible,*/
+helpstring("structure for reporting parse errors"),
+pointer_default(unique),
+uuid (3efaa426-272f-11d2-836f-0000f87a7782)
+]
+interface IXMLDOMParseError : IDispatch
+{
+    [propget, id(DISPID_VALUE)]
+    HRESULT errorCode([retval, out] long *errCode);
+
+    [propget, id(DISPID_DOM_ERROR_URL)]
+    HRESULT url([retval, out] BSTR *p);
+
+    [propget, id(DISPID_DOM_ERROR_REASON)]
+    HRESULT reason([retval, out] BSTR *p);
+
+    [propget, id(DISPID_DOM_ERROR_SRCTEXT)]
+    HRESULT srcText([retval, out] BSTR *p);
+
+    [propget, id(DISPID_DOM_ERROR_LINE)]
+    HRESULT line([retval, out] long *lineNo);
+
+    [propget, id(DISPID_DOM_ERROR_LINEPOS)]
+    HRESULT linepos([retval, out] long * linePos);
+
+    [propget, id(DISPID_DOM_ERROR_FILEPOS)]
+    HRESULT filepos([retval, out] long * filePos);
+};
+
 
 [
 uuid(2933bf90-7b36-11d2-b20e-00c04f983e60)
diff --git a/include/xmldomdid.h b/include/xmldomdid.h
index 7bd4b1a..ef53a24 100644
--- a/include/xmldomdid.h
+++ b/include/xmldomdid.h
@@ -171,4 +171,16 @@
 #define DISPID_DOM_DOCUMENTTYPE_NOTATIONS 131
 #define DISPID_DOM_DOCUMENTTYPE__TOP 132
 
+
+#define  DISPID_DOM_ERROR              0x000000b0
+#define  DISPID_DOM_ERROR_ERRORCODE    0x000000b1
+#define  DISPID_DOM_ERROR_URL          0x000000b2
+#define  DISPID_DOM_ERROR_REASON       0x000000b3
+#define  DISPID_DOM_ERROR_SRCTEXT      0x000000b4
+#define  DISPID_DOM_ERROR_LINE         0x000000b5
+#define  DISPID_DOM_ERROR_LINEPOS      0x000000b6
+#define  DISPID_DOM_ERROR_FILEPOS      0x000000b7
+#define  DISPID_DOM_ERROR__TOP         0x000000b8
+
+
 #endif /* __XMLDOMDID_H__ */