--- /dev/null
+/*
+ * Copyright (C) 2005 Vijay Kiran Kamuju
+ * Copyright (C) 2008 Alistair Leslie-Hughes
+ * Copyright (C) 2010 Nikolay Sivov for CodeWeavers
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include <msxml2did.h>
+#include <idispids.h>
+
+import "unknwn.idl";
+import "objidl.idl";
+import "oaidl.idl";
+
+[
+ uuid(f5078f18-c551-11d3-89b9-0000f81fe221),
+ version(2.6),
+ helpstring("Microsoft XML, v2.6")
+]
+library MSXML2
+{
+
+importlib("stdole2.tlb");
+
+interface IXMLDOMImplementation;
+interface IXMLDOMNode;
+interface IXMLDOMDocumentFragment;
+interface IXMLDOMDocument;
+interface IXMLDOMSchemaCollection;
+interface IXMLDOMDocument2;
+interface IXMLDOMNodeList;
+interface IXMLDOMNamedNodeMap;
+interface IXMLDOMCharacterData;
+interface IXMLDOMAttribute;
+interface IXMLDOMElement;
+interface IXMLDOMText;
+interface IXMLDOMComment;
+interface IXMLDOMProcessingInstruction;
+interface IXMLDOMCDATASection;
+interface IXMLDOMDocumentType;
+interface IXMLDOMNotation;
+interface IXMLDOMEntity;
+interface IXMLDOMEntityReference;
+interface IXMLDOMParseError;
+interface IXTLRuntime;
+interface IXSLTemplate;
+interface IXSLProcessor;
+
+typedef enum tagDOMNodeType
+{
+ NODE_INVALID = 0,
+ NODE_ELEMENT = 1,
+ NODE_ATTRIBUTE = 2,
+ NODE_TEXT = 3,
+ NODE_CDATA_SECTION = 4,
+ NODE_ENTITY_REFERENCE = 5,
+ NODE_ENTITY = 6,
+ NODE_PROCESSING_INSTRUCTION = 7,
+ NODE_COMMENT = 8,
+ NODE_DOCUMENT = 9,
+ NODE_DOCUMENT_TYPE = 10,
+ NODE_DOCUMENT_FRAGMENT = 11,
+ NODE_NOTATION = 12
+} DOMNodeType;
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF80-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMNode : IDispatch
+{
+ [propget, id(DISPID_DOM_NODE_NODENAME)]
+ HRESULT nodeName([retval, out] BSTR *p);
+
+ [propget, id(DISPID_DOM_NODE_NODEVALUE)]
+ HRESULT nodeValue([retval, out] VARIANT *var1);
+
+ [propput, id(DISPID_DOM_NODE_NODEVALUE)]
+ HRESULT nodeValue([in] VARIANT var1);
+
+ [propget, id(DISPID_DOM_NODE_NODETYPE)]
+ HRESULT nodeType([retval, out] DOMNodeType *domNodeType);
+
+ [propget, id(DISPID_DOM_NODE_PARENTNODE)]
+ HRESULT parentNode([retval, out] IXMLDOMNode **parent);
+
+ [propget, id(DISPID_DOM_NODE_CHILDNODES)]
+ HRESULT childNodes([retval, out] IXMLDOMNodeList **outList);
+
+ [propget, id(DISPID_DOM_NODE_FIRSTCHILD)]
+ HRESULT firstChild([retval, out] IXMLDOMNode **domNode);
+
+ [propget, id(DISPID_DOM_NODE_LASTCHILD)]
+ HRESULT lastChild([retval, out] IXMLDOMNode **domNode);
+
+ [propget, id(DISPID_DOM_NODE_PREVIOUSSIBLING)]
+ HRESULT previousSibling([retval, out] IXMLDOMNode **domNode);
+
+ [propget, id(DISPID_DOM_NODE_NEXTSIBLING)]
+ HRESULT nextSibling([retval, out] IXMLDOMNode **domNode);
+
+ [propget, id(DISPID_DOM_NODE_ATTRIBUTES)]
+ HRESULT attributes([retval, out] IXMLDOMNamedNodeMap **attributeMap);
+
+ [id(DISPID_DOM_NODE_INSERTBEFORE)]
+ HRESULT insertBefore(
+ [in] IXMLDOMNode *newNode,
+ [in] VARIANT var1,
+ [retval, out] IXMLDOMNode **outOldNode);
+
+ [id(DISPID_DOM_NODE_REPLACECHILD)]
+ HRESULT replaceChild(
+ [in] IXMLDOMNode *newNode,
+ [in] IXMLDOMNode *oldNode,
+ [retval, out] IXMLDOMNode **outOldNode);
+
+ [id(DISPID_DOM_NODE_REMOVECHILD)]
+ HRESULT removeChild(
+ [in] IXMLDOMNode *domNode,
+ [retval, out] IXMLDOMNode **oldNode);
+
+ [id(DISPID_DOM_NODE_APPENDCHILD)]
+ HRESULT appendChild(
+ [in] IXMLDOMNode *newNode,
+ [retval, out] IXMLDOMNode **outNewNode);
+
+ [id(DISPID_DOM_NODE_HASCHILDNODES)]
+ HRESULT hasChildNodes(
+ [retval, out] VARIANT_BOOL *pbool);
+
+ [propget, id(DISPID_DOM_NODE_OWNERDOC)]
+ HRESULT ownerDocument([retval, out] IXMLDOMDocument **domDocument);
+
+ [id(DISPID_DOM_NODE_CLONENODE)]
+ HRESULT cloneNode(
+ [in] VARIANT_BOOL pbool,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [propget, id(DISPID_XMLDOM_NODE_STRINGTYPE)]
+ HRESULT nodeTypeString([retval, out] BSTR *p);
+
+ [propget, id(DISPID_XMLDOM_NODE_TEXT)]
+ HRESULT text([retval, out] BSTR *p);
+
+ [propput, id(DISPID_XMLDOM_NODE_TEXT)]
+ HRESULT text([in] BSTR p);
+
+ [propget, id(DISPID_XMLDOM_NODE_SPECIFIED)]
+ HRESULT specified([retval, out] VARIANT_BOOL *pbool);
+
+ [propget, id(DISPID_XMLDOM_NODE_DEFINITION)]
+ HRESULT definition([retval,out] IXMLDOMNode **domNode);
+
+ [propget, id(DISPID_XMLDOM_NODE_NODETYPEDVALUE)]
+ HRESULT nodeTypedValue([retval, out] VARIANT *var1);
+
+ [propput, id(DISPID_XMLDOM_NODE_NODETYPEDVALUE)]
+ HRESULT nodeTypedValue([in] VARIANT var1);
+
+ [propget, id(DISPID_XMLDOM_NODE_DATATYPE)]
+ HRESULT dataType([retval, out] VARIANT *var1);
+
+ [propput, id(DISPID_XMLDOM_NODE_DATATYPE)]
+ HRESULT dataType([in] BSTR p);
+
+ [propget, id(DISPID_XMLDOM_NODE_XML)]
+ HRESULT xml([retval, out] BSTR *p);
+
+ [id(DISPID_XMLDOM_NODE_TRANSFORMNODE)]
+ HRESULT transformNode(
+ [in] IXMLDOMNode *domNode,
+ [retval, out] BSTR *p);
+
+ [id(DISPID_XMLDOM_NODE_SELECTNODES)]
+ HRESULT selectNodes(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNodeList **outList);
+
+ [id(DISPID_XMLDOM_NODE_SELECTSINGLENODE)]
+ HRESULT selectSingleNode(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [propget,id(DISPID_XMLDOM_NODE_PARSED)]
+ HRESULT parsed([retval, out] VARIANT_BOOL *pbool);
+
+ [propget, id(DISPID_XMLDOM_NODE_NAMESPACE)]
+ HRESULT namespaceURI([retval, out] BSTR *p);
+
+ [propget, id(DISPID_XMLDOM_NODE_PREFIX)]
+ HRESULT prefix([retval, out] BSTR *p);
+
+ [propget, id(DISPID_XMLDOM_NODE_BASENAME)]
+ HRESULT baseName([retval, out] BSTR *p);
+
+ [id(DISPID_XMLDOM_NODE_TRANSFORMNODETOOBJECT)]
+ HRESULT transformNodeToObject(
+ [in] IXMLDOMNode *domNode,
+ [in] VARIANT var1);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF81-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMDocument : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_DOCUMENT_DOCTYPE)]
+ HRESULT doctype([retval, out] IXMLDOMDocumentType **docType);
+
+ [propget, id(DISPID_DOM_DOCUMENT_IMPLEMENTATION)]
+ HRESULT implementation([retval, out] IXMLDOMImplementation **impl);
+
+ [propget, id(DISPID_DOM_DOCUMENT_DOCUMENTELEMENT)]
+ HRESULT documentElement([retval, out] IXMLDOMElement **domElement);
+
+ [propputref, id(DISPID_DOM_DOCUMENT_DOCUMENTELEMENT)]
+ HRESULT documentElement([in] IXMLDOMElement *domElement);
+
+ [id(DISPID_DOM_DOCUMENT_CREATEELEMENT)]
+ HRESULT createElement(
+ [in] BSTR p,
+ [retval, out] IXMLDOMElement **domElement);
+
+ [id(DISPID_DOM_DOCUMENT_CREATEDOCUMENTFRAGMENT)]
+ HRESULT createDocumentFragment(
+ [retval, out] IXMLDOMDocumentFragment **docFrag);
+
+ [id(DISPID_DOM_DOCUMENT_CREATETEXTNODE)]
+ HRESULT createTextNode(
+ [in] BSTR p,
+ [retval, out] IXMLDOMText **text);
+
+ [id(DISPID_DOM_DOCUMENT_CREATECOMMENT)]
+ HRESULT createComment(
+ [in] BSTR p,
+ [retval, out] IXMLDOMComment **comment);
+
+ [id(DISPID_DOM_DOCUMENT_CREATECDATASECTION)]
+ HRESULT createCDATASection(
+ [in] BSTR p,
+ [retval, out] IXMLDOMCDATASection **cdata);
+
+ [id(DISPID_DOM_DOCUMENT_CREATEPROCESSINGINSTRUCTION)]
+ HRESULT createProcessingInstruction(
+ [in] BSTR target,
+ [in] BSTR data,
+ [retval, out] IXMLDOMProcessingInstruction **pi);
+
+ [id(DISPID_DOM_DOCUMENT_CREATEATTRIBUTE)]
+ HRESULT createAttribute(
+ [in] BSTR p,
+ [retval, out] IXMLDOMAttribute **attribute);
+
+ [id(DISPID_DOM_DOCUMENT_CREATEENTITYREFERENCE)]
+ HRESULT createEntityReference(
+ [in] BSTR p,
+ [retval, out] IXMLDOMEntityReference **entityRef);
+
+ [id(DISPID_DOM_DOCUMENT_GETELEMENTSBYTAGNAME)]
+ HRESULT getElementsByTagName(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNodeList **resultList);
+
+ [id(DISPID_XMLDOM_DOCUMENT_CREATENODE)]
+ HRESULT createNode(
+ [in] VARIANT var,
+ [in] BSTR name,
+ [in] BSTR uri,
+ [retval, out] IXMLDOMNode **node);
+
+ [id(DISPID_XMLDOM_DOCUMENT_NODEFROMID)]
+ HRESULT nodeFromID(
+ [in] BSTR id,
+ [retval, out] IXMLDOMNode **node);
+
+ [id(DISPID_XMLDOM_DOCUMENT_LOAD)]
+ HRESULT load(
+ [in] VARIANT var1,
+ [retval, out] VARIANT_BOOL *pbool);
+
+ [propget, id(DISPID_READYSTATE)]
+ HRESULT readyState([retval, out] LONG *value);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_PARSEERROR)]
+ HRESULT parseError([retval, out] IXMLDOMParseError **err);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_URL)]
+ HRESULT url([retval, out] BSTR *p);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_ASYNC)]
+ HRESULT async([retval, out] VARIANT_BOOL *pbool);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_ASYNC)]
+ HRESULT async([in] VARIANT_BOOL pbool);
+
+ [id(DISPID_XMLDOM_DOCUMENT_ABORT)]
+ HRESULT abort();
+
+ [id(DISPID_XMLDOM_DOCUMENT_LOADXML)]
+ HRESULT loadXML(
+ [in] BSTR p,
+ [out, retval] VARIANT_BOOL *pbool);
+
+ [id(DISPID_XMLDOM_DOCUMENT_SAVE)]
+ HRESULT save(
+ [in] VARIANT var1);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_VALIDATE)]
+ HRESULT validateOnParse([retval, out] VARIANT_BOOL *pbool);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_VALIDATE)]
+ HRESULT validateOnParse([in] VARIANT_BOOL pbool);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_RESOLVENAMESPACE)]
+ HRESULT resolveExternals([retval,out] VARIANT_BOOL *pbool);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_RESOLVENAMESPACE)]
+ HRESULT resolveExternals([in] VARIANT_BOOL pbool);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT_PRESERVEWHITESPACE)]
+ HRESULT preserveWhiteSpace([retval,out] VARIANT_BOOL *pbool);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_PRESERVEWHITESPACE)]
+ HRESULT preserveWhiteSpace([in] VARIANT_BOOL pbool);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_ONREADYSTATECHANGE)]
+ HRESULT onreadystatechange([in] VARIANT var1);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_ONDATAAVAILABLE)]
+ HRESULT ondataavailable([in] VARIANT var1);
+
+ [propput, id(DISPID_XMLDOM_DOCUMENT_ONTRANSFORMNODE)]
+ HRESULT ontransformnode([in] VARIANT var1);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (373984c8-b845-449b-91e7-45ac83036ade)
+]
+interface IXMLDOMSchemaCollection : IDispatch
+{
+ [id(DISPID_XMLDOM_SCHEMACOLLECTION_ADD)]
+ HRESULT add(
+ [in] BSTR uri,
+ [in] VARIANT var);
+
+ [id(DISPID_XMLDOM_SCHEMACOLLECTION_GET)]
+ HRESULT get(
+ [in] BSTR uri,
+ [retval, out] IXMLDOMNode **node);
+
+ [id(DISPID_XMLDOM_SCHEMACOLLECTION_REMOVE)]
+ HRESULT remove(
+ [in] BSTR uri);
+
+ [propget, id(DISPID_XMLDOM_SCHEMACOLLECTION_LENGTH)]
+ HRESULT length(
+ [retval, out] LONG *length);
+
+ [propget, id(DISPID_VALUE)]
+ HRESULT namespaceURI([in] LONG index, [out, retval] BSTR *len);
+
+ [id(DISPID_XMLDOM_SCHEMACOLLECTION_ADDCOLLECTION)]
+ HRESULT addCollection(
+ [in] IXMLDOMSchemaCollection *otherCollection);
+
+ [propget, id(DISPID_NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **ppUnk);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF95-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMDocument2 : IXMLDOMDocument
+{
+ [propget, id(DISPID_XMLDOM_DOCUMENT2_NAMESPACES)]
+ HRESULT namespaces([retval, out] IXMLDOMSchemaCollection **schemaCollection);
+
+ [propget, id(DISPID_XMLDOM_DOCUMENT2_SCHEMAS)]
+ HRESULT schemas([retval, out] VARIANT *var1);
+
+ [propputref, id(DISPID_XMLDOM_DOCUMENT2_SCHEMAS)]
+ HRESULT schemas([in] VARIANT var1);
+
+ [id(DISPID_XMLDOM_DOCUMENT2_VALIDATE)]
+ HRESULT validate(
+ [retval, out] IXMLDOMParseError **err);
+
+ [id(DISPID_XMLDOM_DOCUMENT2_SETPROPERTY)]
+ HRESULT setProperty(
+ [in] BSTR p,
+ [in] VARIANT var);
+
+ [id(DISPID_XMLDOM_DOCUMENT2_GETPROPERTY)]
+ HRESULT getProperty(
+ [in] BSTR p,
+ [retval, out] VARIANT *var);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF82-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMNodeList : IDispatch
+{
+ [propget, id(DISPID_VALUE)]
+ HRESULT item([in] LONG lIndex, [retval, out] IXMLDOMNode **outNode);
+
+ [propget, id(DISPID_DOM_NODELIST_LENGTH)]
+ HRESULT length([retval, out] LONG *lLength);
+
+ [id(DISPID_XMLDOM_NODELIST_NEXTNODE)]
+ HRESULT nextNode(
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_XMLDOM_NODELIST_RESET)]
+ HRESULT reset();
+
+ [propget, id(DISPID_NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **ppUnk);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (AA634FC7-5888-44a7-A257-3A47150D3A0E)
+]
+interface IXMLDOMSelection : IXMLDOMNodeList
+{
+ [propget, id(DISPID_XMLDOM_SELECTION_EXPR)]
+ HRESULT expr([retval, out] BSTR *p);
+
+ [propput, id(DISPID_XMLDOM_SELECTION_EXPR)]
+ HRESULT expr([in] BSTR p);
+
+ [propget, id(DISPID_XMLDOM_SELECTION_CONTEXT)]
+ HRESULT context([retval, out] IXMLDOMNode **ppNode);
+
+ [propputref, id(DISPID_XMLDOM_SELECTION_CONTEXT)]
+ HRESULT context([in] IXMLDOMNode * pNode);
+
+ [id(DISPID_XMLDOM_SELECTION_PEEKNODE)]
+ HRESULT peekNode(
+ [retval, out] IXMLDOMNode **ppNode);
+
+ [id(DISPID_XMLDOM_SELECTION_MATCHES)]
+ HRESULT matches(
+ [in] IXMLDOMNode *pNode,
+ [retval, out] IXMLDOMNode **ppNode);
+
+ [id(DISPID_XMLDOM_SELECTION_REMOVENEXT)]
+ HRESULT removeNext(
+ [retval, out] IXMLDOMNode **ppNode);
+
+ [id(DISPID_XMLDOM_SELECTION_REMOVEALL)]
+ HRESULT removeAll();
+
+ [id(DISPID_XMLDOM_SELECTION_CLONE)]
+ HRESULT clone(
+ [retval, out] IXMLDOMSelection **ppNode);
+
+ [id(DISPID_XMLDOM_SELECTION_GETPROPERTY)]
+ HRESULT getProperty(
+ [in] BSTR p,
+ [retval, out] VARIANT * var);
+
+ [id(DISPID_XMLDOM_SELECTION_SETPROPERTY)]
+ HRESULT setProperty(
+ [in] BSTR p,
+ [in] VARIANT var);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF83-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMNamedNodeMap : IDispatch
+{
+ [id(DISPID_DOM_NAMEDNODEMAP_GETNAMEDITEM)]
+ HRESULT getNamedItem(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_DOM_NAMEDNODEMAP_SETNAMEDITEM)]
+ HRESULT setNamedItem(
+ [in] IXMLDOMNode *newNode,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_DOM_NAMEDNODEMAP_REMOVENAMEDITEM)]
+ HRESULT removeNamedItem(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [propget, id(DISPID_VALUE)]
+ HRESULT item([in] LONG lIndex, [retval, out] IXMLDOMNode **outNode);
+
+ [propget, id(DISPID_DOM_NODELIST_LENGTH)]
+ HRESULT length([retval, out] LONG *lLength);
+
+ [id(DISPID_XMLDOM_NAMEDNODEMAP_GETQUALIFIEDITEM)]
+ HRESULT getQualifiedItem(
+ [in] BSTR name,
+ [in] BSTR uri,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_XMLDOM_NAMEDNODEMAP_REMOVEQUALIFIEDITEM)]
+ HRESULT removeQualifiedItem(
+ [in] BSTR name,
+ [in] BSTR uri,
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_XMLDOM_NAMEDNODEMAP_NEXTNODE)]
+ HRESULT nextNode(
+ [retval, out] IXMLDOMNode **outNode);
+
+ [id(DISPID_XMLDOM_NAMEDNODEMAP_RESET)]
+ HRESULT reset();
+
+ [propget, id(DISPID_NEWENUM)]
+ HRESULT _newEnum([retval, out] IUnknown **ppUnk);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (3efaa413-272f-11d2-836f-0000f87a7782)
+]
+interface IXMLDOMDocumentFragment : IXMLDOMNode
+{
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF84-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMCharacterData : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_DATA_DATA)]
+ HRESULT data([retval, out] BSTR *p);
+
+ [propput, id(DISPID_DOM_DATA_DATA)]
+ HRESULT data([in] BSTR data);
+
+ [propget, id(DISPID_DOM_DATA_LENGTH)]
+ HRESULT length([retval, out] LONG *len);
+
+ [id(DISPID_DOM_DATA_SUBSTRING)]
+ HRESULT substringData(
+ [in] LONG offset,
+ [in] LONG count,
+ [retval, out] BSTR *p);
+
+ [id(DISPID_DOM_DATA_APPEND)]
+ HRESULT appendData(
+ [in] BSTR p);
+
+ [id(DISPID_DOM_DATA_INSERT)]
+ HRESULT insertData(
+ [in] LONG offset,
+ [in] BSTR p);
+
+ [id(DISPID_DOM_DATA_DELETE)]
+ HRESULT deleteData(
+ [in] LONG offset,
+ [in] LONG count);
+
+ [id(DISPID_DOM_DATA_REPLACE)]
+ HRESULT replaceData(
+ [in] LONG offset,
+ [in] LONG count,
+ [in] BSTR p);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF85-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMAttribute : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_ATTRIBUTE_GETNAME)]
+ HRESULT name([retval, out] BSTR *p);
+
+ [propget, id(DISPID_DOM_ATTRIBUTE_VALUE)]
+ HRESULT value([retval, out] VARIANT *var1);
+
+ [propput, id(DISPID_DOM_ATTRIBUTE_VALUE)]
+ HRESULT value([in] VARIANT var1);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF86-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMElement : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_ELEMENT_GETTAGNAME)]
+ HRESULT tagName([retval, out] BSTR *p);
+
+ [id(DISPID_DOM_ELEMENT_GETATTRIBUTE)]
+ HRESULT getAttribute(
+ [in] BSTR p,
+ [retval, out] VARIANT *var);
+
+ [id(DISPID_DOM_ELEMENT_SETATTRIBUTE)]
+ HRESULT setAttribute(
+ [in] BSTR p,
+ [in] VARIANT var);
+
+ [id(DISPID_DOM_ELEMENT_REMOVEATTRIBUTE)]
+ HRESULT removeAttribute(
+ [in] BSTR p);
+
+ [id(DISPID_DOM_ELEMENT_GETATTRIBUTENODE)]
+ HRESULT getAttributeNode(
+ [in] BSTR p,
+ [retval, out] IXMLDOMAttribute **attributeNode);
+
+ [id(DISPID_DOM_ELEMENT_SETATTRIBUTENODE)]
+ HRESULT setAttributeNode(
+ [in] IXMLDOMAttribute *domAttribute,
+ [retval, out] IXMLDOMAttribute **attributeNode);
+
+ [id(DISPID_DOM_ELEMENT_REMOVEATTRIBUTENODE)]
+ HRESULT removeAttributeNode(
+ [in] IXMLDOMAttribute *domAttribute,
+ [retval, out] IXMLDOMAttribute **attributeNode);
+
+ [id(DISPID_DOM_ELEMENT_GETELEMENTSBYTAGNAME)]
+ HRESULT getElementsByTagName(
+ [in] BSTR p,
+ [retval, out] IXMLDOMNodeList **resultList);
+
+ [id(DISPID_DOM_ELEMENT_NORMALIZE)]
+ HRESULT normalize();
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF87-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMText : IXMLDOMCharacterData
+{
+ [id(DISPID_DOM_TEXT_SPLITTEXT)]
+ HRESULT splitText(
+ [in] LONG offset,
+ [retval, out] IXMLDOMText **txtNode);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF88-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMComment : IXMLDOMCharacterData
+{
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF89-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMProcessingInstruction : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_PI_TARGET)]
+ HRESULT target([retval, out] BSTR *p);
+
+ [propget, id(DISPID_DOM_PI_DATA)]
+ HRESULT data([retval, out] BSTR *p);
+
+ [propput, id(DISPID_DOM_PI_DATA)]
+ HRESULT data([in] BSTR p);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8A-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMCDATASection : IXMLDOMText
+{
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8B-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMDocumentType : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_DOCUMENTTYPE_NAME)]
+ HRESULT name([retval, out] BSTR *p);
+
+ [propget, id(DISPID_DOM_DOCUMENTTYPE_ENTITIES)]
+ HRESULT entities([retval, out] IXMLDOMNamedNodeMap **entityMap);
+
+ [propget, id(DISPID_DOM_DOCUMENTTYPE_NOTATIONS)]
+ HRESULT notations([retval, out] IXMLDOMNamedNodeMap **notationMap);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8C-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMNotation : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_NOTATION_PUBLICID)]
+ HRESULT publicId([retval, out] VARIANT *id);
+
+ [propget, id(DISPID_DOM_NOTATION_SYSTEMID)]
+ HRESULT systemId([retval, out] VARIANT *id);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8D-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMEntity : IXMLDOMNode
+{
+ [propget, id(DISPID_DOM_ENTITY_PUBLICID)]
+ HRESULT publicId([retval, out] VARIANT *id1);
+
+ [propget, id(DISPID_DOM_ENTITY_SYSTEMID)]
+ HRESULT systemId([retval, out] VARIANT *id1);
+
+ [propget, id(DISPID_DOM_ENTITY_NOTATIONNAME)]
+ HRESULT notationName([retval, out] BSTR *p);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8E-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMEntityReference : IXMLDOMNode
+{
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF8F-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXMLDOMImplementation : IDispatch
+{
+ [id(DISPID_DOM_IMPLEMENTATION_HASFEATURE)]
+ HRESULT hasFeature(
+ [in] BSTR feature,
+ [in] BSTR version,
+ [retval, out] VARIANT_BOOL *pbool);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (3efaa425-272f-11d2-836f-0000f87a7782)
+]
+interface IXTLRuntime : IXMLDOMNode
+{
+ [id(DISPID_XTLRUNTIME_UNIQUEID)]
+ HRESULT uniqueID(
+ [in]IXMLDOMNode *pNode,
+ [retval, out]LONG *pID);
+
+ [id(DISPID_XTLRUNTIME_DEPTH)]
+ HRESULT depth(
+ [in] IXMLDOMNode *pNode,
+ [retval, out]LONG * pDepth);
+
+ [id(DISPID_XTLRUNTIME_CHILDNUMBER)]
+ HRESULT childNumber(
+ [in]IXMLDOMNode *pNode,
+ [retval, out] LONG *pNumber);
+
+ [id(DISPID_XTLRUNTIME_ANCESTORCHILDNUMBER)]
+ HRESULT ancestorChildNumber(
+ [in]BSTR bstr,
+ [in]IXMLDOMNode *pNode,
+ [retval, out]LONG *pNumber);
+
+ [id(DISPID_XTLRUNTIME_ABSOLUTECHILDNUMBER)]
+ HRESULT absoluteChildNumber(
+ [in]IXMLDOMNode *pNode,
+ [retval, out]LONG *pNumber);
+
+ [id(DISPID_XTLRUNTIME_FORMATINDEX)]
+ HRESULT formatIndex(
+ [in] LONG lIndex,
+ [in] BSTR bstr,
+ [retval, out]BSTR *pbstr);
+
+ [id(DISPID_XTLRUNTIME_FORMATNUMBER)]
+ HRESULT formatNumber(
+ [in] double dblNumber,
+ [in] BSTR bstr,
+ [retval, out]BSTR *pbstr);
+
+ [id(DISPID_XTLRUNTIME_FORMATDATE)]
+ HRESULT formatDate(
+ [in] VARIANT var1,
+ [in] BSTR bstr,
+ [optional, in] VARIANT var2,
+ [retval, out]BSTR *pbstr);
+
+ [id(DISPID_XTLRUNTIME_FORMATTIME)]
+ HRESULT formatTime(
+ [in] VARIANT var1,
+ [in] BSTR bstr,
+ [optional, in] VARIANT var2,
+ [retval, out]BSTR *pbstr);
+
+}
+
+[
+ uuid(3efaa427-272f-11d2-836f-0000f87a7782)
+]
+dispinterface XMLDOMDocumentEvents
+{
+ properties:
+ methods:
+ [id (DISPID_XMLDOMEVENT_ONDATAAVAILABLE)]
+ HRESULT ondataavailable();
+
+ [id (DISPID_XMLDOMEVENT_ONREADYSTATECHANGE)]
+ HRESULT onreadystatechange();
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF92-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXSLProcessor : IDispatch
+{
+ [propput, id(DISPID_XMLDOM_PROCESSOR_INPUT)]
+ HRESULT input([in] VARIANT var);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_INPUT)]
+ HRESULT input([retval, out] VARIANT *var);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_XSLTEMPLATE)]
+ HRESULT ownerTemplate([retval, out] IXSLTemplate **ppTemplate);
+
+ [id(DISPID_XMLDOM_PROCESSOR_SETSTARTMODE)]
+ HRESULT setStartMode(
+ [in] BSTR p,
+ [in, defaultvalue("")] BSTR uri);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_STARTMODE)]
+ HRESULT startMode([retval, out] BSTR *p);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_STARTMODEURI)]
+ HRESULT startModeURI([retval, out] BSTR *uri);
+
+ [propput, id(DISPID_XMLDOM_PROCESSOR_OUTPUT)]
+ HRESULT output([in] VARIANT var);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_OUTPUT)]
+ HRESULT output([retval, out] VARIANT *var);
+
+ [id(DISPID_XMLDOM_PROCESSOR_TRANSFORM)]
+ HRESULT transform(
+ [retval, out] VARIANT_BOOL *pbool);
+
+ [id(DISPID_XMLDOM_PROCESSOR_RESET)]
+ HRESULT reset();
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_READYSTATE)]
+ HRESULT readyState([retval, out] LONG *pstate);
+
+ [id(DISPID_XMLDOM_PROCESSOR_ADDPARAMETER)]
+ HRESULT addParameter(
+ [in] BSTR p,
+ [in] VARIANT var,
+ [in, defaultvalue("")] BSTR uri);
+
+ [id(DISPID_XMLDOM_PROCESSOR_ADDOBJECT)]
+ HRESULT addObject(
+ [in] IDispatch* obj,
+ [in] BSTR uri);
+
+ [propget, id(DISPID_XMLDOM_PROCESSOR_STYLESHEET)]
+ HRESULT stylesheet([retval, out] IXMLDOMNode **node);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+uuid (2933BF93-7B36-11d2-B20E-00C04F983E60)
+]
+interface IXSLTemplate : IDispatch
+{
+ [propputref, id(DISPID_XMLDOM_TEMPLATE_STYLESHEET)]
+ HRESULT stylesheet([in] IXMLDOMNode *node);
+
+ [propget, id(DISPID_XMLDOM_TEMPLATE_STYLESHEET)]
+ HRESULT stylesheet([retval, out] IXMLDOMNode **node);
+
+ [id(DISPID_XMLDOM_TEMPLATE_CREATEPROCESSOR)]
+ HRESULT createProcessor(
+ [retval, out] IXSLProcessor **ppProcessor);
+}
+
+[
+ object,
+ uuid(ED8C108D-4349-11D2-91A4-00C04F7969E8),
+ odl,
+ dual,
+ oleautomation,
+ pointer_default(unique)
+]
+interface IXMLHTTPRequest : IDispatch
+{
+ [id(1)]
+ HRESULT open([in] BSTR bstrMethod, [in] BSTR bstrUrl, [in, optional] VARIANT varAsync,
+ [in,optional] VARIANT username, [in,optional] VARIANT password);
+
+ [id(2)]
+ HRESULT setRequestHeader([in] BSTR bstrHeader, [in] BSTR bstrValue);
+
+ [id(3)]
+ HRESULT getResponseHeader([in] BSTR bstrHeader, [out, retval] BSTR * value);
+
+ [id(4)]
+ HRESULT getAllResponseHeaders([out, retval] BSTR * pbstrHeaders);
+
+ [id(5)]
+ HRESULT send([in, optional] VARIANT body);
+
+ [id(6)]
+ HRESULT abort();
+
+ [propget, id(7)]
+ HRESULT status([out, retval] LONG *pStatus);
+
+ [propget, id(8)]
+ HRESULT statusText([out, retval] BSTR *pStatus);
+
+ [propget, id(9)]
+ HRESULT responseXML([out, retval] IDispatch **pBody);
+
+ [propget, id(10)]
+ HRESULT responseText([out, retval] BSTR *pBody);
+
+ [propget, id(11)]
+ HRESULT responseBody([out, retval] VARIANT *pBody);
+
+ [propget, id(12)]
+ HRESULT responseStream([out, retval] VARIANT *pBody);
+
+ [propget, id(13)]
+ HRESULT readyState([out, retval] LONG *pState);
+
+ [propput, id(14)]
+ HRESULT onreadystatechange([in] IDispatch *pReadyStateSink);
+}
+
+[
+local,
+object,
+dual,
+oleautomation,
+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(F6D90F11-9C73-11D3-B32E-00C04F990BB4)
+]
+coclass DOMDocument
+{
+ [default] interface IXMLDOMDocument2;
+ [default, source] dispinterface XMLDOMDocumentEvents;
+}
+
+[
+ helpstring("XML DOM Document 2.6"),
+ progid("Msxml2.DOMDocument.2.6"),
+ vi_progid("Msxml2.DOMDocument"),
+ threading(both),
+ uuid(f5078f1b-c551-11d3-89b9-0000f81fe221)
+]
+coclass DOMDocument26
+{
+ [default] interface IXMLDOMDocument2;
+ [default, source] dispinterface XMLDOMDocumentEvents;
+}
+
+[
+ uuid(F6D90F12-9C73-11D3-B32E-00C04F990BB4)
+]
+coclass FreeThreadedDOMDocument
+{
+ [default] interface IXMLDOMDocument2;
+ [default, source] dispinterface XMLDOMDocumentEvents;
+}
+
+[
+ helpstring("Free Threaded XML DOM Document 2.6"),
+ progid("Msxml2.FreeThreadedDOMDocument.2.6"),
+ vi_progid("Msxml2.FreeThreadedDOMDocument"),
+ threading(both),
+ uuid(f5078f1c-c551-11d3-89b9-0000f81fe221)
+]
+coclass FreeThreadedDOMDocument26
+{
+ [default] interface IXMLDOMDocument2;
+ [default, source] dispinterface XMLDOMDocumentEvents;
+}
+
+[
+ uuid(f6d90f16-9c73-11d3-b32e-00c04f990bb4)
+]
+coclass XMLHTTP
+{
+ [default] interface IXMLHTTPRequest;
+}
+
+[
+ helpstring("XML HTTP 2.6"),
+ progid("Msxml2.XMLHTTP.2.6"),
+ vi_progid("Msxml2.XMLHTTP"),
+ threading(apartment),
+ uuid(f5078f1e-c551-11d3-89b9-0000f81fe221)
+]
+coclass XMLHTTP26
+{
+ [default] interface IXMLHTTPRequest;
+}
+
+[
+ uuid(373984c9-b845-449b-91e7-45ac83036ade)
+]
+coclass XMLSchemaCache
+{
+ [default] interface IXMLDOMSchemaCollection;
+}
+
+[
+ helpstring("XML Schema Cache 2.6"),
+ progid("Msxml2.XMLSchemaCache.2.6"),
+ vi_progid("Msxml2.XMLSchemaCache"),
+ threading(both),
+ uuid(f5078f1d-c551-11d3-89b9-0000f81fe221)
+]
+coclass XMLSchemaCache26
+{
+ [default] interface IXMLDOMSchemaCollection;
+}
+
+[
+ uuid(2933BF94-7B36-11d2-B20E-00C04F983E60)
+]
+coclass XSLTemplate
+{
+ [default] interface IXSLTemplate;
+}
+
+[
+ helpstring("XSL Template 2.6"),
+ progid("Msxml2.XSLTemplate.2.6"),
+ vi_progid("Msxml2.XSLTemplate"),
+ threading(both),
+ uuid(f5078f21-c551-11d3-89b9-0000f81fe221)
+]
+coclass XSLTemplate26
+{
+ [default] interface IXSLTemplate;
+}
+
+} /* Library MSXML */