master
    1/*** Autogenerated by WIDL 10.4 from include/msxml.idl - Do not edit ***/
    2
    3#ifdef _WIN32
    4#ifndef __REQUIRED_RPCNDR_H_VERSION__
    5#define __REQUIRED_RPCNDR_H_VERSION__ 475
    6#endif
    7#include <rpc.h>
    8#include <rpcndr.h>
    9#endif
   10
   11#ifndef COM_NO_WINDOWS_H
   12#include <windows.h>
   13#include <ole2.h>
   14#endif
   15
   16#ifndef __msxml_h__
   17#define __msxml_h__
   18
   19/* Forward declarations */
   20
   21#ifndef __IXMLDOMNode_FWD_DEFINED__
   22#define __IXMLDOMNode_FWD_DEFINED__
   23typedef interface IXMLDOMNode IXMLDOMNode;
   24#ifdef __cplusplus
   25interface IXMLDOMNode;
   26#endif /* __cplusplus */
   27#endif
   28
   29#ifndef __IXMLDOMDocument_FWD_DEFINED__
   30#define __IXMLDOMDocument_FWD_DEFINED__
   31typedef interface IXMLDOMDocument IXMLDOMDocument;
   32#ifdef __cplusplus
   33interface IXMLDOMDocument;
   34#endif /* __cplusplus */
   35#endif
   36
   37#ifndef __IXMLDOMNodeList_FWD_DEFINED__
   38#define __IXMLDOMNodeList_FWD_DEFINED__
   39typedef interface IXMLDOMNodeList IXMLDOMNodeList;
   40#ifdef __cplusplus
   41interface IXMLDOMNodeList;
   42#endif /* __cplusplus */
   43#endif
   44
   45#ifndef __IXMLDOMNamedNodeMap_FWD_DEFINED__
   46#define __IXMLDOMNamedNodeMap_FWD_DEFINED__
   47typedef interface IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
   48#ifdef __cplusplus
   49interface IXMLDOMNamedNodeMap;
   50#endif /* __cplusplus */
   51#endif
   52
   53#ifndef __IXMLDOMDocumentFragment_FWD_DEFINED__
   54#define __IXMLDOMDocumentFragment_FWD_DEFINED__
   55typedef interface IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
   56#ifdef __cplusplus
   57interface IXMLDOMDocumentFragment;
   58#endif /* __cplusplus */
   59#endif
   60
   61#ifndef __IXMLDOMCharacterData_FWD_DEFINED__
   62#define __IXMLDOMCharacterData_FWD_DEFINED__
   63typedef interface IXMLDOMCharacterData IXMLDOMCharacterData;
   64#ifdef __cplusplus
   65interface IXMLDOMCharacterData;
   66#endif /* __cplusplus */
   67#endif
   68
   69#ifndef __IXMLDOMAttribute_FWD_DEFINED__
   70#define __IXMLDOMAttribute_FWD_DEFINED__
   71typedef interface IXMLDOMAttribute IXMLDOMAttribute;
   72#ifdef __cplusplus
   73interface IXMLDOMAttribute;
   74#endif /* __cplusplus */
   75#endif
   76
   77#ifndef __IXMLDOMElement_FWD_DEFINED__
   78#define __IXMLDOMElement_FWD_DEFINED__
   79typedef interface IXMLDOMElement IXMLDOMElement;
   80#ifdef __cplusplus
   81interface IXMLDOMElement;
   82#endif /* __cplusplus */
   83#endif
   84
   85#ifndef __IXMLDOMText_FWD_DEFINED__
   86#define __IXMLDOMText_FWD_DEFINED__
   87typedef interface IXMLDOMText IXMLDOMText;
   88#ifdef __cplusplus
   89interface IXMLDOMText;
   90#endif /* __cplusplus */
   91#endif
   92
   93#ifndef __IXMLDOMComment_FWD_DEFINED__
   94#define __IXMLDOMComment_FWD_DEFINED__
   95typedef interface IXMLDOMComment IXMLDOMComment;
   96#ifdef __cplusplus
   97interface IXMLDOMComment;
   98#endif /* __cplusplus */
   99#endif
  100
  101#ifndef __IXMLDOMProcessingInstruction_FWD_DEFINED__
  102#define __IXMLDOMProcessingInstruction_FWD_DEFINED__
  103typedef interface IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
  104#ifdef __cplusplus
  105interface IXMLDOMProcessingInstruction;
  106#endif /* __cplusplus */
  107#endif
  108
  109#ifndef __IXMLDOMCDATASection_FWD_DEFINED__
  110#define __IXMLDOMCDATASection_FWD_DEFINED__
  111typedef interface IXMLDOMCDATASection IXMLDOMCDATASection;
  112#ifdef __cplusplus
  113interface IXMLDOMCDATASection;
  114#endif /* __cplusplus */
  115#endif
  116
  117#ifndef __IXMLDOMDocumentType_FWD_DEFINED__
  118#define __IXMLDOMDocumentType_FWD_DEFINED__
  119typedef interface IXMLDOMDocumentType IXMLDOMDocumentType;
  120#ifdef __cplusplus
  121interface IXMLDOMDocumentType;
  122#endif /* __cplusplus */
  123#endif
  124
  125#ifndef __IXMLDOMNotation_FWD_DEFINED__
  126#define __IXMLDOMNotation_FWD_DEFINED__
  127typedef interface IXMLDOMNotation IXMLDOMNotation;
  128#ifdef __cplusplus
  129interface IXMLDOMNotation;
  130#endif /* __cplusplus */
  131#endif
  132
  133#ifndef __IXMLDOMEntity_FWD_DEFINED__
  134#define __IXMLDOMEntity_FWD_DEFINED__
  135typedef interface IXMLDOMEntity IXMLDOMEntity;
  136#ifdef __cplusplus
  137interface IXMLDOMEntity;
  138#endif /* __cplusplus */
  139#endif
  140
  141#ifndef __IXMLDOMEntityReference_FWD_DEFINED__
  142#define __IXMLDOMEntityReference_FWD_DEFINED__
  143typedef interface IXMLDOMEntityReference IXMLDOMEntityReference;
  144#ifdef __cplusplus
  145interface IXMLDOMEntityReference;
  146#endif /* __cplusplus */
  147#endif
  148
  149#ifndef __IXMLDOMImplementation_FWD_DEFINED__
  150#define __IXMLDOMImplementation_FWD_DEFINED__
  151typedef interface IXMLDOMImplementation IXMLDOMImplementation;
  152#ifdef __cplusplus
  153interface IXMLDOMImplementation;
  154#endif /* __cplusplus */
  155#endif
  156
  157#ifndef __IXMLDOMParseError_FWD_DEFINED__
  158#define __IXMLDOMParseError_FWD_DEFINED__
  159typedef interface IXMLDOMParseError IXMLDOMParseError;
  160#ifdef __cplusplus
  161interface IXMLDOMParseError;
  162#endif /* __cplusplus */
  163#endif
  164
  165#ifndef __XMLDOMDocumentEvents_FWD_DEFINED__
  166#define __XMLDOMDocumentEvents_FWD_DEFINED__
  167typedef interface XMLDOMDocumentEvents XMLDOMDocumentEvents;
  168#ifdef __cplusplus
  169interface XMLDOMDocumentEvents;
  170#endif /* __cplusplus */
  171#endif
  172
  173#ifndef __DOMDocument_FWD_DEFINED__
  174#define __DOMDocument_FWD_DEFINED__
  175#ifdef __cplusplus
  176typedef class DOMDocument DOMDocument;
  177#else
  178typedef struct DOMDocument DOMDocument;
  179#endif /* defined __cplusplus */
  180#endif /* defined __DOMDocument_FWD_DEFINED__ */
  181
  182#ifndef __DOMFreeThreadedDocument_FWD_DEFINED__
  183#define __DOMFreeThreadedDocument_FWD_DEFINED__
  184#ifdef __cplusplus
  185typedef class DOMFreeThreadedDocument DOMFreeThreadedDocument;
  186#else
  187typedef struct DOMFreeThreadedDocument DOMFreeThreadedDocument;
  188#endif /* defined __cplusplus */
  189#endif /* defined __DOMFreeThreadedDocument_FWD_DEFINED__ */
  190
  191#ifndef __IXMLHttpRequest_FWD_DEFINED__
  192#define __IXMLHttpRequest_FWD_DEFINED__
  193typedef interface IXMLHttpRequest IXMLHttpRequest;
  194#ifdef __cplusplus
  195interface IXMLHttpRequest;
  196#endif /* __cplusplus */
  197#endif
  198
  199#ifndef __XMLHTTPRequest_FWD_DEFINED__
  200#define __XMLHTTPRequest_FWD_DEFINED__
  201#ifdef __cplusplus
  202typedef class XMLHTTPRequest XMLHTTPRequest;
  203#else
  204typedef struct XMLHTTPRequest XMLHTTPRequest;
  205#endif /* defined __cplusplus */
  206#endif /* defined __XMLHTTPRequest_FWD_DEFINED__ */
  207
  208#ifndef __IXMLDSOControl_FWD_DEFINED__
  209#define __IXMLDSOControl_FWD_DEFINED__
  210typedef interface IXMLDSOControl IXMLDSOControl;
  211#ifdef __cplusplus
  212interface IXMLDSOControl;
  213#endif /* __cplusplus */
  214#endif
  215
  216#ifndef __XMLDSOControl_FWD_DEFINED__
  217#define __XMLDSOControl_FWD_DEFINED__
  218#ifdef __cplusplus
  219typedef class XMLDSOControl XMLDSOControl;
  220#else
  221typedef struct XMLDSOControl XMLDSOControl;
  222#endif /* defined __cplusplus */
  223#endif /* defined __XMLDSOControl_FWD_DEFINED__ */
  224
  225#ifndef __IXMLElementCollection_FWD_DEFINED__
  226#define __IXMLElementCollection_FWD_DEFINED__
  227typedef interface IXMLElementCollection IXMLElementCollection;
  228#ifdef __cplusplus
  229interface IXMLElementCollection;
  230#endif /* __cplusplus */
  231#endif
  232
  233#ifndef __IXMLElement_FWD_DEFINED__
  234#define __IXMLElement_FWD_DEFINED__
  235typedef interface IXMLElement IXMLElement;
  236#ifdef __cplusplus
  237interface IXMLElement;
  238#endif /* __cplusplus */
  239#endif
  240
  241#ifndef __IXMLDocument_FWD_DEFINED__
  242#define __IXMLDocument_FWD_DEFINED__
  243typedef interface IXMLDocument IXMLDocument;
  244#ifdef __cplusplus
  245interface IXMLDocument;
  246#endif /* __cplusplus */
  247#endif
  248
  249#ifndef __IXMLElement2_FWD_DEFINED__
  250#define __IXMLElement2_FWD_DEFINED__
  251typedef interface IXMLElement2 IXMLElement2;
  252#ifdef __cplusplus
  253interface IXMLElement2;
  254#endif /* __cplusplus */
  255#endif
  256
  257#ifndef __IXMLDocument2_FWD_DEFINED__
  258#define __IXMLDocument2_FWD_DEFINED__
  259typedef interface IXMLDocument2 IXMLDocument2;
  260#ifdef __cplusplus
  261interface IXMLDocument2;
  262#endif /* __cplusplus */
  263#endif
  264
  265#ifndef __IXMLAttribute_FWD_DEFINED__
  266#define __IXMLAttribute_FWD_DEFINED__
  267typedef interface IXMLAttribute IXMLAttribute;
  268#ifdef __cplusplus
  269interface IXMLAttribute;
  270#endif /* __cplusplus */
  271#endif
  272
  273#ifndef __IXMLError_FWD_DEFINED__
  274#define __IXMLError_FWD_DEFINED__
  275typedef interface IXMLError IXMLError;
  276#ifdef __cplusplus
  277interface IXMLError;
  278#endif /* __cplusplus */
  279#endif
  280
  281#ifndef __IXMLElementNotificationSink_FWD_DEFINED__
  282#define __IXMLElementNotificationSink_FWD_DEFINED__
  283typedef interface IXMLElementNotificationSink IXMLElementNotificationSink;
  284#ifdef __cplusplus
  285interface IXMLElementNotificationSink;
  286#endif /* __cplusplus */
  287#endif
  288
  289#ifndef __XMLDocument_FWD_DEFINED__
  290#define __XMLDocument_FWD_DEFINED__
  291#ifdef __cplusplus
  292typedef class XMLDocument XMLDocument;
  293#else
  294typedef struct XMLDocument XMLDocument;
  295#endif /* defined __cplusplus */
  296#endif /* defined __XMLDocument_FWD_DEFINED__ */
  297
  298/* Headers for imported files */
  299
  300#include <unknwn.h>
  301#include <wtypes.h>
  302#include <objidl.h>
  303#include <oaidl.h>
  304
  305#ifdef __cplusplus
  306extern "C" {
  307#endif
  308
  309#ifndef __MSXML_LIBRARY_DEFINED__
  310#define __MSXML_LIBRARY_DEFINED__
  311
  312DEFINE_GUID(LIBID_MSXML, 0xd63e0ce2, 0xa0a2, 0x11d0, 0x9c,0x02, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
  313
  314#ifndef __IXMLDOMImplementation_FWD_DEFINED__
  315#define __IXMLDOMImplementation_FWD_DEFINED__
  316typedef interface IXMLDOMImplementation IXMLDOMImplementation;
  317#ifdef __cplusplus
  318interface IXMLDOMImplementation;
  319#endif /* __cplusplus */
  320#endif
  321
  322#ifndef __IXMLDOMNode_FWD_DEFINED__
  323#define __IXMLDOMNode_FWD_DEFINED__
  324typedef interface IXMLDOMNode IXMLDOMNode;
  325#ifdef __cplusplus
  326interface IXMLDOMNode;
  327#endif /* __cplusplus */
  328#endif
  329
  330#ifndef __IXMLDOMDocumentFragment_FWD_DEFINED__
  331#define __IXMLDOMDocumentFragment_FWD_DEFINED__
  332typedef interface IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
  333#ifdef __cplusplus
  334interface IXMLDOMDocumentFragment;
  335#endif /* __cplusplus */
  336#endif
  337
  338#ifndef __IXMLDOMDocument_FWD_DEFINED__
  339#define __IXMLDOMDocument_FWD_DEFINED__
  340typedef interface IXMLDOMDocument IXMLDOMDocument;
  341#ifdef __cplusplus
  342interface IXMLDOMDocument;
  343#endif /* __cplusplus */
  344#endif
  345
  346#ifndef __IXMLDOMNodeList_FWD_DEFINED__
  347#define __IXMLDOMNodeList_FWD_DEFINED__
  348typedef interface IXMLDOMNodeList IXMLDOMNodeList;
  349#ifdef __cplusplus
  350interface IXMLDOMNodeList;
  351#endif /* __cplusplus */
  352#endif
  353
  354#ifndef __IXMLDOMNamedNodeMap_FWD_DEFINED__
  355#define __IXMLDOMNamedNodeMap_FWD_DEFINED__
  356typedef interface IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
  357#ifdef __cplusplus
  358interface IXMLDOMNamedNodeMap;
  359#endif /* __cplusplus */
  360#endif
  361
  362#ifndef __IXMLDOMCharacterData_FWD_DEFINED__
  363#define __IXMLDOMCharacterData_FWD_DEFINED__
  364typedef interface IXMLDOMCharacterData IXMLDOMCharacterData;
  365#ifdef __cplusplus
  366interface IXMLDOMCharacterData;
  367#endif /* __cplusplus */
  368#endif
  369
  370#ifndef __IXMLDOMAttribute_FWD_DEFINED__
  371#define __IXMLDOMAttribute_FWD_DEFINED__
  372typedef interface IXMLDOMAttribute IXMLDOMAttribute;
  373#ifdef __cplusplus
  374interface IXMLDOMAttribute;
  375#endif /* __cplusplus */
  376#endif
  377
  378#ifndef __IXMLDOMElement_FWD_DEFINED__
  379#define __IXMLDOMElement_FWD_DEFINED__
  380typedef interface IXMLDOMElement IXMLDOMElement;
  381#ifdef __cplusplus
  382interface IXMLDOMElement;
  383#endif /* __cplusplus */
  384#endif
  385
  386#ifndef __IXMLDOMText_FWD_DEFINED__
  387#define __IXMLDOMText_FWD_DEFINED__
  388typedef interface IXMLDOMText IXMLDOMText;
  389#ifdef __cplusplus
  390interface IXMLDOMText;
  391#endif /* __cplusplus */
  392#endif
  393
  394#ifndef __IXMLDOMComment_FWD_DEFINED__
  395#define __IXMLDOMComment_FWD_DEFINED__
  396typedef interface IXMLDOMComment IXMLDOMComment;
  397#ifdef __cplusplus
  398interface IXMLDOMComment;
  399#endif /* __cplusplus */
  400#endif
  401
  402#ifndef __IXMLDOMProcessingInstruction_FWD_DEFINED__
  403#define __IXMLDOMProcessingInstruction_FWD_DEFINED__
  404typedef interface IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
  405#ifdef __cplusplus
  406interface IXMLDOMProcessingInstruction;
  407#endif /* __cplusplus */
  408#endif
  409
  410#ifndef __IXMLDOMCDATASection_FWD_DEFINED__
  411#define __IXMLDOMCDATASection_FWD_DEFINED__
  412typedef interface IXMLDOMCDATASection IXMLDOMCDATASection;
  413#ifdef __cplusplus
  414interface IXMLDOMCDATASection;
  415#endif /* __cplusplus */
  416#endif
  417
  418#ifndef __IXMLDOMDocumentType_FWD_DEFINED__
  419#define __IXMLDOMDocumentType_FWD_DEFINED__
  420typedef interface IXMLDOMDocumentType IXMLDOMDocumentType;
  421#ifdef __cplusplus
  422interface IXMLDOMDocumentType;
  423#endif /* __cplusplus */
  424#endif
  425
  426#ifndef __IXMLDOMNotation_FWD_DEFINED__
  427#define __IXMLDOMNotation_FWD_DEFINED__
  428typedef interface IXMLDOMNotation IXMLDOMNotation;
  429#ifdef __cplusplus
  430interface IXMLDOMNotation;
  431#endif /* __cplusplus */
  432#endif
  433
  434#ifndef __IXMLDOMEntity_FWD_DEFINED__
  435#define __IXMLDOMEntity_FWD_DEFINED__
  436typedef interface IXMLDOMEntity IXMLDOMEntity;
  437#ifdef __cplusplus
  438interface IXMLDOMEntity;
  439#endif /* __cplusplus */
  440#endif
  441
  442#ifndef __IXMLDOMEntityReference_FWD_DEFINED__
  443#define __IXMLDOMEntityReference_FWD_DEFINED__
  444typedef interface IXMLDOMEntityReference IXMLDOMEntityReference;
  445#ifdef __cplusplus
  446interface IXMLDOMEntityReference;
  447#endif /* __cplusplus */
  448#endif
  449
  450#ifndef __IXMLDOMParseError_FWD_DEFINED__
  451#define __IXMLDOMParseError_FWD_DEFINED__
  452typedef interface IXMLDOMParseError IXMLDOMParseError;
  453#ifdef __cplusplus
  454interface IXMLDOMParseError;
  455#endif /* __cplusplus */
  456#endif
  457
  458#ifndef __MSXML_DOMNODETYPE_DEFINED
  459#define __MSXML_DOMNODETYPE_DEFINED
  460typedef enum tagDOMNodeType {
  461    NODE_INVALID = 0,
  462    NODE_ELEMENT = 1,
  463    NODE_ATTRIBUTE = 2,
  464    NODE_TEXT = 3,
  465    NODE_CDATA_SECTION = 4,
  466    NODE_ENTITY_REFERENCE = 5,
  467    NODE_ENTITY = 6,
  468    NODE_PROCESSING_INSTRUCTION = 7,
  469    NODE_COMMENT = 8,
  470    NODE_DOCUMENT = 9,
  471    NODE_DOCUMENT_TYPE = 10,
  472    NODE_DOCUMENT_FRAGMENT = 11,
  473    NODE_NOTATION = 12
  474} DOMNodeType;
  475#endif
  476/*****************************************************************************
  477 * IXMLDOMNode interface
  478 */
  479#ifndef __IXMLDOMNode_INTERFACE_DEFINED__
  480#define __IXMLDOMNode_INTERFACE_DEFINED__
  481
  482DEFINE_GUID(IID_IXMLDOMNode, 0x2933bf80, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
  483#if defined(__cplusplus) && !defined(CINTERFACE)
  484MIDL_INTERFACE("2933bf80-7b36-11d2-b20e-00c04f983e60")
  485IXMLDOMNode : public IDispatch
  486{
  487    virtual HRESULT STDMETHODCALLTYPE get_nodeName(
  488        BSTR *name) = 0;
  489
  490    virtual HRESULT STDMETHODCALLTYPE get_nodeValue(
  491        VARIANT *value) = 0;
  492
  493    virtual HRESULT STDMETHODCALLTYPE put_nodeValue(
  494        VARIANT value) = 0;
  495
  496    virtual HRESULT STDMETHODCALLTYPE get_nodeType(
  497        DOMNodeType *type) = 0;
  498
  499    virtual HRESULT STDMETHODCALLTYPE get_parentNode(
  500        IXMLDOMNode **parent) = 0;
  501
  502    virtual HRESULT STDMETHODCALLTYPE get_childNodes(
  503        IXMLDOMNodeList **childList) = 0;
  504
  505    virtual HRESULT STDMETHODCALLTYPE get_firstChild(
  506        IXMLDOMNode **firstChild) = 0;
  507
  508    virtual HRESULT STDMETHODCALLTYPE get_lastChild(
  509        IXMLDOMNode **lastChild) = 0;
  510
  511    virtual HRESULT STDMETHODCALLTYPE get_previousSibling(
  512        IXMLDOMNode **previousSibling) = 0;
  513
  514    virtual HRESULT STDMETHODCALLTYPE get_nextSibling(
  515        IXMLDOMNode **nextSibling) = 0;
  516
  517    virtual HRESULT STDMETHODCALLTYPE get_attributes(
  518        IXMLDOMNamedNodeMap **attributeMap) = 0;
  519
  520    virtual HRESULT STDMETHODCALLTYPE insertBefore(
  521        IXMLDOMNode *newChild,
  522        VARIANT refChild,
  523        IXMLDOMNode **outNewChild) = 0;
  524
  525    virtual HRESULT STDMETHODCALLTYPE replaceChild(
  526        IXMLDOMNode *newChild,
  527        IXMLDOMNode *oldChild,
  528        IXMLDOMNode **outOldChild) = 0;
  529
  530    virtual HRESULT STDMETHODCALLTYPE removeChild(
  531        IXMLDOMNode *childNode,
  532        IXMLDOMNode **oldChild) = 0;
  533
  534    virtual HRESULT STDMETHODCALLTYPE appendChild(
  535        IXMLDOMNode *newChild,
  536        IXMLDOMNode **outNewChild) = 0;
  537
  538    virtual HRESULT STDMETHODCALLTYPE hasChildNodes(
  539        VARIANT_BOOL *hasChild) = 0;
  540
  541    virtual HRESULT STDMETHODCALLTYPE get_ownerDocument(
  542        IXMLDOMDocument **DOMDocument) = 0;
  543
  544    virtual HRESULT STDMETHODCALLTYPE cloneNode(
  545        VARIANT_BOOL deep,
  546        IXMLDOMNode **cloneRoot) = 0;
  547
  548    virtual HRESULT STDMETHODCALLTYPE get_nodeTypeString(
  549        BSTR *nodeType) = 0;
  550
  551    virtual HRESULT STDMETHODCALLTYPE get_text(
  552        BSTR *text) = 0;
  553
  554    virtual HRESULT STDMETHODCALLTYPE put_text(
  555        BSTR text) = 0;
  556
  557    virtual HRESULT STDMETHODCALLTYPE get_specified(
  558        VARIANT_BOOL *isSpecified) = 0;
  559
  560    virtual HRESULT STDMETHODCALLTYPE get_definition(
  561        IXMLDOMNode **definitionNode) = 0;
  562
  563    virtual HRESULT STDMETHODCALLTYPE get_nodeTypedValue(
  564        VARIANT *typedValue) = 0;
  565
  566    virtual HRESULT STDMETHODCALLTYPE put_nodeTypedValue(
  567        VARIANT typedValue) = 0;
  568
  569    virtual HRESULT STDMETHODCALLTYPE get_dataType(
  570        VARIANT *dataTypeName) = 0;
  571
  572    virtual HRESULT STDMETHODCALLTYPE put_dataType(
  573        BSTR dataTypeName) = 0;
  574
  575    virtual HRESULT STDMETHODCALLTYPE get_xml(
  576        BSTR *xmlString) = 0;
  577
  578    virtual HRESULT STDMETHODCALLTYPE transformNode(
  579        IXMLDOMNode *styleSheet,
  580        BSTR *xmlString) = 0;
  581
  582    virtual HRESULT STDMETHODCALLTYPE selectNodes(
  583        BSTR queryString,
  584        IXMLDOMNodeList **resultList) = 0;
  585
  586    virtual HRESULT STDMETHODCALLTYPE selectSingleNode(
  587        BSTR queryString,
  588        IXMLDOMNode **resultNode) = 0;
  589
  590    virtual HRESULT STDMETHODCALLTYPE get_parsed(
  591        VARIANT_BOOL *isParsed) = 0;
  592
  593    virtual HRESULT STDMETHODCALLTYPE get_namespaceURI(
  594        BSTR *namespaceURI) = 0;
  595
  596    virtual HRESULT STDMETHODCALLTYPE get_prefix(
  597        BSTR *prefixString) = 0;
  598
  599    virtual HRESULT STDMETHODCALLTYPE get_baseName(
  600        BSTR *nameString) = 0;
  601
  602    virtual HRESULT STDMETHODCALLTYPE transformNodeToObject(
  603        IXMLDOMNode *stylesheet,
  604        VARIANT outputObject) = 0;
  605
  606};
  607#ifdef __CRT_UUID_DECL
  608__CRT_UUID_DECL(IXMLDOMNode, 0x2933bf80, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
  609#endif
  610#else
  611typedef struct IXMLDOMNodeVtbl {
  612    BEGIN_INTERFACE
  613
  614    /*** IUnknown methods ***/
  615    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  616        IXMLDOMNode *This,
  617        REFIID riid,
  618        void **ppvObject);
  619
  620    ULONG (STDMETHODCALLTYPE *AddRef)(
  621        IXMLDOMNode *This);
  622
  623    ULONG (STDMETHODCALLTYPE *Release)(
  624        IXMLDOMNode *This);
  625
  626    /*** IDispatch methods ***/
  627    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
  628        IXMLDOMNode *This,
  629        UINT *pctinfo);
  630
  631    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
  632        IXMLDOMNode *This,
  633        UINT iTInfo,
  634        LCID lcid,
  635        ITypeInfo **ppTInfo);
  636
  637    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
  638        IXMLDOMNode *This,
  639        REFIID riid,
  640        LPOLESTR *rgszNames,
  641        UINT cNames,
  642        LCID lcid,
  643        DISPID *rgDispId);
  644
  645    HRESULT (STDMETHODCALLTYPE *Invoke)(
  646        IXMLDOMNode *This,
  647        DISPID dispIdMember,
  648        REFIID riid,
  649        LCID lcid,
  650        WORD wFlags,
  651        DISPPARAMS *pDispParams,
  652        VARIANT *pVarResult,
  653        EXCEPINFO *pExcepInfo,
  654        UINT *puArgErr);
  655
  656    /*** IXMLDOMNode methods ***/
  657    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
  658        IXMLDOMNode *This,
  659        BSTR *name);
  660
  661    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
  662        IXMLDOMNode *This,
  663        VARIANT *value);
  664
  665    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
  666        IXMLDOMNode *This,
  667        VARIANT value);
  668
  669    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
  670        IXMLDOMNode *This,
  671        DOMNodeType *type);
  672
  673    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
  674        IXMLDOMNode *This,
  675        IXMLDOMNode **parent);
  676
  677    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
  678        IXMLDOMNode *This,
  679        IXMLDOMNodeList **childList);
  680
  681    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
  682        IXMLDOMNode *This,
  683        IXMLDOMNode **firstChild);
  684
  685    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
  686        IXMLDOMNode *This,
  687        IXMLDOMNode **lastChild);
  688
  689    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
  690        IXMLDOMNode *This,
  691        IXMLDOMNode **previousSibling);
  692
  693    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
  694        IXMLDOMNode *This,
  695        IXMLDOMNode **nextSibling);
  696
  697    HRESULT (STDMETHODCALLTYPE *get_attributes)(
  698        IXMLDOMNode *This,
  699        IXMLDOMNamedNodeMap **attributeMap);
  700
  701    HRESULT (STDMETHODCALLTYPE *insertBefore)(
  702        IXMLDOMNode *This,
  703        IXMLDOMNode *newChild,
  704        VARIANT refChild,
  705        IXMLDOMNode **outNewChild);
  706
  707    HRESULT (STDMETHODCALLTYPE *replaceChild)(
  708        IXMLDOMNode *This,
  709        IXMLDOMNode *newChild,
  710        IXMLDOMNode *oldChild,
  711        IXMLDOMNode **outOldChild);
  712
  713    HRESULT (STDMETHODCALLTYPE *removeChild)(
  714        IXMLDOMNode *This,
  715        IXMLDOMNode *childNode,
  716        IXMLDOMNode **oldChild);
  717
  718    HRESULT (STDMETHODCALLTYPE *appendChild)(
  719        IXMLDOMNode *This,
  720        IXMLDOMNode *newChild,
  721        IXMLDOMNode **outNewChild);
  722
  723    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
  724        IXMLDOMNode *This,
  725        VARIANT_BOOL *hasChild);
  726
  727    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
  728        IXMLDOMNode *This,
  729        IXMLDOMDocument **DOMDocument);
  730
  731    HRESULT (STDMETHODCALLTYPE *cloneNode)(
  732        IXMLDOMNode *This,
  733        VARIANT_BOOL deep,
  734        IXMLDOMNode **cloneRoot);
  735
  736    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
  737        IXMLDOMNode *This,
  738        BSTR *nodeType);
  739
  740    HRESULT (STDMETHODCALLTYPE *get_text)(
  741        IXMLDOMNode *This,
  742        BSTR *text);
  743
  744    HRESULT (STDMETHODCALLTYPE *put_text)(
  745        IXMLDOMNode *This,
  746        BSTR text);
  747
  748    HRESULT (STDMETHODCALLTYPE *get_specified)(
  749        IXMLDOMNode *This,
  750        VARIANT_BOOL *isSpecified);
  751
  752    HRESULT (STDMETHODCALLTYPE *get_definition)(
  753        IXMLDOMNode *This,
  754        IXMLDOMNode **definitionNode);
  755
  756    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
  757        IXMLDOMNode *This,
  758        VARIANT *typedValue);
  759
  760    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
  761        IXMLDOMNode *This,
  762        VARIANT typedValue);
  763
  764    HRESULT (STDMETHODCALLTYPE *get_dataType)(
  765        IXMLDOMNode *This,
  766        VARIANT *dataTypeName);
  767
  768    HRESULT (STDMETHODCALLTYPE *put_dataType)(
  769        IXMLDOMNode *This,
  770        BSTR dataTypeName);
  771
  772    HRESULT (STDMETHODCALLTYPE *get_xml)(
  773        IXMLDOMNode *This,
  774        BSTR *xmlString);
  775
  776    HRESULT (STDMETHODCALLTYPE *transformNode)(
  777        IXMLDOMNode *This,
  778        IXMLDOMNode *styleSheet,
  779        BSTR *xmlString);
  780
  781    HRESULT (STDMETHODCALLTYPE *selectNodes)(
  782        IXMLDOMNode *This,
  783        BSTR queryString,
  784        IXMLDOMNodeList **resultList);
  785
  786    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
  787        IXMLDOMNode *This,
  788        BSTR queryString,
  789        IXMLDOMNode **resultNode);
  790
  791    HRESULT (STDMETHODCALLTYPE *get_parsed)(
  792        IXMLDOMNode *This,
  793        VARIANT_BOOL *isParsed);
  794
  795    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
  796        IXMLDOMNode *This,
  797        BSTR *namespaceURI);
  798
  799    HRESULT (STDMETHODCALLTYPE *get_prefix)(
  800        IXMLDOMNode *This,
  801        BSTR *prefixString);
  802
  803    HRESULT (STDMETHODCALLTYPE *get_baseName)(
  804        IXMLDOMNode *This,
  805        BSTR *nameString);
  806
  807    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
  808        IXMLDOMNode *This,
  809        IXMLDOMNode *stylesheet,
  810        VARIANT outputObject);
  811
  812    END_INTERFACE
  813} IXMLDOMNodeVtbl;
  814
  815interface IXMLDOMNode {
  816    CONST_VTBL IXMLDOMNodeVtbl* lpVtbl;
  817};
  818
  819#ifdef COBJMACROS
  820#ifndef WIDL_C_INLINE_WRAPPERS
  821/*** IUnknown methods ***/
  822#define IXMLDOMNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  823#define IXMLDOMNode_AddRef(This) (This)->lpVtbl->AddRef(This)
  824#define IXMLDOMNode_Release(This) (This)->lpVtbl->Release(This)
  825/*** IDispatch methods ***/
  826#define IXMLDOMNode_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  827#define IXMLDOMNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  828#define IXMLDOMNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  829#define IXMLDOMNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  830/*** IXMLDOMNode methods ***/
  831#define IXMLDOMNode_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
  832#define IXMLDOMNode_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
  833#define IXMLDOMNode_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
  834#define IXMLDOMNode_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
  835#define IXMLDOMNode_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
  836#define IXMLDOMNode_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
  837#define IXMLDOMNode_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
  838#define IXMLDOMNode_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
  839#define IXMLDOMNode_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
  840#define IXMLDOMNode_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
  841#define IXMLDOMNode_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
  842#define IXMLDOMNode_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
  843#define IXMLDOMNode_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
  844#define IXMLDOMNode_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
  845#define IXMLDOMNode_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
  846#define IXMLDOMNode_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
  847#define IXMLDOMNode_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
  848#define IXMLDOMNode_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
  849#define IXMLDOMNode_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
  850#define IXMLDOMNode_get_text(This,text) (This)->lpVtbl->get_text(This,text)
  851#define IXMLDOMNode_put_text(This,text) (This)->lpVtbl->put_text(This,text)
  852#define IXMLDOMNode_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
  853#define IXMLDOMNode_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
  854#define IXMLDOMNode_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
  855#define IXMLDOMNode_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
  856#define IXMLDOMNode_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
  857#define IXMLDOMNode_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
  858#define IXMLDOMNode_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
  859#define IXMLDOMNode_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
  860#define IXMLDOMNode_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
  861#define IXMLDOMNode_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
  862#define IXMLDOMNode_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
  863#define IXMLDOMNode_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
  864#define IXMLDOMNode_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
  865#define IXMLDOMNode_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
  866#define IXMLDOMNode_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
  867#else
  868/*** IUnknown methods ***/
  869static inline HRESULT IXMLDOMNode_QueryInterface(IXMLDOMNode* This,REFIID riid,void **ppvObject) {
  870    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  871}
  872static inline ULONG IXMLDOMNode_AddRef(IXMLDOMNode* This) {
  873    return This->lpVtbl->AddRef(This);
  874}
  875static inline ULONG IXMLDOMNode_Release(IXMLDOMNode* This) {
  876    return This->lpVtbl->Release(This);
  877}
  878/*** IDispatch methods ***/
  879static inline HRESULT IXMLDOMNode_GetTypeInfoCount(IXMLDOMNode* This,UINT *pctinfo) {
  880    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
  881}
  882static inline HRESULT IXMLDOMNode_GetTypeInfo(IXMLDOMNode* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
  883    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
  884}
  885static inline HRESULT IXMLDOMNode_GetIDsOfNames(IXMLDOMNode* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
  886    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
  887}
  888static inline HRESULT IXMLDOMNode_Invoke(IXMLDOMNode* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
  889    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
  890}
  891/*** IXMLDOMNode methods ***/
  892static inline HRESULT IXMLDOMNode_get_nodeName(IXMLDOMNode* This,BSTR *name) {
  893    return This->lpVtbl->get_nodeName(This,name);
  894}
  895static inline HRESULT IXMLDOMNode_get_nodeValue(IXMLDOMNode* This,VARIANT *value) {
  896    return This->lpVtbl->get_nodeValue(This,value);
  897}
  898static inline HRESULT IXMLDOMNode_put_nodeValue(IXMLDOMNode* This,VARIANT value) {
  899    return This->lpVtbl->put_nodeValue(This,value);
  900}
  901static inline HRESULT IXMLDOMNode_get_nodeType(IXMLDOMNode* This,DOMNodeType *type) {
  902    return This->lpVtbl->get_nodeType(This,type);
  903}
  904static inline HRESULT IXMLDOMNode_get_parentNode(IXMLDOMNode* This,IXMLDOMNode **parent) {
  905    return This->lpVtbl->get_parentNode(This,parent);
  906}
  907static inline HRESULT IXMLDOMNode_get_childNodes(IXMLDOMNode* This,IXMLDOMNodeList **childList) {
  908    return This->lpVtbl->get_childNodes(This,childList);
  909}
  910static inline HRESULT IXMLDOMNode_get_firstChild(IXMLDOMNode* This,IXMLDOMNode **firstChild) {
  911    return This->lpVtbl->get_firstChild(This,firstChild);
  912}
  913static inline HRESULT IXMLDOMNode_get_lastChild(IXMLDOMNode* This,IXMLDOMNode **lastChild) {
  914    return This->lpVtbl->get_lastChild(This,lastChild);
  915}
  916static inline HRESULT IXMLDOMNode_get_previousSibling(IXMLDOMNode* This,IXMLDOMNode **previousSibling) {
  917    return This->lpVtbl->get_previousSibling(This,previousSibling);
  918}
  919static inline HRESULT IXMLDOMNode_get_nextSibling(IXMLDOMNode* This,IXMLDOMNode **nextSibling) {
  920    return This->lpVtbl->get_nextSibling(This,nextSibling);
  921}
  922static inline HRESULT IXMLDOMNode_get_attributes(IXMLDOMNode* This,IXMLDOMNamedNodeMap **attributeMap) {
  923    return This->lpVtbl->get_attributes(This,attributeMap);
  924}
  925static inline HRESULT IXMLDOMNode_insertBefore(IXMLDOMNode* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
  926    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
  927}
  928static inline HRESULT IXMLDOMNode_replaceChild(IXMLDOMNode* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
  929    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
  930}
  931static inline HRESULT IXMLDOMNode_removeChild(IXMLDOMNode* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
  932    return This->lpVtbl->removeChild(This,childNode,oldChild);
  933}
  934static inline HRESULT IXMLDOMNode_appendChild(IXMLDOMNode* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
  935    return This->lpVtbl->appendChild(This,newChild,outNewChild);
  936}
  937static inline HRESULT IXMLDOMNode_hasChildNodes(IXMLDOMNode* This,VARIANT_BOOL *hasChild) {
  938    return This->lpVtbl->hasChildNodes(This,hasChild);
  939}
  940static inline HRESULT IXMLDOMNode_get_ownerDocument(IXMLDOMNode* This,IXMLDOMDocument **DOMDocument) {
  941    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
  942}
  943static inline HRESULT IXMLDOMNode_cloneNode(IXMLDOMNode* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
  944    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
  945}
  946static inline HRESULT IXMLDOMNode_get_nodeTypeString(IXMLDOMNode* This,BSTR *nodeType) {
  947    return This->lpVtbl->get_nodeTypeString(This,nodeType);
  948}
  949static inline HRESULT IXMLDOMNode_get_text(IXMLDOMNode* This,BSTR *text) {
  950    return This->lpVtbl->get_text(This,text);
  951}
  952static inline HRESULT IXMLDOMNode_put_text(IXMLDOMNode* This,BSTR text) {
  953    return This->lpVtbl->put_text(This,text);
  954}
  955static inline HRESULT IXMLDOMNode_get_specified(IXMLDOMNode* This,VARIANT_BOOL *isSpecified) {
  956    return This->lpVtbl->get_specified(This,isSpecified);
  957}
  958static inline HRESULT IXMLDOMNode_get_definition(IXMLDOMNode* This,IXMLDOMNode **definitionNode) {
  959    return This->lpVtbl->get_definition(This,definitionNode);
  960}
  961static inline HRESULT IXMLDOMNode_get_nodeTypedValue(IXMLDOMNode* This,VARIANT *typedValue) {
  962    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
  963}
  964static inline HRESULT IXMLDOMNode_put_nodeTypedValue(IXMLDOMNode* This,VARIANT typedValue) {
  965    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
  966}
  967static inline HRESULT IXMLDOMNode_get_dataType(IXMLDOMNode* This,VARIANT *dataTypeName) {
  968    return This->lpVtbl->get_dataType(This,dataTypeName);
  969}
  970static inline HRESULT IXMLDOMNode_put_dataType(IXMLDOMNode* This,BSTR dataTypeName) {
  971    return This->lpVtbl->put_dataType(This,dataTypeName);
  972}
  973static inline HRESULT IXMLDOMNode_get_xml(IXMLDOMNode* This,BSTR *xmlString) {
  974    return This->lpVtbl->get_xml(This,xmlString);
  975}
  976static inline HRESULT IXMLDOMNode_transformNode(IXMLDOMNode* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
  977    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
  978}
  979static inline HRESULT IXMLDOMNode_selectNodes(IXMLDOMNode* This,BSTR queryString,IXMLDOMNodeList **resultList) {
  980    return This->lpVtbl->selectNodes(This,queryString,resultList);
  981}
  982static inline HRESULT IXMLDOMNode_selectSingleNode(IXMLDOMNode* This,BSTR queryString,IXMLDOMNode **resultNode) {
  983    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
  984}
  985static inline HRESULT IXMLDOMNode_get_parsed(IXMLDOMNode* This,VARIANT_BOOL *isParsed) {
  986    return This->lpVtbl->get_parsed(This,isParsed);
  987}
  988static inline HRESULT IXMLDOMNode_get_namespaceURI(IXMLDOMNode* This,BSTR *namespaceURI) {
  989    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
  990}
  991static inline HRESULT IXMLDOMNode_get_prefix(IXMLDOMNode* This,BSTR *prefixString) {
  992    return This->lpVtbl->get_prefix(This,prefixString);
  993}
  994static inline HRESULT IXMLDOMNode_get_baseName(IXMLDOMNode* This,BSTR *nameString) {
  995    return This->lpVtbl->get_baseName(This,nameString);
  996}
  997static inline HRESULT IXMLDOMNode_transformNodeToObject(IXMLDOMNode* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
  998    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
  999}
 1000#endif
 1001#endif
 1002
 1003#endif
 1004
 1005
 1006#endif  /* __IXMLDOMNode_INTERFACE_DEFINED__ */
 1007
 1008/*****************************************************************************
 1009 * IXMLDOMDocument interface
 1010 */
 1011#ifndef __IXMLDOMDocument_INTERFACE_DEFINED__
 1012#define __IXMLDOMDocument_INTERFACE_DEFINED__
 1013
 1014DEFINE_GUID(IID_IXMLDOMDocument, 0x2933bf81, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 1015#if defined(__cplusplus) && !defined(CINTERFACE)
 1016MIDL_INTERFACE("2933bf81-7b36-11d2-b20e-00c04f983e60")
 1017IXMLDOMDocument : public IXMLDOMNode
 1018{
 1019    virtual HRESULT STDMETHODCALLTYPE get_doctype(
 1020        IXMLDOMDocumentType **documentType) = 0;
 1021
 1022    virtual HRESULT STDMETHODCALLTYPE get_implementation(
 1023        IXMLDOMImplementation **impl) = 0;
 1024
 1025    virtual HRESULT STDMETHODCALLTYPE get_documentElement(
 1026        IXMLDOMElement **DOMElement) = 0;
 1027
 1028    virtual HRESULT STDMETHODCALLTYPE putref_documentElement(
 1029        IXMLDOMElement *DOMElement) = 0;
 1030
 1031    virtual HRESULT STDMETHODCALLTYPE createElement(
 1032        BSTR tagname,
 1033        IXMLDOMElement **element) = 0;
 1034
 1035    virtual HRESULT STDMETHODCALLTYPE createDocumentFragment(
 1036        IXMLDOMDocumentFragment **docFrag) = 0;
 1037
 1038    virtual HRESULT STDMETHODCALLTYPE createTextNode(
 1039        BSTR data,
 1040        IXMLDOMText **text) = 0;
 1041
 1042    virtual HRESULT STDMETHODCALLTYPE createComment(
 1043        BSTR data,
 1044        IXMLDOMComment **comment) = 0;
 1045
 1046    virtual HRESULT STDMETHODCALLTYPE createCDATASection(
 1047        BSTR data,
 1048        IXMLDOMCDATASection **cdata) = 0;
 1049
 1050    virtual HRESULT STDMETHODCALLTYPE createProcessingInstruction(
 1051        BSTR target,
 1052        BSTR data,
 1053        IXMLDOMProcessingInstruction **pi) = 0;
 1054
 1055    virtual HRESULT STDMETHODCALLTYPE createAttribute(
 1056        BSTR name,
 1057        IXMLDOMAttribute **attribute) = 0;
 1058
 1059    virtual HRESULT STDMETHODCALLTYPE createEntityReference(
 1060        BSTR name,
 1061        IXMLDOMEntityReference **entityRef) = 0;
 1062
 1063    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
 1064        BSTR tagName,
 1065        IXMLDOMNodeList **resultList) = 0;
 1066
 1067    virtual HRESULT STDMETHODCALLTYPE createNode(
 1068        VARIANT Type,
 1069        BSTR name,
 1070        BSTR namespaceURI,
 1071        IXMLDOMNode **node) = 0;
 1072
 1073    virtual HRESULT STDMETHODCALLTYPE nodeFromID(
 1074        BSTR idString,
 1075        IXMLDOMNode **node) = 0;
 1076
 1077    virtual HRESULT STDMETHODCALLTYPE load(
 1078        VARIANT xmlSource,
 1079        VARIANT_BOOL *isSuccessful) = 0;
 1080
 1081    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 1082        LONG *value) = 0;
 1083
 1084    virtual HRESULT STDMETHODCALLTYPE get_parseError(
 1085        IXMLDOMParseError **errorObj) = 0;
 1086
 1087    virtual HRESULT STDMETHODCALLTYPE get_url(
 1088        BSTR *urlString) = 0;
 1089
 1090    virtual HRESULT STDMETHODCALLTYPE get_async(
 1091        VARIANT_BOOL *isAsync) = 0;
 1092
 1093    virtual HRESULT STDMETHODCALLTYPE put_async(
 1094        VARIANT_BOOL isAsync) = 0;
 1095
 1096    virtual HRESULT STDMETHODCALLTYPE abort(
 1097        ) = 0;
 1098
 1099    virtual HRESULT STDMETHODCALLTYPE loadXML(
 1100        BSTR bstrXML,
 1101        VARIANT_BOOL *isSuccessful) = 0;
 1102
 1103    virtual HRESULT STDMETHODCALLTYPE save(
 1104        VARIANT destination) = 0;
 1105
 1106    virtual HRESULT STDMETHODCALLTYPE get_validateOnParse(
 1107        VARIANT_BOOL *isValidating) = 0;
 1108
 1109    virtual HRESULT STDMETHODCALLTYPE put_validateOnParse(
 1110        VARIANT_BOOL isValidating) = 0;
 1111
 1112    virtual HRESULT STDMETHODCALLTYPE get_resolveExternals(
 1113        VARIANT_BOOL *isResolving) = 0;
 1114
 1115    virtual HRESULT STDMETHODCALLTYPE put_resolveExternals(
 1116        VARIANT_BOOL isValidating) = 0;
 1117
 1118    virtual HRESULT STDMETHODCALLTYPE get_preserveWhiteSpace(
 1119        VARIANT_BOOL *isPreserving) = 0;
 1120
 1121    virtual HRESULT STDMETHODCALLTYPE put_preserveWhiteSpace(
 1122        VARIANT_BOOL isPreserving) = 0;
 1123
 1124    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
 1125        VARIANT readystatechangeSink) = 0;
 1126
 1127    virtual HRESULT STDMETHODCALLTYPE put_ondataavailable(
 1128        VARIANT ondataavailableSink) = 0;
 1129
 1130    virtual HRESULT STDMETHODCALLTYPE put_ontransformnode(
 1131        VARIANT ontransformnodeSink) = 0;
 1132
 1133};
 1134#ifdef __CRT_UUID_DECL
 1135__CRT_UUID_DECL(IXMLDOMDocument, 0x2933bf81, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 1136#endif
 1137#else
 1138typedef struct IXMLDOMDocumentVtbl {
 1139    BEGIN_INTERFACE
 1140
 1141    /*** IUnknown methods ***/
 1142    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1143        IXMLDOMDocument *This,
 1144        REFIID riid,
 1145        void **ppvObject);
 1146
 1147    ULONG (STDMETHODCALLTYPE *AddRef)(
 1148        IXMLDOMDocument *This);
 1149
 1150    ULONG (STDMETHODCALLTYPE *Release)(
 1151        IXMLDOMDocument *This);
 1152
 1153    /*** IDispatch methods ***/
 1154    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1155        IXMLDOMDocument *This,
 1156        UINT *pctinfo);
 1157
 1158    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1159        IXMLDOMDocument *This,
 1160        UINT iTInfo,
 1161        LCID lcid,
 1162        ITypeInfo **ppTInfo);
 1163
 1164    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1165        IXMLDOMDocument *This,
 1166        REFIID riid,
 1167        LPOLESTR *rgszNames,
 1168        UINT cNames,
 1169        LCID lcid,
 1170        DISPID *rgDispId);
 1171
 1172    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1173        IXMLDOMDocument *This,
 1174        DISPID dispIdMember,
 1175        REFIID riid,
 1176        LCID lcid,
 1177        WORD wFlags,
 1178        DISPPARAMS *pDispParams,
 1179        VARIANT *pVarResult,
 1180        EXCEPINFO *pExcepInfo,
 1181        UINT *puArgErr);
 1182
 1183    /*** IXMLDOMNode methods ***/
 1184    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 1185        IXMLDOMDocument *This,
 1186        BSTR *name);
 1187
 1188    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 1189        IXMLDOMDocument *This,
 1190        VARIANT *value);
 1191
 1192    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 1193        IXMLDOMDocument *This,
 1194        VARIANT value);
 1195
 1196    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 1197        IXMLDOMDocument *This,
 1198        DOMNodeType *type);
 1199
 1200    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 1201        IXMLDOMDocument *This,
 1202        IXMLDOMNode **parent);
 1203
 1204    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 1205        IXMLDOMDocument *This,
 1206        IXMLDOMNodeList **childList);
 1207
 1208    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 1209        IXMLDOMDocument *This,
 1210        IXMLDOMNode **firstChild);
 1211
 1212    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 1213        IXMLDOMDocument *This,
 1214        IXMLDOMNode **lastChild);
 1215
 1216    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 1217        IXMLDOMDocument *This,
 1218        IXMLDOMNode **previousSibling);
 1219
 1220    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 1221        IXMLDOMDocument *This,
 1222        IXMLDOMNode **nextSibling);
 1223
 1224    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 1225        IXMLDOMDocument *This,
 1226        IXMLDOMNamedNodeMap **attributeMap);
 1227
 1228    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 1229        IXMLDOMDocument *This,
 1230        IXMLDOMNode *newChild,
 1231        VARIANT refChild,
 1232        IXMLDOMNode **outNewChild);
 1233
 1234    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 1235        IXMLDOMDocument *This,
 1236        IXMLDOMNode *newChild,
 1237        IXMLDOMNode *oldChild,
 1238        IXMLDOMNode **outOldChild);
 1239
 1240    HRESULT (STDMETHODCALLTYPE *removeChild)(
 1241        IXMLDOMDocument *This,
 1242        IXMLDOMNode *childNode,
 1243        IXMLDOMNode **oldChild);
 1244
 1245    HRESULT (STDMETHODCALLTYPE *appendChild)(
 1246        IXMLDOMDocument *This,
 1247        IXMLDOMNode *newChild,
 1248        IXMLDOMNode **outNewChild);
 1249
 1250    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 1251        IXMLDOMDocument *This,
 1252        VARIANT_BOOL *hasChild);
 1253
 1254    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 1255        IXMLDOMDocument *This,
 1256        IXMLDOMDocument **DOMDocument);
 1257
 1258    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 1259        IXMLDOMDocument *This,
 1260        VARIANT_BOOL deep,
 1261        IXMLDOMNode **cloneRoot);
 1262
 1263    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 1264        IXMLDOMDocument *This,
 1265        BSTR *nodeType);
 1266
 1267    HRESULT (STDMETHODCALLTYPE *get_text)(
 1268        IXMLDOMDocument *This,
 1269        BSTR *text);
 1270
 1271    HRESULT (STDMETHODCALLTYPE *put_text)(
 1272        IXMLDOMDocument *This,
 1273        BSTR text);
 1274
 1275    HRESULT (STDMETHODCALLTYPE *get_specified)(
 1276        IXMLDOMDocument *This,
 1277        VARIANT_BOOL *isSpecified);
 1278
 1279    HRESULT (STDMETHODCALLTYPE *get_definition)(
 1280        IXMLDOMDocument *This,
 1281        IXMLDOMNode **definitionNode);
 1282
 1283    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 1284        IXMLDOMDocument *This,
 1285        VARIANT *typedValue);
 1286
 1287    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 1288        IXMLDOMDocument *This,
 1289        VARIANT typedValue);
 1290
 1291    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 1292        IXMLDOMDocument *This,
 1293        VARIANT *dataTypeName);
 1294
 1295    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 1296        IXMLDOMDocument *This,
 1297        BSTR dataTypeName);
 1298
 1299    HRESULT (STDMETHODCALLTYPE *get_xml)(
 1300        IXMLDOMDocument *This,
 1301        BSTR *xmlString);
 1302
 1303    HRESULT (STDMETHODCALLTYPE *transformNode)(
 1304        IXMLDOMDocument *This,
 1305        IXMLDOMNode *styleSheet,
 1306        BSTR *xmlString);
 1307
 1308    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 1309        IXMLDOMDocument *This,
 1310        BSTR queryString,
 1311        IXMLDOMNodeList **resultList);
 1312
 1313    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 1314        IXMLDOMDocument *This,
 1315        BSTR queryString,
 1316        IXMLDOMNode **resultNode);
 1317
 1318    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 1319        IXMLDOMDocument *This,
 1320        VARIANT_BOOL *isParsed);
 1321
 1322    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 1323        IXMLDOMDocument *This,
 1324        BSTR *namespaceURI);
 1325
 1326    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 1327        IXMLDOMDocument *This,
 1328        BSTR *prefixString);
 1329
 1330    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 1331        IXMLDOMDocument *This,
 1332        BSTR *nameString);
 1333
 1334    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 1335        IXMLDOMDocument *This,
 1336        IXMLDOMNode *stylesheet,
 1337        VARIANT outputObject);
 1338
 1339    /*** IXMLDOMDocument methods ***/
 1340    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 1341        IXMLDOMDocument *This,
 1342        IXMLDOMDocumentType **documentType);
 1343
 1344    HRESULT (STDMETHODCALLTYPE *get_implementation)(
 1345        IXMLDOMDocument *This,
 1346        IXMLDOMImplementation **impl);
 1347
 1348    HRESULT (STDMETHODCALLTYPE *get_documentElement)(
 1349        IXMLDOMDocument *This,
 1350        IXMLDOMElement **DOMElement);
 1351
 1352    HRESULT (STDMETHODCALLTYPE *putref_documentElement)(
 1353        IXMLDOMDocument *This,
 1354        IXMLDOMElement *DOMElement);
 1355
 1356    HRESULT (STDMETHODCALLTYPE *createElement)(
 1357        IXMLDOMDocument *This,
 1358        BSTR tagname,
 1359        IXMLDOMElement **element);
 1360
 1361    HRESULT (STDMETHODCALLTYPE *createDocumentFragment)(
 1362        IXMLDOMDocument *This,
 1363        IXMLDOMDocumentFragment **docFrag);
 1364
 1365    HRESULT (STDMETHODCALLTYPE *createTextNode)(
 1366        IXMLDOMDocument *This,
 1367        BSTR data,
 1368        IXMLDOMText **text);
 1369
 1370    HRESULT (STDMETHODCALLTYPE *createComment)(
 1371        IXMLDOMDocument *This,
 1372        BSTR data,
 1373        IXMLDOMComment **comment);
 1374
 1375    HRESULT (STDMETHODCALLTYPE *createCDATASection)(
 1376        IXMLDOMDocument *This,
 1377        BSTR data,
 1378        IXMLDOMCDATASection **cdata);
 1379
 1380    HRESULT (STDMETHODCALLTYPE *createProcessingInstruction)(
 1381        IXMLDOMDocument *This,
 1382        BSTR target,
 1383        BSTR data,
 1384        IXMLDOMProcessingInstruction **pi);
 1385
 1386    HRESULT (STDMETHODCALLTYPE *createAttribute)(
 1387        IXMLDOMDocument *This,
 1388        BSTR name,
 1389        IXMLDOMAttribute **attribute);
 1390
 1391    HRESULT (STDMETHODCALLTYPE *createEntityReference)(
 1392        IXMLDOMDocument *This,
 1393        BSTR name,
 1394        IXMLDOMEntityReference **entityRef);
 1395
 1396    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 1397        IXMLDOMDocument *This,
 1398        BSTR tagName,
 1399        IXMLDOMNodeList **resultList);
 1400
 1401    HRESULT (STDMETHODCALLTYPE *createNode)(
 1402        IXMLDOMDocument *This,
 1403        VARIANT Type,
 1404        BSTR name,
 1405        BSTR namespaceURI,
 1406        IXMLDOMNode **node);
 1407
 1408    HRESULT (STDMETHODCALLTYPE *nodeFromID)(
 1409        IXMLDOMDocument *This,
 1410        BSTR idString,
 1411        IXMLDOMNode **node);
 1412
 1413    HRESULT (STDMETHODCALLTYPE *load)(
 1414        IXMLDOMDocument *This,
 1415        VARIANT xmlSource,
 1416        VARIANT_BOOL *isSuccessful);
 1417
 1418    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 1419        IXMLDOMDocument *This,
 1420        LONG *value);
 1421
 1422    HRESULT (STDMETHODCALLTYPE *get_parseError)(
 1423        IXMLDOMDocument *This,
 1424        IXMLDOMParseError **errorObj);
 1425
 1426    HRESULT (STDMETHODCALLTYPE *get_url)(
 1427        IXMLDOMDocument *This,
 1428        BSTR *urlString);
 1429
 1430    HRESULT (STDMETHODCALLTYPE *get_async)(
 1431        IXMLDOMDocument *This,
 1432        VARIANT_BOOL *isAsync);
 1433
 1434    HRESULT (STDMETHODCALLTYPE *put_async)(
 1435        IXMLDOMDocument *This,
 1436        VARIANT_BOOL isAsync);
 1437
 1438    HRESULT (STDMETHODCALLTYPE *abort)(
 1439        IXMLDOMDocument *This);
 1440
 1441    HRESULT (STDMETHODCALLTYPE *loadXML)(
 1442        IXMLDOMDocument *This,
 1443        BSTR bstrXML,
 1444        VARIANT_BOOL *isSuccessful);
 1445
 1446    HRESULT (STDMETHODCALLTYPE *save)(
 1447        IXMLDOMDocument *This,
 1448        VARIANT destination);
 1449
 1450    HRESULT (STDMETHODCALLTYPE *get_validateOnParse)(
 1451        IXMLDOMDocument *This,
 1452        VARIANT_BOOL *isValidating);
 1453
 1454    HRESULT (STDMETHODCALLTYPE *put_validateOnParse)(
 1455        IXMLDOMDocument *This,
 1456        VARIANT_BOOL isValidating);
 1457
 1458    HRESULT (STDMETHODCALLTYPE *get_resolveExternals)(
 1459        IXMLDOMDocument *This,
 1460        VARIANT_BOOL *isResolving);
 1461
 1462    HRESULT (STDMETHODCALLTYPE *put_resolveExternals)(
 1463        IXMLDOMDocument *This,
 1464        VARIANT_BOOL isValidating);
 1465
 1466    HRESULT (STDMETHODCALLTYPE *get_preserveWhiteSpace)(
 1467        IXMLDOMDocument *This,
 1468        VARIANT_BOOL *isPreserving);
 1469
 1470    HRESULT (STDMETHODCALLTYPE *put_preserveWhiteSpace)(
 1471        IXMLDOMDocument *This,
 1472        VARIANT_BOOL isPreserving);
 1473
 1474    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
 1475        IXMLDOMDocument *This,
 1476        VARIANT readystatechangeSink);
 1477
 1478    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
 1479        IXMLDOMDocument *This,
 1480        VARIANT ondataavailableSink);
 1481
 1482    HRESULT (STDMETHODCALLTYPE *put_ontransformnode)(
 1483        IXMLDOMDocument *This,
 1484        VARIANT ontransformnodeSink);
 1485
 1486    END_INTERFACE
 1487} IXMLDOMDocumentVtbl;
 1488
 1489interface IXMLDOMDocument {
 1490    CONST_VTBL IXMLDOMDocumentVtbl* lpVtbl;
 1491};
 1492
 1493#ifdef COBJMACROS
 1494#ifndef WIDL_C_INLINE_WRAPPERS
 1495/*** IUnknown methods ***/
 1496#define IXMLDOMDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1497#define IXMLDOMDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
 1498#define IXMLDOMDocument_Release(This) (This)->lpVtbl->Release(This)
 1499/*** IDispatch methods ***/
 1500#define IXMLDOMDocument_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1501#define IXMLDOMDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1502#define IXMLDOMDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1503#define IXMLDOMDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1504/*** IXMLDOMNode methods ***/
 1505#define IXMLDOMDocument_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 1506#define IXMLDOMDocument_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 1507#define IXMLDOMDocument_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 1508#define IXMLDOMDocument_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 1509#define IXMLDOMDocument_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 1510#define IXMLDOMDocument_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 1511#define IXMLDOMDocument_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 1512#define IXMLDOMDocument_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 1513#define IXMLDOMDocument_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 1514#define IXMLDOMDocument_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 1515#define IXMLDOMDocument_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 1516#define IXMLDOMDocument_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 1517#define IXMLDOMDocument_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 1518#define IXMLDOMDocument_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 1519#define IXMLDOMDocument_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 1520#define IXMLDOMDocument_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 1521#define IXMLDOMDocument_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 1522#define IXMLDOMDocument_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 1523#define IXMLDOMDocument_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 1524#define IXMLDOMDocument_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 1525#define IXMLDOMDocument_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 1526#define IXMLDOMDocument_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 1527#define IXMLDOMDocument_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 1528#define IXMLDOMDocument_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 1529#define IXMLDOMDocument_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 1530#define IXMLDOMDocument_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 1531#define IXMLDOMDocument_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 1532#define IXMLDOMDocument_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 1533#define IXMLDOMDocument_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 1534#define IXMLDOMDocument_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 1535#define IXMLDOMDocument_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 1536#define IXMLDOMDocument_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 1537#define IXMLDOMDocument_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 1538#define IXMLDOMDocument_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 1539#define IXMLDOMDocument_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 1540#define IXMLDOMDocument_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 1541/*** IXMLDOMDocument methods ***/
 1542#define IXMLDOMDocument_get_doctype(This,documentType) (This)->lpVtbl->get_doctype(This,documentType)
 1543#define IXMLDOMDocument_get_implementation(This,impl) (This)->lpVtbl->get_implementation(This,impl)
 1544#define IXMLDOMDocument_get_documentElement(This,DOMElement) (This)->lpVtbl->get_documentElement(This,DOMElement)
 1545#define IXMLDOMDocument_putref_documentElement(This,DOMElement) (This)->lpVtbl->putref_documentElement(This,DOMElement)
 1546#define IXMLDOMDocument_createElement(This,tagname,element) (This)->lpVtbl->createElement(This,tagname,element)
 1547#define IXMLDOMDocument_createDocumentFragment(This,docFrag) (This)->lpVtbl->createDocumentFragment(This,docFrag)
 1548#define IXMLDOMDocument_createTextNode(This,data,text) (This)->lpVtbl->createTextNode(This,data,text)
 1549#define IXMLDOMDocument_createComment(This,data,comment) (This)->lpVtbl->createComment(This,data,comment)
 1550#define IXMLDOMDocument_createCDATASection(This,data,cdata) (This)->lpVtbl->createCDATASection(This,data,cdata)
 1551#define IXMLDOMDocument_createProcessingInstruction(This,target,data,pi) (This)->lpVtbl->createProcessingInstruction(This,target,data,pi)
 1552#define IXMLDOMDocument_createAttribute(This,name,attribute) (This)->lpVtbl->createAttribute(This,name,attribute)
 1553#define IXMLDOMDocument_createEntityReference(This,name,entityRef) (This)->lpVtbl->createEntityReference(This,name,entityRef)
 1554#define IXMLDOMDocument_getElementsByTagName(This,tagName,resultList) (This)->lpVtbl->getElementsByTagName(This,tagName,resultList)
 1555#define IXMLDOMDocument_createNode(This,Type,name,namespaceURI,node) (This)->lpVtbl->createNode(This,Type,name,namespaceURI,node)
 1556#define IXMLDOMDocument_nodeFromID(This,idString,node) (This)->lpVtbl->nodeFromID(This,idString,node)
 1557#define IXMLDOMDocument_load(This,xmlSource,isSuccessful) (This)->lpVtbl->load(This,xmlSource,isSuccessful)
 1558#define IXMLDOMDocument_get_readyState(This,value) (This)->lpVtbl->get_readyState(This,value)
 1559#define IXMLDOMDocument_get_parseError(This,errorObj) (This)->lpVtbl->get_parseError(This,errorObj)
 1560#define IXMLDOMDocument_get_url(This,urlString) (This)->lpVtbl->get_url(This,urlString)
 1561#define IXMLDOMDocument_get_async(This,isAsync) (This)->lpVtbl->get_async(This,isAsync)
 1562#define IXMLDOMDocument_put_async(This,isAsync) (This)->lpVtbl->put_async(This,isAsync)
 1563#define IXMLDOMDocument_abort(This) (This)->lpVtbl->abort(This)
 1564#define IXMLDOMDocument_loadXML(This,bstrXML,isSuccessful) (This)->lpVtbl->loadXML(This,bstrXML,isSuccessful)
 1565#define IXMLDOMDocument_save(This,destination) (This)->lpVtbl->save(This,destination)
 1566#define IXMLDOMDocument_get_validateOnParse(This,isValidating) (This)->lpVtbl->get_validateOnParse(This,isValidating)
 1567#define IXMLDOMDocument_put_validateOnParse(This,isValidating) (This)->lpVtbl->put_validateOnParse(This,isValidating)
 1568#define IXMLDOMDocument_get_resolveExternals(This,isResolving) (This)->lpVtbl->get_resolveExternals(This,isResolving)
 1569#define IXMLDOMDocument_put_resolveExternals(This,isValidating) (This)->lpVtbl->put_resolveExternals(This,isValidating)
 1570#define IXMLDOMDocument_get_preserveWhiteSpace(This,isPreserving) (This)->lpVtbl->get_preserveWhiteSpace(This,isPreserving)
 1571#define IXMLDOMDocument_put_preserveWhiteSpace(This,isPreserving) (This)->lpVtbl->put_preserveWhiteSpace(This,isPreserving)
 1572#define IXMLDOMDocument_put_onreadystatechange(This,readystatechangeSink) (This)->lpVtbl->put_onreadystatechange(This,readystatechangeSink)
 1573#define IXMLDOMDocument_put_ondataavailable(This,ondataavailableSink) (This)->lpVtbl->put_ondataavailable(This,ondataavailableSink)
 1574#define IXMLDOMDocument_put_ontransformnode(This,ontransformnodeSink) (This)->lpVtbl->put_ontransformnode(This,ontransformnodeSink)
 1575#else
 1576/*** IUnknown methods ***/
 1577static inline HRESULT IXMLDOMDocument_QueryInterface(IXMLDOMDocument* This,REFIID riid,void **ppvObject) {
 1578    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1579}
 1580static inline ULONG IXMLDOMDocument_AddRef(IXMLDOMDocument* This) {
 1581    return This->lpVtbl->AddRef(This);
 1582}
 1583static inline ULONG IXMLDOMDocument_Release(IXMLDOMDocument* This) {
 1584    return This->lpVtbl->Release(This);
 1585}
 1586/*** IDispatch methods ***/
 1587static inline HRESULT IXMLDOMDocument_GetTypeInfoCount(IXMLDOMDocument* This,UINT *pctinfo) {
 1588    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1589}
 1590static inline HRESULT IXMLDOMDocument_GetTypeInfo(IXMLDOMDocument* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1591    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1592}
 1593static inline HRESULT IXMLDOMDocument_GetIDsOfNames(IXMLDOMDocument* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1594    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1595}
 1596static inline HRESULT IXMLDOMDocument_Invoke(IXMLDOMDocument* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1597    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1598}
 1599/*** IXMLDOMNode methods ***/
 1600static inline HRESULT IXMLDOMDocument_get_nodeName(IXMLDOMDocument* This,BSTR *name) {
 1601    return This->lpVtbl->get_nodeName(This,name);
 1602}
 1603static inline HRESULT IXMLDOMDocument_get_nodeValue(IXMLDOMDocument* This,VARIANT *value) {
 1604    return This->lpVtbl->get_nodeValue(This,value);
 1605}
 1606static inline HRESULT IXMLDOMDocument_put_nodeValue(IXMLDOMDocument* This,VARIANT value) {
 1607    return This->lpVtbl->put_nodeValue(This,value);
 1608}
 1609static inline HRESULT IXMLDOMDocument_get_nodeType(IXMLDOMDocument* This,DOMNodeType *type) {
 1610    return This->lpVtbl->get_nodeType(This,type);
 1611}
 1612static inline HRESULT IXMLDOMDocument_get_parentNode(IXMLDOMDocument* This,IXMLDOMNode **parent) {
 1613    return This->lpVtbl->get_parentNode(This,parent);
 1614}
 1615static inline HRESULT IXMLDOMDocument_get_childNodes(IXMLDOMDocument* This,IXMLDOMNodeList **childList) {
 1616    return This->lpVtbl->get_childNodes(This,childList);
 1617}
 1618static inline HRESULT IXMLDOMDocument_get_firstChild(IXMLDOMDocument* This,IXMLDOMNode **firstChild) {
 1619    return This->lpVtbl->get_firstChild(This,firstChild);
 1620}
 1621static inline HRESULT IXMLDOMDocument_get_lastChild(IXMLDOMDocument* This,IXMLDOMNode **lastChild) {
 1622    return This->lpVtbl->get_lastChild(This,lastChild);
 1623}
 1624static inline HRESULT IXMLDOMDocument_get_previousSibling(IXMLDOMDocument* This,IXMLDOMNode **previousSibling) {
 1625    return This->lpVtbl->get_previousSibling(This,previousSibling);
 1626}
 1627static inline HRESULT IXMLDOMDocument_get_nextSibling(IXMLDOMDocument* This,IXMLDOMNode **nextSibling) {
 1628    return This->lpVtbl->get_nextSibling(This,nextSibling);
 1629}
 1630static inline HRESULT IXMLDOMDocument_get_attributes(IXMLDOMDocument* This,IXMLDOMNamedNodeMap **attributeMap) {
 1631    return This->lpVtbl->get_attributes(This,attributeMap);
 1632}
 1633static inline HRESULT IXMLDOMDocument_insertBefore(IXMLDOMDocument* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 1634    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 1635}
 1636static inline HRESULT IXMLDOMDocument_replaceChild(IXMLDOMDocument* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 1637    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 1638}
 1639static inline HRESULT IXMLDOMDocument_removeChild(IXMLDOMDocument* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 1640    return This->lpVtbl->removeChild(This,childNode,oldChild);
 1641}
 1642static inline HRESULT IXMLDOMDocument_appendChild(IXMLDOMDocument* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 1643    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 1644}
 1645static inline HRESULT IXMLDOMDocument_hasChildNodes(IXMLDOMDocument* This,VARIANT_BOOL *hasChild) {
 1646    return This->lpVtbl->hasChildNodes(This,hasChild);
 1647}
 1648static inline HRESULT IXMLDOMDocument_get_ownerDocument(IXMLDOMDocument* This,IXMLDOMDocument **DOMDocument) {
 1649    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 1650}
 1651static inline HRESULT IXMLDOMDocument_cloneNode(IXMLDOMDocument* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 1652    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 1653}
 1654static inline HRESULT IXMLDOMDocument_get_nodeTypeString(IXMLDOMDocument* This,BSTR *nodeType) {
 1655    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 1656}
 1657static inline HRESULT IXMLDOMDocument_get_text(IXMLDOMDocument* This,BSTR *text) {
 1658    return This->lpVtbl->get_text(This,text);
 1659}
 1660static inline HRESULT IXMLDOMDocument_put_text(IXMLDOMDocument* This,BSTR text) {
 1661    return This->lpVtbl->put_text(This,text);
 1662}
 1663static inline HRESULT IXMLDOMDocument_get_specified(IXMLDOMDocument* This,VARIANT_BOOL *isSpecified) {
 1664    return This->lpVtbl->get_specified(This,isSpecified);
 1665}
 1666static inline HRESULT IXMLDOMDocument_get_definition(IXMLDOMDocument* This,IXMLDOMNode **definitionNode) {
 1667    return This->lpVtbl->get_definition(This,definitionNode);
 1668}
 1669static inline HRESULT IXMLDOMDocument_get_nodeTypedValue(IXMLDOMDocument* This,VARIANT *typedValue) {
 1670    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 1671}
 1672static inline HRESULT IXMLDOMDocument_put_nodeTypedValue(IXMLDOMDocument* This,VARIANT typedValue) {
 1673    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 1674}
 1675static inline HRESULT IXMLDOMDocument_get_dataType(IXMLDOMDocument* This,VARIANT *dataTypeName) {
 1676    return This->lpVtbl->get_dataType(This,dataTypeName);
 1677}
 1678static inline HRESULT IXMLDOMDocument_put_dataType(IXMLDOMDocument* This,BSTR dataTypeName) {
 1679    return This->lpVtbl->put_dataType(This,dataTypeName);
 1680}
 1681static inline HRESULT IXMLDOMDocument_get_xml(IXMLDOMDocument* This,BSTR *xmlString) {
 1682    return This->lpVtbl->get_xml(This,xmlString);
 1683}
 1684static inline HRESULT IXMLDOMDocument_transformNode(IXMLDOMDocument* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 1685    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 1686}
 1687static inline HRESULT IXMLDOMDocument_selectNodes(IXMLDOMDocument* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 1688    return This->lpVtbl->selectNodes(This,queryString,resultList);
 1689}
 1690static inline HRESULT IXMLDOMDocument_selectSingleNode(IXMLDOMDocument* This,BSTR queryString,IXMLDOMNode **resultNode) {
 1691    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 1692}
 1693static inline HRESULT IXMLDOMDocument_get_parsed(IXMLDOMDocument* This,VARIANT_BOOL *isParsed) {
 1694    return This->lpVtbl->get_parsed(This,isParsed);
 1695}
 1696static inline HRESULT IXMLDOMDocument_get_namespaceURI(IXMLDOMDocument* This,BSTR *namespaceURI) {
 1697    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 1698}
 1699static inline HRESULT IXMLDOMDocument_get_prefix(IXMLDOMDocument* This,BSTR *prefixString) {
 1700    return This->lpVtbl->get_prefix(This,prefixString);
 1701}
 1702static inline HRESULT IXMLDOMDocument_get_baseName(IXMLDOMDocument* This,BSTR *nameString) {
 1703    return This->lpVtbl->get_baseName(This,nameString);
 1704}
 1705static inline HRESULT IXMLDOMDocument_transformNodeToObject(IXMLDOMDocument* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 1706    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 1707}
 1708/*** IXMLDOMDocument methods ***/
 1709static inline HRESULT IXMLDOMDocument_get_doctype(IXMLDOMDocument* This,IXMLDOMDocumentType **documentType) {
 1710    return This->lpVtbl->get_doctype(This,documentType);
 1711}
 1712static inline HRESULT IXMLDOMDocument_get_implementation(IXMLDOMDocument* This,IXMLDOMImplementation **impl) {
 1713    return This->lpVtbl->get_implementation(This,impl);
 1714}
 1715static inline HRESULT IXMLDOMDocument_get_documentElement(IXMLDOMDocument* This,IXMLDOMElement **DOMElement) {
 1716    return This->lpVtbl->get_documentElement(This,DOMElement);
 1717}
 1718static inline HRESULT IXMLDOMDocument_putref_documentElement(IXMLDOMDocument* This,IXMLDOMElement *DOMElement) {
 1719    return This->lpVtbl->putref_documentElement(This,DOMElement);
 1720}
 1721static inline HRESULT IXMLDOMDocument_createElement(IXMLDOMDocument* This,BSTR tagname,IXMLDOMElement **element) {
 1722    return This->lpVtbl->createElement(This,tagname,element);
 1723}
 1724static inline HRESULT IXMLDOMDocument_createDocumentFragment(IXMLDOMDocument* This,IXMLDOMDocumentFragment **docFrag) {
 1725    return This->lpVtbl->createDocumentFragment(This,docFrag);
 1726}
 1727static inline HRESULT IXMLDOMDocument_createTextNode(IXMLDOMDocument* This,BSTR data,IXMLDOMText **text) {
 1728    return This->lpVtbl->createTextNode(This,data,text);
 1729}
 1730static inline HRESULT IXMLDOMDocument_createComment(IXMLDOMDocument* This,BSTR data,IXMLDOMComment **comment) {
 1731    return This->lpVtbl->createComment(This,data,comment);
 1732}
 1733static inline HRESULT IXMLDOMDocument_createCDATASection(IXMLDOMDocument* This,BSTR data,IXMLDOMCDATASection **cdata) {
 1734    return This->lpVtbl->createCDATASection(This,data,cdata);
 1735}
 1736static inline HRESULT IXMLDOMDocument_createProcessingInstruction(IXMLDOMDocument* This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi) {
 1737    return This->lpVtbl->createProcessingInstruction(This,target,data,pi);
 1738}
 1739static inline HRESULT IXMLDOMDocument_createAttribute(IXMLDOMDocument* This,BSTR name,IXMLDOMAttribute **attribute) {
 1740    return This->lpVtbl->createAttribute(This,name,attribute);
 1741}
 1742static inline HRESULT IXMLDOMDocument_createEntityReference(IXMLDOMDocument* This,BSTR name,IXMLDOMEntityReference **entityRef) {
 1743    return This->lpVtbl->createEntityReference(This,name,entityRef);
 1744}
 1745static inline HRESULT IXMLDOMDocument_getElementsByTagName(IXMLDOMDocument* This,BSTR tagName,IXMLDOMNodeList **resultList) {
 1746    return This->lpVtbl->getElementsByTagName(This,tagName,resultList);
 1747}
 1748static inline HRESULT IXMLDOMDocument_createNode(IXMLDOMDocument* This,VARIANT Type,BSTR name,BSTR namespaceURI,IXMLDOMNode **node) {
 1749    return This->lpVtbl->createNode(This,Type,name,namespaceURI,node);
 1750}
 1751static inline HRESULT IXMLDOMDocument_nodeFromID(IXMLDOMDocument* This,BSTR idString,IXMLDOMNode **node) {
 1752    return This->lpVtbl->nodeFromID(This,idString,node);
 1753}
 1754static inline HRESULT IXMLDOMDocument_load(IXMLDOMDocument* This,VARIANT xmlSource,VARIANT_BOOL *isSuccessful) {
 1755    return This->lpVtbl->load(This,xmlSource,isSuccessful);
 1756}
 1757static inline HRESULT IXMLDOMDocument_get_readyState(IXMLDOMDocument* This,LONG *value) {
 1758    return This->lpVtbl->get_readyState(This,value);
 1759}
 1760static inline HRESULT IXMLDOMDocument_get_parseError(IXMLDOMDocument* This,IXMLDOMParseError **errorObj) {
 1761    return This->lpVtbl->get_parseError(This,errorObj);
 1762}
 1763static inline HRESULT IXMLDOMDocument_get_url(IXMLDOMDocument* This,BSTR *urlString) {
 1764    return This->lpVtbl->get_url(This,urlString);
 1765}
 1766static inline HRESULT IXMLDOMDocument_get_async(IXMLDOMDocument* This,VARIANT_BOOL *isAsync) {
 1767    return This->lpVtbl->get_async(This,isAsync);
 1768}
 1769static inline HRESULT IXMLDOMDocument_put_async(IXMLDOMDocument* This,VARIANT_BOOL isAsync) {
 1770    return This->lpVtbl->put_async(This,isAsync);
 1771}
 1772static inline HRESULT IXMLDOMDocument_abort(IXMLDOMDocument* This) {
 1773    return This->lpVtbl->abort(This);
 1774}
 1775static inline HRESULT IXMLDOMDocument_loadXML(IXMLDOMDocument* This,BSTR bstrXML,VARIANT_BOOL *isSuccessful) {
 1776    return This->lpVtbl->loadXML(This,bstrXML,isSuccessful);
 1777}
 1778static inline HRESULT IXMLDOMDocument_save(IXMLDOMDocument* This,VARIANT destination) {
 1779    return This->lpVtbl->save(This,destination);
 1780}
 1781static inline HRESULT IXMLDOMDocument_get_validateOnParse(IXMLDOMDocument* This,VARIANT_BOOL *isValidating) {
 1782    return This->lpVtbl->get_validateOnParse(This,isValidating);
 1783}
 1784static inline HRESULT IXMLDOMDocument_put_validateOnParse(IXMLDOMDocument* This,VARIANT_BOOL isValidating) {
 1785    return This->lpVtbl->put_validateOnParse(This,isValidating);
 1786}
 1787static inline HRESULT IXMLDOMDocument_get_resolveExternals(IXMLDOMDocument* This,VARIANT_BOOL *isResolving) {
 1788    return This->lpVtbl->get_resolveExternals(This,isResolving);
 1789}
 1790static inline HRESULT IXMLDOMDocument_put_resolveExternals(IXMLDOMDocument* This,VARIANT_BOOL isValidating) {
 1791    return This->lpVtbl->put_resolveExternals(This,isValidating);
 1792}
 1793static inline HRESULT IXMLDOMDocument_get_preserveWhiteSpace(IXMLDOMDocument* This,VARIANT_BOOL *isPreserving) {
 1794    return This->lpVtbl->get_preserveWhiteSpace(This,isPreserving);
 1795}
 1796static inline HRESULT IXMLDOMDocument_put_preserveWhiteSpace(IXMLDOMDocument* This,VARIANT_BOOL isPreserving) {
 1797    return This->lpVtbl->put_preserveWhiteSpace(This,isPreserving);
 1798}
 1799static inline HRESULT IXMLDOMDocument_put_onreadystatechange(IXMLDOMDocument* This,VARIANT readystatechangeSink) {
 1800    return This->lpVtbl->put_onreadystatechange(This,readystatechangeSink);
 1801}
 1802static inline HRESULT IXMLDOMDocument_put_ondataavailable(IXMLDOMDocument* This,VARIANT ondataavailableSink) {
 1803    return This->lpVtbl->put_ondataavailable(This,ondataavailableSink);
 1804}
 1805static inline HRESULT IXMLDOMDocument_put_ontransformnode(IXMLDOMDocument* This,VARIANT ontransformnodeSink) {
 1806    return This->lpVtbl->put_ontransformnode(This,ontransformnodeSink);
 1807}
 1808#endif
 1809#endif
 1810
 1811#endif
 1812
 1813
 1814#endif  /* __IXMLDOMDocument_INTERFACE_DEFINED__ */
 1815
 1816/*****************************************************************************
 1817 * IXMLDOMNodeList interface
 1818 */
 1819#ifndef __IXMLDOMNodeList_INTERFACE_DEFINED__
 1820#define __IXMLDOMNodeList_INTERFACE_DEFINED__
 1821
 1822DEFINE_GUID(IID_IXMLDOMNodeList, 0x2933bf82, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 1823#if defined(__cplusplus) && !defined(CINTERFACE)
 1824MIDL_INTERFACE("2933bf82-7b36-11d2-b20e-00c04f983e60")
 1825IXMLDOMNodeList : public IDispatch
 1826{
 1827    virtual HRESULT STDMETHODCALLTYPE get_item(
 1828        LONG index,
 1829        IXMLDOMNode **listItem) = 0;
 1830
 1831    virtual HRESULT STDMETHODCALLTYPE get_length(
 1832        LONG *listLength) = 0;
 1833
 1834    virtual HRESULT STDMETHODCALLTYPE nextNode(
 1835        IXMLDOMNode **nextItem) = 0;
 1836
 1837    virtual HRESULT STDMETHODCALLTYPE reset(
 1838        ) = 0;
 1839
 1840    virtual HRESULT STDMETHODCALLTYPE _newEnum(
 1841        IUnknown **ppUnk) = 0;
 1842
 1843};
 1844#ifdef __CRT_UUID_DECL
 1845__CRT_UUID_DECL(IXMLDOMNodeList, 0x2933bf82, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 1846#endif
 1847#else
 1848typedef struct IXMLDOMNodeListVtbl {
 1849    BEGIN_INTERFACE
 1850
 1851    /*** IUnknown methods ***/
 1852    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1853        IXMLDOMNodeList *This,
 1854        REFIID riid,
 1855        void **ppvObject);
 1856
 1857    ULONG (STDMETHODCALLTYPE *AddRef)(
 1858        IXMLDOMNodeList *This);
 1859
 1860    ULONG (STDMETHODCALLTYPE *Release)(
 1861        IXMLDOMNodeList *This);
 1862
 1863    /*** IDispatch methods ***/
 1864    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1865        IXMLDOMNodeList *This,
 1866        UINT *pctinfo);
 1867
 1868    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1869        IXMLDOMNodeList *This,
 1870        UINT iTInfo,
 1871        LCID lcid,
 1872        ITypeInfo **ppTInfo);
 1873
 1874    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1875        IXMLDOMNodeList *This,
 1876        REFIID riid,
 1877        LPOLESTR *rgszNames,
 1878        UINT cNames,
 1879        LCID lcid,
 1880        DISPID *rgDispId);
 1881
 1882    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1883        IXMLDOMNodeList *This,
 1884        DISPID dispIdMember,
 1885        REFIID riid,
 1886        LCID lcid,
 1887        WORD wFlags,
 1888        DISPPARAMS *pDispParams,
 1889        VARIANT *pVarResult,
 1890        EXCEPINFO *pExcepInfo,
 1891        UINT *puArgErr);
 1892
 1893    /*** IXMLDOMNodeList methods ***/
 1894    HRESULT (STDMETHODCALLTYPE *get_item)(
 1895        IXMLDOMNodeList *This,
 1896        LONG index,
 1897        IXMLDOMNode **listItem);
 1898
 1899    HRESULT (STDMETHODCALLTYPE *get_length)(
 1900        IXMLDOMNodeList *This,
 1901        LONG *listLength);
 1902
 1903    HRESULT (STDMETHODCALLTYPE *nextNode)(
 1904        IXMLDOMNodeList *This,
 1905        IXMLDOMNode **nextItem);
 1906
 1907    HRESULT (STDMETHODCALLTYPE *reset)(
 1908        IXMLDOMNodeList *This);
 1909
 1910    HRESULT (STDMETHODCALLTYPE *_newEnum)(
 1911        IXMLDOMNodeList *This,
 1912        IUnknown **ppUnk);
 1913
 1914    END_INTERFACE
 1915} IXMLDOMNodeListVtbl;
 1916
 1917interface IXMLDOMNodeList {
 1918    CONST_VTBL IXMLDOMNodeListVtbl* lpVtbl;
 1919};
 1920
 1921#ifdef COBJMACROS
 1922#ifndef WIDL_C_INLINE_WRAPPERS
 1923/*** IUnknown methods ***/
 1924#define IXMLDOMNodeList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1925#define IXMLDOMNodeList_AddRef(This) (This)->lpVtbl->AddRef(This)
 1926#define IXMLDOMNodeList_Release(This) (This)->lpVtbl->Release(This)
 1927/*** IDispatch methods ***/
 1928#define IXMLDOMNodeList_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1929#define IXMLDOMNodeList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1930#define IXMLDOMNodeList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1931#define IXMLDOMNodeList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1932/*** IXMLDOMNodeList methods ***/
 1933#define IXMLDOMNodeList_get_item(This,index,listItem) (This)->lpVtbl->get_item(This,index,listItem)
 1934#define IXMLDOMNodeList_get_length(This,listLength) (This)->lpVtbl->get_length(This,listLength)
 1935#define IXMLDOMNodeList_nextNode(This,nextItem) (This)->lpVtbl->nextNode(This,nextItem)
 1936#define IXMLDOMNodeList_reset(This) (This)->lpVtbl->reset(This)
 1937#define IXMLDOMNodeList__newEnum(This,ppUnk) (This)->lpVtbl->_newEnum(This,ppUnk)
 1938#else
 1939/*** IUnknown methods ***/
 1940static inline HRESULT IXMLDOMNodeList_QueryInterface(IXMLDOMNodeList* This,REFIID riid,void **ppvObject) {
 1941    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1942}
 1943static inline ULONG IXMLDOMNodeList_AddRef(IXMLDOMNodeList* This) {
 1944    return This->lpVtbl->AddRef(This);
 1945}
 1946static inline ULONG IXMLDOMNodeList_Release(IXMLDOMNodeList* This) {
 1947    return This->lpVtbl->Release(This);
 1948}
 1949/*** IDispatch methods ***/
 1950static inline HRESULT IXMLDOMNodeList_GetTypeInfoCount(IXMLDOMNodeList* This,UINT *pctinfo) {
 1951    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1952}
 1953static inline HRESULT IXMLDOMNodeList_GetTypeInfo(IXMLDOMNodeList* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1954    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1955}
 1956static inline HRESULT IXMLDOMNodeList_GetIDsOfNames(IXMLDOMNodeList* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1957    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1958}
 1959static inline HRESULT IXMLDOMNodeList_Invoke(IXMLDOMNodeList* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1960    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1961}
 1962/*** IXMLDOMNodeList methods ***/
 1963static inline HRESULT IXMLDOMNodeList_get_item(IXMLDOMNodeList* This,LONG index,IXMLDOMNode **listItem) {
 1964    return This->lpVtbl->get_item(This,index,listItem);
 1965}
 1966static inline HRESULT IXMLDOMNodeList_get_length(IXMLDOMNodeList* This,LONG *listLength) {
 1967    return This->lpVtbl->get_length(This,listLength);
 1968}
 1969static inline HRESULT IXMLDOMNodeList_nextNode(IXMLDOMNodeList* This,IXMLDOMNode **nextItem) {
 1970    return This->lpVtbl->nextNode(This,nextItem);
 1971}
 1972static inline HRESULT IXMLDOMNodeList_reset(IXMLDOMNodeList* This) {
 1973    return This->lpVtbl->reset(This);
 1974}
 1975static inline HRESULT IXMLDOMNodeList__newEnum(IXMLDOMNodeList* This,IUnknown **ppUnk) {
 1976    return This->lpVtbl->_newEnum(This,ppUnk);
 1977}
 1978#endif
 1979#endif
 1980
 1981#endif
 1982
 1983
 1984#endif  /* __IXMLDOMNodeList_INTERFACE_DEFINED__ */
 1985
 1986/*****************************************************************************
 1987 * IXMLDOMNamedNodeMap interface
 1988 */
 1989#ifndef __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__
 1990#define __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__
 1991
 1992DEFINE_GUID(IID_IXMLDOMNamedNodeMap, 0x2933bf83, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 1993#if defined(__cplusplus) && !defined(CINTERFACE)
 1994MIDL_INTERFACE("2933bf83-7b36-11d2-b20e-00c04f983e60")
 1995IXMLDOMNamedNodeMap : public IDispatch
 1996{
 1997    virtual HRESULT STDMETHODCALLTYPE getNamedItem(
 1998        BSTR name,
 1999        IXMLDOMNode **namedItem) = 0;
 2000
 2001    virtual HRESULT STDMETHODCALLTYPE setNamedItem(
 2002        IXMLDOMNode *newItem,
 2003        IXMLDOMNode **namedItem) = 0;
 2004
 2005    virtual HRESULT STDMETHODCALLTYPE removeNamedItem(
 2006        BSTR name,
 2007        IXMLDOMNode **namedItem) = 0;
 2008
 2009    virtual HRESULT STDMETHODCALLTYPE get_item(
 2010        LONG index,
 2011        IXMLDOMNode **listItem) = 0;
 2012
 2013    virtual HRESULT STDMETHODCALLTYPE get_length(
 2014        LONG *listLength) = 0;
 2015
 2016    virtual HRESULT STDMETHODCALLTYPE getQualifiedItem(
 2017        BSTR baseName,
 2018        BSTR namespaceURI,
 2019        IXMLDOMNode **qualifiedItem) = 0;
 2020
 2021    virtual HRESULT STDMETHODCALLTYPE removeQualifiedItem(
 2022        BSTR baseName,
 2023        BSTR namespaceURI,
 2024        IXMLDOMNode **qualifiedItem) = 0;
 2025
 2026    virtual HRESULT STDMETHODCALLTYPE nextNode(
 2027        IXMLDOMNode **nextItem) = 0;
 2028
 2029    virtual HRESULT STDMETHODCALLTYPE reset(
 2030        ) = 0;
 2031
 2032    virtual HRESULT STDMETHODCALLTYPE _newEnum(
 2033        IUnknown **ppUnk) = 0;
 2034
 2035};
 2036#ifdef __CRT_UUID_DECL
 2037__CRT_UUID_DECL(IXMLDOMNamedNodeMap, 0x2933bf83, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 2038#endif
 2039#else
 2040typedef struct IXMLDOMNamedNodeMapVtbl {
 2041    BEGIN_INTERFACE
 2042
 2043    /*** IUnknown methods ***/
 2044    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2045        IXMLDOMNamedNodeMap *This,
 2046        REFIID riid,
 2047        void **ppvObject);
 2048
 2049    ULONG (STDMETHODCALLTYPE *AddRef)(
 2050        IXMLDOMNamedNodeMap *This);
 2051
 2052    ULONG (STDMETHODCALLTYPE *Release)(
 2053        IXMLDOMNamedNodeMap *This);
 2054
 2055    /*** IDispatch methods ***/
 2056    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2057        IXMLDOMNamedNodeMap *This,
 2058        UINT *pctinfo);
 2059
 2060    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2061        IXMLDOMNamedNodeMap *This,
 2062        UINT iTInfo,
 2063        LCID lcid,
 2064        ITypeInfo **ppTInfo);
 2065
 2066    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2067        IXMLDOMNamedNodeMap *This,
 2068        REFIID riid,
 2069        LPOLESTR *rgszNames,
 2070        UINT cNames,
 2071        LCID lcid,
 2072        DISPID *rgDispId);
 2073
 2074    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2075        IXMLDOMNamedNodeMap *This,
 2076        DISPID dispIdMember,
 2077        REFIID riid,
 2078        LCID lcid,
 2079        WORD wFlags,
 2080        DISPPARAMS *pDispParams,
 2081        VARIANT *pVarResult,
 2082        EXCEPINFO *pExcepInfo,
 2083        UINT *puArgErr);
 2084
 2085    /*** IXMLDOMNamedNodeMap methods ***/
 2086    HRESULT (STDMETHODCALLTYPE *getNamedItem)(
 2087        IXMLDOMNamedNodeMap *This,
 2088        BSTR name,
 2089        IXMLDOMNode **namedItem);
 2090
 2091    HRESULT (STDMETHODCALLTYPE *setNamedItem)(
 2092        IXMLDOMNamedNodeMap *This,
 2093        IXMLDOMNode *newItem,
 2094        IXMLDOMNode **namedItem);
 2095
 2096    HRESULT (STDMETHODCALLTYPE *removeNamedItem)(
 2097        IXMLDOMNamedNodeMap *This,
 2098        BSTR name,
 2099        IXMLDOMNode **namedItem);
 2100
 2101    HRESULT (STDMETHODCALLTYPE *get_item)(
 2102        IXMLDOMNamedNodeMap *This,
 2103        LONG index,
 2104        IXMLDOMNode **listItem);
 2105
 2106    HRESULT (STDMETHODCALLTYPE *get_length)(
 2107        IXMLDOMNamedNodeMap *This,
 2108        LONG *listLength);
 2109
 2110    HRESULT (STDMETHODCALLTYPE *getQualifiedItem)(
 2111        IXMLDOMNamedNodeMap *This,
 2112        BSTR baseName,
 2113        BSTR namespaceURI,
 2114        IXMLDOMNode **qualifiedItem);
 2115
 2116    HRESULT (STDMETHODCALLTYPE *removeQualifiedItem)(
 2117        IXMLDOMNamedNodeMap *This,
 2118        BSTR baseName,
 2119        BSTR namespaceURI,
 2120        IXMLDOMNode **qualifiedItem);
 2121
 2122    HRESULT (STDMETHODCALLTYPE *nextNode)(
 2123        IXMLDOMNamedNodeMap *This,
 2124        IXMLDOMNode **nextItem);
 2125
 2126    HRESULT (STDMETHODCALLTYPE *reset)(
 2127        IXMLDOMNamedNodeMap *This);
 2128
 2129    HRESULT (STDMETHODCALLTYPE *_newEnum)(
 2130        IXMLDOMNamedNodeMap *This,
 2131        IUnknown **ppUnk);
 2132
 2133    END_INTERFACE
 2134} IXMLDOMNamedNodeMapVtbl;
 2135
 2136interface IXMLDOMNamedNodeMap {
 2137    CONST_VTBL IXMLDOMNamedNodeMapVtbl* lpVtbl;
 2138};
 2139
 2140#ifdef COBJMACROS
 2141#ifndef WIDL_C_INLINE_WRAPPERS
 2142/*** IUnknown methods ***/
 2143#define IXMLDOMNamedNodeMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2144#define IXMLDOMNamedNodeMap_AddRef(This) (This)->lpVtbl->AddRef(This)
 2145#define IXMLDOMNamedNodeMap_Release(This) (This)->lpVtbl->Release(This)
 2146/*** IDispatch methods ***/
 2147#define IXMLDOMNamedNodeMap_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2148#define IXMLDOMNamedNodeMap_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2149#define IXMLDOMNamedNodeMap_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2150#define IXMLDOMNamedNodeMap_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2151/*** IXMLDOMNamedNodeMap methods ***/
 2152#define IXMLDOMNamedNodeMap_getNamedItem(This,name,namedItem) (This)->lpVtbl->getNamedItem(This,name,namedItem)
 2153#define IXMLDOMNamedNodeMap_setNamedItem(This,newItem,namedItem) (This)->lpVtbl->setNamedItem(This,newItem,namedItem)
 2154#define IXMLDOMNamedNodeMap_removeNamedItem(This,name,namedItem) (This)->lpVtbl->removeNamedItem(This,name,namedItem)
 2155#define IXMLDOMNamedNodeMap_get_item(This,index,listItem) (This)->lpVtbl->get_item(This,index,listItem)
 2156#define IXMLDOMNamedNodeMap_get_length(This,listLength) (This)->lpVtbl->get_length(This,listLength)
 2157#define IXMLDOMNamedNodeMap_getQualifiedItem(This,baseName,namespaceURI,qualifiedItem) (This)->lpVtbl->getQualifiedItem(This,baseName,namespaceURI,qualifiedItem)
 2158#define IXMLDOMNamedNodeMap_removeQualifiedItem(This,baseName,namespaceURI,qualifiedItem) (This)->lpVtbl->removeQualifiedItem(This,baseName,namespaceURI,qualifiedItem)
 2159#define IXMLDOMNamedNodeMap_nextNode(This,nextItem) (This)->lpVtbl->nextNode(This,nextItem)
 2160#define IXMLDOMNamedNodeMap_reset(This) (This)->lpVtbl->reset(This)
 2161#define IXMLDOMNamedNodeMap__newEnum(This,ppUnk) (This)->lpVtbl->_newEnum(This,ppUnk)
 2162#else
 2163/*** IUnknown methods ***/
 2164static inline HRESULT IXMLDOMNamedNodeMap_QueryInterface(IXMLDOMNamedNodeMap* This,REFIID riid,void **ppvObject) {
 2165    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2166}
 2167static inline ULONG IXMLDOMNamedNodeMap_AddRef(IXMLDOMNamedNodeMap* This) {
 2168    return This->lpVtbl->AddRef(This);
 2169}
 2170static inline ULONG IXMLDOMNamedNodeMap_Release(IXMLDOMNamedNodeMap* This) {
 2171    return This->lpVtbl->Release(This);
 2172}
 2173/*** IDispatch methods ***/
 2174static inline HRESULT IXMLDOMNamedNodeMap_GetTypeInfoCount(IXMLDOMNamedNodeMap* This,UINT *pctinfo) {
 2175    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2176}
 2177static inline HRESULT IXMLDOMNamedNodeMap_GetTypeInfo(IXMLDOMNamedNodeMap* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2178    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2179}
 2180static inline HRESULT IXMLDOMNamedNodeMap_GetIDsOfNames(IXMLDOMNamedNodeMap* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2181    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2182}
 2183static inline HRESULT IXMLDOMNamedNodeMap_Invoke(IXMLDOMNamedNodeMap* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2184    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2185}
 2186/*** IXMLDOMNamedNodeMap methods ***/
 2187static inline HRESULT IXMLDOMNamedNodeMap_getNamedItem(IXMLDOMNamedNodeMap* This,BSTR name,IXMLDOMNode **namedItem) {
 2188    return This->lpVtbl->getNamedItem(This,name,namedItem);
 2189}
 2190static inline HRESULT IXMLDOMNamedNodeMap_setNamedItem(IXMLDOMNamedNodeMap* This,IXMLDOMNode *newItem,IXMLDOMNode **namedItem) {
 2191    return This->lpVtbl->setNamedItem(This,newItem,namedItem);
 2192}
 2193static inline HRESULT IXMLDOMNamedNodeMap_removeNamedItem(IXMLDOMNamedNodeMap* This,BSTR name,IXMLDOMNode **namedItem) {
 2194    return This->lpVtbl->removeNamedItem(This,name,namedItem);
 2195}
 2196static inline HRESULT IXMLDOMNamedNodeMap_get_item(IXMLDOMNamedNodeMap* This,LONG index,IXMLDOMNode **listItem) {
 2197    return This->lpVtbl->get_item(This,index,listItem);
 2198}
 2199static inline HRESULT IXMLDOMNamedNodeMap_get_length(IXMLDOMNamedNodeMap* This,LONG *listLength) {
 2200    return This->lpVtbl->get_length(This,listLength);
 2201}
 2202static inline HRESULT IXMLDOMNamedNodeMap_getQualifiedItem(IXMLDOMNamedNodeMap* This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem) {
 2203    return This->lpVtbl->getQualifiedItem(This,baseName,namespaceURI,qualifiedItem);
 2204}
 2205static inline HRESULT IXMLDOMNamedNodeMap_removeQualifiedItem(IXMLDOMNamedNodeMap* This,BSTR baseName,BSTR namespaceURI,IXMLDOMNode **qualifiedItem) {
 2206    return This->lpVtbl->removeQualifiedItem(This,baseName,namespaceURI,qualifiedItem);
 2207}
 2208static inline HRESULT IXMLDOMNamedNodeMap_nextNode(IXMLDOMNamedNodeMap* This,IXMLDOMNode **nextItem) {
 2209    return This->lpVtbl->nextNode(This,nextItem);
 2210}
 2211static inline HRESULT IXMLDOMNamedNodeMap_reset(IXMLDOMNamedNodeMap* This) {
 2212    return This->lpVtbl->reset(This);
 2213}
 2214static inline HRESULT IXMLDOMNamedNodeMap__newEnum(IXMLDOMNamedNodeMap* This,IUnknown **ppUnk) {
 2215    return This->lpVtbl->_newEnum(This,ppUnk);
 2216}
 2217#endif
 2218#endif
 2219
 2220#endif
 2221
 2222
 2223#endif  /* __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__ */
 2224
 2225/*****************************************************************************
 2226 * IXMLDOMDocumentFragment interface
 2227 */
 2228#ifndef __IXMLDOMDocumentFragment_INTERFACE_DEFINED__
 2229#define __IXMLDOMDocumentFragment_INTERFACE_DEFINED__
 2230
 2231DEFINE_GUID(IID_IXMLDOMDocumentFragment, 0x3efaa413, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
 2232#if defined(__cplusplus) && !defined(CINTERFACE)
 2233MIDL_INTERFACE("3efaa413-272f-11d2-836f-0000f87a7782")
 2234IXMLDOMDocumentFragment : public IXMLDOMNode
 2235{
 2236};
 2237#ifdef __CRT_UUID_DECL
 2238__CRT_UUID_DECL(IXMLDOMDocumentFragment, 0x3efaa413, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
 2239#endif
 2240#else
 2241typedef struct IXMLDOMDocumentFragmentVtbl {
 2242    BEGIN_INTERFACE
 2243
 2244    /*** IUnknown methods ***/
 2245    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2246        IXMLDOMDocumentFragment *This,
 2247        REFIID riid,
 2248        void **ppvObject);
 2249
 2250    ULONG (STDMETHODCALLTYPE *AddRef)(
 2251        IXMLDOMDocumentFragment *This);
 2252
 2253    ULONG (STDMETHODCALLTYPE *Release)(
 2254        IXMLDOMDocumentFragment *This);
 2255
 2256    /*** IDispatch methods ***/
 2257    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2258        IXMLDOMDocumentFragment *This,
 2259        UINT *pctinfo);
 2260
 2261    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2262        IXMLDOMDocumentFragment *This,
 2263        UINT iTInfo,
 2264        LCID lcid,
 2265        ITypeInfo **ppTInfo);
 2266
 2267    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2268        IXMLDOMDocumentFragment *This,
 2269        REFIID riid,
 2270        LPOLESTR *rgszNames,
 2271        UINT cNames,
 2272        LCID lcid,
 2273        DISPID *rgDispId);
 2274
 2275    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2276        IXMLDOMDocumentFragment *This,
 2277        DISPID dispIdMember,
 2278        REFIID riid,
 2279        LCID lcid,
 2280        WORD wFlags,
 2281        DISPPARAMS *pDispParams,
 2282        VARIANT *pVarResult,
 2283        EXCEPINFO *pExcepInfo,
 2284        UINT *puArgErr);
 2285
 2286    /*** IXMLDOMNode methods ***/
 2287    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 2288        IXMLDOMDocumentFragment *This,
 2289        BSTR *name);
 2290
 2291    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 2292        IXMLDOMDocumentFragment *This,
 2293        VARIANT *value);
 2294
 2295    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 2296        IXMLDOMDocumentFragment *This,
 2297        VARIANT value);
 2298
 2299    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 2300        IXMLDOMDocumentFragment *This,
 2301        DOMNodeType *type);
 2302
 2303    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 2304        IXMLDOMDocumentFragment *This,
 2305        IXMLDOMNode **parent);
 2306
 2307    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 2308        IXMLDOMDocumentFragment *This,
 2309        IXMLDOMNodeList **childList);
 2310
 2311    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 2312        IXMLDOMDocumentFragment *This,
 2313        IXMLDOMNode **firstChild);
 2314
 2315    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 2316        IXMLDOMDocumentFragment *This,
 2317        IXMLDOMNode **lastChild);
 2318
 2319    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 2320        IXMLDOMDocumentFragment *This,
 2321        IXMLDOMNode **previousSibling);
 2322
 2323    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 2324        IXMLDOMDocumentFragment *This,
 2325        IXMLDOMNode **nextSibling);
 2326
 2327    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 2328        IXMLDOMDocumentFragment *This,
 2329        IXMLDOMNamedNodeMap **attributeMap);
 2330
 2331    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 2332        IXMLDOMDocumentFragment *This,
 2333        IXMLDOMNode *newChild,
 2334        VARIANT refChild,
 2335        IXMLDOMNode **outNewChild);
 2336
 2337    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 2338        IXMLDOMDocumentFragment *This,
 2339        IXMLDOMNode *newChild,
 2340        IXMLDOMNode *oldChild,
 2341        IXMLDOMNode **outOldChild);
 2342
 2343    HRESULT (STDMETHODCALLTYPE *removeChild)(
 2344        IXMLDOMDocumentFragment *This,
 2345        IXMLDOMNode *childNode,
 2346        IXMLDOMNode **oldChild);
 2347
 2348    HRESULT (STDMETHODCALLTYPE *appendChild)(
 2349        IXMLDOMDocumentFragment *This,
 2350        IXMLDOMNode *newChild,
 2351        IXMLDOMNode **outNewChild);
 2352
 2353    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 2354        IXMLDOMDocumentFragment *This,
 2355        VARIANT_BOOL *hasChild);
 2356
 2357    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 2358        IXMLDOMDocumentFragment *This,
 2359        IXMLDOMDocument **DOMDocument);
 2360
 2361    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 2362        IXMLDOMDocumentFragment *This,
 2363        VARIANT_BOOL deep,
 2364        IXMLDOMNode **cloneRoot);
 2365
 2366    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 2367        IXMLDOMDocumentFragment *This,
 2368        BSTR *nodeType);
 2369
 2370    HRESULT (STDMETHODCALLTYPE *get_text)(
 2371        IXMLDOMDocumentFragment *This,
 2372        BSTR *text);
 2373
 2374    HRESULT (STDMETHODCALLTYPE *put_text)(
 2375        IXMLDOMDocumentFragment *This,
 2376        BSTR text);
 2377
 2378    HRESULT (STDMETHODCALLTYPE *get_specified)(
 2379        IXMLDOMDocumentFragment *This,
 2380        VARIANT_BOOL *isSpecified);
 2381
 2382    HRESULT (STDMETHODCALLTYPE *get_definition)(
 2383        IXMLDOMDocumentFragment *This,
 2384        IXMLDOMNode **definitionNode);
 2385
 2386    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 2387        IXMLDOMDocumentFragment *This,
 2388        VARIANT *typedValue);
 2389
 2390    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 2391        IXMLDOMDocumentFragment *This,
 2392        VARIANT typedValue);
 2393
 2394    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 2395        IXMLDOMDocumentFragment *This,
 2396        VARIANT *dataTypeName);
 2397
 2398    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 2399        IXMLDOMDocumentFragment *This,
 2400        BSTR dataTypeName);
 2401
 2402    HRESULT (STDMETHODCALLTYPE *get_xml)(
 2403        IXMLDOMDocumentFragment *This,
 2404        BSTR *xmlString);
 2405
 2406    HRESULT (STDMETHODCALLTYPE *transformNode)(
 2407        IXMLDOMDocumentFragment *This,
 2408        IXMLDOMNode *styleSheet,
 2409        BSTR *xmlString);
 2410
 2411    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 2412        IXMLDOMDocumentFragment *This,
 2413        BSTR queryString,
 2414        IXMLDOMNodeList **resultList);
 2415
 2416    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 2417        IXMLDOMDocumentFragment *This,
 2418        BSTR queryString,
 2419        IXMLDOMNode **resultNode);
 2420
 2421    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 2422        IXMLDOMDocumentFragment *This,
 2423        VARIANT_BOOL *isParsed);
 2424
 2425    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 2426        IXMLDOMDocumentFragment *This,
 2427        BSTR *namespaceURI);
 2428
 2429    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 2430        IXMLDOMDocumentFragment *This,
 2431        BSTR *prefixString);
 2432
 2433    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 2434        IXMLDOMDocumentFragment *This,
 2435        BSTR *nameString);
 2436
 2437    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 2438        IXMLDOMDocumentFragment *This,
 2439        IXMLDOMNode *stylesheet,
 2440        VARIANT outputObject);
 2441
 2442    END_INTERFACE
 2443} IXMLDOMDocumentFragmentVtbl;
 2444
 2445interface IXMLDOMDocumentFragment {
 2446    CONST_VTBL IXMLDOMDocumentFragmentVtbl* lpVtbl;
 2447};
 2448
 2449#ifdef COBJMACROS
 2450#ifndef WIDL_C_INLINE_WRAPPERS
 2451/*** IUnknown methods ***/
 2452#define IXMLDOMDocumentFragment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2453#define IXMLDOMDocumentFragment_AddRef(This) (This)->lpVtbl->AddRef(This)
 2454#define IXMLDOMDocumentFragment_Release(This) (This)->lpVtbl->Release(This)
 2455/*** IDispatch methods ***/
 2456#define IXMLDOMDocumentFragment_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2457#define IXMLDOMDocumentFragment_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2458#define IXMLDOMDocumentFragment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2459#define IXMLDOMDocumentFragment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2460/*** IXMLDOMNode methods ***/
 2461#define IXMLDOMDocumentFragment_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 2462#define IXMLDOMDocumentFragment_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 2463#define IXMLDOMDocumentFragment_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 2464#define IXMLDOMDocumentFragment_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 2465#define IXMLDOMDocumentFragment_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 2466#define IXMLDOMDocumentFragment_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 2467#define IXMLDOMDocumentFragment_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 2468#define IXMLDOMDocumentFragment_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 2469#define IXMLDOMDocumentFragment_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 2470#define IXMLDOMDocumentFragment_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 2471#define IXMLDOMDocumentFragment_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 2472#define IXMLDOMDocumentFragment_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 2473#define IXMLDOMDocumentFragment_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 2474#define IXMLDOMDocumentFragment_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 2475#define IXMLDOMDocumentFragment_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 2476#define IXMLDOMDocumentFragment_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 2477#define IXMLDOMDocumentFragment_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 2478#define IXMLDOMDocumentFragment_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 2479#define IXMLDOMDocumentFragment_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 2480#define IXMLDOMDocumentFragment_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 2481#define IXMLDOMDocumentFragment_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 2482#define IXMLDOMDocumentFragment_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 2483#define IXMLDOMDocumentFragment_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 2484#define IXMLDOMDocumentFragment_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 2485#define IXMLDOMDocumentFragment_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 2486#define IXMLDOMDocumentFragment_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 2487#define IXMLDOMDocumentFragment_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 2488#define IXMLDOMDocumentFragment_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 2489#define IXMLDOMDocumentFragment_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 2490#define IXMLDOMDocumentFragment_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 2491#define IXMLDOMDocumentFragment_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 2492#define IXMLDOMDocumentFragment_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 2493#define IXMLDOMDocumentFragment_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 2494#define IXMLDOMDocumentFragment_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 2495#define IXMLDOMDocumentFragment_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 2496#define IXMLDOMDocumentFragment_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 2497#else
 2498/*** IUnknown methods ***/
 2499static inline HRESULT IXMLDOMDocumentFragment_QueryInterface(IXMLDOMDocumentFragment* This,REFIID riid,void **ppvObject) {
 2500    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2501}
 2502static inline ULONG IXMLDOMDocumentFragment_AddRef(IXMLDOMDocumentFragment* This) {
 2503    return This->lpVtbl->AddRef(This);
 2504}
 2505static inline ULONG IXMLDOMDocumentFragment_Release(IXMLDOMDocumentFragment* This) {
 2506    return This->lpVtbl->Release(This);
 2507}
 2508/*** IDispatch methods ***/
 2509static inline HRESULT IXMLDOMDocumentFragment_GetTypeInfoCount(IXMLDOMDocumentFragment* This,UINT *pctinfo) {
 2510    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2511}
 2512static inline HRESULT IXMLDOMDocumentFragment_GetTypeInfo(IXMLDOMDocumentFragment* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2513    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2514}
 2515static inline HRESULT IXMLDOMDocumentFragment_GetIDsOfNames(IXMLDOMDocumentFragment* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2516    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2517}
 2518static inline HRESULT IXMLDOMDocumentFragment_Invoke(IXMLDOMDocumentFragment* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2519    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2520}
 2521/*** IXMLDOMNode methods ***/
 2522static inline HRESULT IXMLDOMDocumentFragment_get_nodeName(IXMLDOMDocumentFragment* This,BSTR *name) {
 2523    return This->lpVtbl->get_nodeName(This,name);
 2524}
 2525static inline HRESULT IXMLDOMDocumentFragment_get_nodeValue(IXMLDOMDocumentFragment* This,VARIANT *value) {
 2526    return This->lpVtbl->get_nodeValue(This,value);
 2527}
 2528static inline HRESULT IXMLDOMDocumentFragment_put_nodeValue(IXMLDOMDocumentFragment* This,VARIANT value) {
 2529    return This->lpVtbl->put_nodeValue(This,value);
 2530}
 2531static inline HRESULT IXMLDOMDocumentFragment_get_nodeType(IXMLDOMDocumentFragment* This,DOMNodeType *type) {
 2532    return This->lpVtbl->get_nodeType(This,type);
 2533}
 2534static inline HRESULT IXMLDOMDocumentFragment_get_parentNode(IXMLDOMDocumentFragment* This,IXMLDOMNode **parent) {
 2535    return This->lpVtbl->get_parentNode(This,parent);
 2536}
 2537static inline HRESULT IXMLDOMDocumentFragment_get_childNodes(IXMLDOMDocumentFragment* This,IXMLDOMNodeList **childList) {
 2538    return This->lpVtbl->get_childNodes(This,childList);
 2539}
 2540static inline HRESULT IXMLDOMDocumentFragment_get_firstChild(IXMLDOMDocumentFragment* This,IXMLDOMNode **firstChild) {
 2541    return This->lpVtbl->get_firstChild(This,firstChild);
 2542}
 2543static inline HRESULT IXMLDOMDocumentFragment_get_lastChild(IXMLDOMDocumentFragment* This,IXMLDOMNode **lastChild) {
 2544    return This->lpVtbl->get_lastChild(This,lastChild);
 2545}
 2546static inline HRESULT IXMLDOMDocumentFragment_get_previousSibling(IXMLDOMDocumentFragment* This,IXMLDOMNode **previousSibling) {
 2547    return This->lpVtbl->get_previousSibling(This,previousSibling);
 2548}
 2549static inline HRESULT IXMLDOMDocumentFragment_get_nextSibling(IXMLDOMDocumentFragment* This,IXMLDOMNode **nextSibling) {
 2550    return This->lpVtbl->get_nextSibling(This,nextSibling);
 2551}
 2552static inline HRESULT IXMLDOMDocumentFragment_get_attributes(IXMLDOMDocumentFragment* This,IXMLDOMNamedNodeMap **attributeMap) {
 2553    return This->lpVtbl->get_attributes(This,attributeMap);
 2554}
 2555static inline HRESULT IXMLDOMDocumentFragment_insertBefore(IXMLDOMDocumentFragment* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 2556    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 2557}
 2558static inline HRESULT IXMLDOMDocumentFragment_replaceChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 2559    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 2560}
 2561static inline HRESULT IXMLDOMDocumentFragment_removeChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 2562    return This->lpVtbl->removeChild(This,childNode,oldChild);
 2563}
 2564static inline HRESULT IXMLDOMDocumentFragment_appendChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 2565    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 2566}
 2567static inline HRESULT IXMLDOMDocumentFragment_hasChildNodes(IXMLDOMDocumentFragment* This,VARIANT_BOOL *hasChild) {
 2568    return This->lpVtbl->hasChildNodes(This,hasChild);
 2569}
 2570static inline HRESULT IXMLDOMDocumentFragment_get_ownerDocument(IXMLDOMDocumentFragment* This,IXMLDOMDocument **DOMDocument) {
 2571    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 2572}
 2573static inline HRESULT IXMLDOMDocumentFragment_cloneNode(IXMLDOMDocumentFragment* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 2574    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 2575}
 2576static inline HRESULT IXMLDOMDocumentFragment_get_nodeTypeString(IXMLDOMDocumentFragment* This,BSTR *nodeType) {
 2577    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 2578}
 2579static inline HRESULT IXMLDOMDocumentFragment_get_text(IXMLDOMDocumentFragment* This,BSTR *text) {
 2580    return This->lpVtbl->get_text(This,text);
 2581}
 2582static inline HRESULT IXMLDOMDocumentFragment_put_text(IXMLDOMDocumentFragment* This,BSTR text) {
 2583    return This->lpVtbl->put_text(This,text);
 2584}
 2585static inline HRESULT IXMLDOMDocumentFragment_get_specified(IXMLDOMDocumentFragment* This,VARIANT_BOOL *isSpecified) {
 2586    return This->lpVtbl->get_specified(This,isSpecified);
 2587}
 2588static inline HRESULT IXMLDOMDocumentFragment_get_definition(IXMLDOMDocumentFragment* This,IXMLDOMNode **definitionNode) {
 2589    return This->lpVtbl->get_definition(This,definitionNode);
 2590}
 2591static inline HRESULT IXMLDOMDocumentFragment_get_nodeTypedValue(IXMLDOMDocumentFragment* This,VARIANT *typedValue) {
 2592    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 2593}
 2594static inline HRESULT IXMLDOMDocumentFragment_put_nodeTypedValue(IXMLDOMDocumentFragment* This,VARIANT typedValue) {
 2595    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 2596}
 2597static inline HRESULT IXMLDOMDocumentFragment_get_dataType(IXMLDOMDocumentFragment* This,VARIANT *dataTypeName) {
 2598    return This->lpVtbl->get_dataType(This,dataTypeName);
 2599}
 2600static inline HRESULT IXMLDOMDocumentFragment_put_dataType(IXMLDOMDocumentFragment* This,BSTR dataTypeName) {
 2601    return This->lpVtbl->put_dataType(This,dataTypeName);
 2602}
 2603static inline HRESULT IXMLDOMDocumentFragment_get_xml(IXMLDOMDocumentFragment* This,BSTR *xmlString) {
 2604    return This->lpVtbl->get_xml(This,xmlString);
 2605}
 2606static inline HRESULT IXMLDOMDocumentFragment_transformNode(IXMLDOMDocumentFragment* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 2607    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 2608}
 2609static inline HRESULT IXMLDOMDocumentFragment_selectNodes(IXMLDOMDocumentFragment* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 2610    return This->lpVtbl->selectNodes(This,queryString,resultList);
 2611}
 2612static inline HRESULT IXMLDOMDocumentFragment_selectSingleNode(IXMLDOMDocumentFragment* This,BSTR queryString,IXMLDOMNode **resultNode) {
 2613    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 2614}
 2615static inline HRESULT IXMLDOMDocumentFragment_get_parsed(IXMLDOMDocumentFragment* This,VARIANT_BOOL *isParsed) {
 2616    return This->lpVtbl->get_parsed(This,isParsed);
 2617}
 2618static inline HRESULT IXMLDOMDocumentFragment_get_namespaceURI(IXMLDOMDocumentFragment* This,BSTR *namespaceURI) {
 2619    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 2620}
 2621static inline HRESULT IXMLDOMDocumentFragment_get_prefix(IXMLDOMDocumentFragment* This,BSTR *prefixString) {
 2622    return This->lpVtbl->get_prefix(This,prefixString);
 2623}
 2624static inline HRESULT IXMLDOMDocumentFragment_get_baseName(IXMLDOMDocumentFragment* This,BSTR *nameString) {
 2625    return This->lpVtbl->get_baseName(This,nameString);
 2626}
 2627static inline HRESULT IXMLDOMDocumentFragment_transformNodeToObject(IXMLDOMDocumentFragment* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 2628    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 2629}
 2630#endif
 2631#endif
 2632
 2633#endif
 2634
 2635
 2636#endif  /* __IXMLDOMDocumentFragment_INTERFACE_DEFINED__ */
 2637
 2638/*****************************************************************************
 2639 * IXMLDOMCharacterData interface
 2640 */
 2641#ifndef __IXMLDOMCharacterData_INTERFACE_DEFINED__
 2642#define __IXMLDOMCharacterData_INTERFACE_DEFINED__
 2643
 2644DEFINE_GUID(IID_IXMLDOMCharacterData, 0x2933bf84, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 2645#if defined(__cplusplus) && !defined(CINTERFACE)
 2646MIDL_INTERFACE("2933bf84-7b36-11d2-b20e-00c04f983e60")
 2647IXMLDOMCharacterData : public IXMLDOMNode
 2648{
 2649    virtual HRESULT STDMETHODCALLTYPE get_data(
 2650        BSTR *data) = 0;
 2651
 2652    virtual HRESULT STDMETHODCALLTYPE put_data(
 2653        BSTR data) = 0;
 2654
 2655    virtual HRESULT STDMETHODCALLTYPE get_length(
 2656        LONG *dataLength) = 0;
 2657
 2658    virtual HRESULT STDMETHODCALLTYPE substringData(
 2659        LONG offset,
 2660        LONG count,
 2661        BSTR *data) = 0;
 2662
 2663    virtual HRESULT STDMETHODCALLTYPE appendData(
 2664        BSTR data) = 0;
 2665
 2666    virtual HRESULT STDMETHODCALLTYPE insertData(
 2667        LONG offset,
 2668        BSTR data) = 0;
 2669
 2670    virtual HRESULT STDMETHODCALLTYPE deleteData(
 2671        LONG offset,
 2672        LONG count) = 0;
 2673
 2674    virtual HRESULT STDMETHODCALLTYPE replaceData(
 2675        LONG offset,
 2676        LONG count,
 2677        BSTR data) = 0;
 2678
 2679};
 2680#ifdef __CRT_UUID_DECL
 2681__CRT_UUID_DECL(IXMLDOMCharacterData, 0x2933bf84, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 2682#endif
 2683#else
 2684typedef struct IXMLDOMCharacterDataVtbl {
 2685    BEGIN_INTERFACE
 2686
 2687    /*** IUnknown methods ***/
 2688    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2689        IXMLDOMCharacterData *This,
 2690        REFIID riid,
 2691        void **ppvObject);
 2692
 2693    ULONG (STDMETHODCALLTYPE *AddRef)(
 2694        IXMLDOMCharacterData *This);
 2695
 2696    ULONG (STDMETHODCALLTYPE *Release)(
 2697        IXMLDOMCharacterData *This);
 2698
 2699    /*** IDispatch methods ***/
 2700    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2701        IXMLDOMCharacterData *This,
 2702        UINT *pctinfo);
 2703
 2704    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2705        IXMLDOMCharacterData *This,
 2706        UINT iTInfo,
 2707        LCID lcid,
 2708        ITypeInfo **ppTInfo);
 2709
 2710    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2711        IXMLDOMCharacterData *This,
 2712        REFIID riid,
 2713        LPOLESTR *rgszNames,
 2714        UINT cNames,
 2715        LCID lcid,
 2716        DISPID *rgDispId);
 2717
 2718    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2719        IXMLDOMCharacterData *This,
 2720        DISPID dispIdMember,
 2721        REFIID riid,
 2722        LCID lcid,
 2723        WORD wFlags,
 2724        DISPPARAMS *pDispParams,
 2725        VARIANT *pVarResult,
 2726        EXCEPINFO *pExcepInfo,
 2727        UINT *puArgErr);
 2728
 2729    /*** IXMLDOMNode methods ***/
 2730    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 2731        IXMLDOMCharacterData *This,
 2732        BSTR *name);
 2733
 2734    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 2735        IXMLDOMCharacterData *This,
 2736        VARIANT *value);
 2737
 2738    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 2739        IXMLDOMCharacterData *This,
 2740        VARIANT value);
 2741
 2742    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 2743        IXMLDOMCharacterData *This,
 2744        DOMNodeType *type);
 2745
 2746    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 2747        IXMLDOMCharacterData *This,
 2748        IXMLDOMNode **parent);
 2749
 2750    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 2751        IXMLDOMCharacterData *This,
 2752        IXMLDOMNodeList **childList);
 2753
 2754    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 2755        IXMLDOMCharacterData *This,
 2756        IXMLDOMNode **firstChild);
 2757
 2758    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 2759        IXMLDOMCharacterData *This,
 2760        IXMLDOMNode **lastChild);
 2761
 2762    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 2763        IXMLDOMCharacterData *This,
 2764        IXMLDOMNode **previousSibling);
 2765
 2766    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 2767        IXMLDOMCharacterData *This,
 2768        IXMLDOMNode **nextSibling);
 2769
 2770    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 2771        IXMLDOMCharacterData *This,
 2772        IXMLDOMNamedNodeMap **attributeMap);
 2773
 2774    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 2775        IXMLDOMCharacterData *This,
 2776        IXMLDOMNode *newChild,
 2777        VARIANT refChild,
 2778        IXMLDOMNode **outNewChild);
 2779
 2780    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 2781        IXMLDOMCharacterData *This,
 2782        IXMLDOMNode *newChild,
 2783        IXMLDOMNode *oldChild,
 2784        IXMLDOMNode **outOldChild);
 2785
 2786    HRESULT (STDMETHODCALLTYPE *removeChild)(
 2787        IXMLDOMCharacterData *This,
 2788        IXMLDOMNode *childNode,
 2789        IXMLDOMNode **oldChild);
 2790
 2791    HRESULT (STDMETHODCALLTYPE *appendChild)(
 2792        IXMLDOMCharacterData *This,
 2793        IXMLDOMNode *newChild,
 2794        IXMLDOMNode **outNewChild);
 2795
 2796    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 2797        IXMLDOMCharacterData *This,
 2798        VARIANT_BOOL *hasChild);
 2799
 2800    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 2801        IXMLDOMCharacterData *This,
 2802        IXMLDOMDocument **DOMDocument);
 2803
 2804    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 2805        IXMLDOMCharacterData *This,
 2806        VARIANT_BOOL deep,
 2807        IXMLDOMNode **cloneRoot);
 2808
 2809    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 2810        IXMLDOMCharacterData *This,
 2811        BSTR *nodeType);
 2812
 2813    HRESULT (STDMETHODCALLTYPE *get_text)(
 2814        IXMLDOMCharacterData *This,
 2815        BSTR *text);
 2816
 2817    HRESULT (STDMETHODCALLTYPE *put_text)(
 2818        IXMLDOMCharacterData *This,
 2819        BSTR text);
 2820
 2821    HRESULT (STDMETHODCALLTYPE *get_specified)(
 2822        IXMLDOMCharacterData *This,
 2823        VARIANT_BOOL *isSpecified);
 2824
 2825    HRESULT (STDMETHODCALLTYPE *get_definition)(
 2826        IXMLDOMCharacterData *This,
 2827        IXMLDOMNode **definitionNode);
 2828
 2829    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 2830        IXMLDOMCharacterData *This,
 2831        VARIANT *typedValue);
 2832
 2833    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 2834        IXMLDOMCharacterData *This,
 2835        VARIANT typedValue);
 2836
 2837    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 2838        IXMLDOMCharacterData *This,
 2839        VARIANT *dataTypeName);
 2840
 2841    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 2842        IXMLDOMCharacterData *This,
 2843        BSTR dataTypeName);
 2844
 2845    HRESULT (STDMETHODCALLTYPE *get_xml)(
 2846        IXMLDOMCharacterData *This,
 2847        BSTR *xmlString);
 2848
 2849    HRESULT (STDMETHODCALLTYPE *transformNode)(
 2850        IXMLDOMCharacterData *This,
 2851        IXMLDOMNode *styleSheet,
 2852        BSTR *xmlString);
 2853
 2854    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 2855        IXMLDOMCharacterData *This,
 2856        BSTR queryString,
 2857        IXMLDOMNodeList **resultList);
 2858
 2859    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 2860        IXMLDOMCharacterData *This,
 2861        BSTR queryString,
 2862        IXMLDOMNode **resultNode);
 2863
 2864    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 2865        IXMLDOMCharacterData *This,
 2866        VARIANT_BOOL *isParsed);
 2867
 2868    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 2869        IXMLDOMCharacterData *This,
 2870        BSTR *namespaceURI);
 2871
 2872    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 2873        IXMLDOMCharacterData *This,
 2874        BSTR *prefixString);
 2875
 2876    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 2877        IXMLDOMCharacterData *This,
 2878        BSTR *nameString);
 2879
 2880    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 2881        IXMLDOMCharacterData *This,
 2882        IXMLDOMNode *stylesheet,
 2883        VARIANT outputObject);
 2884
 2885    /*** IXMLDOMCharacterData methods ***/
 2886    HRESULT (STDMETHODCALLTYPE *get_data)(
 2887        IXMLDOMCharacterData *This,
 2888        BSTR *data);
 2889
 2890    HRESULT (STDMETHODCALLTYPE *put_data)(
 2891        IXMLDOMCharacterData *This,
 2892        BSTR data);
 2893
 2894    HRESULT (STDMETHODCALLTYPE *get_length)(
 2895        IXMLDOMCharacterData *This,
 2896        LONG *dataLength);
 2897
 2898    HRESULT (STDMETHODCALLTYPE *substringData)(
 2899        IXMLDOMCharacterData *This,
 2900        LONG offset,
 2901        LONG count,
 2902        BSTR *data);
 2903
 2904    HRESULT (STDMETHODCALLTYPE *appendData)(
 2905        IXMLDOMCharacterData *This,
 2906        BSTR data);
 2907
 2908    HRESULT (STDMETHODCALLTYPE *insertData)(
 2909        IXMLDOMCharacterData *This,
 2910        LONG offset,
 2911        BSTR data);
 2912
 2913    HRESULT (STDMETHODCALLTYPE *deleteData)(
 2914        IXMLDOMCharacterData *This,
 2915        LONG offset,
 2916        LONG count);
 2917
 2918    HRESULT (STDMETHODCALLTYPE *replaceData)(
 2919        IXMLDOMCharacterData *This,
 2920        LONG offset,
 2921        LONG count,
 2922        BSTR data);
 2923
 2924    END_INTERFACE
 2925} IXMLDOMCharacterDataVtbl;
 2926
 2927interface IXMLDOMCharacterData {
 2928    CONST_VTBL IXMLDOMCharacterDataVtbl* lpVtbl;
 2929};
 2930
 2931#ifdef COBJMACROS
 2932#ifndef WIDL_C_INLINE_WRAPPERS
 2933/*** IUnknown methods ***/
 2934#define IXMLDOMCharacterData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2935#define IXMLDOMCharacterData_AddRef(This) (This)->lpVtbl->AddRef(This)
 2936#define IXMLDOMCharacterData_Release(This) (This)->lpVtbl->Release(This)
 2937/*** IDispatch methods ***/
 2938#define IXMLDOMCharacterData_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2939#define IXMLDOMCharacterData_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2940#define IXMLDOMCharacterData_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2941#define IXMLDOMCharacterData_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2942/*** IXMLDOMNode methods ***/
 2943#define IXMLDOMCharacterData_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 2944#define IXMLDOMCharacterData_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 2945#define IXMLDOMCharacterData_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 2946#define IXMLDOMCharacterData_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 2947#define IXMLDOMCharacterData_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 2948#define IXMLDOMCharacterData_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 2949#define IXMLDOMCharacterData_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 2950#define IXMLDOMCharacterData_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 2951#define IXMLDOMCharacterData_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 2952#define IXMLDOMCharacterData_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 2953#define IXMLDOMCharacterData_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 2954#define IXMLDOMCharacterData_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 2955#define IXMLDOMCharacterData_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 2956#define IXMLDOMCharacterData_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 2957#define IXMLDOMCharacterData_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 2958#define IXMLDOMCharacterData_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 2959#define IXMLDOMCharacterData_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 2960#define IXMLDOMCharacterData_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 2961#define IXMLDOMCharacterData_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 2962#define IXMLDOMCharacterData_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 2963#define IXMLDOMCharacterData_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 2964#define IXMLDOMCharacterData_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 2965#define IXMLDOMCharacterData_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 2966#define IXMLDOMCharacterData_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 2967#define IXMLDOMCharacterData_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 2968#define IXMLDOMCharacterData_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 2969#define IXMLDOMCharacterData_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 2970#define IXMLDOMCharacterData_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 2971#define IXMLDOMCharacterData_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 2972#define IXMLDOMCharacterData_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 2973#define IXMLDOMCharacterData_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 2974#define IXMLDOMCharacterData_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 2975#define IXMLDOMCharacterData_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 2976#define IXMLDOMCharacterData_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 2977#define IXMLDOMCharacterData_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 2978#define IXMLDOMCharacterData_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 2979/*** IXMLDOMCharacterData methods ***/
 2980#define IXMLDOMCharacterData_get_data(This,data) (This)->lpVtbl->get_data(This,data)
 2981#define IXMLDOMCharacterData_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 2982#define IXMLDOMCharacterData_get_length(This,dataLength) (This)->lpVtbl->get_length(This,dataLength)
 2983#define IXMLDOMCharacterData_substringData(This,offset,count,data) (This)->lpVtbl->substringData(This,offset,count,data)
 2984#define IXMLDOMCharacterData_appendData(This,data) (This)->lpVtbl->appendData(This,data)
 2985#define IXMLDOMCharacterData_insertData(This,offset,data) (This)->lpVtbl->insertData(This,offset,data)
 2986#define IXMLDOMCharacterData_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 2987#define IXMLDOMCharacterData_replaceData(This,offset,count,data) (This)->lpVtbl->replaceData(This,offset,count,data)
 2988#else
 2989/*** IUnknown methods ***/
 2990static inline HRESULT IXMLDOMCharacterData_QueryInterface(IXMLDOMCharacterData* This,REFIID riid,void **ppvObject) {
 2991    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2992}
 2993static inline ULONG IXMLDOMCharacterData_AddRef(IXMLDOMCharacterData* This) {
 2994    return This->lpVtbl->AddRef(This);
 2995}
 2996static inline ULONG IXMLDOMCharacterData_Release(IXMLDOMCharacterData* This) {
 2997    return This->lpVtbl->Release(This);
 2998}
 2999/*** IDispatch methods ***/
 3000static inline HRESULT IXMLDOMCharacterData_GetTypeInfoCount(IXMLDOMCharacterData* This,UINT *pctinfo) {
 3001    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3002}
 3003static inline HRESULT IXMLDOMCharacterData_GetTypeInfo(IXMLDOMCharacterData* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3004    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3005}
 3006static inline HRESULT IXMLDOMCharacterData_GetIDsOfNames(IXMLDOMCharacterData* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3007    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3008}
 3009static inline HRESULT IXMLDOMCharacterData_Invoke(IXMLDOMCharacterData* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3010    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3011}
 3012/*** IXMLDOMNode methods ***/
 3013static inline HRESULT IXMLDOMCharacterData_get_nodeName(IXMLDOMCharacterData* This,BSTR *name) {
 3014    return This->lpVtbl->get_nodeName(This,name);
 3015}
 3016static inline HRESULT IXMLDOMCharacterData_get_nodeValue(IXMLDOMCharacterData* This,VARIANT *value) {
 3017    return This->lpVtbl->get_nodeValue(This,value);
 3018}
 3019static inline HRESULT IXMLDOMCharacterData_put_nodeValue(IXMLDOMCharacterData* This,VARIANT value) {
 3020    return This->lpVtbl->put_nodeValue(This,value);
 3021}
 3022static inline HRESULT IXMLDOMCharacterData_get_nodeType(IXMLDOMCharacterData* This,DOMNodeType *type) {
 3023    return This->lpVtbl->get_nodeType(This,type);
 3024}
 3025static inline HRESULT IXMLDOMCharacterData_get_parentNode(IXMLDOMCharacterData* This,IXMLDOMNode **parent) {
 3026    return This->lpVtbl->get_parentNode(This,parent);
 3027}
 3028static inline HRESULT IXMLDOMCharacterData_get_childNodes(IXMLDOMCharacterData* This,IXMLDOMNodeList **childList) {
 3029    return This->lpVtbl->get_childNodes(This,childList);
 3030}
 3031static inline HRESULT IXMLDOMCharacterData_get_firstChild(IXMLDOMCharacterData* This,IXMLDOMNode **firstChild) {
 3032    return This->lpVtbl->get_firstChild(This,firstChild);
 3033}
 3034static inline HRESULT IXMLDOMCharacterData_get_lastChild(IXMLDOMCharacterData* This,IXMLDOMNode **lastChild) {
 3035    return This->lpVtbl->get_lastChild(This,lastChild);
 3036}
 3037static inline HRESULT IXMLDOMCharacterData_get_previousSibling(IXMLDOMCharacterData* This,IXMLDOMNode **previousSibling) {
 3038    return This->lpVtbl->get_previousSibling(This,previousSibling);
 3039}
 3040static inline HRESULT IXMLDOMCharacterData_get_nextSibling(IXMLDOMCharacterData* This,IXMLDOMNode **nextSibling) {
 3041    return This->lpVtbl->get_nextSibling(This,nextSibling);
 3042}
 3043static inline HRESULT IXMLDOMCharacterData_get_attributes(IXMLDOMCharacterData* This,IXMLDOMNamedNodeMap **attributeMap) {
 3044    return This->lpVtbl->get_attributes(This,attributeMap);
 3045}
 3046static inline HRESULT IXMLDOMCharacterData_insertBefore(IXMLDOMCharacterData* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 3047    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 3048}
 3049static inline HRESULT IXMLDOMCharacterData_replaceChild(IXMLDOMCharacterData* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 3050    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 3051}
 3052static inline HRESULT IXMLDOMCharacterData_removeChild(IXMLDOMCharacterData* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 3053    return This->lpVtbl->removeChild(This,childNode,oldChild);
 3054}
 3055static inline HRESULT IXMLDOMCharacterData_appendChild(IXMLDOMCharacterData* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 3056    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 3057}
 3058static inline HRESULT IXMLDOMCharacterData_hasChildNodes(IXMLDOMCharacterData* This,VARIANT_BOOL *hasChild) {
 3059    return This->lpVtbl->hasChildNodes(This,hasChild);
 3060}
 3061static inline HRESULT IXMLDOMCharacterData_get_ownerDocument(IXMLDOMCharacterData* This,IXMLDOMDocument **DOMDocument) {
 3062    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 3063}
 3064static inline HRESULT IXMLDOMCharacterData_cloneNode(IXMLDOMCharacterData* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 3065    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 3066}
 3067static inline HRESULT IXMLDOMCharacterData_get_nodeTypeString(IXMLDOMCharacterData* This,BSTR *nodeType) {
 3068    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 3069}
 3070static inline HRESULT IXMLDOMCharacterData_get_text(IXMLDOMCharacterData* This,BSTR *text) {
 3071    return This->lpVtbl->get_text(This,text);
 3072}
 3073static inline HRESULT IXMLDOMCharacterData_put_text(IXMLDOMCharacterData* This,BSTR text) {
 3074    return This->lpVtbl->put_text(This,text);
 3075}
 3076static inline HRESULT IXMLDOMCharacterData_get_specified(IXMLDOMCharacterData* This,VARIANT_BOOL *isSpecified) {
 3077    return This->lpVtbl->get_specified(This,isSpecified);
 3078}
 3079static inline HRESULT IXMLDOMCharacterData_get_definition(IXMLDOMCharacterData* This,IXMLDOMNode **definitionNode) {
 3080    return This->lpVtbl->get_definition(This,definitionNode);
 3081}
 3082static inline HRESULT IXMLDOMCharacterData_get_nodeTypedValue(IXMLDOMCharacterData* This,VARIANT *typedValue) {
 3083    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 3084}
 3085static inline HRESULT IXMLDOMCharacterData_put_nodeTypedValue(IXMLDOMCharacterData* This,VARIANT typedValue) {
 3086    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 3087}
 3088static inline HRESULT IXMLDOMCharacterData_get_dataType(IXMLDOMCharacterData* This,VARIANT *dataTypeName) {
 3089    return This->lpVtbl->get_dataType(This,dataTypeName);
 3090}
 3091static inline HRESULT IXMLDOMCharacterData_put_dataType(IXMLDOMCharacterData* This,BSTR dataTypeName) {
 3092    return This->lpVtbl->put_dataType(This,dataTypeName);
 3093}
 3094static inline HRESULT IXMLDOMCharacterData_get_xml(IXMLDOMCharacterData* This,BSTR *xmlString) {
 3095    return This->lpVtbl->get_xml(This,xmlString);
 3096}
 3097static inline HRESULT IXMLDOMCharacterData_transformNode(IXMLDOMCharacterData* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 3098    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 3099}
 3100static inline HRESULT IXMLDOMCharacterData_selectNodes(IXMLDOMCharacterData* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 3101    return This->lpVtbl->selectNodes(This,queryString,resultList);
 3102}
 3103static inline HRESULT IXMLDOMCharacterData_selectSingleNode(IXMLDOMCharacterData* This,BSTR queryString,IXMLDOMNode **resultNode) {
 3104    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 3105}
 3106static inline HRESULT IXMLDOMCharacterData_get_parsed(IXMLDOMCharacterData* This,VARIANT_BOOL *isParsed) {
 3107    return This->lpVtbl->get_parsed(This,isParsed);
 3108}
 3109static inline HRESULT IXMLDOMCharacterData_get_namespaceURI(IXMLDOMCharacterData* This,BSTR *namespaceURI) {
 3110    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 3111}
 3112static inline HRESULT IXMLDOMCharacterData_get_prefix(IXMLDOMCharacterData* This,BSTR *prefixString) {
 3113    return This->lpVtbl->get_prefix(This,prefixString);
 3114}
 3115static inline HRESULT IXMLDOMCharacterData_get_baseName(IXMLDOMCharacterData* This,BSTR *nameString) {
 3116    return This->lpVtbl->get_baseName(This,nameString);
 3117}
 3118static inline HRESULT IXMLDOMCharacterData_transformNodeToObject(IXMLDOMCharacterData* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 3119    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 3120}
 3121/*** IXMLDOMCharacterData methods ***/
 3122static inline HRESULT IXMLDOMCharacterData_get_data(IXMLDOMCharacterData* This,BSTR *data) {
 3123    return This->lpVtbl->get_data(This,data);
 3124}
 3125static inline HRESULT IXMLDOMCharacterData_put_data(IXMLDOMCharacterData* This,BSTR data) {
 3126    return This->lpVtbl->put_data(This,data);
 3127}
 3128static inline HRESULT IXMLDOMCharacterData_get_length(IXMLDOMCharacterData* This,LONG *dataLength) {
 3129    return This->lpVtbl->get_length(This,dataLength);
 3130}
 3131static inline HRESULT IXMLDOMCharacterData_substringData(IXMLDOMCharacterData* This,LONG offset,LONG count,BSTR *data) {
 3132    return This->lpVtbl->substringData(This,offset,count,data);
 3133}
 3134static inline HRESULT IXMLDOMCharacterData_appendData(IXMLDOMCharacterData* This,BSTR data) {
 3135    return This->lpVtbl->appendData(This,data);
 3136}
 3137static inline HRESULT IXMLDOMCharacterData_insertData(IXMLDOMCharacterData* This,LONG offset,BSTR data) {
 3138    return This->lpVtbl->insertData(This,offset,data);
 3139}
 3140static inline HRESULT IXMLDOMCharacterData_deleteData(IXMLDOMCharacterData* This,LONG offset,LONG count) {
 3141    return This->lpVtbl->deleteData(This,offset,count);
 3142}
 3143static inline HRESULT IXMLDOMCharacterData_replaceData(IXMLDOMCharacterData* This,LONG offset,LONG count,BSTR data) {
 3144    return This->lpVtbl->replaceData(This,offset,count,data);
 3145}
 3146#endif
 3147#endif
 3148
 3149#endif
 3150
 3151
 3152#endif  /* __IXMLDOMCharacterData_INTERFACE_DEFINED__ */
 3153
 3154/*****************************************************************************
 3155 * IXMLDOMAttribute interface
 3156 */
 3157#ifndef __IXMLDOMAttribute_INTERFACE_DEFINED__
 3158#define __IXMLDOMAttribute_INTERFACE_DEFINED__
 3159
 3160DEFINE_GUID(IID_IXMLDOMAttribute, 0x2933bf85, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 3161#if defined(__cplusplus) && !defined(CINTERFACE)
 3162MIDL_INTERFACE("2933bf85-7b36-11d2-b20e-00c04f983e60")
 3163IXMLDOMAttribute : public IXMLDOMNode
 3164{
 3165    virtual HRESULT STDMETHODCALLTYPE get_name(
 3166        BSTR *attributeName) = 0;
 3167
 3168    virtual HRESULT STDMETHODCALLTYPE get_value(
 3169        VARIANT *attributeValue) = 0;
 3170
 3171    virtual HRESULT STDMETHODCALLTYPE put_value(
 3172        VARIANT attributeValue) = 0;
 3173
 3174};
 3175#ifdef __CRT_UUID_DECL
 3176__CRT_UUID_DECL(IXMLDOMAttribute, 0x2933bf85, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 3177#endif
 3178#else
 3179typedef struct IXMLDOMAttributeVtbl {
 3180    BEGIN_INTERFACE
 3181
 3182    /*** IUnknown methods ***/
 3183    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3184        IXMLDOMAttribute *This,
 3185        REFIID riid,
 3186        void **ppvObject);
 3187
 3188    ULONG (STDMETHODCALLTYPE *AddRef)(
 3189        IXMLDOMAttribute *This);
 3190
 3191    ULONG (STDMETHODCALLTYPE *Release)(
 3192        IXMLDOMAttribute *This);
 3193
 3194    /*** IDispatch methods ***/
 3195    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3196        IXMLDOMAttribute *This,
 3197        UINT *pctinfo);
 3198
 3199    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3200        IXMLDOMAttribute *This,
 3201        UINT iTInfo,
 3202        LCID lcid,
 3203        ITypeInfo **ppTInfo);
 3204
 3205    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3206        IXMLDOMAttribute *This,
 3207        REFIID riid,
 3208        LPOLESTR *rgszNames,
 3209        UINT cNames,
 3210        LCID lcid,
 3211        DISPID *rgDispId);
 3212
 3213    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3214        IXMLDOMAttribute *This,
 3215        DISPID dispIdMember,
 3216        REFIID riid,
 3217        LCID lcid,
 3218        WORD wFlags,
 3219        DISPPARAMS *pDispParams,
 3220        VARIANT *pVarResult,
 3221        EXCEPINFO *pExcepInfo,
 3222        UINT *puArgErr);
 3223
 3224    /*** IXMLDOMNode methods ***/
 3225    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 3226        IXMLDOMAttribute *This,
 3227        BSTR *name);
 3228
 3229    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 3230        IXMLDOMAttribute *This,
 3231        VARIANT *value);
 3232
 3233    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 3234        IXMLDOMAttribute *This,
 3235        VARIANT value);
 3236
 3237    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 3238        IXMLDOMAttribute *This,
 3239        DOMNodeType *type);
 3240
 3241    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 3242        IXMLDOMAttribute *This,
 3243        IXMLDOMNode **parent);
 3244
 3245    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 3246        IXMLDOMAttribute *This,
 3247        IXMLDOMNodeList **childList);
 3248
 3249    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 3250        IXMLDOMAttribute *This,
 3251        IXMLDOMNode **firstChild);
 3252
 3253    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 3254        IXMLDOMAttribute *This,
 3255        IXMLDOMNode **lastChild);
 3256
 3257    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 3258        IXMLDOMAttribute *This,
 3259        IXMLDOMNode **previousSibling);
 3260
 3261    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 3262        IXMLDOMAttribute *This,
 3263        IXMLDOMNode **nextSibling);
 3264
 3265    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 3266        IXMLDOMAttribute *This,
 3267        IXMLDOMNamedNodeMap **attributeMap);
 3268
 3269    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 3270        IXMLDOMAttribute *This,
 3271        IXMLDOMNode *newChild,
 3272        VARIANT refChild,
 3273        IXMLDOMNode **outNewChild);
 3274
 3275    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 3276        IXMLDOMAttribute *This,
 3277        IXMLDOMNode *newChild,
 3278        IXMLDOMNode *oldChild,
 3279        IXMLDOMNode **outOldChild);
 3280
 3281    HRESULT (STDMETHODCALLTYPE *removeChild)(
 3282        IXMLDOMAttribute *This,
 3283        IXMLDOMNode *childNode,
 3284        IXMLDOMNode **oldChild);
 3285
 3286    HRESULT (STDMETHODCALLTYPE *appendChild)(
 3287        IXMLDOMAttribute *This,
 3288        IXMLDOMNode *newChild,
 3289        IXMLDOMNode **outNewChild);
 3290
 3291    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 3292        IXMLDOMAttribute *This,
 3293        VARIANT_BOOL *hasChild);
 3294
 3295    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 3296        IXMLDOMAttribute *This,
 3297        IXMLDOMDocument **DOMDocument);
 3298
 3299    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 3300        IXMLDOMAttribute *This,
 3301        VARIANT_BOOL deep,
 3302        IXMLDOMNode **cloneRoot);
 3303
 3304    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 3305        IXMLDOMAttribute *This,
 3306        BSTR *nodeType);
 3307
 3308    HRESULT (STDMETHODCALLTYPE *get_text)(
 3309        IXMLDOMAttribute *This,
 3310        BSTR *text);
 3311
 3312    HRESULT (STDMETHODCALLTYPE *put_text)(
 3313        IXMLDOMAttribute *This,
 3314        BSTR text);
 3315
 3316    HRESULT (STDMETHODCALLTYPE *get_specified)(
 3317        IXMLDOMAttribute *This,
 3318        VARIANT_BOOL *isSpecified);
 3319
 3320    HRESULT (STDMETHODCALLTYPE *get_definition)(
 3321        IXMLDOMAttribute *This,
 3322        IXMLDOMNode **definitionNode);
 3323
 3324    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 3325        IXMLDOMAttribute *This,
 3326        VARIANT *typedValue);
 3327
 3328    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 3329        IXMLDOMAttribute *This,
 3330        VARIANT typedValue);
 3331
 3332    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 3333        IXMLDOMAttribute *This,
 3334        VARIANT *dataTypeName);
 3335
 3336    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 3337        IXMLDOMAttribute *This,
 3338        BSTR dataTypeName);
 3339
 3340    HRESULT (STDMETHODCALLTYPE *get_xml)(
 3341        IXMLDOMAttribute *This,
 3342        BSTR *xmlString);
 3343
 3344    HRESULT (STDMETHODCALLTYPE *transformNode)(
 3345        IXMLDOMAttribute *This,
 3346        IXMLDOMNode *styleSheet,
 3347        BSTR *xmlString);
 3348
 3349    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 3350        IXMLDOMAttribute *This,
 3351        BSTR queryString,
 3352        IXMLDOMNodeList **resultList);
 3353
 3354    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 3355        IXMLDOMAttribute *This,
 3356        BSTR queryString,
 3357        IXMLDOMNode **resultNode);
 3358
 3359    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 3360        IXMLDOMAttribute *This,
 3361        VARIANT_BOOL *isParsed);
 3362
 3363    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 3364        IXMLDOMAttribute *This,
 3365        BSTR *namespaceURI);
 3366
 3367    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 3368        IXMLDOMAttribute *This,
 3369        BSTR *prefixString);
 3370
 3371    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 3372        IXMLDOMAttribute *This,
 3373        BSTR *nameString);
 3374
 3375    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 3376        IXMLDOMAttribute *This,
 3377        IXMLDOMNode *stylesheet,
 3378        VARIANT outputObject);
 3379
 3380    /*** IXMLDOMAttribute methods ***/
 3381    HRESULT (STDMETHODCALLTYPE *get_name)(
 3382        IXMLDOMAttribute *This,
 3383        BSTR *attributeName);
 3384
 3385    HRESULT (STDMETHODCALLTYPE *get_value)(
 3386        IXMLDOMAttribute *This,
 3387        VARIANT *attributeValue);
 3388
 3389    HRESULT (STDMETHODCALLTYPE *put_value)(
 3390        IXMLDOMAttribute *This,
 3391        VARIANT attributeValue);
 3392
 3393    END_INTERFACE
 3394} IXMLDOMAttributeVtbl;
 3395
 3396interface IXMLDOMAttribute {
 3397    CONST_VTBL IXMLDOMAttributeVtbl* lpVtbl;
 3398};
 3399
 3400#ifdef COBJMACROS
 3401#ifndef WIDL_C_INLINE_WRAPPERS
 3402/*** IUnknown methods ***/
 3403#define IXMLDOMAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3404#define IXMLDOMAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
 3405#define IXMLDOMAttribute_Release(This) (This)->lpVtbl->Release(This)
 3406/*** IDispatch methods ***/
 3407#define IXMLDOMAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3408#define IXMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3409#define IXMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3410#define IXMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3411/*** IXMLDOMNode methods ***/
 3412#define IXMLDOMAttribute_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 3413#define IXMLDOMAttribute_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 3414#define IXMLDOMAttribute_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 3415#define IXMLDOMAttribute_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 3416#define IXMLDOMAttribute_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 3417#define IXMLDOMAttribute_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 3418#define IXMLDOMAttribute_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 3419#define IXMLDOMAttribute_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 3420#define IXMLDOMAttribute_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 3421#define IXMLDOMAttribute_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 3422#define IXMLDOMAttribute_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 3423#define IXMLDOMAttribute_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 3424#define IXMLDOMAttribute_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 3425#define IXMLDOMAttribute_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 3426#define IXMLDOMAttribute_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 3427#define IXMLDOMAttribute_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 3428#define IXMLDOMAttribute_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 3429#define IXMLDOMAttribute_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 3430#define IXMLDOMAttribute_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 3431#define IXMLDOMAttribute_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 3432#define IXMLDOMAttribute_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 3433#define IXMLDOMAttribute_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 3434#define IXMLDOMAttribute_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 3435#define IXMLDOMAttribute_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 3436#define IXMLDOMAttribute_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 3437#define IXMLDOMAttribute_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 3438#define IXMLDOMAttribute_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 3439#define IXMLDOMAttribute_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 3440#define IXMLDOMAttribute_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 3441#define IXMLDOMAttribute_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 3442#define IXMLDOMAttribute_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 3443#define IXMLDOMAttribute_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 3444#define IXMLDOMAttribute_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 3445#define IXMLDOMAttribute_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 3446#define IXMLDOMAttribute_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 3447#define IXMLDOMAttribute_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 3448/*** IXMLDOMAttribute methods ***/
 3449#define IXMLDOMAttribute_get_name(This,attributeName) (This)->lpVtbl->get_name(This,attributeName)
 3450#define IXMLDOMAttribute_get_value(This,attributeValue) (This)->lpVtbl->get_value(This,attributeValue)
 3451#define IXMLDOMAttribute_put_value(This,attributeValue) (This)->lpVtbl->put_value(This,attributeValue)
 3452#else
 3453/*** IUnknown methods ***/
 3454static inline HRESULT IXMLDOMAttribute_QueryInterface(IXMLDOMAttribute* This,REFIID riid,void **ppvObject) {
 3455    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3456}
 3457static inline ULONG IXMLDOMAttribute_AddRef(IXMLDOMAttribute* This) {
 3458    return This->lpVtbl->AddRef(This);
 3459}
 3460static inline ULONG IXMLDOMAttribute_Release(IXMLDOMAttribute* This) {
 3461    return This->lpVtbl->Release(This);
 3462}
 3463/*** IDispatch methods ***/
 3464static inline HRESULT IXMLDOMAttribute_GetTypeInfoCount(IXMLDOMAttribute* This,UINT *pctinfo) {
 3465    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3466}
 3467static inline HRESULT IXMLDOMAttribute_GetTypeInfo(IXMLDOMAttribute* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3468    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3469}
 3470static inline HRESULT IXMLDOMAttribute_GetIDsOfNames(IXMLDOMAttribute* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3471    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3472}
 3473static inline HRESULT IXMLDOMAttribute_Invoke(IXMLDOMAttribute* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3474    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3475}
 3476/*** IXMLDOMNode methods ***/
 3477static inline HRESULT IXMLDOMAttribute_get_nodeName(IXMLDOMAttribute* This,BSTR *name) {
 3478    return This->lpVtbl->get_nodeName(This,name);
 3479}
 3480static inline HRESULT IXMLDOMAttribute_get_nodeValue(IXMLDOMAttribute* This,VARIANT *value) {
 3481    return This->lpVtbl->get_nodeValue(This,value);
 3482}
 3483static inline HRESULT IXMLDOMAttribute_put_nodeValue(IXMLDOMAttribute* This,VARIANT value) {
 3484    return This->lpVtbl->put_nodeValue(This,value);
 3485}
 3486static inline HRESULT IXMLDOMAttribute_get_nodeType(IXMLDOMAttribute* This,DOMNodeType *type) {
 3487    return This->lpVtbl->get_nodeType(This,type);
 3488}
 3489static inline HRESULT IXMLDOMAttribute_get_parentNode(IXMLDOMAttribute* This,IXMLDOMNode **parent) {
 3490    return This->lpVtbl->get_parentNode(This,parent);
 3491}
 3492static inline HRESULT IXMLDOMAttribute_get_childNodes(IXMLDOMAttribute* This,IXMLDOMNodeList **childList) {
 3493    return This->lpVtbl->get_childNodes(This,childList);
 3494}
 3495static inline HRESULT IXMLDOMAttribute_get_firstChild(IXMLDOMAttribute* This,IXMLDOMNode **firstChild) {
 3496    return This->lpVtbl->get_firstChild(This,firstChild);
 3497}
 3498static inline HRESULT IXMLDOMAttribute_get_lastChild(IXMLDOMAttribute* This,IXMLDOMNode **lastChild) {
 3499    return This->lpVtbl->get_lastChild(This,lastChild);
 3500}
 3501static inline HRESULT IXMLDOMAttribute_get_previousSibling(IXMLDOMAttribute* This,IXMLDOMNode **previousSibling) {
 3502    return This->lpVtbl->get_previousSibling(This,previousSibling);
 3503}
 3504static inline HRESULT IXMLDOMAttribute_get_nextSibling(IXMLDOMAttribute* This,IXMLDOMNode **nextSibling) {
 3505    return This->lpVtbl->get_nextSibling(This,nextSibling);
 3506}
 3507static inline HRESULT IXMLDOMAttribute_get_attributes(IXMLDOMAttribute* This,IXMLDOMNamedNodeMap **attributeMap) {
 3508    return This->lpVtbl->get_attributes(This,attributeMap);
 3509}
 3510static inline HRESULT IXMLDOMAttribute_insertBefore(IXMLDOMAttribute* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 3511    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 3512}
 3513static inline HRESULT IXMLDOMAttribute_replaceChild(IXMLDOMAttribute* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 3514    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 3515}
 3516static inline HRESULT IXMLDOMAttribute_removeChild(IXMLDOMAttribute* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 3517    return This->lpVtbl->removeChild(This,childNode,oldChild);
 3518}
 3519static inline HRESULT IXMLDOMAttribute_appendChild(IXMLDOMAttribute* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 3520    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 3521}
 3522static inline HRESULT IXMLDOMAttribute_hasChildNodes(IXMLDOMAttribute* This,VARIANT_BOOL *hasChild) {
 3523    return This->lpVtbl->hasChildNodes(This,hasChild);
 3524}
 3525static inline HRESULT IXMLDOMAttribute_get_ownerDocument(IXMLDOMAttribute* This,IXMLDOMDocument **DOMDocument) {
 3526    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 3527}
 3528static inline HRESULT IXMLDOMAttribute_cloneNode(IXMLDOMAttribute* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 3529    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 3530}
 3531static inline HRESULT IXMLDOMAttribute_get_nodeTypeString(IXMLDOMAttribute* This,BSTR *nodeType) {
 3532    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 3533}
 3534static inline HRESULT IXMLDOMAttribute_get_text(IXMLDOMAttribute* This,BSTR *text) {
 3535    return This->lpVtbl->get_text(This,text);
 3536}
 3537static inline HRESULT IXMLDOMAttribute_put_text(IXMLDOMAttribute* This,BSTR text) {
 3538    return This->lpVtbl->put_text(This,text);
 3539}
 3540static inline HRESULT IXMLDOMAttribute_get_specified(IXMLDOMAttribute* This,VARIANT_BOOL *isSpecified) {
 3541    return This->lpVtbl->get_specified(This,isSpecified);
 3542}
 3543static inline HRESULT IXMLDOMAttribute_get_definition(IXMLDOMAttribute* This,IXMLDOMNode **definitionNode) {
 3544    return This->lpVtbl->get_definition(This,definitionNode);
 3545}
 3546static inline HRESULT IXMLDOMAttribute_get_nodeTypedValue(IXMLDOMAttribute* This,VARIANT *typedValue) {
 3547    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 3548}
 3549static inline HRESULT IXMLDOMAttribute_put_nodeTypedValue(IXMLDOMAttribute* This,VARIANT typedValue) {
 3550    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 3551}
 3552static inline HRESULT IXMLDOMAttribute_get_dataType(IXMLDOMAttribute* This,VARIANT *dataTypeName) {
 3553    return This->lpVtbl->get_dataType(This,dataTypeName);
 3554}
 3555static inline HRESULT IXMLDOMAttribute_put_dataType(IXMLDOMAttribute* This,BSTR dataTypeName) {
 3556    return This->lpVtbl->put_dataType(This,dataTypeName);
 3557}
 3558static inline HRESULT IXMLDOMAttribute_get_xml(IXMLDOMAttribute* This,BSTR *xmlString) {
 3559    return This->lpVtbl->get_xml(This,xmlString);
 3560}
 3561static inline HRESULT IXMLDOMAttribute_transformNode(IXMLDOMAttribute* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 3562    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 3563}
 3564static inline HRESULT IXMLDOMAttribute_selectNodes(IXMLDOMAttribute* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 3565    return This->lpVtbl->selectNodes(This,queryString,resultList);
 3566}
 3567static inline HRESULT IXMLDOMAttribute_selectSingleNode(IXMLDOMAttribute* This,BSTR queryString,IXMLDOMNode **resultNode) {
 3568    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 3569}
 3570static inline HRESULT IXMLDOMAttribute_get_parsed(IXMLDOMAttribute* This,VARIANT_BOOL *isParsed) {
 3571    return This->lpVtbl->get_parsed(This,isParsed);
 3572}
 3573static inline HRESULT IXMLDOMAttribute_get_namespaceURI(IXMLDOMAttribute* This,BSTR *namespaceURI) {
 3574    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 3575}
 3576static inline HRESULT IXMLDOMAttribute_get_prefix(IXMLDOMAttribute* This,BSTR *prefixString) {
 3577    return This->lpVtbl->get_prefix(This,prefixString);
 3578}
 3579static inline HRESULT IXMLDOMAttribute_get_baseName(IXMLDOMAttribute* This,BSTR *nameString) {
 3580    return This->lpVtbl->get_baseName(This,nameString);
 3581}
 3582static inline HRESULT IXMLDOMAttribute_transformNodeToObject(IXMLDOMAttribute* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 3583    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 3584}
 3585/*** IXMLDOMAttribute methods ***/
 3586static inline HRESULT IXMLDOMAttribute_get_name(IXMLDOMAttribute* This,BSTR *attributeName) {
 3587    return This->lpVtbl->get_name(This,attributeName);
 3588}
 3589static inline HRESULT IXMLDOMAttribute_get_value(IXMLDOMAttribute* This,VARIANT *attributeValue) {
 3590    return This->lpVtbl->get_value(This,attributeValue);
 3591}
 3592static inline HRESULT IXMLDOMAttribute_put_value(IXMLDOMAttribute* This,VARIANT attributeValue) {
 3593    return This->lpVtbl->put_value(This,attributeValue);
 3594}
 3595#endif
 3596#endif
 3597
 3598#endif
 3599
 3600
 3601#endif  /* __IXMLDOMAttribute_INTERFACE_DEFINED__ */
 3602
 3603/*****************************************************************************
 3604 * IXMLDOMElement interface
 3605 */
 3606#ifndef __IXMLDOMElement_INTERFACE_DEFINED__
 3607#define __IXMLDOMElement_INTERFACE_DEFINED__
 3608
 3609DEFINE_GUID(IID_IXMLDOMElement, 0x2933bf86, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 3610#if defined(__cplusplus) && !defined(CINTERFACE)
 3611MIDL_INTERFACE("2933bf86-7b36-11d2-b20e-00c04f983e60")
 3612IXMLDOMElement : public IXMLDOMNode
 3613{
 3614    virtual HRESULT STDMETHODCALLTYPE get_tagName(
 3615        BSTR *tagName) = 0;
 3616
 3617    virtual HRESULT STDMETHODCALLTYPE getAttribute(
 3618        BSTR name,
 3619        VARIANT *value) = 0;
 3620
 3621    virtual HRESULT STDMETHODCALLTYPE setAttribute(
 3622        BSTR name,
 3623        VARIANT value) = 0;
 3624
 3625    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
 3626        BSTR name) = 0;
 3627
 3628    virtual HRESULT STDMETHODCALLTYPE getAttributeNode(
 3629        BSTR name,
 3630        IXMLDOMAttribute **attributeNode) = 0;
 3631
 3632    virtual HRESULT STDMETHODCALLTYPE setAttributeNode(
 3633        IXMLDOMAttribute *DOMAttribute,
 3634        IXMLDOMAttribute **attributeNode) = 0;
 3635
 3636    virtual HRESULT STDMETHODCALLTYPE removeAttributeNode(
 3637        IXMLDOMAttribute *DOMAttribute,
 3638        IXMLDOMAttribute **attributeNode) = 0;
 3639
 3640    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
 3641        BSTR tagName,
 3642        IXMLDOMNodeList **resultList) = 0;
 3643
 3644    virtual HRESULT STDMETHODCALLTYPE normalize(
 3645        ) = 0;
 3646
 3647};
 3648#ifdef __CRT_UUID_DECL
 3649__CRT_UUID_DECL(IXMLDOMElement, 0x2933bf86, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 3650#endif
 3651#else
 3652typedef struct IXMLDOMElementVtbl {
 3653    BEGIN_INTERFACE
 3654
 3655    /*** IUnknown methods ***/
 3656    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3657        IXMLDOMElement *This,
 3658        REFIID riid,
 3659        void **ppvObject);
 3660
 3661    ULONG (STDMETHODCALLTYPE *AddRef)(
 3662        IXMLDOMElement *This);
 3663
 3664    ULONG (STDMETHODCALLTYPE *Release)(
 3665        IXMLDOMElement *This);
 3666
 3667    /*** IDispatch methods ***/
 3668    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3669        IXMLDOMElement *This,
 3670        UINT *pctinfo);
 3671
 3672    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3673        IXMLDOMElement *This,
 3674        UINT iTInfo,
 3675        LCID lcid,
 3676        ITypeInfo **ppTInfo);
 3677
 3678    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3679        IXMLDOMElement *This,
 3680        REFIID riid,
 3681        LPOLESTR *rgszNames,
 3682        UINT cNames,
 3683        LCID lcid,
 3684        DISPID *rgDispId);
 3685
 3686    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3687        IXMLDOMElement *This,
 3688        DISPID dispIdMember,
 3689        REFIID riid,
 3690        LCID lcid,
 3691        WORD wFlags,
 3692        DISPPARAMS *pDispParams,
 3693        VARIANT *pVarResult,
 3694        EXCEPINFO *pExcepInfo,
 3695        UINT *puArgErr);
 3696
 3697    /*** IXMLDOMNode methods ***/
 3698    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 3699        IXMLDOMElement *This,
 3700        BSTR *name);
 3701
 3702    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 3703        IXMLDOMElement *This,
 3704        VARIANT *value);
 3705
 3706    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 3707        IXMLDOMElement *This,
 3708        VARIANT value);
 3709
 3710    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 3711        IXMLDOMElement *This,
 3712        DOMNodeType *type);
 3713
 3714    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 3715        IXMLDOMElement *This,
 3716        IXMLDOMNode **parent);
 3717
 3718    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 3719        IXMLDOMElement *This,
 3720        IXMLDOMNodeList **childList);
 3721
 3722    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 3723        IXMLDOMElement *This,
 3724        IXMLDOMNode **firstChild);
 3725
 3726    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 3727        IXMLDOMElement *This,
 3728        IXMLDOMNode **lastChild);
 3729
 3730    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 3731        IXMLDOMElement *This,
 3732        IXMLDOMNode **previousSibling);
 3733
 3734    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 3735        IXMLDOMElement *This,
 3736        IXMLDOMNode **nextSibling);
 3737
 3738    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 3739        IXMLDOMElement *This,
 3740        IXMLDOMNamedNodeMap **attributeMap);
 3741
 3742    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 3743        IXMLDOMElement *This,
 3744        IXMLDOMNode *newChild,
 3745        VARIANT refChild,
 3746        IXMLDOMNode **outNewChild);
 3747
 3748    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 3749        IXMLDOMElement *This,
 3750        IXMLDOMNode *newChild,
 3751        IXMLDOMNode *oldChild,
 3752        IXMLDOMNode **outOldChild);
 3753
 3754    HRESULT (STDMETHODCALLTYPE *removeChild)(
 3755        IXMLDOMElement *This,
 3756        IXMLDOMNode *childNode,
 3757        IXMLDOMNode **oldChild);
 3758
 3759    HRESULT (STDMETHODCALLTYPE *appendChild)(
 3760        IXMLDOMElement *This,
 3761        IXMLDOMNode *newChild,
 3762        IXMLDOMNode **outNewChild);
 3763
 3764    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 3765        IXMLDOMElement *This,
 3766        VARIANT_BOOL *hasChild);
 3767
 3768    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 3769        IXMLDOMElement *This,
 3770        IXMLDOMDocument **DOMDocument);
 3771
 3772    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 3773        IXMLDOMElement *This,
 3774        VARIANT_BOOL deep,
 3775        IXMLDOMNode **cloneRoot);
 3776
 3777    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 3778        IXMLDOMElement *This,
 3779        BSTR *nodeType);
 3780
 3781    HRESULT (STDMETHODCALLTYPE *get_text)(
 3782        IXMLDOMElement *This,
 3783        BSTR *text);
 3784
 3785    HRESULT (STDMETHODCALLTYPE *put_text)(
 3786        IXMLDOMElement *This,
 3787        BSTR text);
 3788
 3789    HRESULT (STDMETHODCALLTYPE *get_specified)(
 3790        IXMLDOMElement *This,
 3791        VARIANT_BOOL *isSpecified);
 3792
 3793    HRESULT (STDMETHODCALLTYPE *get_definition)(
 3794        IXMLDOMElement *This,
 3795        IXMLDOMNode **definitionNode);
 3796
 3797    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 3798        IXMLDOMElement *This,
 3799        VARIANT *typedValue);
 3800
 3801    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 3802        IXMLDOMElement *This,
 3803        VARIANT typedValue);
 3804
 3805    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 3806        IXMLDOMElement *This,
 3807        VARIANT *dataTypeName);
 3808
 3809    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 3810        IXMLDOMElement *This,
 3811        BSTR dataTypeName);
 3812
 3813    HRESULT (STDMETHODCALLTYPE *get_xml)(
 3814        IXMLDOMElement *This,
 3815        BSTR *xmlString);
 3816
 3817    HRESULT (STDMETHODCALLTYPE *transformNode)(
 3818        IXMLDOMElement *This,
 3819        IXMLDOMNode *styleSheet,
 3820        BSTR *xmlString);
 3821
 3822    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 3823        IXMLDOMElement *This,
 3824        BSTR queryString,
 3825        IXMLDOMNodeList **resultList);
 3826
 3827    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 3828        IXMLDOMElement *This,
 3829        BSTR queryString,
 3830        IXMLDOMNode **resultNode);
 3831
 3832    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 3833        IXMLDOMElement *This,
 3834        VARIANT_BOOL *isParsed);
 3835
 3836    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 3837        IXMLDOMElement *This,
 3838        BSTR *namespaceURI);
 3839
 3840    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 3841        IXMLDOMElement *This,
 3842        BSTR *prefixString);
 3843
 3844    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 3845        IXMLDOMElement *This,
 3846        BSTR *nameString);
 3847
 3848    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 3849        IXMLDOMElement *This,
 3850        IXMLDOMNode *stylesheet,
 3851        VARIANT outputObject);
 3852
 3853    /*** IXMLDOMElement methods ***/
 3854    HRESULT (STDMETHODCALLTYPE *get_tagName)(
 3855        IXMLDOMElement *This,
 3856        BSTR *tagName);
 3857
 3858    HRESULT (STDMETHODCALLTYPE *getAttribute)(
 3859        IXMLDOMElement *This,
 3860        BSTR name,
 3861        VARIANT *value);
 3862
 3863    HRESULT (STDMETHODCALLTYPE *setAttribute)(
 3864        IXMLDOMElement *This,
 3865        BSTR name,
 3866        VARIANT value);
 3867
 3868    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
 3869        IXMLDOMElement *This,
 3870        BSTR name);
 3871
 3872    HRESULT (STDMETHODCALLTYPE *getAttributeNode)(
 3873        IXMLDOMElement *This,
 3874        BSTR name,
 3875        IXMLDOMAttribute **attributeNode);
 3876
 3877    HRESULT (STDMETHODCALLTYPE *setAttributeNode)(
 3878        IXMLDOMElement *This,
 3879        IXMLDOMAttribute *DOMAttribute,
 3880        IXMLDOMAttribute **attributeNode);
 3881
 3882    HRESULT (STDMETHODCALLTYPE *removeAttributeNode)(
 3883        IXMLDOMElement *This,
 3884        IXMLDOMAttribute *DOMAttribute,
 3885        IXMLDOMAttribute **attributeNode);
 3886
 3887    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 3888        IXMLDOMElement *This,
 3889        BSTR tagName,
 3890        IXMLDOMNodeList **resultList);
 3891
 3892    HRESULT (STDMETHODCALLTYPE *normalize)(
 3893        IXMLDOMElement *This);
 3894
 3895    END_INTERFACE
 3896} IXMLDOMElementVtbl;
 3897
 3898interface IXMLDOMElement {
 3899    CONST_VTBL IXMLDOMElementVtbl* lpVtbl;
 3900};
 3901
 3902#ifdef COBJMACROS
 3903#ifndef WIDL_C_INLINE_WRAPPERS
 3904/*** IUnknown methods ***/
 3905#define IXMLDOMElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3906#define IXMLDOMElement_AddRef(This) (This)->lpVtbl->AddRef(This)
 3907#define IXMLDOMElement_Release(This) (This)->lpVtbl->Release(This)
 3908/*** IDispatch methods ***/
 3909#define IXMLDOMElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3910#define IXMLDOMElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3911#define IXMLDOMElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3912#define IXMLDOMElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3913/*** IXMLDOMNode methods ***/
 3914#define IXMLDOMElement_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 3915#define IXMLDOMElement_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 3916#define IXMLDOMElement_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 3917#define IXMLDOMElement_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 3918#define IXMLDOMElement_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 3919#define IXMLDOMElement_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 3920#define IXMLDOMElement_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 3921#define IXMLDOMElement_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 3922#define IXMLDOMElement_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 3923#define IXMLDOMElement_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 3924#define IXMLDOMElement_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 3925#define IXMLDOMElement_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 3926#define IXMLDOMElement_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 3927#define IXMLDOMElement_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 3928#define IXMLDOMElement_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 3929#define IXMLDOMElement_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 3930#define IXMLDOMElement_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 3931#define IXMLDOMElement_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 3932#define IXMLDOMElement_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 3933#define IXMLDOMElement_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 3934#define IXMLDOMElement_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 3935#define IXMLDOMElement_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 3936#define IXMLDOMElement_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 3937#define IXMLDOMElement_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 3938#define IXMLDOMElement_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 3939#define IXMLDOMElement_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 3940#define IXMLDOMElement_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 3941#define IXMLDOMElement_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 3942#define IXMLDOMElement_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 3943#define IXMLDOMElement_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 3944#define IXMLDOMElement_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 3945#define IXMLDOMElement_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 3946#define IXMLDOMElement_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 3947#define IXMLDOMElement_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 3948#define IXMLDOMElement_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 3949#define IXMLDOMElement_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 3950/*** IXMLDOMElement methods ***/
 3951#define IXMLDOMElement_get_tagName(This,tagName) (This)->lpVtbl->get_tagName(This,tagName)
 3952#define IXMLDOMElement_getAttribute(This,name,value) (This)->lpVtbl->getAttribute(This,name,value)
 3953#define IXMLDOMElement_setAttribute(This,name,value) (This)->lpVtbl->setAttribute(This,name,value)
 3954#define IXMLDOMElement_removeAttribute(This,name) (This)->lpVtbl->removeAttribute(This,name)
 3955#define IXMLDOMElement_getAttributeNode(This,name,attributeNode) (This)->lpVtbl->getAttributeNode(This,name,attributeNode)
 3956#define IXMLDOMElement_setAttributeNode(This,DOMAttribute,attributeNode) (This)->lpVtbl->setAttributeNode(This,DOMAttribute,attributeNode)
 3957#define IXMLDOMElement_removeAttributeNode(This,DOMAttribute,attributeNode) (This)->lpVtbl->removeAttributeNode(This,DOMAttribute,attributeNode)
 3958#define IXMLDOMElement_getElementsByTagName(This,tagName,resultList) (This)->lpVtbl->getElementsByTagName(This,tagName,resultList)
 3959#define IXMLDOMElement_normalize(This) (This)->lpVtbl->normalize(This)
 3960#else
 3961/*** IUnknown methods ***/
 3962static inline HRESULT IXMLDOMElement_QueryInterface(IXMLDOMElement* This,REFIID riid,void **ppvObject) {
 3963    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3964}
 3965static inline ULONG IXMLDOMElement_AddRef(IXMLDOMElement* This) {
 3966    return This->lpVtbl->AddRef(This);
 3967}
 3968static inline ULONG IXMLDOMElement_Release(IXMLDOMElement* This) {
 3969    return This->lpVtbl->Release(This);
 3970}
 3971/*** IDispatch methods ***/
 3972static inline HRESULT IXMLDOMElement_GetTypeInfoCount(IXMLDOMElement* This,UINT *pctinfo) {
 3973    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3974}
 3975static inline HRESULT IXMLDOMElement_GetTypeInfo(IXMLDOMElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3976    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3977}
 3978static inline HRESULT IXMLDOMElement_GetIDsOfNames(IXMLDOMElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3979    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3980}
 3981static inline HRESULT IXMLDOMElement_Invoke(IXMLDOMElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3982    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3983}
 3984/*** IXMLDOMNode methods ***/
 3985static inline HRESULT IXMLDOMElement_get_nodeName(IXMLDOMElement* This,BSTR *name) {
 3986    return This->lpVtbl->get_nodeName(This,name);
 3987}
 3988static inline HRESULT IXMLDOMElement_get_nodeValue(IXMLDOMElement* This,VARIANT *value) {
 3989    return This->lpVtbl->get_nodeValue(This,value);
 3990}
 3991static inline HRESULT IXMLDOMElement_put_nodeValue(IXMLDOMElement* This,VARIANT value) {
 3992    return This->lpVtbl->put_nodeValue(This,value);
 3993}
 3994static inline HRESULT IXMLDOMElement_get_nodeType(IXMLDOMElement* This,DOMNodeType *type) {
 3995    return This->lpVtbl->get_nodeType(This,type);
 3996}
 3997static inline HRESULT IXMLDOMElement_get_parentNode(IXMLDOMElement* This,IXMLDOMNode **parent) {
 3998    return This->lpVtbl->get_parentNode(This,parent);
 3999}
 4000static inline HRESULT IXMLDOMElement_get_childNodes(IXMLDOMElement* This,IXMLDOMNodeList **childList) {
 4001    return This->lpVtbl->get_childNodes(This,childList);
 4002}
 4003static inline HRESULT IXMLDOMElement_get_firstChild(IXMLDOMElement* This,IXMLDOMNode **firstChild) {
 4004    return This->lpVtbl->get_firstChild(This,firstChild);
 4005}
 4006static inline HRESULT IXMLDOMElement_get_lastChild(IXMLDOMElement* This,IXMLDOMNode **lastChild) {
 4007    return This->lpVtbl->get_lastChild(This,lastChild);
 4008}
 4009static inline HRESULT IXMLDOMElement_get_previousSibling(IXMLDOMElement* This,IXMLDOMNode **previousSibling) {
 4010    return This->lpVtbl->get_previousSibling(This,previousSibling);
 4011}
 4012static inline HRESULT IXMLDOMElement_get_nextSibling(IXMLDOMElement* This,IXMLDOMNode **nextSibling) {
 4013    return This->lpVtbl->get_nextSibling(This,nextSibling);
 4014}
 4015static inline HRESULT IXMLDOMElement_get_attributes(IXMLDOMElement* This,IXMLDOMNamedNodeMap **attributeMap) {
 4016    return This->lpVtbl->get_attributes(This,attributeMap);
 4017}
 4018static inline HRESULT IXMLDOMElement_insertBefore(IXMLDOMElement* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 4019    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 4020}
 4021static inline HRESULT IXMLDOMElement_replaceChild(IXMLDOMElement* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 4022    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 4023}
 4024static inline HRESULT IXMLDOMElement_removeChild(IXMLDOMElement* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 4025    return This->lpVtbl->removeChild(This,childNode,oldChild);
 4026}
 4027static inline HRESULT IXMLDOMElement_appendChild(IXMLDOMElement* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 4028    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 4029}
 4030static inline HRESULT IXMLDOMElement_hasChildNodes(IXMLDOMElement* This,VARIANT_BOOL *hasChild) {
 4031    return This->lpVtbl->hasChildNodes(This,hasChild);
 4032}
 4033static inline HRESULT IXMLDOMElement_get_ownerDocument(IXMLDOMElement* This,IXMLDOMDocument **DOMDocument) {
 4034    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 4035}
 4036static inline HRESULT IXMLDOMElement_cloneNode(IXMLDOMElement* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 4037    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 4038}
 4039static inline HRESULT IXMLDOMElement_get_nodeTypeString(IXMLDOMElement* This,BSTR *nodeType) {
 4040    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 4041}
 4042static inline HRESULT IXMLDOMElement_get_text(IXMLDOMElement* This,BSTR *text) {
 4043    return This->lpVtbl->get_text(This,text);
 4044}
 4045static inline HRESULT IXMLDOMElement_put_text(IXMLDOMElement* This,BSTR text) {
 4046    return This->lpVtbl->put_text(This,text);
 4047}
 4048static inline HRESULT IXMLDOMElement_get_specified(IXMLDOMElement* This,VARIANT_BOOL *isSpecified) {
 4049    return This->lpVtbl->get_specified(This,isSpecified);
 4050}
 4051static inline HRESULT IXMLDOMElement_get_definition(IXMLDOMElement* This,IXMLDOMNode **definitionNode) {
 4052    return This->lpVtbl->get_definition(This,definitionNode);
 4053}
 4054static inline HRESULT IXMLDOMElement_get_nodeTypedValue(IXMLDOMElement* This,VARIANT *typedValue) {
 4055    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 4056}
 4057static inline HRESULT IXMLDOMElement_put_nodeTypedValue(IXMLDOMElement* This,VARIANT typedValue) {
 4058    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 4059}
 4060static inline HRESULT IXMLDOMElement_get_dataType(IXMLDOMElement* This,VARIANT *dataTypeName) {
 4061    return This->lpVtbl->get_dataType(This,dataTypeName);
 4062}
 4063static inline HRESULT IXMLDOMElement_put_dataType(IXMLDOMElement* This,BSTR dataTypeName) {
 4064    return This->lpVtbl->put_dataType(This,dataTypeName);
 4065}
 4066static inline HRESULT IXMLDOMElement_get_xml(IXMLDOMElement* This,BSTR *xmlString) {
 4067    return This->lpVtbl->get_xml(This,xmlString);
 4068}
 4069static inline HRESULT IXMLDOMElement_transformNode(IXMLDOMElement* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 4070    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 4071}
 4072static inline HRESULT IXMLDOMElement_selectNodes(IXMLDOMElement* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 4073    return This->lpVtbl->selectNodes(This,queryString,resultList);
 4074}
 4075static inline HRESULT IXMLDOMElement_selectSingleNode(IXMLDOMElement* This,BSTR queryString,IXMLDOMNode **resultNode) {
 4076    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 4077}
 4078static inline HRESULT IXMLDOMElement_get_parsed(IXMLDOMElement* This,VARIANT_BOOL *isParsed) {
 4079    return This->lpVtbl->get_parsed(This,isParsed);
 4080}
 4081static inline HRESULT IXMLDOMElement_get_namespaceURI(IXMLDOMElement* This,BSTR *namespaceURI) {
 4082    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 4083}
 4084static inline HRESULT IXMLDOMElement_get_prefix(IXMLDOMElement* This,BSTR *prefixString) {
 4085    return This->lpVtbl->get_prefix(This,prefixString);
 4086}
 4087static inline HRESULT IXMLDOMElement_get_baseName(IXMLDOMElement* This,BSTR *nameString) {
 4088    return This->lpVtbl->get_baseName(This,nameString);
 4089}
 4090static inline HRESULT IXMLDOMElement_transformNodeToObject(IXMLDOMElement* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 4091    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 4092}
 4093/*** IXMLDOMElement methods ***/
 4094static inline HRESULT IXMLDOMElement_get_tagName(IXMLDOMElement* This,BSTR *tagName) {
 4095    return This->lpVtbl->get_tagName(This,tagName);
 4096}
 4097static inline HRESULT IXMLDOMElement_getAttribute(IXMLDOMElement* This,BSTR name,VARIANT *value) {
 4098    return This->lpVtbl->getAttribute(This,name,value);
 4099}
 4100static inline HRESULT IXMLDOMElement_setAttribute(IXMLDOMElement* This,BSTR name,VARIANT value) {
 4101    return This->lpVtbl->setAttribute(This,name,value);
 4102}
 4103static inline HRESULT IXMLDOMElement_removeAttribute(IXMLDOMElement* This,BSTR name) {
 4104    return This->lpVtbl->removeAttribute(This,name);
 4105}
 4106static inline HRESULT IXMLDOMElement_getAttributeNode(IXMLDOMElement* This,BSTR name,IXMLDOMAttribute **attributeNode) {
 4107    return This->lpVtbl->getAttributeNode(This,name,attributeNode);
 4108}
 4109static inline HRESULT IXMLDOMElement_setAttributeNode(IXMLDOMElement* This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode) {
 4110    return This->lpVtbl->setAttributeNode(This,DOMAttribute,attributeNode);
 4111}
 4112static inline HRESULT IXMLDOMElement_removeAttributeNode(IXMLDOMElement* This,IXMLDOMAttribute *DOMAttribute,IXMLDOMAttribute **attributeNode) {
 4113    return This->lpVtbl->removeAttributeNode(This,DOMAttribute,attributeNode);
 4114}
 4115static inline HRESULT IXMLDOMElement_getElementsByTagName(IXMLDOMElement* This,BSTR tagName,IXMLDOMNodeList **resultList) {
 4116    return This->lpVtbl->getElementsByTagName(This,tagName,resultList);
 4117}
 4118static inline HRESULT IXMLDOMElement_normalize(IXMLDOMElement* This) {
 4119    return This->lpVtbl->normalize(This);
 4120}
 4121#endif
 4122#endif
 4123
 4124#endif
 4125
 4126
 4127#endif  /* __IXMLDOMElement_INTERFACE_DEFINED__ */
 4128
 4129/*****************************************************************************
 4130 * IXMLDOMText interface
 4131 */
 4132#ifndef __IXMLDOMText_INTERFACE_DEFINED__
 4133#define __IXMLDOMText_INTERFACE_DEFINED__
 4134
 4135DEFINE_GUID(IID_IXMLDOMText, 0x2933bf87, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 4136#if defined(__cplusplus) && !defined(CINTERFACE)
 4137MIDL_INTERFACE("2933bf87-7b36-11d2-b20e-00c04f983e60")
 4138IXMLDOMText : public IXMLDOMCharacterData
 4139{
 4140    virtual HRESULT STDMETHODCALLTYPE splitText(
 4141        LONG offset,
 4142        IXMLDOMText **rightHandTextNode) = 0;
 4143
 4144};
 4145#ifdef __CRT_UUID_DECL
 4146__CRT_UUID_DECL(IXMLDOMText, 0x2933bf87, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 4147#endif
 4148#else
 4149typedef struct IXMLDOMTextVtbl {
 4150    BEGIN_INTERFACE
 4151
 4152    /*** IUnknown methods ***/
 4153    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4154        IXMLDOMText *This,
 4155        REFIID riid,
 4156        void **ppvObject);
 4157
 4158    ULONG (STDMETHODCALLTYPE *AddRef)(
 4159        IXMLDOMText *This);
 4160
 4161    ULONG (STDMETHODCALLTYPE *Release)(
 4162        IXMLDOMText *This);
 4163
 4164    /*** IDispatch methods ***/
 4165    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4166        IXMLDOMText *This,
 4167        UINT *pctinfo);
 4168
 4169    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4170        IXMLDOMText *This,
 4171        UINT iTInfo,
 4172        LCID lcid,
 4173        ITypeInfo **ppTInfo);
 4174
 4175    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4176        IXMLDOMText *This,
 4177        REFIID riid,
 4178        LPOLESTR *rgszNames,
 4179        UINT cNames,
 4180        LCID lcid,
 4181        DISPID *rgDispId);
 4182
 4183    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4184        IXMLDOMText *This,
 4185        DISPID dispIdMember,
 4186        REFIID riid,
 4187        LCID lcid,
 4188        WORD wFlags,
 4189        DISPPARAMS *pDispParams,
 4190        VARIANT *pVarResult,
 4191        EXCEPINFO *pExcepInfo,
 4192        UINT *puArgErr);
 4193
 4194    /*** IXMLDOMNode methods ***/
 4195    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 4196        IXMLDOMText *This,
 4197        BSTR *name);
 4198
 4199    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 4200        IXMLDOMText *This,
 4201        VARIANT *value);
 4202
 4203    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 4204        IXMLDOMText *This,
 4205        VARIANT value);
 4206
 4207    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 4208        IXMLDOMText *This,
 4209        DOMNodeType *type);
 4210
 4211    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 4212        IXMLDOMText *This,
 4213        IXMLDOMNode **parent);
 4214
 4215    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 4216        IXMLDOMText *This,
 4217        IXMLDOMNodeList **childList);
 4218
 4219    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 4220        IXMLDOMText *This,
 4221        IXMLDOMNode **firstChild);
 4222
 4223    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 4224        IXMLDOMText *This,
 4225        IXMLDOMNode **lastChild);
 4226
 4227    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 4228        IXMLDOMText *This,
 4229        IXMLDOMNode **previousSibling);
 4230
 4231    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 4232        IXMLDOMText *This,
 4233        IXMLDOMNode **nextSibling);
 4234
 4235    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 4236        IXMLDOMText *This,
 4237        IXMLDOMNamedNodeMap **attributeMap);
 4238
 4239    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 4240        IXMLDOMText *This,
 4241        IXMLDOMNode *newChild,
 4242        VARIANT refChild,
 4243        IXMLDOMNode **outNewChild);
 4244
 4245    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 4246        IXMLDOMText *This,
 4247        IXMLDOMNode *newChild,
 4248        IXMLDOMNode *oldChild,
 4249        IXMLDOMNode **outOldChild);
 4250
 4251    HRESULT (STDMETHODCALLTYPE *removeChild)(
 4252        IXMLDOMText *This,
 4253        IXMLDOMNode *childNode,
 4254        IXMLDOMNode **oldChild);
 4255
 4256    HRESULT (STDMETHODCALLTYPE *appendChild)(
 4257        IXMLDOMText *This,
 4258        IXMLDOMNode *newChild,
 4259        IXMLDOMNode **outNewChild);
 4260
 4261    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 4262        IXMLDOMText *This,
 4263        VARIANT_BOOL *hasChild);
 4264
 4265    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 4266        IXMLDOMText *This,
 4267        IXMLDOMDocument **DOMDocument);
 4268
 4269    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 4270        IXMLDOMText *This,
 4271        VARIANT_BOOL deep,
 4272        IXMLDOMNode **cloneRoot);
 4273
 4274    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 4275        IXMLDOMText *This,
 4276        BSTR *nodeType);
 4277
 4278    HRESULT (STDMETHODCALLTYPE *get_text)(
 4279        IXMLDOMText *This,
 4280        BSTR *text);
 4281
 4282    HRESULT (STDMETHODCALLTYPE *put_text)(
 4283        IXMLDOMText *This,
 4284        BSTR text);
 4285
 4286    HRESULT (STDMETHODCALLTYPE *get_specified)(
 4287        IXMLDOMText *This,
 4288        VARIANT_BOOL *isSpecified);
 4289
 4290    HRESULT (STDMETHODCALLTYPE *get_definition)(
 4291        IXMLDOMText *This,
 4292        IXMLDOMNode **definitionNode);
 4293
 4294    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 4295        IXMLDOMText *This,
 4296        VARIANT *typedValue);
 4297
 4298    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 4299        IXMLDOMText *This,
 4300        VARIANT typedValue);
 4301
 4302    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 4303        IXMLDOMText *This,
 4304        VARIANT *dataTypeName);
 4305
 4306    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 4307        IXMLDOMText *This,
 4308        BSTR dataTypeName);
 4309
 4310    HRESULT (STDMETHODCALLTYPE *get_xml)(
 4311        IXMLDOMText *This,
 4312        BSTR *xmlString);
 4313
 4314    HRESULT (STDMETHODCALLTYPE *transformNode)(
 4315        IXMLDOMText *This,
 4316        IXMLDOMNode *styleSheet,
 4317        BSTR *xmlString);
 4318
 4319    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 4320        IXMLDOMText *This,
 4321        BSTR queryString,
 4322        IXMLDOMNodeList **resultList);
 4323
 4324    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 4325        IXMLDOMText *This,
 4326        BSTR queryString,
 4327        IXMLDOMNode **resultNode);
 4328
 4329    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 4330        IXMLDOMText *This,
 4331        VARIANT_BOOL *isParsed);
 4332
 4333    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 4334        IXMLDOMText *This,
 4335        BSTR *namespaceURI);
 4336
 4337    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 4338        IXMLDOMText *This,
 4339        BSTR *prefixString);
 4340
 4341    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 4342        IXMLDOMText *This,
 4343        BSTR *nameString);
 4344
 4345    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 4346        IXMLDOMText *This,
 4347        IXMLDOMNode *stylesheet,
 4348        VARIANT outputObject);
 4349
 4350    /*** IXMLDOMCharacterData methods ***/
 4351    HRESULT (STDMETHODCALLTYPE *get_data)(
 4352        IXMLDOMText *This,
 4353        BSTR *data);
 4354
 4355    HRESULT (STDMETHODCALLTYPE *put_data)(
 4356        IXMLDOMText *This,
 4357        BSTR data);
 4358
 4359    HRESULT (STDMETHODCALLTYPE *get_length)(
 4360        IXMLDOMText *This,
 4361        LONG *dataLength);
 4362
 4363    HRESULT (STDMETHODCALLTYPE *substringData)(
 4364        IXMLDOMText *This,
 4365        LONG offset,
 4366        LONG count,
 4367        BSTR *data);
 4368
 4369    HRESULT (STDMETHODCALLTYPE *appendData)(
 4370        IXMLDOMText *This,
 4371        BSTR data);
 4372
 4373    HRESULT (STDMETHODCALLTYPE *insertData)(
 4374        IXMLDOMText *This,
 4375        LONG offset,
 4376        BSTR data);
 4377
 4378    HRESULT (STDMETHODCALLTYPE *deleteData)(
 4379        IXMLDOMText *This,
 4380        LONG offset,
 4381        LONG count);
 4382
 4383    HRESULT (STDMETHODCALLTYPE *replaceData)(
 4384        IXMLDOMText *This,
 4385        LONG offset,
 4386        LONG count,
 4387        BSTR data);
 4388
 4389    /*** IXMLDOMText methods ***/
 4390    HRESULT (STDMETHODCALLTYPE *splitText)(
 4391        IXMLDOMText *This,
 4392        LONG offset,
 4393        IXMLDOMText **rightHandTextNode);
 4394
 4395    END_INTERFACE
 4396} IXMLDOMTextVtbl;
 4397
 4398interface IXMLDOMText {
 4399    CONST_VTBL IXMLDOMTextVtbl* lpVtbl;
 4400};
 4401
 4402#ifdef COBJMACROS
 4403#ifndef WIDL_C_INLINE_WRAPPERS
 4404/*** IUnknown methods ***/
 4405#define IXMLDOMText_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4406#define IXMLDOMText_AddRef(This) (This)->lpVtbl->AddRef(This)
 4407#define IXMLDOMText_Release(This) (This)->lpVtbl->Release(This)
 4408/*** IDispatch methods ***/
 4409#define IXMLDOMText_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4410#define IXMLDOMText_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4411#define IXMLDOMText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4412#define IXMLDOMText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4413/*** IXMLDOMNode methods ***/
 4414#define IXMLDOMText_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 4415#define IXMLDOMText_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 4416#define IXMLDOMText_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 4417#define IXMLDOMText_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 4418#define IXMLDOMText_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 4419#define IXMLDOMText_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 4420#define IXMLDOMText_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 4421#define IXMLDOMText_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 4422#define IXMLDOMText_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 4423#define IXMLDOMText_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 4424#define IXMLDOMText_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 4425#define IXMLDOMText_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 4426#define IXMLDOMText_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 4427#define IXMLDOMText_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 4428#define IXMLDOMText_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 4429#define IXMLDOMText_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 4430#define IXMLDOMText_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 4431#define IXMLDOMText_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 4432#define IXMLDOMText_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 4433#define IXMLDOMText_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 4434#define IXMLDOMText_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 4435#define IXMLDOMText_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 4436#define IXMLDOMText_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 4437#define IXMLDOMText_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 4438#define IXMLDOMText_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 4439#define IXMLDOMText_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 4440#define IXMLDOMText_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 4441#define IXMLDOMText_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 4442#define IXMLDOMText_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 4443#define IXMLDOMText_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 4444#define IXMLDOMText_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 4445#define IXMLDOMText_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 4446#define IXMLDOMText_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 4447#define IXMLDOMText_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 4448#define IXMLDOMText_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 4449#define IXMLDOMText_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 4450/*** IXMLDOMCharacterData methods ***/
 4451#define IXMLDOMText_get_data(This,data) (This)->lpVtbl->get_data(This,data)
 4452#define IXMLDOMText_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 4453#define IXMLDOMText_get_length(This,dataLength) (This)->lpVtbl->get_length(This,dataLength)
 4454#define IXMLDOMText_substringData(This,offset,count,data) (This)->lpVtbl->substringData(This,offset,count,data)
 4455#define IXMLDOMText_appendData(This,data) (This)->lpVtbl->appendData(This,data)
 4456#define IXMLDOMText_insertData(This,offset,data) (This)->lpVtbl->insertData(This,offset,data)
 4457#define IXMLDOMText_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 4458#define IXMLDOMText_replaceData(This,offset,count,data) (This)->lpVtbl->replaceData(This,offset,count,data)
 4459/*** IXMLDOMText methods ***/
 4460#define IXMLDOMText_splitText(This,offset,rightHandTextNode) (This)->lpVtbl->splitText(This,offset,rightHandTextNode)
 4461#else
 4462/*** IUnknown methods ***/
 4463static inline HRESULT IXMLDOMText_QueryInterface(IXMLDOMText* This,REFIID riid,void **ppvObject) {
 4464    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4465}
 4466static inline ULONG IXMLDOMText_AddRef(IXMLDOMText* This) {
 4467    return This->lpVtbl->AddRef(This);
 4468}
 4469static inline ULONG IXMLDOMText_Release(IXMLDOMText* This) {
 4470    return This->lpVtbl->Release(This);
 4471}
 4472/*** IDispatch methods ***/
 4473static inline HRESULT IXMLDOMText_GetTypeInfoCount(IXMLDOMText* This,UINT *pctinfo) {
 4474    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4475}
 4476static inline HRESULT IXMLDOMText_GetTypeInfo(IXMLDOMText* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4477    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4478}
 4479static inline HRESULT IXMLDOMText_GetIDsOfNames(IXMLDOMText* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4480    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4481}
 4482static inline HRESULT IXMLDOMText_Invoke(IXMLDOMText* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4483    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4484}
 4485/*** IXMLDOMNode methods ***/
 4486static inline HRESULT IXMLDOMText_get_nodeName(IXMLDOMText* This,BSTR *name) {
 4487    return This->lpVtbl->get_nodeName(This,name);
 4488}
 4489static inline HRESULT IXMLDOMText_get_nodeValue(IXMLDOMText* This,VARIANT *value) {
 4490    return This->lpVtbl->get_nodeValue(This,value);
 4491}
 4492static inline HRESULT IXMLDOMText_put_nodeValue(IXMLDOMText* This,VARIANT value) {
 4493    return This->lpVtbl->put_nodeValue(This,value);
 4494}
 4495static inline HRESULT IXMLDOMText_get_nodeType(IXMLDOMText* This,DOMNodeType *type) {
 4496    return This->lpVtbl->get_nodeType(This,type);
 4497}
 4498static inline HRESULT IXMLDOMText_get_parentNode(IXMLDOMText* This,IXMLDOMNode **parent) {
 4499    return This->lpVtbl->get_parentNode(This,parent);
 4500}
 4501static inline HRESULT IXMLDOMText_get_childNodes(IXMLDOMText* This,IXMLDOMNodeList **childList) {
 4502    return This->lpVtbl->get_childNodes(This,childList);
 4503}
 4504static inline HRESULT IXMLDOMText_get_firstChild(IXMLDOMText* This,IXMLDOMNode **firstChild) {
 4505    return This->lpVtbl->get_firstChild(This,firstChild);
 4506}
 4507static inline HRESULT IXMLDOMText_get_lastChild(IXMLDOMText* This,IXMLDOMNode **lastChild) {
 4508    return This->lpVtbl->get_lastChild(This,lastChild);
 4509}
 4510static inline HRESULT IXMLDOMText_get_previousSibling(IXMLDOMText* This,IXMLDOMNode **previousSibling) {
 4511    return This->lpVtbl->get_previousSibling(This,previousSibling);
 4512}
 4513static inline HRESULT IXMLDOMText_get_nextSibling(IXMLDOMText* This,IXMLDOMNode **nextSibling) {
 4514    return This->lpVtbl->get_nextSibling(This,nextSibling);
 4515}
 4516static inline HRESULT IXMLDOMText_get_attributes(IXMLDOMText* This,IXMLDOMNamedNodeMap **attributeMap) {
 4517    return This->lpVtbl->get_attributes(This,attributeMap);
 4518}
 4519static inline HRESULT IXMLDOMText_insertBefore(IXMLDOMText* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 4520    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 4521}
 4522static inline HRESULT IXMLDOMText_replaceChild(IXMLDOMText* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 4523    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 4524}
 4525static inline HRESULT IXMLDOMText_removeChild(IXMLDOMText* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 4526    return This->lpVtbl->removeChild(This,childNode,oldChild);
 4527}
 4528static inline HRESULT IXMLDOMText_appendChild(IXMLDOMText* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 4529    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 4530}
 4531static inline HRESULT IXMLDOMText_hasChildNodes(IXMLDOMText* This,VARIANT_BOOL *hasChild) {
 4532    return This->lpVtbl->hasChildNodes(This,hasChild);
 4533}
 4534static inline HRESULT IXMLDOMText_get_ownerDocument(IXMLDOMText* This,IXMLDOMDocument **DOMDocument) {
 4535    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 4536}
 4537static inline HRESULT IXMLDOMText_cloneNode(IXMLDOMText* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 4538    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 4539}
 4540static inline HRESULT IXMLDOMText_get_nodeTypeString(IXMLDOMText* This,BSTR *nodeType) {
 4541    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 4542}
 4543static inline HRESULT IXMLDOMText_get_text(IXMLDOMText* This,BSTR *text) {
 4544    return This->lpVtbl->get_text(This,text);
 4545}
 4546static inline HRESULT IXMLDOMText_put_text(IXMLDOMText* This,BSTR text) {
 4547    return This->lpVtbl->put_text(This,text);
 4548}
 4549static inline HRESULT IXMLDOMText_get_specified(IXMLDOMText* This,VARIANT_BOOL *isSpecified) {
 4550    return This->lpVtbl->get_specified(This,isSpecified);
 4551}
 4552static inline HRESULT IXMLDOMText_get_definition(IXMLDOMText* This,IXMLDOMNode **definitionNode) {
 4553    return This->lpVtbl->get_definition(This,definitionNode);
 4554}
 4555static inline HRESULT IXMLDOMText_get_nodeTypedValue(IXMLDOMText* This,VARIANT *typedValue) {
 4556    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 4557}
 4558static inline HRESULT IXMLDOMText_put_nodeTypedValue(IXMLDOMText* This,VARIANT typedValue) {
 4559    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 4560}
 4561static inline HRESULT IXMLDOMText_get_dataType(IXMLDOMText* This,VARIANT *dataTypeName) {
 4562    return This->lpVtbl->get_dataType(This,dataTypeName);
 4563}
 4564static inline HRESULT IXMLDOMText_put_dataType(IXMLDOMText* This,BSTR dataTypeName) {
 4565    return This->lpVtbl->put_dataType(This,dataTypeName);
 4566}
 4567static inline HRESULT IXMLDOMText_get_xml(IXMLDOMText* This,BSTR *xmlString) {
 4568    return This->lpVtbl->get_xml(This,xmlString);
 4569}
 4570static inline HRESULT IXMLDOMText_transformNode(IXMLDOMText* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 4571    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 4572}
 4573static inline HRESULT IXMLDOMText_selectNodes(IXMLDOMText* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 4574    return This->lpVtbl->selectNodes(This,queryString,resultList);
 4575}
 4576static inline HRESULT IXMLDOMText_selectSingleNode(IXMLDOMText* This,BSTR queryString,IXMLDOMNode **resultNode) {
 4577    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 4578}
 4579static inline HRESULT IXMLDOMText_get_parsed(IXMLDOMText* This,VARIANT_BOOL *isParsed) {
 4580    return This->lpVtbl->get_parsed(This,isParsed);
 4581}
 4582static inline HRESULT IXMLDOMText_get_namespaceURI(IXMLDOMText* This,BSTR *namespaceURI) {
 4583    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 4584}
 4585static inline HRESULT IXMLDOMText_get_prefix(IXMLDOMText* This,BSTR *prefixString) {
 4586    return This->lpVtbl->get_prefix(This,prefixString);
 4587}
 4588static inline HRESULT IXMLDOMText_get_baseName(IXMLDOMText* This,BSTR *nameString) {
 4589    return This->lpVtbl->get_baseName(This,nameString);
 4590}
 4591static inline HRESULT IXMLDOMText_transformNodeToObject(IXMLDOMText* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 4592    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 4593}
 4594/*** IXMLDOMCharacterData methods ***/
 4595static inline HRESULT IXMLDOMText_get_data(IXMLDOMText* This,BSTR *data) {
 4596    return This->lpVtbl->get_data(This,data);
 4597}
 4598static inline HRESULT IXMLDOMText_put_data(IXMLDOMText* This,BSTR data) {
 4599    return This->lpVtbl->put_data(This,data);
 4600}
 4601static inline HRESULT IXMLDOMText_get_length(IXMLDOMText* This,LONG *dataLength) {
 4602    return This->lpVtbl->get_length(This,dataLength);
 4603}
 4604static inline HRESULT IXMLDOMText_substringData(IXMLDOMText* This,LONG offset,LONG count,BSTR *data) {
 4605    return This->lpVtbl->substringData(This,offset,count,data);
 4606}
 4607static inline HRESULT IXMLDOMText_appendData(IXMLDOMText* This,BSTR data) {
 4608    return This->lpVtbl->appendData(This,data);
 4609}
 4610static inline HRESULT IXMLDOMText_insertData(IXMLDOMText* This,LONG offset,BSTR data) {
 4611    return This->lpVtbl->insertData(This,offset,data);
 4612}
 4613static inline HRESULT IXMLDOMText_deleteData(IXMLDOMText* This,LONG offset,LONG count) {
 4614    return This->lpVtbl->deleteData(This,offset,count);
 4615}
 4616static inline HRESULT IXMLDOMText_replaceData(IXMLDOMText* This,LONG offset,LONG count,BSTR data) {
 4617    return This->lpVtbl->replaceData(This,offset,count,data);
 4618}
 4619/*** IXMLDOMText methods ***/
 4620static inline HRESULT IXMLDOMText_splitText(IXMLDOMText* This,LONG offset,IXMLDOMText **rightHandTextNode) {
 4621    return This->lpVtbl->splitText(This,offset,rightHandTextNode);
 4622}
 4623#endif
 4624#endif
 4625
 4626#endif
 4627
 4628
 4629#endif  /* __IXMLDOMText_INTERFACE_DEFINED__ */
 4630
 4631/*****************************************************************************
 4632 * IXMLDOMComment interface
 4633 */
 4634#ifndef __IXMLDOMComment_INTERFACE_DEFINED__
 4635#define __IXMLDOMComment_INTERFACE_DEFINED__
 4636
 4637DEFINE_GUID(IID_IXMLDOMComment, 0x2933bf88, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 4638#if defined(__cplusplus) && !defined(CINTERFACE)
 4639MIDL_INTERFACE("2933bf88-7b36-11d2-b20e-00c04f983e60")
 4640IXMLDOMComment : public IXMLDOMCharacterData
 4641{
 4642};
 4643#ifdef __CRT_UUID_DECL
 4644__CRT_UUID_DECL(IXMLDOMComment, 0x2933bf88, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 4645#endif
 4646#else
 4647typedef struct IXMLDOMCommentVtbl {
 4648    BEGIN_INTERFACE
 4649
 4650    /*** IUnknown methods ***/
 4651    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4652        IXMLDOMComment *This,
 4653        REFIID riid,
 4654        void **ppvObject);
 4655
 4656    ULONG (STDMETHODCALLTYPE *AddRef)(
 4657        IXMLDOMComment *This);
 4658
 4659    ULONG (STDMETHODCALLTYPE *Release)(
 4660        IXMLDOMComment *This);
 4661
 4662    /*** IDispatch methods ***/
 4663    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4664        IXMLDOMComment *This,
 4665        UINT *pctinfo);
 4666
 4667    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4668        IXMLDOMComment *This,
 4669        UINT iTInfo,
 4670        LCID lcid,
 4671        ITypeInfo **ppTInfo);
 4672
 4673    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4674        IXMLDOMComment *This,
 4675        REFIID riid,
 4676        LPOLESTR *rgszNames,
 4677        UINT cNames,
 4678        LCID lcid,
 4679        DISPID *rgDispId);
 4680
 4681    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4682        IXMLDOMComment *This,
 4683        DISPID dispIdMember,
 4684        REFIID riid,
 4685        LCID lcid,
 4686        WORD wFlags,
 4687        DISPPARAMS *pDispParams,
 4688        VARIANT *pVarResult,
 4689        EXCEPINFO *pExcepInfo,
 4690        UINT *puArgErr);
 4691
 4692    /*** IXMLDOMNode methods ***/
 4693    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 4694        IXMLDOMComment *This,
 4695        BSTR *name);
 4696
 4697    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 4698        IXMLDOMComment *This,
 4699        VARIANT *value);
 4700
 4701    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 4702        IXMLDOMComment *This,
 4703        VARIANT value);
 4704
 4705    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 4706        IXMLDOMComment *This,
 4707        DOMNodeType *type);
 4708
 4709    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 4710        IXMLDOMComment *This,
 4711        IXMLDOMNode **parent);
 4712
 4713    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 4714        IXMLDOMComment *This,
 4715        IXMLDOMNodeList **childList);
 4716
 4717    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 4718        IXMLDOMComment *This,
 4719        IXMLDOMNode **firstChild);
 4720
 4721    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 4722        IXMLDOMComment *This,
 4723        IXMLDOMNode **lastChild);
 4724
 4725    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 4726        IXMLDOMComment *This,
 4727        IXMLDOMNode **previousSibling);
 4728
 4729    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 4730        IXMLDOMComment *This,
 4731        IXMLDOMNode **nextSibling);
 4732
 4733    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 4734        IXMLDOMComment *This,
 4735        IXMLDOMNamedNodeMap **attributeMap);
 4736
 4737    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 4738        IXMLDOMComment *This,
 4739        IXMLDOMNode *newChild,
 4740        VARIANT refChild,
 4741        IXMLDOMNode **outNewChild);
 4742
 4743    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 4744        IXMLDOMComment *This,
 4745        IXMLDOMNode *newChild,
 4746        IXMLDOMNode *oldChild,
 4747        IXMLDOMNode **outOldChild);
 4748
 4749    HRESULT (STDMETHODCALLTYPE *removeChild)(
 4750        IXMLDOMComment *This,
 4751        IXMLDOMNode *childNode,
 4752        IXMLDOMNode **oldChild);
 4753
 4754    HRESULT (STDMETHODCALLTYPE *appendChild)(
 4755        IXMLDOMComment *This,
 4756        IXMLDOMNode *newChild,
 4757        IXMLDOMNode **outNewChild);
 4758
 4759    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 4760        IXMLDOMComment *This,
 4761        VARIANT_BOOL *hasChild);
 4762
 4763    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 4764        IXMLDOMComment *This,
 4765        IXMLDOMDocument **DOMDocument);
 4766
 4767    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 4768        IXMLDOMComment *This,
 4769        VARIANT_BOOL deep,
 4770        IXMLDOMNode **cloneRoot);
 4771
 4772    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 4773        IXMLDOMComment *This,
 4774        BSTR *nodeType);
 4775
 4776    HRESULT (STDMETHODCALLTYPE *get_text)(
 4777        IXMLDOMComment *This,
 4778        BSTR *text);
 4779
 4780    HRESULT (STDMETHODCALLTYPE *put_text)(
 4781        IXMLDOMComment *This,
 4782        BSTR text);
 4783
 4784    HRESULT (STDMETHODCALLTYPE *get_specified)(
 4785        IXMLDOMComment *This,
 4786        VARIANT_BOOL *isSpecified);
 4787
 4788    HRESULT (STDMETHODCALLTYPE *get_definition)(
 4789        IXMLDOMComment *This,
 4790        IXMLDOMNode **definitionNode);
 4791
 4792    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 4793        IXMLDOMComment *This,
 4794        VARIANT *typedValue);
 4795
 4796    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 4797        IXMLDOMComment *This,
 4798        VARIANT typedValue);
 4799
 4800    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 4801        IXMLDOMComment *This,
 4802        VARIANT *dataTypeName);
 4803
 4804    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 4805        IXMLDOMComment *This,
 4806        BSTR dataTypeName);
 4807
 4808    HRESULT (STDMETHODCALLTYPE *get_xml)(
 4809        IXMLDOMComment *This,
 4810        BSTR *xmlString);
 4811
 4812    HRESULT (STDMETHODCALLTYPE *transformNode)(
 4813        IXMLDOMComment *This,
 4814        IXMLDOMNode *styleSheet,
 4815        BSTR *xmlString);
 4816
 4817    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 4818        IXMLDOMComment *This,
 4819        BSTR queryString,
 4820        IXMLDOMNodeList **resultList);
 4821
 4822    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 4823        IXMLDOMComment *This,
 4824        BSTR queryString,
 4825        IXMLDOMNode **resultNode);
 4826
 4827    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 4828        IXMLDOMComment *This,
 4829        VARIANT_BOOL *isParsed);
 4830
 4831    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 4832        IXMLDOMComment *This,
 4833        BSTR *namespaceURI);
 4834
 4835    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 4836        IXMLDOMComment *This,
 4837        BSTR *prefixString);
 4838
 4839    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 4840        IXMLDOMComment *This,
 4841        BSTR *nameString);
 4842
 4843    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 4844        IXMLDOMComment *This,
 4845        IXMLDOMNode *stylesheet,
 4846        VARIANT outputObject);
 4847
 4848    /*** IXMLDOMCharacterData methods ***/
 4849    HRESULT (STDMETHODCALLTYPE *get_data)(
 4850        IXMLDOMComment *This,
 4851        BSTR *data);
 4852
 4853    HRESULT (STDMETHODCALLTYPE *put_data)(
 4854        IXMLDOMComment *This,
 4855        BSTR data);
 4856
 4857    HRESULT (STDMETHODCALLTYPE *get_length)(
 4858        IXMLDOMComment *This,
 4859        LONG *dataLength);
 4860
 4861    HRESULT (STDMETHODCALLTYPE *substringData)(
 4862        IXMLDOMComment *This,
 4863        LONG offset,
 4864        LONG count,
 4865        BSTR *data);
 4866
 4867    HRESULT (STDMETHODCALLTYPE *appendData)(
 4868        IXMLDOMComment *This,
 4869        BSTR data);
 4870
 4871    HRESULT (STDMETHODCALLTYPE *insertData)(
 4872        IXMLDOMComment *This,
 4873        LONG offset,
 4874        BSTR data);
 4875
 4876    HRESULT (STDMETHODCALLTYPE *deleteData)(
 4877        IXMLDOMComment *This,
 4878        LONG offset,
 4879        LONG count);
 4880
 4881    HRESULT (STDMETHODCALLTYPE *replaceData)(
 4882        IXMLDOMComment *This,
 4883        LONG offset,
 4884        LONG count,
 4885        BSTR data);
 4886
 4887    END_INTERFACE
 4888} IXMLDOMCommentVtbl;
 4889
 4890interface IXMLDOMComment {
 4891    CONST_VTBL IXMLDOMCommentVtbl* lpVtbl;
 4892};
 4893
 4894#ifdef COBJMACROS
 4895#ifndef WIDL_C_INLINE_WRAPPERS
 4896/*** IUnknown methods ***/
 4897#define IXMLDOMComment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4898#define IXMLDOMComment_AddRef(This) (This)->lpVtbl->AddRef(This)
 4899#define IXMLDOMComment_Release(This) (This)->lpVtbl->Release(This)
 4900/*** IDispatch methods ***/
 4901#define IXMLDOMComment_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4902#define IXMLDOMComment_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4903#define IXMLDOMComment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4904#define IXMLDOMComment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4905/*** IXMLDOMNode methods ***/
 4906#define IXMLDOMComment_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 4907#define IXMLDOMComment_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 4908#define IXMLDOMComment_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 4909#define IXMLDOMComment_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 4910#define IXMLDOMComment_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 4911#define IXMLDOMComment_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 4912#define IXMLDOMComment_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 4913#define IXMLDOMComment_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 4914#define IXMLDOMComment_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 4915#define IXMLDOMComment_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 4916#define IXMLDOMComment_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 4917#define IXMLDOMComment_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 4918#define IXMLDOMComment_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 4919#define IXMLDOMComment_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 4920#define IXMLDOMComment_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 4921#define IXMLDOMComment_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 4922#define IXMLDOMComment_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 4923#define IXMLDOMComment_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 4924#define IXMLDOMComment_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 4925#define IXMLDOMComment_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 4926#define IXMLDOMComment_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 4927#define IXMLDOMComment_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 4928#define IXMLDOMComment_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 4929#define IXMLDOMComment_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 4930#define IXMLDOMComment_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 4931#define IXMLDOMComment_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 4932#define IXMLDOMComment_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 4933#define IXMLDOMComment_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 4934#define IXMLDOMComment_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 4935#define IXMLDOMComment_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 4936#define IXMLDOMComment_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 4937#define IXMLDOMComment_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 4938#define IXMLDOMComment_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 4939#define IXMLDOMComment_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 4940#define IXMLDOMComment_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 4941#define IXMLDOMComment_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 4942/*** IXMLDOMCharacterData methods ***/
 4943#define IXMLDOMComment_get_data(This,data) (This)->lpVtbl->get_data(This,data)
 4944#define IXMLDOMComment_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 4945#define IXMLDOMComment_get_length(This,dataLength) (This)->lpVtbl->get_length(This,dataLength)
 4946#define IXMLDOMComment_substringData(This,offset,count,data) (This)->lpVtbl->substringData(This,offset,count,data)
 4947#define IXMLDOMComment_appendData(This,data) (This)->lpVtbl->appendData(This,data)
 4948#define IXMLDOMComment_insertData(This,offset,data) (This)->lpVtbl->insertData(This,offset,data)
 4949#define IXMLDOMComment_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 4950#define IXMLDOMComment_replaceData(This,offset,count,data) (This)->lpVtbl->replaceData(This,offset,count,data)
 4951#else
 4952/*** IUnknown methods ***/
 4953static inline HRESULT IXMLDOMComment_QueryInterface(IXMLDOMComment* This,REFIID riid,void **ppvObject) {
 4954    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4955}
 4956static inline ULONG IXMLDOMComment_AddRef(IXMLDOMComment* This) {
 4957    return This->lpVtbl->AddRef(This);
 4958}
 4959static inline ULONG IXMLDOMComment_Release(IXMLDOMComment* This) {
 4960    return This->lpVtbl->Release(This);
 4961}
 4962/*** IDispatch methods ***/
 4963static inline HRESULT IXMLDOMComment_GetTypeInfoCount(IXMLDOMComment* This,UINT *pctinfo) {
 4964    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4965}
 4966static inline HRESULT IXMLDOMComment_GetTypeInfo(IXMLDOMComment* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4967    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4968}
 4969static inline HRESULT IXMLDOMComment_GetIDsOfNames(IXMLDOMComment* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4970    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4971}
 4972static inline HRESULT IXMLDOMComment_Invoke(IXMLDOMComment* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4973    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4974}
 4975/*** IXMLDOMNode methods ***/
 4976static inline HRESULT IXMLDOMComment_get_nodeName(IXMLDOMComment* This,BSTR *name) {
 4977    return This->lpVtbl->get_nodeName(This,name);
 4978}
 4979static inline HRESULT IXMLDOMComment_get_nodeValue(IXMLDOMComment* This,VARIANT *value) {
 4980    return This->lpVtbl->get_nodeValue(This,value);
 4981}
 4982static inline HRESULT IXMLDOMComment_put_nodeValue(IXMLDOMComment* This,VARIANT value) {
 4983    return This->lpVtbl->put_nodeValue(This,value);
 4984}
 4985static inline HRESULT IXMLDOMComment_get_nodeType(IXMLDOMComment* This,DOMNodeType *type) {
 4986    return This->lpVtbl->get_nodeType(This,type);
 4987}
 4988static inline HRESULT IXMLDOMComment_get_parentNode(IXMLDOMComment* This,IXMLDOMNode **parent) {
 4989    return This->lpVtbl->get_parentNode(This,parent);
 4990}
 4991static inline HRESULT IXMLDOMComment_get_childNodes(IXMLDOMComment* This,IXMLDOMNodeList **childList) {
 4992    return This->lpVtbl->get_childNodes(This,childList);
 4993}
 4994static inline HRESULT IXMLDOMComment_get_firstChild(IXMLDOMComment* This,IXMLDOMNode **firstChild) {
 4995    return This->lpVtbl->get_firstChild(This,firstChild);
 4996}
 4997static inline HRESULT IXMLDOMComment_get_lastChild(IXMLDOMComment* This,IXMLDOMNode **lastChild) {
 4998    return This->lpVtbl->get_lastChild(This,lastChild);
 4999}
 5000static inline HRESULT IXMLDOMComment_get_previousSibling(IXMLDOMComment* This,IXMLDOMNode **previousSibling) {
 5001    return This->lpVtbl->get_previousSibling(This,previousSibling);
 5002}
 5003static inline HRESULT IXMLDOMComment_get_nextSibling(IXMLDOMComment* This,IXMLDOMNode **nextSibling) {
 5004    return This->lpVtbl->get_nextSibling(This,nextSibling);
 5005}
 5006static inline HRESULT IXMLDOMComment_get_attributes(IXMLDOMComment* This,IXMLDOMNamedNodeMap **attributeMap) {
 5007    return This->lpVtbl->get_attributes(This,attributeMap);
 5008}
 5009static inline HRESULT IXMLDOMComment_insertBefore(IXMLDOMComment* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 5010    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 5011}
 5012static inline HRESULT IXMLDOMComment_replaceChild(IXMLDOMComment* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 5013    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 5014}
 5015static inline HRESULT IXMLDOMComment_removeChild(IXMLDOMComment* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 5016    return This->lpVtbl->removeChild(This,childNode,oldChild);
 5017}
 5018static inline HRESULT IXMLDOMComment_appendChild(IXMLDOMComment* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 5019    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 5020}
 5021static inline HRESULT IXMLDOMComment_hasChildNodes(IXMLDOMComment* This,VARIANT_BOOL *hasChild) {
 5022    return This->lpVtbl->hasChildNodes(This,hasChild);
 5023}
 5024static inline HRESULT IXMLDOMComment_get_ownerDocument(IXMLDOMComment* This,IXMLDOMDocument **DOMDocument) {
 5025    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 5026}
 5027static inline HRESULT IXMLDOMComment_cloneNode(IXMLDOMComment* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 5028    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 5029}
 5030static inline HRESULT IXMLDOMComment_get_nodeTypeString(IXMLDOMComment* This,BSTR *nodeType) {
 5031    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 5032}
 5033static inline HRESULT IXMLDOMComment_get_text(IXMLDOMComment* This,BSTR *text) {
 5034    return This->lpVtbl->get_text(This,text);
 5035}
 5036static inline HRESULT IXMLDOMComment_put_text(IXMLDOMComment* This,BSTR text) {
 5037    return This->lpVtbl->put_text(This,text);
 5038}
 5039static inline HRESULT IXMLDOMComment_get_specified(IXMLDOMComment* This,VARIANT_BOOL *isSpecified) {
 5040    return This->lpVtbl->get_specified(This,isSpecified);
 5041}
 5042static inline HRESULT IXMLDOMComment_get_definition(IXMLDOMComment* This,IXMLDOMNode **definitionNode) {
 5043    return This->lpVtbl->get_definition(This,definitionNode);
 5044}
 5045static inline HRESULT IXMLDOMComment_get_nodeTypedValue(IXMLDOMComment* This,VARIANT *typedValue) {
 5046    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 5047}
 5048static inline HRESULT IXMLDOMComment_put_nodeTypedValue(IXMLDOMComment* This,VARIANT typedValue) {
 5049    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 5050}
 5051static inline HRESULT IXMLDOMComment_get_dataType(IXMLDOMComment* This,VARIANT *dataTypeName) {
 5052    return This->lpVtbl->get_dataType(This,dataTypeName);
 5053}
 5054static inline HRESULT IXMLDOMComment_put_dataType(IXMLDOMComment* This,BSTR dataTypeName) {
 5055    return This->lpVtbl->put_dataType(This,dataTypeName);
 5056}
 5057static inline HRESULT IXMLDOMComment_get_xml(IXMLDOMComment* This,BSTR *xmlString) {
 5058    return This->lpVtbl->get_xml(This,xmlString);
 5059}
 5060static inline HRESULT IXMLDOMComment_transformNode(IXMLDOMComment* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 5061    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 5062}
 5063static inline HRESULT IXMLDOMComment_selectNodes(IXMLDOMComment* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 5064    return This->lpVtbl->selectNodes(This,queryString,resultList);
 5065}
 5066static inline HRESULT IXMLDOMComment_selectSingleNode(IXMLDOMComment* This,BSTR queryString,IXMLDOMNode **resultNode) {
 5067    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 5068}
 5069static inline HRESULT IXMLDOMComment_get_parsed(IXMLDOMComment* This,VARIANT_BOOL *isParsed) {
 5070    return This->lpVtbl->get_parsed(This,isParsed);
 5071}
 5072static inline HRESULT IXMLDOMComment_get_namespaceURI(IXMLDOMComment* This,BSTR *namespaceURI) {
 5073    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 5074}
 5075static inline HRESULT IXMLDOMComment_get_prefix(IXMLDOMComment* This,BSTR *prefixString) {
 5076    return This->lpVtbl->get_prefix(This,prefixString);
 5077}
 5078static inline HRESULT IXMLDOMComment_get_baseName(IXMLDOMComment* This,BSTR *nameString) {
 5079    return This->lpVtbl->get_baseName(This,nameString);
 5080}
 5081static inline HRESULT IXMLDOMComment_transformNodeToObject(IXMLDOMComment* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 5082    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 5083}
 5084/*** IXMLDOMCharacterData methods ***/
 5085static inline HRESULT IXMLDOMComment_get_data(IXMLDOMComment* This,BSTR *data) {
 5086    return This->lpVtbl->get_data(This,data);
 5087}
 5088static inline HRESULT IXMLDOMComment_put_data(IXMLDOMComment* This,BSTR data) {
 5089    return This->lpVtbl->put_data(This,data);
 5090}
 5091static inline HRESULT IXMLDOMComment_get_length(IXMLDOMComment* This,LONG *dataLength) {
 5092    return This->lpVtbl->get_length(This,dataLength);
 5093}
 5094static inline HRESULT IXMLDOMComment_substringData(IXMLDOMComment* This,LONG offset,LONG count,BSTR *data) {
 5095    return This->lpVtbl->substringData(This,offset,count,data);
 5096}
 5097static inline HRESULT IXMLDOMComment_appendData(IXMLDOMComment* This,BSTR data) {
 5098    return This->lpVtbl->appendData(This,data);
 5099}
 5100static inline HRESULT IXMLDOMComment_insertData(IXMLDOMComment* This,LONG offset,BSTR data) {
 5101    return This->lpVtbl->insertData(This,offset,data);
 5102}
 5103static inline HRESULT IXMLDOMComment_deleteData(IXMLDOMComment* This,LONG offset,LONG count) {
 5104    return This->lpVtbl->deleteData(This,offset,count);
 5105}
 5106static inline HRESULT IXMLDOMComment_replaceData(IXMLDOMComment* This,LONG offset,LONG count,BSTR data) {
 5107    return This->lpVtbl->replaceData(This,offset,count,data);
 5108}
 5109#endif
 5110#endif
 5111
 5112#endif
 5113
 5114
 5115#endif  /* __IXMLDOMComment_INTERFACE_DEFINED__ */
 5116
 5117/*****************************************************************************
 5118 * IXMLDOMProcessingInstruction interface
 5119 */
 5120#ifndef __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__
 5121#define __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__
 5122
 5123DEFINE_GUID(IID_IXMLDOMProcessingInstruction, 0x2933bf89, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 5124#if defined(__cplusplus) && !defined(CINTERFACE)
 5125MIDL_INTERFACE("2933bf89-7b36-11d2-b20e-00c04f983e60")
 5126IXMLDOMProcessingInstruction : public IXMLDOMNode
 5127{
 5128    virtual HRESULT STDMETHODCALLTYPE get_target(
 5129        BSTR *name) = 0;
 5130
 5131    virtual HRESULT STDMETHODCALLTYPE get_data(
 5132        BSTR *value) = 0;
 5133
 5134    virtual HRESULT STDMETHODCALLTYPE put_data(
 5135        BSTR value) = 0;
 5136
 5137};
 5138#ifdef __CRT_UUID_DECL
 5139__CRT_UUID_DECL(IXMLDOMProcessingInstruction, 0x2933bf89, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 5140#endif
 5141#else
 5142typedef struct IXMLDOMProcessingInstructionVtbl {
 5143    BEGIN_INTERFACE
 5144
 5145    /*** IUnknown methods ***/
 5146    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5147        IXMLDOMProcessingInstruction *This,
 5148        REFIID riid,
 5149        void **ppvObject);
 5150
 5151    ULONG (STDMETHODCALLTYPE *AddRef)(
 5152        IXMLDOMProcessingInstruction *This);
 5153
 5154    ULONG (STDMETHODCALLTYPE *Release)(
 5155        IXMLDOMProcessingInstruction *This);
 5156
 5157    /*** IDispatch methods ***/
 5158    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5159        IXMLDOMProcessingInstruction *This,
 5160        UINT *pctinfo);
 5161
 5162    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5163        IXMLDOMProcessingInstruction *This,
 5164        UINT iTInfo,
 5165        LCID lcid,
 5166        ITypeInfo **ppTInfo);
 5167
 5168    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5169        IXMLDOMProcessingInstruction *This,
 5170        REFIID riid,
 5171        LPOLESTR *rgszNames,
 5172        UINT cNames,
 5173        LCID lcid,
 5174        DISPID *rgDispId);
 5175
 5176    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5177        IXMLDOMProcessingInstruction *This,
 5178        DISPID dispIdMember,
 5179        REFIID riid,
 5180        LCID lcid,
 5181        WORD wFlags,
 5182        DISPPARAMS *pDispParams,
 5183        VARIANT *pVarResult,
 5184        EXCEPINFO *pExcepInfo,
 5185        UINT *puArgErr);
 5186
 5187    /*** IXMLDOMNode methods ***/
 5188    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 5189        IXMLDOMProcessingInstruction *This,
 5190        BSTR *name);
 5191
 5192    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 5193        IXMLDOMProcessingInstruction *This,
 5194        VARIANT *value);
 5195
 5196    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 5197        IXMLDOMProcessingInstruction *This,
 5198        VARIANT value);
 5199
 5200    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 5201        IXMLDOMProcessingInstruction *This,
 5202        DOMNodeType *type);
 5203
 5204    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 5205        IXMLDOMProcessingInstruction *This,
 5206        IXMLDOMNode **parent);
 5207
 5208    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 5209        IXMLDOMProcessingInstruction *This,
 5210        IXMLDOMNodeList **childList);
 5211
 5212    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 5213        IXMLDOMProcessingInstruction *This,
 5214        IXMLDOMNode **firstChild);
 5215
 5216    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 5217        IXMLDOMProcessingInstruction *This,
 5218        IXMLDOMNode **lastChild);
 5219
 5220    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 5221        IXMLDOMProcessingInstruction *This,
 5222        IXMLDOMNode **previousSibling);
 5223
 5224    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 5225        IXMLDOMProcessingInstruction *This,
 5226        IXMLDOMNode **nextSibling);
 5227
 5228    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 5229        IXMLDOMProcessingInstruction *This,
 5230        IXMLDOMNamedNodeMap **attributeMap);
 5231
 5232    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 5233        IXMLDOMProcessingInstruction *This,
 5234        IXMLDOMNode *newChild,
 5235        VARIANT refChild,
 5236        IXMLDOMNode **outNewChild);
 5237
 5238    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 5239        IXMLDOMProcessingInstruction *This,
 5240        IXMLDOMNode *newChild,
 5241        IXMLDOMNode *oldChild,
 5242        IXMLDOMNode **outOldChild);
 5243
 5244    HRESULT (STDMETHODCALLTYPE *removeChild)(
 5245        IXMLDOMProcessingInstruction *This,
 5246        IXMLDOMNode *childNode,
 5247        IXMLDOMNode **oldChild);
 5248
 5249    HRESULT (STDMETHODCALLTYPE *appendChild)(
 5250        IXMLDOMProcessingInstruction *This,
 5251        IXMLDOMNode *newChild,
 5252        IXMLDOMNode **outNewChild);
 5253
 5254    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 5255        IXMLDOMProcessingInstruction *This,
 5256        VARIANT_BOOL *hasChild);
 5257
 5258    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 5259        IXMLDOMProcessingInstruction *This,
 5260        IXMLDOMDocument **DOMDocument);
 5261
 5262    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 5263        IXMLDOMProcessingInstruction *This,
 5264        VARIANT_BOOL deep,
 5265        IXMLDOMNode **cloneRoot);
 5266
 5267    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 5268        IXMLDOMProcessingInstruction *This,
 5269        BSTR *nodeType);
 5270
 5271    HRESULT (STDMETHODCALLTYPE *get_text)(
 5272        IXMLDOMProcessingInstruction *This,
 5273        BSTR *text);
 5274
 5275    HRESULT (STDMETHODCALLTYPE *put_text)(
 5276        IXMLDOMProcessingInstruction *This,
 5277        BSTR text);
 5278
 5279    HRESULT (STDMETHODCALLTYPE *get_specified)(
 5280        IXMLDOMProcessingInstruction *This,
 5281        VARIANT_BOOL *isSpecified);
 5282
 5283    HRESULT (STDMETHODCALLTYPE *get_definition)(
 5284        IXMLDOMProcessingInstruction *This,
 5285        IXMLDOMNode **definitionNode);
 5286
 5287    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 5288        IXMLDOMProcessingInstruction *This,
 5289        VARIANT *typedValue);
 5290
 5291    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 5292        IXMLDOMProcessingInstruction *This,
 5293        VARIANT typedValue);
 5294
 5295    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 5296        IXMLDOMProcessingInstruction *This,
 5297        VARIANT *dataTypeName);
 5298
 5299    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 5300        IXMLDOMProcessingInstruction *This,
 5301        BSTR dataTypeName);
 5302
 5303    HRESULT (STDMETHODCALLTYPE *get_xml)(
 5304        IXMLDOMProcessingInstruction *This,
 5305        BSTR *xmlString);
 5306
 5307    HRESULT (STDMETHODCALLTYPE *transformNode)(
 5308        IXMLDOMProcessingInstruction *This,
 5309        IXMLDOMNode *styleSheet,
 5310        BSTR *xmlString);
 5311
 5312    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 5313        IXMLDOMProcessingInstruction *This,
 5314        BSTR queryString,
 5315        IXMLDOMNodeList **resultList);
 5316
 5317    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 5318        IXMLDOMProcessingInstruction *This,
 5319        BSTR queryString,
 5320        IXMLDOMNode **resultNode);
 5321
 5322    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 5323        IXMLDOMProcessingInstruction *This,
 5324        VARIANT_BOOL *isParsed);
 5325
 5326    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 5327        IXMLDOMProcessingInstruction *This,
 5328        BSTR *namespaceURI);
 5329
 5330    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 5331        IXMLDOMProcessingInstruction *This,
 5332        BSTR *prefixString);
 5333
 5334    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 5335        IXMLDOMProcessingInstruction *This,
 5336        BSTR *nameString);
 5337
 5338    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 5339        IXMLDOMProcessingInstruction *This,
 5340        IXMLDOMNode *stylesheet,
 5341        VARIANT outputObject);
 5342
 5343    /*** IXMLDOMProcessingInstruction methods ***/
 5344    HRESULT (STDMETHODCALLTYPE *get_target)(
 5345        IXMLDOMProcessingInstruction *This,
 5346        BSTR *name);
 5347
 5348    HRESULT (STDMETHODCALLTYPE *get_data)(
 5349        IXMLDOMProcessingInstruction *This,
 5350        BSTR *value);
 5351
 5352    HRESULT (STDMETHODCALLTYPE *put_data)(
 5353        IXMLDOMProcessingInstruction *This,
 5354        BSTR value);
 5355
 5356    END_INTERFACE
 5357} IXMLDOMProcessingInstructionVtbl;
 5358
 5359interface IXMLDOMProcessingInstruction {
 5360    CONST_VTBL IXMLDOMProcessingInstructionVtbl* lpVtbl;
 5361};
 5362
 5363#ifdef COBJMACROS
 5364#ifndef WIDL_C_INLINE_WRAPPERS
 5365/*** IUnknown methods ***/
 5366#define IXMLDOMProcessingInstruction_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5367#define IXMLDOMProcessingInstruction_AddRef(This) (This)->lpVtbl->AddRef(This)
 5368#define IXMLDOMProcessingInstruction_Release(This) (This)->lpVtbl->Release(This)
 5369/*** IDispatch methods ***/
 5370#define IXMLDOMProcessingInstruction_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5371#define IXMLDOMProcessingInstruction_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5372#define IXMLDOMProcessingInstruction_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5373#define IXMLDOMProcessingInstruction_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5374/*** IXMLDOMNode methods ***/
 5375#define IXMLDOMProcessingInstruction_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 5376#define IXMLDOMProcessingInstruction_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 5377#define IXMLDOMProcessingInstruction_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 5378#define IXMLDOMProcessingInstruction_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 5379#define IXMLDOMProcessingInstruction_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 5380#define IXMLDOMProcessingInstruction_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 5381#define IXMLDOMProcessingInstruction_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 5382#define IXMLDOMProcessingInstruction_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 5383#define IXMLDOMProcessingInstruction_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 5384#define IXMLDOMProcessingInstruction_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 5385#define IXMLDOMProcessingInstruction_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 5386#define IXMLDOMProcessingInstruction_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 5387#define IXMLDOMProcessingInstruction_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 5388#define IXMLDOMProcessingInstruction_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 5389#define IXMLDOMProcessingInstruction_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 5390#define IXMLDOMProcessingInstruction_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 5391#define IXMLDOMProcessingInstruction_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 5392#define IXMLDOMProcessingInstruction_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 5393#define IXMLDOMProcessingInstruction_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 5394#define IXMLDOMProcessingInstruction_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 5395#define IXMLDOMProcessingInstruction_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 5396#define IXMLDOMProcessingInstruction_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 5397#define IXMLDOMProcessingInstruction_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 5398#define IXMLDOMProcessingInstruction_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 5399#define IXMLDOMProcessingInstruction_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 5400#define IXMLDOMProcessingInstruction_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 5401#define IXMLDOMProcessingInstruction_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 5402#define IXMLDOMProcessingInstruction_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 5403#define IXMLDOMProcessingInstruction_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 5404#define IXMLDOMProcessingInstruction_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 5405#define IXMLDOMProcessingInstruction_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 5406#define IXMLDOMProcessingInstruction_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 5407#define IXMLDOMProcessingInstruction_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 5408#define IXMLDOMProcessingInstruction_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 5409#define IXMLDOMProcessingInstruction_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 5410#define IXMLDOMProcessingInstruction_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 5411/*** IXMLDOMProcessingInstruction methods ***/
 5412#define IXMLDOMProcessingInstruction_get_target(This,name) (This)->lpVtbl->get_target(This,name)
 5413#define IXMLDOMProcessingInstruction_get_data(This,value) (This)->lpVtbl->get_data(This,value)
 5414#define IXMLDOMProcessingInstruction_put_data(This,value) (This)->lpVtbl->put_data(This,value)
 5415#else
 5416/*** IUnknown methods ***/
 5417static inline HRESULT IXMLDOMProcessingInstruction_QueryInterface(IXMLDOMProcessingInstruction* This,REFIID riid,void **ppvObject) {
 5418    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5419}
 5420static inline ULONG IXMLDOMProcessingInstruction_AddRef(IXMLDOMProcessingInstruction* This) {
 5421    return This->lpVtbl->AddRef(This);
 5422}
 5423static inline ULONG IXMLDOMProcessingInstruction_Release(IXMLDOMProcessingInstruction* This) {
 5424    return This->lpVtbl->Release(This);
 5425}
 5426/*** IDispatch methods ***/
 5427static inline HRESULT IXMLDOMProcessingInstruction_GetTypeInfoCount(IXMLDOMProcessingInstruction* This,UINT *pctinfo) {
 5428    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5429}
 5430static inline HRESULT IXMLDOMProcessingInstruction_GetTypeInfo(IXMLDOMProcessingInstruction* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5431    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5432}
 5433static inline HRESULT IXMLDOMProcessingInstruction_GetIDsOfNames(IXMLDOMProcessingInstruction* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5434    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5435}
 5436static inline HRESULT IXMLDOMProcessingInstruction_Invoke(IXMLDOMProcessingInstruction* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5437    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5438}
 5439/*** IXMLDOMNode methods ***/
 5440static inline HRESULT IXMLDOMProcessingInstruction_get_nodeName(IXMLDOMProcessingInstruction* This,BSTR *name) {
 5441    return This->lpVtbl->get_nodeName(This,name);
 5442}
 5443static inline HRESULT IXMLDOMProcessingInstruction_get_nodeValue(IXMLDOMProcessingInstruction* This,VARIANT *value) {
 5444    return This->lpVtbl->get_nodeValue(This,value);
 5445}
 5446static inline HRESULT IXMLDOMProcessingInstruction_put_nodeValue(IXMLDOMProcessingInstruction* This,VARIANT value) {
 5447    return This->lpVtbl->put_nodeValue(This,value);
 5448}
 5449static inline HRESULT IXMLDOMProcessingInstruction_get_nodeType(IXMLDOMProcessingInstruction* This,DOMNodeType *type) {
 5450    return This->lpVtbl->get_nodeType(This,type);
 5451}
 5452static inline HRESULT IXMLDOMProcessingInstruction_get_parentNode(IXMLDOMProcessingInstruction* This,IXMLDOMNode **parent) {
 5453    return This->lpVtbl->get_parentNode(This,parent);
 5454}
 5455static inline HRESULT IXMLDOMProcessingInstruction_get_childNodes(IXMLDOMProcessingInstruction* This,IXMLDOMNodeList **childList) {
 5456    return This->lpVtbl->get_childNodes(This,childList);
 5457}
 5458static inline HRESULT IXMLDOMProcessingInstruction_get_firstChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode **firstChild) {
 5459    return This->lpVtbl->get_firstChild(This,firstChild);
 5460}
 5461static inline HRESULT IXMLDOMProcessingInstruction_get_lastChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode **lastChild) {
 5462    return This->lpVtbl->get_lastChild(This,lastChild);
 5463}
 5464static inline HRESULT IXMLDOMProcessingInstruction_get_previousSibling(IXMLDOMProcessingInstruction* This,IXMLDOMNode **previousSibling) {
 5465    return This->lpVtbl->get_previousSibling(This,previousSibling);
 5466}
 5467static inline HRESULT IXMLDOMProcessingInstruction_get_nextSibling(IXMLDOMProcessingInstruction* This,IXMLDOMNode **nextSibling) {
 5468    return This->lpVtbl->get_nextSibling(This,nextSibling);
 5469}
 5470static inline HRESULT IXMLDOMProcessingInstruction_get_attributes(IXMLDOMProcessingInstruction* This,IXMLDOMNamedNodeMap **attributeMap) {
 5471    return This->lpVtbl->get_attributes(This,attributeMap);
 5472}
 5473static inline HRESULT IXMLDOMProcessingInstruction_insertBefore(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 5474    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 5475}
 5476static inline HRESULT IXMLDOMProcessingInstruction_replaceChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 5477    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 5478}
 5479static inline HRESULT IXMLDOMProcessingInstruction_removeChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 5480    return This->lpVtbl->removeChild(This,childNode,oldChild);
 5481}
 5482static inline HRESULT IXMLDOMProcessingInstruction_appendChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 5483    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 5484}
 5485static inline HRESULT IXMLDOMProcessingInstruction_hasChildNodes(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *hasChild) {
 5486    return This->lpVtbl->hasChildNodes(This,hasChild);
 5487}
 5488static inline HRESULT IXMLDOMProcessingInstruction_get_ownerDocument(IXMLDOMProcessingInstruction* This,IXMLDOMDocument **DOMDocument) {
 5489    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 5490}
 5491static inline HRESULT IXMLDOMProcessingInstruction_cloneNode(IXMLDOMProcessingInstruction* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 5492    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 5493}
 5494static inline HRESULT IXMLDOMProcessingInstruction_get_nodeTypeString(IXMLDOMProcessingInstruction* This,BSTR *nodeType) {
 5495    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 5496}
 5497static inline HRESULT IXMLDOMProcessingInstruction_get_text(IXMLDOMProcessingInstruction* This,BSTR *text) {
 5498    return This->lpVtbl->get_text(This,text);
 5499}
 5500static inline HRESULT IXMLDOMProcessingInstruction_put_text(IXMLDOMProcessingInstruction* This,BSTR text) {
 5501    return This->lpVtbl->put_text(This,text);
 5502}
 5503static inline HRESULT IXMLDOMProcessingInstruction_get_specified(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *isSpecified) {
 5504    return This->lpVtbl->get_specified(This,isSpecified);
 5505}
 5506static inline HRESULT IXMLDOMProcessingInstruction_get_definition(IXMLDOMProcessingInstruction* This,IXMLDOMNode **definitionNode) {
 5507    return This->lpVtbl->get_definition(This,definitionNode);
 5508}
 5509static inline HRESULT IXMLDOMProcessingInstruction_get_nodeTypedValue(IXMLDOMProcessingInstruction* This,VARIANT *typedValue) {
 5510    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 5511}
 5512static inline HRESULT IXMLDOMProcessingInstruction_put_nodeTypedValue(IXMLDOMProcessingInstruction* This,VARIANT typedValue) {
 5513    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 5514}
 5515static inline HRESULT IXMLDOMProcessingInstruction_get_dataType(IXMLDOMProcessingInstruction* This,VARIANT *dataTypeName) {
 5516    return This->lpVtbl->get_dataType(This,dataTypeName);
 5517}
 5518static inline HRESULT IXMLDOMProcessingInstruction_put_dataType(IXMLDOMProcessingInstruction* This,BSTR dataTypeName) {
 5519    return This->lpVtbl->put_dataType(This,dataTypeName);
 5520}
 5521static inline HRESULT IXMLDOMProcessingInstruction_get_xml(IXMLDOMProcessingInstruction* This,BSTR *xmlString) {
 5522    return This->lpVtbl->get_xml(This,xmlString);
 5523}
 5524static inline HRESULT IXMLDOMProcessingInstruction_transformNode(IXMLDOMProcessingInstruction* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 5525    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 5526}
 5527static inline HRESULT IXMLDOMProcessingInstruction_selectNodes(IXMLDOMProcessingInstruction* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 5528    return This->lpVtbl->selectNodes(This,queryString,resultList);
 5529}
 5530static inline HRESULT IXMLDOMProcessingInstruction_selectSingleNode(IXMLDOMProcessingInstruction* This,BSTR queryString,IXMLDOMNode **resultNode) {
 5531    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 5532}
 5533static inline HRESULT IXMLDOMProcessingInstruction_get_parsed(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *isParsed) {
 5534    return This->lpVtbl->get_parsed(This,isParsed);
 5535}
 5536static inline HRESULT IXMLDOMProcessingInstruction_get_namespaceURI(IXMLDOMProcessingInstruction* This,BSTR *namespaceURI) {
 5537    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 5538}
 5539static inline HRESULT IXMLDOMProcessingInstruction_get_prefix(IXMLDOMProcessingInstruction* This,BSTR *prefixString) {
 5540    return This->lpVtbl->get_prefix(This,prefixString);
 5541}
 5542static inline HRESULT IXMLDOMProcessingInstruction_get_baseName(IXMLDOMProcessingInstruction* This,BSTR *nameString) {
 5543    return This->lpVtbl->get_baseName(This,nameString);
 5544}
 5545static inline HRESULT IXMLDOMProcessingInstruction_transformNodeToObject(IXMLDOMProcessingInstruction* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 5546    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 5547}
 5548/*** IXMLDOMProcessingInstruction methods ***/
 5549static inline HRESULT IXMLDOMProcessingInstruction_get_target(IXMLDOMProcessingInstruction* This,BSTR *name) {
 5550    return This->lpVtbl->get_target(This,name);
 5551}
 5552static inline HRESULT IXMLDOMProcessingInstruction_get_data(IXMLDOMProcessingInstruction* This,BSTR *value) {
 5553    return This->lpVtbl->get_data(This,value);
 5554}
 5555static inline HRESULT IXMLDOMProcessingInstruction_put_data(IXMLDOMProcessingInstruction* This,BSTR value) {
 5556    return This->lpVtbl->put_data(This,value);
 5557}
 5558#endif
 5559#endif
 5560
 5561#endif
 5562
 5563
 5564#endif  /* __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__ */
 5565
 5566/*****************************************************************************
 5567 * IXMLDOMCDATASection interface
 5568 */
 5569#ifndef __IXMLDOMCDATASection_INTERFACE_DEFINED__
 5570#define __IXMLDOMCDATASection_INTERFACE_DEFINED__
 5571
 5572DEFINE_GUID(IID_IXMLDOMCDATASection, 0x2933bf8a, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 5573#if defined(__cplusplus) && !defined(CINTERFACE)
 5574MIDL_INTERFACE("2933bf8a-7b36-11d2-b20e-00c04f983e60")
 5575IXMLDOMCDATASection : public IXMLDOMText
 5576{
 5577};
 5578#ifdef __CRT_UUID_DECL
 5579__CRT_UUID_DECL(IXMLDOMCDATASection, 0x2933bf8a, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 5580#endif
 5581#else
 5582typedef struct IXMLDOMCDATASectionVtbl {
 5583    BEGIN_INTERFACE
 5584
 5585    /*** IUnknown methods ***/
 5586    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5587        IXMLDOMCDATASection *This,
 5588        REFIID riid,
 5589        void **ppvObject);
 5590
 5591    ULONG (STDMETHODCALLTYPE *AddRef)(
 5592        IXMLDOMCDATASection *This);
 5593
 5594    ULONG (STDMETHODCALLTYPE *Release)(
 5595        IXMLDOMCDATASection *This);
 5596
 5597    /*** IDispatch methods ***/
 5598    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5599        IXMLDOMCDATASection *This,
 5600        UINT *pctinfo);
 5601
 5602    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5603        IXMLDOMCDATASection *This,
 5604        UINT iTInfo,
 5605        LCID lcid,
 5606        ITypeInfo **ppTInfo);
 5607
 5608    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5609        IXMLDOMCDATASection *This,
 5610        REFIID riid,
 5611        LPOLESTR *rgszNames,
 5612        UINT cNames,
 5613        LCID lcid,
 5614        DISPID *rgDispId);
 5615
 5616    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5617        IXMLDOMCDATASection *This,
 5618        DISPID dispIdMember,
 5619        REFIID riid,
 5620        LCID lcid,
 5621        WORD wFlags,
 5622        DISPPARAMS *pDispParams,
 5623        VARIANT *pVarResult,
 5624        EXCEPINFO *pExcepInfo,
 5625        UINT *puArgErr);
 5626
 5627    /*** IXMLDOMNode methods ***/
 5628    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 5629        IXMLDOMCDATASection *This,
 5630        BSTR *name);
 5631
 5632    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 5633        IXMLDOMCDATASection *This,
 5634        VARIANT *value);
 5635
 5636    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 5637        IXMLDOMCDATASection *This,
 5638        VARIANT value);
 5639
 5640    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 5641        IXMLDOMCDATASection *This,
 5642        DOMNodeType *type);
 5643
 5644    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 5645        IXMLDOMCDATASection *This,
 5646        IXMLDOMNode **parent);
 5647
 5648    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 5649        IXMLDOMCDATASection *This,
 5650        IXMLDOMNodeList **childList);
 5651
 5652    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 5653        IXMLDOMCDATASection *This,
 5654        IXMLDOMNode **firstChild);
 5655
 5656    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 5657        IXMLDOMCDATASection *This,
 5658        IXMLDOMNode **lastChild);
 5659
 5660    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 5661        IXMLDOMCDATASection *This,
 5662        IXMLDOMNode **previousSibling);
 5663
 5664    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 5665        IXMLDOMCDATASection *This,
 5666        IXMLDOMNode **nextSibling);
 5667
 5668    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 5669        IXMLDOMCDATASection *This,
 5670        IXMLDOMNamedNodeMap **attributeMap);
 5671
 5672    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 5673        IXMLDOMCDATASection *This,
 5674        IXMLDOMNode *newChild,
 5675        VARIANT refChild,
 5676        IXMLDOMNode **outNewChild);
 5677
 5678    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 5679        IXMLDOMCDATASection *This,
 5680        IXMLDOMNode *newChild,
 5681        IXMLDOMNode *oldChild,
 5682        IXMLDOMNode **outOldChild);
 5683
 5684    HRESULT (STDMETHODCALLTYPE *removeChild)(
 5685        IXMLDOMCDATASection *This,
 5686        IXMLDOMNode *childNode,
 5687        IXMLDOMNode **oldChild);
 5688
 5689    HRESULT (STDMETHODCALLTYPE *appendChild)(
 5690        IXMLDOMCDATASection *This,
 5691        IXMLDOMNode *newChild,
 5692        IXMLDOMNode **outNewChild);
 5693
 5694    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 5695        IXMLDOMCDATASection *This,
 5696        VARIANT_BOOL *hasChild);
 5697
 5698    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 5699        IXMLDOMCDATASection *This,
 5700        IXMLDOMDocument **DOMDocument);
 5701
 5702    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 5703        IXMLDOMCDATASection *This,
 5704        VARIANT_BOOL deep,
 5705        IXMLDOMNode **cloneRoot);
 5706
 5707    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 5708        IXMLDOMCDATASection *This,
 5709        BSTR *nodeType);
 5710
 5711    HRESULT (STDMETHODCALLTYPE *get_text)(
 5712        IXMLDOMCDATASection *This,
 5713        BSTR *text);
 5714
 5715    HRESULT (STDMETHODCALLTYPE *put_text)(
 5716        IXMLDOMCDATASection *This,
 5717        BSTR text);
 5718
 5719    HRESULT (STDMETHODCALLTYPE *get_specified)(
 5720        IXMLDOMCDATASection *This,
 5721        VARIANT_BOOL *isSpecified);
 5722
 5723    HRESULT (STDMETHODCALLTYPE *get_definition)(
 5724        IXMLDOMCDATASection *This,
 5725        IXMLDOMNode **definitionNode);
 5726
 5727    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 5728        IXMLDOMCDATASection *This,
 5729        VARIANT *typedValue);
 5730
 5731    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 5732        IXMLDOMCDATASection *This,
 5733        VARIANT typedValue);
 5734
 5735    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 5736        IXMLDOMCDATASection *This,
 5737        VARIANT *dataTypeName);
 5738
 5739    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 5740        IXMLDOMCDATASection *This,
 5741        BSTR dataTypeName);
 5742
 5743    HRESULT (STDMETHODCALLTYPE *get_xml)(
 5744        IXMLDOMCDATASection *This,
 5745        BSTR *xmlString);
 5746
 5747    HRESULT (STDMETHODCALLTYPE *transformNode)(
 5748        IXMLDOMCDATASection *This,
 5749        IXMLDOMNode *styleSheet,
 5750        BSTR *xmlString);
 5751
 5752    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 5753        IXMLDOMCDATASection *This,
 5754        BSTR queryString,
 5755        IXMLDOMNodeList **resultList);
 5756
 5757    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 5758        IXMLDOMCDATASection *This,
 5759        BSTR queryString,
 5760        IXMLDOMNode **resultNode);
 5761
 5762    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 5763        IXMLDOMCDATASection *This,
 5764        VARIANT_BOOL *isParsed);
 5765
 5766    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 5767        IXMLDOMCDATASection *This,
 5768        BSTR *namespaceURI);
 5769
 5770    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 5771        IXMLDOMCDATASection *This,
 5772        BSTR *prefixString);
 5773
 5774    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 5775        IXMLDOMCDATASection *This,
 5776        BSTR *nameString);
 5777
 5778    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 5779        IXMLDOMCDATASection *This,
 5780        IXMLDOMNode *stylesheet,
 5781        VARIANT outputObject);
 5782
 5783    /*** IXMLDOMCharacterData methods ***/
 5784    HRESULT (STDMETHODCALLTYPE *get_data)(
 5785        IXMLDOMCDATASection *This,
 5786        BSTR *data);
 5787
 5788    HRESULT (STDMETHODCALLTYPE *put_data)(
 5789        IXMLDOMCDATASection *This,
 5790        BSTR data);
 5791
 5792    HRESULT (STDMETHODCALLTYPE *get_length)(
 5793        IXMLDOMCDATASection *This,
 5794        LONG *dataLength);
 5795
 5796    HRESULT (STDMETHODCALLTYPE *substringData)(
 5797        IXMLDOMCDATASection *This,
 5798        LONG offset,
 5799        LONG count,
 5800        BSTR *data);
 5801
 5802    HRESULT (STDMETHODCALLTYPE *appendData)(
 5803        IXMLDOMCDATASection *This,
 5804        BSTR data);
 5805
 5806    HRESULT (STDMETHODCALLTYPE *insertData)(
 5807        IXMLDOMCDATASection *This,
 5808        LONG offset,
 5809        BSTR data);
 5810
 5811    HRESULT (STDMETHODCALLTYPE *deleteData)(
 5812        IXMLDOMCDATASection *This,
 5813        LONG offset,
 5814        LONG count);
 5815
 5816    HRESULT (STDMETHODCALLTYPE *replaceData)(
 5817        IXMLDOMCDATASection *This,
 5818        LONG offset,
 5819        LONG count,
 5820        BSTR data);
 5821
 5822    /*** IXMLDOMText methods ***/
 5823    HRESULT (STDMETHODCALLTYPE *splitText)(
 5824        IXMLDOMCDATASection *This,
 5825        LONG offset,
 5826        IXMLDOMText **rightHandTextNode);
 5827
 5828    END_INTERFACE
 5829} IXMLDOMCDATASectionVtbl;
 5830
 5831interface IXMLDOMCDATASection {
 5832    CONST_VTBL IXMLDOMCDATASectionVtbl* lpVtbl;
 5833};
 5834
 5835#ifdef COBJMACROS
 5836#ifndef WIDL_C_INLINE_WRAPPERS
 5837/*** IUnknown methods ***/
 5838#define IXMLDOMCDATASection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5839#define IXMLDOMCDATASection_AddRef(This) (This)->lpVtbl->AddRef(This)
 5840#define IXMLDOMCDATASection_Release(This) (This)->lpVtbl->Release(This)
 5841/*** IDispatch methods ***/
 5842#define IXMLDOMCDATASection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5843#define IXMLDOMCDATASection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5844#define IXMLDOMCDATASection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5845#define IXMLDOMCDATASection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5846/*** IXMLDOMNode methods ***/
 5847#define IXMLDOMCDATASection_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 5848#define IXMLDOMCDATASection_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 5849#define IXMLDOMCDATASection_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 5850#define IXMLDOMCDATASection_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 5851#define IXMLDOMCDATASection_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 5852#define IXMLDOMCDATASection_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 5853#define IXMLDOMCDATASection_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 5854#define IXMLDOMCDATASection_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 5855#define IXMLDOMCDATASection_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 5856#define IXMLDOMCDATASection_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 5857#define IXMLDOMCDATASection_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 5858#define IXMLDOMCDATASection_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 5859#define IXMLDOMCDATASection_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 5860#define IXMLDOMCDATASection_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 5861#define IXMLDOMCDATASection_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 5862#define IXMLDOMCDATASection_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 5863#define IXMLDOMCDATASection_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 5864#define IXMLDOMCDATASection_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 5865#define IXMLDOMCDATASection_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 5866#define IXMLDOMCDATASection_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 5867#define IXMLDOMCDATASection_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 5868#define IXMLDOMCDATASection_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 5869#define IXMLDOMCDATASection_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 5870#define IXMLDOMCDATASection_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 5871#define IXMLDOMCDATASection_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 5872#define IXMLDOMCDATASection_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 5873#define IXMLDOMCDATASection_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 5874#define IXMLDOMCDATASection_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 5875#define IXMLDOMCDATASection_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 5876#define IXMLDOMCDATASection_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 5877#define IXMLDOMCDATASection_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 5878#define IXMLDOMCDATASection_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 5879#define IXMLDOMCDATASection_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 5880#define IXMLDOMCDATASection_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 5881#define IXMLDOMCDATASection_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 5882#define IXMLDOMCDATASection_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 5883/*** IXMLDOMCharacterData methods ***/
 5884#define IXMLDOMCDATASection_get_data(This,data) (This)->lpVtbl->get_data(This,data)
 5885#define IXMLDOMCDATASection_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 5886#define IXMLDOMCDATASection_get_length(This,dataLength) (This)->lpVtbl->get_length(This,dataLength)
 5887#define IXMLDOMCDATASection_substringData(This,offset,count,data) (This)->lpVtbl->substringData(This,offset,count,data)
 5888#define IXMLDOMCDATASection_appendData(This,data) (This)->lpVtbl->appendData(This,data)
 5889#define IXMLDOMCDATASection_insertData(This,offset,data) (This)->lpVtbl->insertData(This,offset,data)
 5890#define IXMLDOMCDATASection_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 5891#define IXMLDOMCDATASection_replaceData(This,offset,count,data) (This)->lpVtbl->replaceData(This,offset,count,data)
 5892/*** IXMLDOMText methods ***/
 5893#define IXMLDOMCDATASection_splitText(This,offset,rightHandTextNode) (This)->lpVtbl->splitText(This,offset,rightHandTextNode)
 5894#else
 5895/*** IUnknown methods ***/
 5896static inline HRESULT IXMLDOMCDATASection_QueryInterface(IXMLDOMCDATASection* This,REFIID riid,void **ppvObject) {
 5897    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5898}
 5899static inline ULONG IXMLDOMCDATASection_AddRef(IXMLDOMCDATASection* This) {
 5900    return This->lpVtbl->AddRef(This);
 5901}
 5902static inline ULONG IXMLDOMCDATASection_Release(IXMLDOMCDATASection* This) {
 5903    return This->lpVtbl->Release(This);
 5904}
 5905/*** IDispatch methods ***/
 5906static inline HRESULT IXMLDOMCDATASection_GetTypeInfoCount(IXMLDOMCDATASection* This,UINT *pctinfo) {
 5907    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5908}
 5909static inline HRESULT IXMLDOMCDATASection_GetTypeInfo(IXMLDOMCDATASection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5910    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5911}
 5912static inline HRESULT IXMLDOMCDATASection_GetIDsOfNames(IXMLDOMCDATASection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5913    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5914}
 5915static inline HRESULT IXMLDOMCDATASection_Invoke(IXMLDOMCDATASection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5916    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5917}
 5918/*** IXMLDOMNode methods ***/
 5919static inline HRESULT IXMLDOMCDATASection_get_nodeName(IXMLDOMCDATASection* This,BSTR *name) {
 5920    return This->lpVtbl->get_nodeName(This,name);
 5921}
 5922static inline HRESULT IXMLDOMCDATASection_get_nodeValue(IXMLDOMCDATASection* This,VARIANT *value) {
 5923    return This->lpVtbl->get_nodeValue(This,value);
 5924}
 5925static inline HRESULT IXMLDOMCDATASection_put_nodeValue(IXMLDOMCDATASection* This,VARIANT value) {
 5926    return This->lpVtbl->put_nodeValue(This,value);
 5927}
 5928static inline HRESULT IXMLDOMCDATASection_get_nodeType(IXMLDOMCDATASection* This,DOMNodeType *type) {
 5929    return This->lpVtbl->get_nodeType(This,type);
 5930}
 5931static inline HRESULT IXMLDOMCDATASection_get_parentNode(IXMLDOMCDATASection* This,IXMLDOMNode **parent) {
 5932    return This->lpVtbl->get_parentNode(This,parent);
 5933}
 5934static inline HRESULT IXMLDOMCDATASection_get_childNodes(IXMLDOMCDATASection* This,IXMLDOMNodeList **childList) {
 5935    return This->lpVtbl->get_childNodes(This,childList);
 5936}
 5937static inline HRESULT IXMLDOMCDATASection_get_firstChild(IXMLDOMCDATASection* This,IXMLDOMNode **firstChild) {
 5938    return This->lpVtbl->get_firstChild(This,firstChild);
 5939}
 5940static inline HRESULT IXMLDOMCDATASection_get_lastChild(IXMLDOMCDATASection* This,IXMLDOMNode **lastChild) {
 5941    return This->lpVtbl->get_lastChild(This,lastChild);
 5942}
 5943static inline HRESULT IXMLDOMCDATASection_get_previousSibling(IXMLDOMCDATASection* This,IXMLDOMNode **previousSibling) {
 5944    return This->lpVtbl->get_previousSibling(This,previousSibling);
 5945}
 5946static inline HRESULT IXMLDOMCDATASection_get_nextSibling(IXMLDOMCDATASection* This,IXMLDOMNode **nextSibling) {
 5947    return This->lpVtbl->get_nextSibling(This,nextSibling);
 5948}
 5949static inline HRESULT IXMLDOMCDATASection_get_attributes(IXMLDOMCDATASection* This,IXMLDOMNamedNodeMap **attributeMap) {
 5950    return This->lpVtbl->get_attributes(This,attributeMap);
 5951}
 5952static inline HRESULT IXMLDOMCDATASection_insertBefore(IXMLDOMCDATASection* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 5953    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 5954}
 5955static inline HRESULT IXMLDOMCDATASection_replaceChild(IXMLDOMCDATASection* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 5956    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 5957}
 5958static inline HRESULT IXMLDOMCDATASection_removeChild(IXMLDOMCDATASection* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 5959    return This->lpVtbl->removeChild(This,childNode,oldChild);
 5960}
 5961static inline HRESULT IXMLDOMCDATASection_appendChild(IXMLDOMCDATASection* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 5962    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 5963}
 5964static inline HRESULT IXMLDOMCDATASection_hasChildNodes(IXMLDOMCDATASection* This,VARIANT_BOOL *hasChild) {
 5965    return This->lpVtbl->hasChildNodes(This,hasChild);
 5966}
 5967static inline HRESULT IXMLDOMCDATASection_get_ownerDocument(IXMLDOMCDATASection* This,IXMLDOMDocument **DOMDocument) {
 5968    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 5969}
 5970static inline HRESULT IXMLDOMCDATASection_cloneNode(IXMLDOMCDATASection* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 5971    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 5972}
 5973static inline HRESULT IXMLDOMCDATASection_get_nodeTypeString(IXMLDOMCDATASection* This,BSTR *nodeType) {
 5974    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 5975}
 5976static inline HRESULT IXMLDOMCDATASection_get_text(IXMLDOMCDATASection* This,BSTR *text) {
 5977    return This->lpVtbl->get_text(This,text);
 5978}
 5979static inline HRESULT IXMLDOMCDATASection_put_text(IXMLDOMCDATASection* This,BSTR text) {
 5980    return This->lpVtbl->put_text(This,text);
 5981}
 5982static inline HRESULT IXMLDOMCDATASection_get_specified(IXMLDOMCDATASection* This,VARIANT_BOOL *isSpecified) {
 5983    return This->lpVtbl->get_specified(This,isSpecified);
 5984}
 5985static inline HRESULT IXMLDOMCDATASection_get_definition(IXMLDOMCDATASection* This,IXMLDOMNode **definitionNode) {
 5986    return This->lpVtbl->get_definition(This,definitionNode);
 5987}
 5988static inline HRESULT IXMLDOMCDATASection_get_nodeTypedValue(IXMLDOMCDATASection* This,VARIANT *typedValue) {
 5989    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 5990}
 5991static inline HRESULT IXMLDOMCDATASection_put_nodeTypedValue(IXMLDOMCDATASection* This,VARIANT typedValue) {
 5992    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 5993}
 5994static inline HRESULT IXMLDOMCDATASection_get_dataType(IXMLDOMCDATASection* This,VARIANT *dataTypeName) {
 5995    return This->lpVtbl->get_dataType(This,dataTypeName);
 5996}
 5997static inline HRESULT IXMLDOMCDATASection_put_dataType(IXMLDOMCDATASection* This,BSTR dataTypeName) {
 5998    return This->lpVtbl->put_dataType(This,dataTypeName);
 5999}
 6000static inline HRESULT IXMLDOMCDATASection_get_xml(IXMLDOMCDATASection* This,BSTR *xmlString) {
 6001    return This->lpVtbl->get_xml(This,xmlString);
 6002}
 6003static inline HRESULT IXMLDOMCDATASection_transformNode(IXMLDOMCDATASection* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 6004    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 6005}
 6006static inline HRESULT IXMLDOMCDATASection_selectNodes(IXMLDOMCDATASection* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 6007    return This->lpVtbl->selectNodes(This,queryString,resultList);
 6008}
 6009static inline HRESULT IXMLDOMCDATASection_selectSingleNode(IXMLDOMCDATASection* This,BSTR queryString,IXMLDOMNode **resultNode) {
 6010    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 6011}
 6012static inline HRESULT IXMLDOMCDATASection_get_parsed(IXMLDOMCDATASection* This,VARIANT_BOOL *isParsed) {
 6013    return This->lpVtbl->get_parsed(This,isParsed);
 6014}
 6015static inline HRESULT IXMLDOMCDATASection_get_namespaceURI(IXMLDOMCDATASection* This,BSTR *namespaceURI) {
 6016    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 6017}
 6018static inline HRESULT IXMLDOMCDATASection_get_prefix(IXMLDOMCDATASection* This,BSTR *prefixString) {
 6019    return This->lpVtbl->get_prefix(This,prefixString);
 6020}
 6021static inline HRESULT IXMLDOMCDATASection_get_baseName(IXMLDOMCDATASection* This,BSTR *nameString) {
 6022    return This->lpVtbl->get_baseName(This,nameString);
 6023}
 6024static inline HRESULT IXMLDOMCDATASection_transformNodeToObject(IXMLDOMCDATASection* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 6025    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 6026}
 6027/*** IXMLDOMCharacterData methods ***/
 6028static inline HRESULT IXMLDOMCDATASection_get_data(IXMLDOMCDATASection* This,BSTR *data) {
 6029    return This->lpVtbl->get_data(This,data);
 6030}
 6031static inline HRESULT IXMLDOMCDATASection_put_data(IXMLDOMCDATASection* This,BSTR data) {
 6032    return This->lpVtbl->put_data(This,data);
 6033}
 6034static inline HRESULT IXMLDOMCDATASection_get_length(IXMLDOMCDATASection* This,LONG *dataLength) {
 6035    return This->lpVtbl->get_length(This,dataLength);
 6036}
 6037static inline HRESULT IXMLDOMCDATASection_substringData(IXMLDOMCDATASection* This,LONG offset,LONG count,BSTR *data) {
 6038    return This->lpVtbl->substringData(This,offset,count,data);
 6039}
 6040static inline HRESULT IXMLDOMCDATASection_appendData(IXMLDOMCDATASection* This,BSTR data) {
 6041    return This->lpVtbl->appendData(This,data);
 6042}
 6043static inline HRESULT IXMLDOMCDATASection_insertData(IXMLDOMCDATASection* This,LONG offset,BSTR data) {
 6044    return This->lpVtbl->insertData(This,offset,data);
 6045}
 6046static inline HRESULT IXMLDOMCDATASection_deleteData(IXMLDOMCDATASection* This,LONG offset,LONG count) {
 6047    return This->lpVtbl->deleteData(This,offset,count);
 6048}
 6049static inline HRESULT IXMLDOMCDATASection_replaceData(IXMLDOMCDATASection* This,LONG offset,LONG count,BSTR data) {
 6050    return This->lpVtbl->replaceData(This,offset,count,data);
 6051}
 6052/*** IXMLDOMText methods ***/
 6053static inline HRESULT IXMLDOMCDATASection_splitText(IXMLDOMCDATASection* This,LONG offset,IXMLDOMText **rightHandTextNode) {
 6054    return This->lpVtbl->splitText(This,offset,rightHandTextNode);
 6055}
 6056#endif
 6057#endif
 6058
 6059#endif
 6060
 6061
 6062#endif  /* __IXMLDOMCDATASection_INTERFACE_DEFINED__ */
 6063
 6064/*****************************************************************************
 6065 * IXMLDOMDocumentType interface
 6066 */
 6067#ifndef __IXMLDOMDocumentType_INTERFACE_DEFINED__
 6068#define __IXMLDOMDocumentType_INTERFACE_DEFINED__
 6069
 6070DEFINE_GUID(IID_IXMLDOMDocumentType, 0x2933bf8b, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 6071#if defined(__cplusplus) && !defined(CINTERFACE)
 6072MIDL_INTERFACE("2933bf8b-7b36-11d2-b20e-00c04f983e60")
 6073IXMLDOMDocumentType : public IXMLDOMNode
 6074{
 6075    virtual HRESULT STDMETHODCALLTYPE get_name(
 6076        BSTR *rootName) = 0;
 6077
 6078    virtual HRESULT STDMETHODCALLTYPE get_entities(
 6079        IXMLDOMNamedNodeMap **entityMap) = 0;
 6080
 6081    virtual HRESULT STDMETHODCALLTYPE get_notations(
 6082        IXMLDOMNamedNodeMap **notationMap) = 0;
 6083
 6084};
 6085#ifdef __CRT_UUID_DECL
 6086__CRT_UUID_DECL(IXMLDOMDocumentType, 0x2933bf8b, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 6087#endif
 6088#else
 6089typedef struct IXMLDOMDocumentTypeVtbl {
 6090    BEGIN_INTERFACE
 6091
 6092    /*** IUnknown methods ***/
 6093    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6094        IXMLDOMDocumentType *This,
 6095        REFIID riid,
 6096        void **ppvObject);
 6097
 6098    ULONG (STDMETHODCALLTYPE *AddRef)(
 6099        IXMLDOMDocumentType *This);
 6100
 6101    ULONG (STDMETHODCALLTYPE *Release)(
 6102        IXMLDOMDocumentType *This);
 6103
 6104    /*** IDispatch methods ***/
 6105    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6106        IXMLDOMDocumentType *This,
 6107        UINT *pctinfo);
 6108
 6109    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6110        IXMLDOMDocumentType *This,
 6111        UINT iTInfo,
 6112        LCID lcid,
 6113        ITypeInfo **ppTInfo);
 6114
 6115    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6116        IXMLDOMDocumentType *This,
 6117        REFIID riid,
 6118        LPOLESTR *rgszNames,
 6119        UINT cNames,
 6120        LCID lcid,
 6121        DISPID *rgDispId);
 6122
 6123    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6124        IXMLDOMDocumentType *This,
 6125        DISPID dispIdMember,
 6126        REFIID riid,
 6127        LCID lcid,
 6128        WORD wFlags,
 6129        DISPPARAMS *pDispParams,
 6130        VARIANT *pVarResult,
 6131        EXCEPINFO *pExcepInfo,
 6132        UINT *puArgErr);
 6133
 6134    /*** IXMLDOMNode methods ***/
 6135    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 6136        IXMLDOMDocumentType *This,
 6137        BSTR *name);
 6138
 6139    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 6140        IXMLDOMDocumentType *This,
 6141        VARIANT *value);
 6142
 6143    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 6144        IXMLDOMDocumentType *This,
 6145        VARIANT value);
 6146
 6147    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 6148        IXMLDOMDocumentType *This,
 6149        DOMNodeType *type);
 6150
 6151    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 6152        IXMLDOMDocumentType *This,
 6153        IXMLDOMNode **parent);
 6154
 6155    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 6156        IXMLDOMDocumentType *This,
 6157        IXMLDOMNodeList **childList);
 6158
 6159    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 6160        IXMLDOMDocumentType *This,
 6161        IXMLDOMNode **firstChild);
 6162
 6163    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 6164        IXMLDOMDocumentType *This,
 6165        IXMLDOMNode **lastChild);
 6166
 6167    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 6168        IXMLDOMDocumentType *This,
 6169        IXMLDOMNode **previousSibling);
 6170
 6171    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 6172        IXMLDOMDocumentType *This,
 6173        IXMLDOMNode **nextSibling);
 6174
 6175    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 6176        IXMLDOMDocumentType *This,
 6177        IXMLDOMNamedNodeMap **attributeMap);
 6178
 6179    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 6180        IXMLDOMDocumentType *This,
 6181        IXMLDOMNode *newChild,
 6182        VARIANT refChild,
 6183        IXMLDOMNode **outNewChild);
 6184
 6185    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 6186        IXMLDOMDocumentType *This,
 6187        IXMLDOMNode *newChild,
 6188        IXMLDOMNode *oldChild,
 6189        IXMLDOMNode **outOldChild);
 6190
 6191    HRESULT (STDMETHODCALLTYPE *removeChild)(
 6192        IXMLDOMDocumentType *This,
 6193        IXMLDOMNode *childNode,
 6194        IXMLDOMNode **oldChild);
 6195
 6196    HRESULT (STDMETHODCALLTYPE *appendChild)(
 6197        IXMLDOMDocumentType *This,
 6198        IXMLDOMNode *newChild,
 6199        IXMLDOMNode **outNewChild);
 6200
 6201    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 6202        IXMLDOMDocumentType *This,
 6203        VARIANT_BOOL *hasChild);
 6204
 6205    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 6206        IXMLDOMDocumentType *This,
 6207        IXMLDOMDocument **DOMDocument);
 6208
 6209    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 6210        IXMLDOMDocumentType *This,
 6211        VARIANT_BOOL deep,
 6212        IXMLDOMNode **cloneRoot);
 6213
 6214    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 6215        IXMLDOMDocumentType *This,
 6216        BSTR *nodeType);
 6217
 6218    HRESULT (STDMETHODCALLTYPE *get_text)(
 6219        IXMLDOMDocumentType *This,
 6220        BSTR *text);
 6221
 6222    HRESULT (STDMETHODCALLTYPE *put_text)(
 6223        IXMLDOMDocumentType *This,
 6224        BSTR text);
 6225
 6226    HRESULT (STDMETHODCALLTYPE *get_specified)(
 6227        IXMLDOMDocumentType *This,
 6228        VARIANT_BOOL *isSpecified);
 6229
 6230    HRESULT (STDMETHODCALLTYPE *get_definition)(
 6231        IXMLDOMDocumentType *This,
 6232        IXMLDOMNode **definitionNode);
 6233
 6234    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 6235        IXMLDOMDocumentType *This,
 6236        VARIANT *typedValue);
 6237
 6238    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 6239        IXMLDOMDocumentType *This,
 6240        VARIANT typedValue);
 6241
 6242    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 6243        IXMLDOMDocumentType *This,
 6244        VARIANT *dataTypeName);
 6245
 6246    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 6247        IXMLDOMDocumentType *This,
 6248        BSTR dataTypeName);
 6249
 6250    HRESULT (STDMETHODCALLTYPE *get_xml)(
 6251        IXMLDOMDocumentType *This,
 6252        BSTR *xmlString);
 6253
 6254    HRESULT (STDMETHODCALLTYPE *transformNode)(
 6255        IXMLDOMDocumentType *This,
 6256        IXMLDOMNode *styleSheet,
 6257        BSTR *xmlString);
 6258
 6259    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 6260        IXMLDOMDocumentType *This,
 6261        BSTR queryString,
 6262        IXMLDOMNodeList **resultList);
 6263
 6264    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 6265        IXMLDOMDocumentType *This,
 6266        BSTR queryString,
 6267        IXMLDOMNode **resultNode);
 6268
 6269    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 6270        IXMLDOMDocumentType *This,
 6271        VARIANT_BOOL *isParsed);
 6272
 6273    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 6274        IXMLDOMDocumentType *This,
 6275        BSTR *namespaceURI);
 6276
 6277    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 6278        IXMLDOMDocumentType *This,
 6279        BSTR *prefixString);
 6280
 6281    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 6282        IXMLDOMDocumentType *This,
 6283        BSTR *nameString);
 6284
 6285    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 6286        IXMLDOMDocumentType *This,
 6287        IXMLDOMNode *stylesheet,
 6288        VARIANT outputObject);
 6289
 6290    /*** IXMLDOMDocumentType methods ***/
 6291    HRESULT (STDMETHODCALLTYPE *get_name)(
 6292        IXMLDOMDocumentType *This,
 6293        BSTR *rootName);
 6294
 6295    HRESULT (STDMETHODCALLTYPE *get_entities)(
 6296        IXMLDOMDocumentType *This,
 6297        IXMLDOMNamedNodeMap **entityMap);
 6298
 6299    HRESULT (STDMETHODCALLTYPE *get_notations)(
 6300        IXMLDOMDocumentType *This,
 6301        IXMLDOMNamedNodeMap **notationMap);
 6302
 6303    END_INTERFACE
 6304} IXMLDOMDocumentTypeVtbl;
 6305
 6306interface IXMLDOMDocumentType {
 6307    CONST_VTBL IXMLDOMDocumentTypeVtbl* lpVtbl;
 6308};
 6309
 6310#ifdef COBJMACROS
 6311#ifndef WIDL_C_INLINE_WRAPPERS
 6312/*** IUnknown methods ***/
 6313#define IXMLDOMDocumentType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6314#define IXMLDOMDocumentType_AddRef(This) (This)->lpVtbl->AddRef(This)
 6315#define IXMLDOMDocumentType_Release(This) (This)->lpVtbl->Release(This)
 6316/*** IDispatch methods ***/
 6317#define IXMLDOMDocumentType_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6318#define IXMLDOMDocumentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6319#define IXMLDOMDocumentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6320#define IXMLDOMDocumentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6321/*** IXMLDOMNode methods ***/
 6322#define IXMLDOMDocumentType_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 6323#define IXMLDOMDocumentType_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 6324#define IXMLDOMDocumentType_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 6325#define IXMLDOMDocumentType_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 6326#define IXMLDOMDocumentType_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 6327#define IXMLDOMDocumentType_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 6328#define IXMLDOMDocumentType_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 6329#define IXMLDOMDocumentType_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 6330#define IXMLDOMDocumentType_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 6331#define IXMLDOMDocumentType_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 6332#define IXMLDOMDocumentType_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 6333#define IXMLDOMDocumentType_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 6334#define IXMLDOMDocumentType_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 6335#define IXMLDOMDocumentType_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 6336#define IXMLDOMDocumentType_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 6337#define IXMLDOMDocumentType_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 6338#define IXMLDOMDocumentType_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 6339#define IXMLDOMDocumentType_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 6340#define IXMLDOMDocumentType_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 6341#define IXMLDOMDocumentType_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 6342#define IXMLDOMDocumentType_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 6343#define IXMLDOMDocumentType_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 6344#define IXMLDOMDocumentType_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 6345#define IXMLDOMDocumentType_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 6346#define IXMLDOMDocumentType_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 6347#define IXMLDOMDocumentType_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 6348#define IXMLDOMDocumentType_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 6349#define IXMLDOMDocumentType_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 6350#define IXMLDOMDocumentType_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 6351#define IXMLDOMDocumentType_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 6352#define IXMLDOMDocumentType_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 6353#define IXMLDOMDocumentType_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 6354#define IXMLDOMDocumentType_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 6355#define IXMLDOMDocumentType_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 6356#define IXMLDOMDocumentType_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 6357#define IXMLDOMDocumentType_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 6358/*** IXMLDOMDocumentType methods ***/
 6359#define IXMLDOMDocumentType_get_name(This,rootName) (This)->lpVtbl->get_name(This,rootName)
 6360#define IXMLDOMDocumentType_get_entities(This,entityMap) (This)->lpVtbl->get_entities(This,entityMap)
 6361#define IXMLDOMDocumentType_get_notations(This,notationMap) (This)->lpVtbl->get_notations(This,notationMap)
 6362#else
 6363/*** IUnknown methods ***/
 6364static inline HRESULT IXMLDOMDocumentType_QueryInterface(IXMLDOMDocumentType* This,REFIID riid,void **ppvObject) {
 6365    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6366}
 6367static inline ULONG IXMLDOMDocumentType_AddRef(IXMLDOMDocumentType* This) {
 6368    return This->lpVtbl->AddRef(This);
 6369}
 6370static inline ULONG IXMLDOMDocumentType_Release(IXMLDOMDocumentType* This) {
 6371    return This->lpVtbl->Release(This);
 6372}
 6373/*** IDispatch methods ***/
 6374static inline HRESULT IXMLDOMDocumentType_GetTypeInfoCount(IXMLDOMDocumentType* This,UINT *pctinfo) {
 6375    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6376}
 6377static inline HRESULT IXMLDOMDocumentType_GetTypeInfo(IXMLDOMDocumentType* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6378    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6379}
 6380static inline HRESULT IXMLDOMDocumentType_GetIDsOfNames(IXMLDOMDocumentType* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6381    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6382}
 6383static inline HRESULT IXMLDOMDocumentType_Invoke(IXMLDOMDocumentType* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6384    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6385}
 6386/*** IXMLDOMNode methods ***/
 6387static inline HRESULT IXMLDOMDocumentType_get_nodeName(IXMLDOMDocumentType* This,BSTR *name) {
 6388    return This->lpVtbl->get_nodeName(This,name);
 6389}
 6390static inline HRESULT IXMLDOMDocumentType_get_nodeValue(IXMLDOMDocumentType* This,VARIANT *value) {
 6391    return This->lpVtbl->get_nodeValue(This,value);
 6392}
 6393static inline HRESULT IXMLDOMDocumentType_put_nodeValue(IXMLDOMDocumentType* This,VARIANT value) {
 6394    return This->lpVtbl->put_nodeValue(This,value);
 6395}
 6396static inline HRESULT IXMLDOMDocumentType_get_nodeType(IXMLDOMDocumentType* This,DOMNodeType *type) {
 6397    return This->lpVtbl->get_nodeType(This,type);
 6398}
 6399static inline HRESULT IXMLDOMDocumentType_get_parentNode(IXMLDOMDocumentType* This,IXMLDOMNode **parent) {
 6400    return This->lpVtbl->get_parentNode(This,parent);
 6401}
 6402static inline HRESULT IXMLDOMDocumentType_get_childNodes(IXMLDOMDocumentType* This,IXMLDOMNodeList **childList) {
 6403    return This->lpVtbl->get_childNodes(This,childList);
 6404}
 6405static inline HRESULT IXMLDOMDocumentType_get_firstChild(IXMLDOMDocumentType* This,IXMLDOMNode **firstChild) {
 6406    return This->lpVtbl->get_firstChild(This,firstChild);
 6407}
 6408static inline HRESULT IXMLDOMDocumentType_get_lastChild(IXMLDOMDocumentType* This,IXMLDOMNode **lastChild) {
 6409    return This->lpVtbl->get_lastChild(This,lastChild);
 6410}
 6411static inline HRESULT IXMLDOMDocumentType_get_previousSibling(IXMLDOMDocumentType* This,IXMLDOMNode **previousSibling) {
 6412    return This->lpVtbl->get_previousSibling(This,previousSibling);
 6413}
 6414static inline HRESULT IXMLDOMDocumentType_get_nextSibling(IXMLDOMDocumentType* This,IXMLDOMNode **nextSibling) {
 6415    return This->lpVtbl->get_nextSibling(This,nextSibling);
 6416}
 6417static inline HRESULT IXMLDOMDocumentType_get_attributes(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **attributeMap) {
 6418    return This->lpVtbl->get_attributes(This,attributeMap);
 6419}
 6420static inline HRESULT IXMLDOMDocumentType_insertBefore(IXMLDOMDocumentType* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 6421    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 6422}
 6423static inline HRESULT IXMLDOMDocumentType_replaceChild(IXMLDOMDocumentType* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 6424    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 6425}
 6426static inline HRESULT IXMLDOMDocumentType_removeChild(IXMLDOMDocumentType* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 6427    return This->lpVtbl->removeChild(This,childNode,oldChild);
 6428}
 6429static inline HRESULT IXMLDOMDocumentType_appendChild(IXMLDOMDocumentType* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 6430    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 6431}
 6432static inline HRESULT IXMLDOMDocumentType_hasChildNodes(IXMLDOMDocumentType* This,VARIANT_BOOL *hasChild) {
 6433    return This->lpVtbl->hasChildNodes(This,hasChild);
 6434}
 6435static inline HRESULT IXMLDOMDocumentType_get_ownerDocument(IXMLDOMDocumentType* This,IXMLDOMDocument **DOMDocument) {
 6436    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 6437}
 6438static inline HRESULT IXMLDOMDocumentType_cloneNode(IXMLDOMDocumentType* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 6439    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 6440}
 6441static inline HRESULT IXMLDOMDocumentType_get_nodeTypeString(IXMLDOMDocumentType* This,BSTR *nodeType) {
 6442    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 6443}
 6444static inline HRESULT IXMLDOMDocumentType_get_text(IXMLDOMDocumentType* This,BSTR *text) {
 6445    return This->lpVtbl->get_text(This,text);
 6446}
 6447static inline HRESULT IXMLDOMDocumentType_put_text(IXMLDOMDocumentType* This,BSTR text) {
 6448    return This->lpVtbl->put_text(This,text);
 6449}
 6450static inline HRESULT IXMLDOMDocumentType_get_specified(IXMLDOMDocumentType* This,VARIANT_BOOL *isSpecified) {
 6451    return This->lpVtbl->get_specified(This,isSpecified);
 6452}
 6453static inline HRESULT IXMLDOMDocumentType_get_definition(IXMLDOMDocumentType* This,IXMLDOMNode **definitionNode) {
 6454    return This->lpVtbl->get_definition(This,definitionNode);
 6455}
 6456static inline HRESULT IXMLDOMDocumentType_get_nodeTypedValue(IXMLDOMDocumentType* This,VARIANT *typedValue) {
 6457    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 6458}
 6459static inline HRESULT IXMLDOMDocumentType_put_nodeTypedValue(IXMLDOMDocumentType* This,VARIANT typedValue) {
 6460    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 6461}
 6462static inline HRESULT IXMLDOMDocumentType_get_dataType(IXMLDOMDocumentType* This,VARIANT *dataTypeName) {
 6463    return This->lpVtbl->get_dataType(This,dataTypeName);
 6464}
 6465static inline HRESULT IXMLDOMDocumentType_put_dataType(IXMLDOMDocumentType* This,BSTR dataTypeName) {
 6466    return This->lpVtbl->put_dataType(This,dataTypeName);
 6467}
 6468static inline HRESULT IXMLDOMDocumentType_get_xml(IXMLDOMDocumentType* This,BSTR *xmlString) {
 6469    return This->lpVtbl->get_xml(This,xmlString);
 6470}
 6471static inline HRESULT IXMLDOMDocumentType_transformNode(IXMLDOMDocumentType* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 6472    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 6473}
 6474static inline HRESULT IXMLDOMDocumentType_selectNodes(IXMLDOMDocumentType* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 6475    return This->lpVtbl->selectNodes(This,queryString,resultList);
 6476}
 6477static inline HRESULT IXMLDOMDocumentType_selectSingleNode(IXMLDOMDocumentType* This,BSTR queryString,IXMLDOMNode **resultNode) {
 6478    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 6479}
 6480static inline HRESULT IXMLDOMDocumentType_get_parsed(IXMLDOMDocumentType* This,VARIANT_BOOL *isParsed) {
 6481    return This->lpVtbl->get_parsed(This,isParsed);
 6482}
 6483static inline HRESULT IXMLDOMDocumentType_get_namespaceURI(IXMLDOMDocumentType* This,BSTR *namespaceURI) {
 6484    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 6485}
 6486static inline HRESULT IXMLDOMDocumentType_get_prefix(IXMLDOMDocumentType* This,BSTR *prefixString) {
 6487    return This->lpVtbl->get_prefix(This,prefixString);
 6488}
 6489static inline HRESULT IXMLDOMDocumentType_get_baseName(IXMLDOMDocumentType* This,BSTR *nameString) {
 6490    return This->lpVtbl->get_baseName(This,nameString);
 6491}
 6492static inline HRESULT IXMLDOMDocumentType_transformNodeToObject(IXMLDOMDocumentType* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 6493    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 6494}
 6495/*** IXMLDOMDocumentType methods ***/
 6496static inline HRESULT IXMLDOMDocumentType_get_name(IXMLDOMDocumentType* This,BSTR *rootName) {
 6497    return This->lpVtbl->get_name(This,rootName);
 6498}
 6499static inline HRESULT IXMLDOMDocumentType_get_entities(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **entityMap) {
 6500    return This->lpVtbl->get_entities(This,entityMap);
 6501}
 6502static inline HRESULT IXMLDOMDocumentType_get_notations(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **notationMap) {
 6503    return This->lpVtbl->get_notations(This,notationMap);
 6504}
 6505#endif
 6506#endif
 6507
 6508#endif
 6509
 6510
 6511#endif  /* __IXMLDOMDocumentType_INTERFACE_DEFINED__ */
 6512
 6513/*****************************************************************************
 6514 * IXMLDOMNotation interface
 6515 */
 6516#ifndef __IXMLDOMNotation_INTERFACE_DEFINED__
 6517#define __IXMLDOMNotation_INTERFACE_DEFINED__
 6518
 6519DEFINE_GUID(IID_IXMLDOMNotation, 0x2933bf8c, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 6520#if defined(__cplusplus) && !defined(CINTERFACE)
 6521MIDL_INTERFACE("2933bf8c-7b36-11d2-b20e-00c04f983e60")
 6522IXMLDOMNotation : public IXMLDOMNode
 6523{
 6524    virtual HRESULT STDMETHODCALLTYPE get_publicId(
 6525        VARIANT *publicId) = 0;
 6526
 6527    virtual HRESULT STDMETHODCALLTYPE get_systemId(
 6528        VARIANT *systemId) = 0;
 6529
 6530};
 6531#ifdef __CRT_UUID_DECL
 6532__CRT_UUID_DECL(IXMLDOMNotation, 0x2933bf8c, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 6533#endif
 6534#else
 6535typedef struct IXMLDOMNotationVtbl {
 6536    BEGIN_INTERFACE
 6537
 6538    /*** IUnknown methods ***/
 6539    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6540        IXMLDOMNotation *This,
 6541        REFIID riid,
 6542        void **ppvObject);
 6543
 6544    ULONG (STDMETHODCALLTYPE *AddRef)(
 6545        IXMLDOMNotation *This);
 6546
 6547    ULONG (STDMETHODCALLTYPE *Release)(
 6548        IXMLDOMNotation *This);
 6549
 6550    /*** IDispatch methods ***/
 6551    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6552        IXMLDOMNotation *This,
 6553        UINT *pctinfo);
 6554
 6555    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6556        IXMLDOMNotation *This,
 6557        UINT iTInfo,
 6558        LCID lcid,
 6559        ITypeInfo **ppTInfo);
 6560
 6561    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6562        IXMLDOMNotation *This,
 6563        REFIID riid,
 6564        LPOLESTR *rgszNames,
 6565        UINT cNames,
 6566        LCID lcid,
 6567        DISPID *rgDispId);
 6568
 6569    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6570        IXMLDOMNotation *This,
 6571        DISPID dispIdMember,
 6572        REFIID riid,
 6573        LCID lcid,
 6574        WORD wFlags,
 6575        DISPPARAMS *pDispParams,
 6576        VARIANT *pVarResult,
 6577        EXCEPINFO *pExcepInfo,
 6578        UINT *puArgErr);
 6579
 6580    /*** IXMLDOMNode methods ***/
 6581    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 6582        IXMLDOMNotation *This,
 6583        BSTR *name);
 6584
 6585    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 6586        IXMLDOMNotation *This,
 6587        VARIANT *value);
 6588
 6589    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 6590        IXMLDOMNotation *This,
 6591        VARIANT value);
 6592
 6593    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 6594        IXMLDOMNotation *This,
 6595        DOMNodeType *type);
 6596
 6597    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 6598        IXMLDOMNotation *This,
 6599        IXMLDOMNode **parent);
 6600
 6601    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 6602        IXMLDOMNotation *This,
 6603        IXMLDOMNodeList **childList);
 6604
 6605    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 6606        IXMLDOMNotation *This,
 6607        IXMLDOMNode **firstChild);
 6608
 6609    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 6610        IXMLDOMNotation *This,
 6611        IXMLDOMNode **lastChild);
 6612
 6613    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 6614        IXMLDOMNotation *This,
 6615        IXMLDOMNode **previousSibling);
 6616
 6617    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 6618        IXMLDOMNotation *This,
 6619        IXMLDOMNode **nextSibling);
 6620
 6621    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 6622        IXMLDOMNotation *This,
 6623        IXMLDOMNamedNodeMap **attributeMap);
 6624
 6625    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 6626        IXMLDOMNotation *This,
 6627        IXMLDOMNode *newChild,
 6628        VARIANT refChild,
 6629        IXMLDOMNode **outNewChild);
 6630
 6631    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 6632        IXMLDOMNotation *This,
 6633        IXMLDOMNode *newChild,
 6634        IXMLDOMNode *oldChild,
 6635        IXMLDOMNode **outOldChild);
 6636
 6637    HRESULT (STDMETHODCALLTYPE *removeChild)(
 6638        IXMLDOMNotation *This,
 6639        IXMLDOMNode *childNode,
 6640        IXMLDOMNode **oldChild);
 6641
 6642    HRESULT (STDMETHODCALLTYPE *appendChild)(
 6643        IXMLDOMNotation *This,
 6644        IXMLDOMNode *newChild,
 6645        IXMLDOMNode **outNewChild);
 6646
 6647    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 6648        IXMLDOMNotation *This,
 6649        VARIANT_BOOL *hasChild);
 6650
 6651    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 6652        IXMLDOMNotation *This,
 6653        IXMLDOMDocument **DOMDocument);
 6654
 6655    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 6656        IXMLDOMNotation *This,
 6657        VARIANT_BOOL deep,
 6658        IXMLDOMNode **cloneRoot);
 6659
 6660    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 6661        IXMLDOMNotation *This,
 6662        BSTR *nodeType);
 6663
 6664    HRESULT (STDMETHODCALLTYPE *get_text)(
 6665        IXMLDOMNotation *This,
 6666        BSTR *text);
 6667
 6668    HRESULT (STDMETHODCALLTYPE *put_text)(
 6669        IXMLDOMNotation *This,
 6670        BSTR text);
 6671
 6672    HRESULT (STDMETHODCALLTYPE *get_specified)(
 6673        IXMLDOMNotation *This,
 6674        VARIANT_BOOL *isSpecified);
 6675
 6676    HRESULT (STDMETHODCALLTYPE *get_definition)(
 6677        IXMLDOMNotation *This,
 6678        IXMLDOMNode **definitionNode);
 6679
 6680    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 6681        IXMLDOMNotation *This,
 6682        VARIANT *typedValue);
 6683
 6684    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 6685        IXMLDOMNotation *This,
 6686        VARIANT typedValue);
 6687
 6688    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 6689        IXMLDOMNotation *This,
 6690        VARIANT *dataTypeName);
 6691
 6692    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 6693        IXMLDOMNotation *This,
 6694        BSTR dataTypeName);
 6695
 6696    HRESULT (STDMETHODCALLTYPE *get_xml)(
 6697        IXMLDOMNotation *This,
 6698        BSTR *xmlString);
 6699
 6700    HRESULT (STDMETHODCALLTYPE *transformNode)(
 6701        IXMLDOMNotation *This,
 6702        IXMLDOMNode *styleSheet,
 6703        BSTR *xmlString);
 6704
 6705    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 6706        IXMLDOMNotation *This,
 6707        BSTR queryString,
 6708        IXMLDOMNodeList **resultList);
 6709
 6710    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 6711        IXMLDOMNotation *This,
 6712        BSTR queryString,
 6713        IXMLDOMNode **resultNode);
 6714
 6715    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 6716        IXMLDOMNotation *This,
 6717        VARIANT_BOOL *isParsed);
 6718
 6719    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 6720        IXMLDOMNotation *This,
 6721        BSTR *namespaceURI);
 6722
 6723    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 6724        IXMLDOMNotation *This,
 6725        BSTR *prefixString);
 6726
 6727    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 6728        IXMLDOMNotation *This,
 6729        BSTR *nameString);
 6730
 6731    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 6732        IXMLDOMNotation *This,
 6733        IXMLDOMNode *stylesheet,
 6734        VARIANT outputObject);
 6735
 6736    /*** IXMLDOMNotation methods ***/
 6737    HRESULT (STDMETHODCALLTYPE *get_publicId)(
 6738        IXMLDOMNotation *This,
 6739        VARIANT *publicId);
 6740
 6741    HRESULT (STDMETHODCALLTYPE *get_systemId)(
 6742        IXMLDOMNotation *This,
 6743        VARIANT *systemId);
 6744
 6745    END_INTERFACE
 6746} IXMLDOMNotationVtbl;
 6747
 6748interface IXMLDOMNotation {
 6749    CONST_VTBL IXMLDOMNotationVtbl* lpVtbl;
 6750};
 6751
 6752#ifdef COBJMACROS
 6753#ifndef WIDL_C_INLINE_WRAPPERS
 6754/*** IUnknown methods ***/
 6755#define IXMLDOMNotation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6756#define IXMLDOMNotation_AddRef(This) (This)->lpVtbl->AddRef(This)
 6757#define IXMLDOMNotation_Release(This) (This)->lpVtbl->Release(This)
 6758/*** IDispatch methods ***/
 6759#define IXMLDOMNotation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6760#define IXMLDOMNotation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6761#define IXMLDOMNotation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6762#define IXMLDOMNotation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6763/*** IXMLDOMNode methods ***/
 6764#define IXMLDOMNotation_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 6765#define IXMLDOMNotation_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 6766#define IXMLDOMNotation_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 6767#define IXMLDOMNotation_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 6768#define IXMLDOMNotation_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 6769#define IXMLDOMNotation_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 6770#define IXMLDOMNotation_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 6771#define IXMLDOMNotation_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 6772#define IXMLDOMNotation_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 6773#define IXMLDOMNotation_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 6774#define IXMLDOMNotation_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 6775#define IXMLDOMNotation_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 6776#define IXMLDOMNotation_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 6777#define IXMLDOMNotation_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 6778#define IXMLDOMNotation_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 6779#define IXMLDOMNotation_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 6780#define IXMLDOMNotation_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 6781#define IXMLDOMNotation_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 6782#define IXMLDOMNotation_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 6783#define IXMLDOMNotation_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 6784#define IXMLDOMNotation_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 6785#define IXMLDOMNotation_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 6786#define IXMLDOMNotation_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 6787#define IXMLDOMNotation_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 6788#define IXMLDOMNotation_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 6789#define IXMLDOMNotation_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 6790#define IXMLDOMNotation_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 6791#define IXMLDOMNotation_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 6792#define IXMLDOMNotation_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 6793#define IXMLDOMNotation_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 6794#define IXMLDOMNotation_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 6795#define IXMLDOMNotation_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 6796#define IXMLDOMNotation_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 6797#define IXMLDOMNotation_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 6798#define IXMLDOMNotation_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 6799#define IXMLDOMNotation_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 6800/*** IXMLDOMNotation methods ***/
 6801#define IXMLDOMNotation_get_publicId(This,publicId) (This)->lpVtbl->get_publicId(This,publicId)
 6802#define IXMLDOMNotation_get_systemId(This,systemId) (This)->lpVtbl->get_systemId(This,systemId)
 6803#else
 6804/*** IUnknown methods ***/
 6805static inline HRESULT IXMLDOMNotation_QueryInterface(IXMLDOMNotation* This,REFIID riid,void **ppvObject) {
 6806    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6807}
 6808static inline ULONG IXMLDOMNotation_AddRef(IXMLDOMNotation* This) {
 6809    return This->lpVtbl->AddRef(This);
 6810}
 6811static inline ULONG IXMLDOMNotation_Release(IXMLDOMNotation* This) {
 6812    return This->lpVtbl->Release(This);
 6813}
 6814/*** IDispatch methods ***/
 6815static inline HRESULT IXMLDOMNotation_GetTypeInfoCount(IXMLDOMNotation* This,UINT *pctinfo) {
 6816    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6817}
 6818static inline HRESULT IXMLDOMNotation_GetTypeInfo(IXMLDOMNotation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6819    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6820}
 6821static inline HRESULT IXMLDOMNotation_GetIDsOfNames(IXMLDOMNotation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6822    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6823}
 6824static inline HRESULT IXMLDOMNotation_Invoke(IXMLDOMNotation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6825    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6826}
 6827/*** IXMLDOMNode methods ***/
 6828static inline HRESULT IXMLDOMNotation_get_nodeName(IXMLDOMNotation* This,BSTR *name) {
 6829    return This->lpVtbl->get_nodeName(This,name);
 6830}
 6831static inline HRESULT IXMLDOMNotation_get_nodeValue(IXMLDOMNotation* This,VARIANT *value) {
 6832    return This->lpVtbl->get_nodeValue(This,value);
 6833}
 6834static inline HRESULT IXMLDOMNotation_put_nodeValue(IXMLDOMNotation* This,VARIANT value) {
 6835    return This->lpVtbl->put_nodeValue(This,value);
 6836}
 6837static inline HRESULT IXMLDOMNotation_get_nodeType(IXMLDOMNotation* This,DOMNodeType *type) {
 6838    return This->lpVtbl->get_nodeType(This,type);
 6839}
 6840static inline HRESULT IXMLDOMNotation_get_parentNode(IXMLDOMNotation* This,IXMLDOMNode **parent) {
 6841    return This->lpVtbl->get_parentNode(This,parent);
 6842}
 6843static inline HRESULT IXMLDOMNotation_get_childNodes(IXMLDOMNotation* This,IXMLDOMNodeList **childList) {
 6844    return This->lpVtbl->get_childNodes(This,childList);
 6845}
 6846static inline HRESULT IXMLDOMNotation_get_firstChild(IXMLDOMNotation* This,IXMLDOMNode **firstChild) {
 6847    return This->lpVtbl->get_firstChild(This,firstChild);
 6848}
 6849static inline HRESULT IXMLDOMNotation_get_lastChild(IXMLDOMNotation* This,IXMLDOMNode **lastChild) {
 6850    return This->lpVtbl->get_lastChild(This,lastChild);
 6851}
 6852static inline HRESULT IXMLDOMNotation_get_previousSibling(IXMLDOMNotation* This,IXMLDOMNode **previousSibling) {
 6853    return This->lpVtbl->get_previousSibling(This,previousSibling);
 6854}
 6855static inline HRESULT IXMLDOMNotation_get_nextSibling(IXMLDOMNotation* This,IXMLDOMNode **nextSibling) {
 6856    return This->lpVtbl->get_nextSibling(This,nextSibling);
 6857}
 6858static inline HRESULT IXMLDOMNotation_get_attributes(IXMLDOMNotation* This,IXMLDOMNamedNodeMap **attributeMap) {
 6859    return This->lpVtbl->get_attributes(This,attributeMap);
 6860}
 6861static inline HRESULT IXMLDOMNotation_insertBefore(IXMLDOMNotation* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 6862    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 6863}
 6864static inline HRESULT IXMLDOMNotation_replaceChild(IXMLDOMNotation* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 6865    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 6866}
 6867static inline HRESULT IXMLDOMNotation_removeChild(IXMLDOMNotation* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 6868    return This->lpVtbl->removeChild(This,childNode,oldChild);
 6869}
 6870static inline HRESULT IXMLDOMNotation_appendChild(IXMLDOMNotation* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 6871    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 6872}
 6873static inline HRESULT IXMLDOMNotation_hasChildNodes(IXMLDOMNotation* This,VARIANT_BOOL *hasChild) {
 6874    return This->lpVtbl->hasChildNodes(This,hasChild);
 6875}
 6876static inline HRESULT IXMLDOMNotation_get_ownerDocument(IXMLDOMNotation* This,IXMLDOMDocument **DOMDocument) {
 6877    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 6878}
 6879static inline HRESULT IXMLDOMNotation_cloneNode(IXMLDOMNotation* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 6880    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 6881}
 6882static inline HRESULT IXMLDOMNotation_get_nodeTypeString(IXMLDOMNotation* This,BSTR *nodeType) {
 6883    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 6884}
 6885static inline HRESULT IXMLDOMNotation_get_text(IXMLDOMNotation* This,BSTR *text) {
 6886    return This->lpVtbl->get_text(This,text);
 6887}
 6888static inline HRESULT IXMLDOMNotation_put_text(IXMLDOMNotation* This,BSTR text) {
 6889    return This->lpVtbl->put_text(This,text);
 6890}
 6891static inline HRESULT IXMLDOMNotation_get_specified(IXMLDOMNotation* This,VARIANT_BOOL *isSpecified) {
 6892    return This->lpVtbl->get_specified(This,isSpecified);
 6893}
 6894static inline HRESULT IXMLDOMNotation_get_definition(IXMLDOMNotation* This,IXMLDOMNode **definitionNode) {
 6895    return This->lpVtbl->get_definition(This,definitionNode);
 6896}
 6897static inline HRESULT IXMLDOMNotation_get_nodeTypedValue(IXMLDOMNotation* This,VARIANT *typedValue) {
 6898    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 6899}
 6900static inline HRESULT IXMLDOMNotation_put_nodeTypedValue(IXMLDOMNotation* This,VARIANT typedValue) {
 6901    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 6902}
 6903static inline HRESULT IXMLDOMNotation_get_dataType(IXMLDOMNotation* This,VARIANT *dataTypeName) {
 6904    return This->lpVtbl->get_dataType(This,dataTypeName);
 6905}
 6906static inline HRESULT IXMLDOMNotation_put_dataType(IXMLDOMNotation* This,BSTR dataTypeName) {
 6907    return This->lpVtbl->put_dataType(This,dataTypeName);
 6908}
 6909static inline HRESULT IXMLDOMNotation_get_xml(IXMLDOMNotation* This,BSTR *xmlString) {
 6910    return This->lpVtbl->get_xml(This,xmlString);
 6911}
 6912static inline HRESULT IXMLDOMNotation_transformNode(IXMLDOMNotation* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 6913    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 6914}
 6915static inline HRESULT IXMLDOMNotation_selectNodes(IXMLDOMNotation* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 6916    return This->lpVtbl->selectNodes(This,queryString,resultList);
 6917}
 6918static inline HRESULT IXMLDOMNotation_selectSingleNode(IXMLDOMNotation* This,BSTR queryString,IXMLDOMNode **resultNode) {
 6919    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 6920}
 6921static inline HRESULT IXMLDOMNotation_get_parsed(IXMLDOMNotation* This,VARIANT_BOOL *isParsed) {
 6922    return This->lpVtbl->get_parsed(This,isParsed);
 6923}
 6924static inline HRESULT IXMLDOMNotation_get_namespaceURI(IXMLDOMNotation* This,BSTR *namespaceURI) {
 6925    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 6926}
 6927static inline HRESULT IXMLDOMNotation_get_prefix(IXMLDOMNotation* This,BSTR *prefixString) {
 6928    return This->lpVtbl->get_prefix(This,prefixString);
 6929}
 6930static inline HRESULT IXMLDOMNotation_get_baseName(IXMLDOMNotation* This,BSTR *nameString) {
 6931    return This->lpVtbl->get_baseName(This,nameString);
 6932}
 6933static inline HRESULT IXMLDOMNotation_transformNodeToObject(IXMLDOMNotation* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 6934    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 6935}
 6936/*** IXMLDOMNotation methods ***/
 6937static inline HRESULT IXMLDOMNotation_get_publicId(IXMLDOMNotation* This,VARIANT *publicId) {
 6938    return This->lpVtbl->get_publicId(This,publicId);
 6939}
 6940static inline HRESULT IXMLDOMNotation_get_systemId(IXMLDOMNotation* This,VARIANT *systemId) {
 6941    return This->lpVtbl->get_systemId(This,systemId);
 6942}
 6943#endif
 6944#endif
 6945
 6946#endif
 6947
 6948
 6949#endif  /* __IXMLDOMNotation_INTERFACE_DEFINED__ */
 6950
 6951/*****************************************************************************
 6952 * IXMLDOMEntity interface
 6953 */
 6954#ifndef __IXMLDOMEntity_INTERFACE_DEFINED__
 6955#define __IXMLDOMEntity_INTERFACE_DEFINED__
 6956
 6957DEFINE_GUID(IID_IXMLDOMEntity, 0x2933bf8d, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 6958#if defined(__cplusplus) && !defined(CINTERFACE)
 6959MIDL_INTERFACE("2933bf8d-7b36-11d2-b20e-00c04f983e60")
 6960IXMLDOMEntity : public IXMLDOMNode
 6961{
 6962    virtual HRESULT STDMETHODCALLTYPE get_publicId(
 6963        VARIANT *publicId) = 0;
 6964
 6965    virtual HRESULT STDMETHODCALLTYPE get_systemId(
 6966        VARIANT *systemId) = 0;
 6967
 6968    virtual HRESULT STDMETHODCALLTYPE get_notationName(
 6969        BSTR *name) = 0;
 6970
 6971};
 6972#ifdef __CRT_UUID_DECL
 6973__CRT_UUID_DECL(IXMLDOMEntity, 0x2933bf8d, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 6974#endif
 6975#else
 6976typedef struct IXMLDOMEntityVtbl {
 6977    BEGIN_INTERFACE
 6978
 6979    /*** IUnknown methods ***/
 6980    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6981        IXMLDOMEntity *This,
 6982        REFIID riid,
 6983        void **ppvObject);
 6984
 6985    ULONG (STDMETHODCALLTYPE *AddRef)(
 6986        IXMLDOMEntity *This);
 6987
 6988    ULONG (STDMETHODCALLTYPE *Release)(
 6989        IXMLDOMEntity *This);
 6990
 6991    /*** IDispatch methods ***/
 6992    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6993        IXMLDOMEntity *This,
 6994        UINT *pctinfo);
 6995
 6996    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6997        IXMLDOMEntity *This,
 6998        UINT iTInfo,
 6999        LCID lcid,
 7000        ITypeInfo **ppTInfo);
 7001
 7002    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 7003        IXMLDOMEntity *This,
 7004        REFIID riid,
 7005        LPOLESTR *rgszNames,
 7006        UINT cNames,
 7007        LCID lcid,
 7008        DISPID *rgDispId);
 7009
 7010    HRESULT (STDMETHODCALLTYPE *Invoke)(
 7011        IXMLDOMEntity *This,
 7012        DISPID dispIdMember,
 7013        REFIID riid,
 7014        LCID lcid,
 7015        WORD wFlags,
 7016        DISPPARAMS *pDispParams,
 7017        VARIANT *pVarResult,
 7018        EXCEPINFO *pExcepInfo,
 7019        UINT *puArgErr);
 7020
 7021    /*** IXMLDOMNode methods ***/
 7022    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 7023        IXMLDOMEntity *This,
 7024        BSTR *name);
 7025
 7026    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 7027        IXMLDOMEntity *This,
 7028        VARIANT *value);
 7029
 7030    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 7031        IXMLDOMEntity *This,
 7032        VARIANT value);
 7033
 7034    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 7035        IXMLDOMEntity *This,
 7036        DOMNodeType *type);
 7037
 7038    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 7039        IXMLDOMEntity *This,
 7040        IXMLDOMNode **parent);
 7041
 7042    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 7043        IXMLDOMEntity *This,
 7044        IXMLDOMNodeList **childList);
 7045
 7046    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 7047        IXMLDOMEntity *This,
 7048        IXMLDOMNode **firstChild);
 7049
 7050    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 7051        IXMLDOMEntity *This,
 7052        IXMLDOMNode **lastChild);
 7053
 7054    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 7055        IXMLDOMEntity *This,
 7056        IXMLDOMNode **previousSibling);
 7057
 7058    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 7059        IXMLDOMEntity *This,
 7060        IXMLDOMNode **nextSibling);
 7061
 7062    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 7063        IXMLDOMEntity *This,
 7064        IXMLDOMNamedNodeMap **attributeMap);
 7065
 7066    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 7067        IXMLDOMEntity *This,
 7068        IXMLDOMNode *newChild,
 7069        VARIANT refChild,
 7070        IXMLDOMNode **outNewChild);
 7071
 7072    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 7073        IXMLDOMEntity *This,
 7074        IXMLDOMNode *newChild,
 7075        IXMLDOMNode *oldChild,
 7076        IXMLDOMNode **outOldChild);
 7077
 7078    HRESULT (STDMETHODCALLTYPE *removeChild)(
 7079        IXMLDOMEntity *This,
 7080        IXMLDOMNode *childNode,
 7081        IXMLDOMNode **oldChild);
 7082
 7083    HRESULT (STDMETHODCALLTYPE *appendChild)(
 7084        IXMLDOMEntity *This,
 7085        IXMLDOMNode *newChild,
 7086        IXMLDOMNode **outNewChild);
 7087
 7088    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 7089        IXMLDOMEntity *This,
 7090        VARIANT_BOOL *hasChild);
 7091
 7092    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 7093        IXMLDOMEntity *This,
 7094        IXMLDOMDocument **DOMDocument);
 7095
 7096    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 7097        IXMLDOMEntity *This,
 7098        VARIANT_BOOL deep,
 7099        IXMLDOMNode **cloneRoot);
 7100
 7101    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 7102        IXMLDOMEntity *This,
 7103        BSTR *nodeType);
 7104
 7105    HRESULT (STDMETHODCALLTYPE *get_text)(
 7106        IXMLDOMEntity *This,
 7107        BSTR *text);
 7108
 7109    HRESULT (STDMETHODCALLTYPE *put_text)(
 7110        IXMLDOMEntity *This,
 7111        BSTR text);
 7112
 7113    HRESULT (STDMETHODCALLTYPE *get_specified)(
 7114        IXMLDOMEntity *This,
 7115        VARIANT_BOOL *isSpecified);
 7116
 7117    HRESULT (STDMETHODCALLTYPE *get_definition)(
 7118        IXMLDOMEntity *This,
 7119        IXMLDOMNode **definitionNode);
 7120
 7121    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 7122        IXMLDOMEntity *This,
 7123        VARIANT *typedValue);
 7124
 7125    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 7126        IXMLDOMEntity *This,
 7127        VARIANT typedValue);
 7128
 7129    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 7130        IXMLDOMEntity *This,
 7131        VARIANT *dataTypeName);
 7132
 7133    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 7134        IXMLDOMEntity *This,
 7135        BSTR dataTypeName);
 7136
 7137    HRESULT (STDMETHODCALLTYPE *get_xml)(
 7138        IXMLDOMEntity *This,
 7139        BSTR *xmlString);
 7140
 7141    HRESULT (STDMETHODCALLTYPE *transformNode)(
 7142        IXMLDOMEntity *This,
 7143        IXMLDOMNode *styleSheet,
 7144        BSTR *xmlString);
 7145
 7146    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 7147        IXMLDOMEntity *This,
 7148        BSTR queryString,
 7149        IXMLDOMNodeList **resultList);
 7150
 7151    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 7152        IXMLDOMEntity *This,
 7153        BSTR queryString,
 7154        IXMLDOMNode **resultNode);
 7155
 7156    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 7157        IXMLDOMEntity *This,
 7158        VARIANT_BOOL *isParsed);
 7159
 7160    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 7161        IXMLDOMEntity *This,
 7162        BSTR *namespaceURI);
 7163
 7164    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 7165        IXMLDOMEntity *This,
 7166        BSTR *prefixString);
 7167
 7168    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 7169        IXMLDOMEntity *This,
 7170        BSTR *nameString);
 7171
 7172    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 7173        IXMLDOMEntity *This,
 7174        IXMLDOMNode *stylesheet,
 7175        VARIANT outputObject);
 7176
 7177    /*** IXMLDOMEntity methods ***/
 7178    HRESULT (STDMETHODCALLTYPE *get_publicId)(
 7179        IXMLDOMEntity *This,
 7180        VARIANT *publicId);
 7181
 7182    HRESULT (STDMETHODCALLTYPE *get_systemId)(
 7183        IXMLDOMEntity *This,
 7184        VARIANT *systemId);
 7185
 7186    HRESULT (STDMETHODCALLTYPE *get_notationName)(
 7187        IXMLDOMEntity *This,
 7188        BSTR *name);
 7189
 7190    END_INTERFACE
 7191} IXMLDOMEntityVtbl;
 7192
 7193interface IXMLDOMEntity {
 7194    CONST_VTBL IXMLDOMEntityVtbl* lpVtbl;
 7195};
 7196
 7197#ifdef COBJMACROS
 7198#ifndef WIDL_C_INLINE_WRAPPERS
 7199/*** IUnknown methods ***/
 7200#define IXMLDOMEntity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7201#define IXMLDOMEntity_AddRef(This) (This)->lpVtbl->AddRef(This)
 7202#define IXMLDOMEntity_Release(This) (This)->lpVtbl->Release(This)
 7203/*** IDispatch methods ***/
 7204#define IXMLDOMEntity_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 7205#define IXMLDOMEntity_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 7206#define IXMLDOMEntity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 7207#define IXMLDOMEntity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 7208/*** IXMLDOMNode methods ***/
 7209#define IXMLDOMEntity_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 7210#define IXMLDOMEntity_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 7211#define IXMLDOMEntity_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 7212#define IXMLDOMEntity_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 7213#define IXMLDOMEntity_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 7214#define IXMLDOMEntity_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 7215#define IXMLDOMEntity_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 7216#define IXMLDOMEntity_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 7217#define IXMLDOMEntity_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 7218#define IXMLDOMEntity_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 7219#define IXMLDOMEntity_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 7220#define IXMLDOMEntity_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 7221#define IXMLDOMEntity_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 7222#define IXMLDOMEntity_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 7223#define IXMLDOMEntity_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 7224#define IXMLDOMEntity_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 7225#define IXMLDOMEntity_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 7226#define IXMLDOMEntity_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 7227#define IXMLDOMEntity_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 7228#define IXMLDOMEntity_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 7229#define IXMLDOMEntity_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 7230#define IXMLDOMEntity_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 7231#define IXMLDOMEntity_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 7232#define IXMLDOMEntity_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 7233#define IXMLDOMEntity_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 7234#define IXMLDOMEntity_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 7235#define IXMLDOMEntity_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 7236#define IXMLDOMEntity_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 7237#define IXMLDOMEntity_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 7238#define IXMLDOMEntity_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 7239#define IXMLDOMEntity_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 7240#define IXMLDOMEntity_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 7241#define IXMLDOMEntity_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 7242#define IXMLDOMEntity_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 7243#define IXMLDOMEntity_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 7244#define IXMLDOMEntity_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 7245/*** IXMLDOMEntity methods ***/
 7246#define IXMLDOMEntity_get_publicId(This,publicId) (This)->lpVtbl->get_publicId(This,publicId)
 7247#define IXMLDOMEntity_get_systemId(This,systemId) (This)->lpVtbl->get_systemId(This,systemId)
 7248#define IXMLDOMEntity_get_notationName(This,name) (This)->lpVtbl->get_notationName(This,name)
 7249#else
 7250/*** IUnknown methods ***/
 7251static inline HRESULT IXMLDOMEntity_QueryInterface(IXMLDOMEntity* This,REFIID riid,void **ppvObject) {
 7252    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7253}
 7254static inline ULONG IXMLDOMEntity_AddRef(IXMLDOMEntity* This) {
 7255    return This->lpVtbl->AddRef(This);
 7256}
 7257static inline ULONG IXMLDOMEntity_Release(IXMLDOMEntity* This) {
 7258    return This->lpVtbl->Release(This);
 7259}
 7260/*** IDispatch methods ***/
 7261static inline HRESULT IXMLDOMEntity_GetTypeInfoCount(IXMLDOMEntity* This,UINT *pctinfo) {
 7262    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 7263}
 7264static inline HRESULT IXMLDOMEntity_GetTypeInfo(IXMLDOMEntity* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 7265    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 7266}
 7267static inline HRESULT IXMLDOMEntity_GetIDsOfNames(IXMLDOMEntity* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 7268    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 7269}
 7270static inline HRESULT IXMLDOMEntity_Invoke(IXMLDOMEntity* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 7271    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 7272}
 7273/*** IXMLDOMNode methods ***/
 7274static inline HRESULT IXMLDOMEntity_get_nodeName(IXMLDOMEntity* This,BSTR *name) {
 7275    return This->lpVtbl->get_nodeName(This,name);
 7276}
 7277static inline HRESULT IXMLDOMEntity_get_nodeValue(IXMLDOMEntity* This,VARIANT *value) {
 7278    return This->lpVtbl->get_nodeValue(This,value);
 7279}
 7280static inline HRESULT IXMLDOMEntity_put_nodeValue(IXMLDOMEntity* This,VARIANT value) {
 7281    return This->lpVtbl->put_nodeValue(This,value);
 7282}
 7283static inline HRESULT IXMLDOMEntity_get_nodeType(IXMLDOMEntity* This,DOMNodeType *type) {
 7284    return This->lpVtbl->get_nodeType(This,type);
 7285}
 7286static inline HRESULT IXMLDOMEntity_get_parentNode(IXMLDOMEntity* This,IXMLDOMNode **parent) {
 7287    return This->lpVtbl->get_parentNode(This,parent);
 7288}
 7289static inline HRESULT IXMLDOMEntity_get_childNodes(IXMLDOMEntity* This,IXMLDOMNodeList **childList) {
 7290    return This->lpVtbl->get_childNodes(This,childList);
 7291}
 7292static inline HRESULT IXMLDOMEntity_get_firstChild(IXMLDOMEntity* This,IXMLDOMNode **firstChild) {
 7293    return This->lpVtbl->get_firstChild(This,firstChild);
 7294}
 7295static inline HRESULT IXMLDOMEntity_get_lastChild(IXMLDOMEntity* This,IXMLDOMNode **lastChild) {
 7296    return This->lpVtbl->get_lastChild(This,lastChild);
 7297}
 7298static inline HRESULT IXMLDOMEntity_get_previousSibling(IXMLDOMEntity* This,IXMLDOMNode **previousSibling) {
 7299    return This->lpVtbl->get_previousSibling(This,previousSibling);
 7300}
 7301static inline HRESULT IXMLDOMEntity_get_nextSibling(IXMLDOMEntity* This,IXMLDOMNode **nextSibling) {
 7302    return This->lpVtbl->get_nextSibling(This,nextSibling);
 7303}
 7304static inline HRESULT IXMLDOMEntity_get_attributes(IXMLDOMEntity* This,IXMLDOMNamedNodeMap **attributeMap) {
 7305    return This->lpVtbl->get_attributes(This,attributeMap);
 7306}
 7307static inline HRESULT IXMLDOMEntity_insertBefore(IXMLDOMEntity* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 7308    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 7309}
 7310static inline HRESULT IXMLDOMEntity_replaceChild(IXMLDOMEntity* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 7311    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 7312}
 7313static inline HRESULT IXMLDOMEntity_removeChild(IXMLDOMEntity* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 7314    return This->lpVtbl->removeChild(This,childNode,oldChild);
 7315}
 7316static inline HRESULT IXMLDOMEntity_appendChild(IXMLDOMEntity* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 7317    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 7318}
 7319static inline HRESULT IXMLDOMEntity_hasChildNodes(IXMLDOMEntity* This,VARIANT_BOOL *hasChild) {
 7320    return This->lpVtbl->hasChildNodes(This,hasChild);
 7321}
 7322static inline HRESULT IXMLDOMEntity_get_ownerDocument(IXMLDOMEntity* This,IXMLDOMDocument **DOMDocument) {
 7323    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 7324}
 7325static inline HRESULT IXMLDOMEntity_cloneNode(IXMLDOMEntity* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 7326    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 7327}
 7328static inline HRESULT IXMLDOMEntity_get_nodeTypeString(IXMLDOMEntity* This,BSTR *nodeType) {
 7329    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 7330}
 7331static inline HRESULT IXMLDOMEntity_get_text(IXMLDOMEntity* This,BSTR *text) {
 7332    return This->lpVtbl->get_text(This,text);
 7333}
 7334static inline HRESULT IXMLDOMEntity_put_text(IXMLDOMEntity* This,BSTR text) {
 7335    return This->lpVtbl->put_text(This,text);
 7336}
 7337static inline HRESULT IXMLDOMEntity_get_specified(IXMLDOMEntity* This,VARIANT_BOOL *isSpecified) {
 7338    return This->lpVtbl->get_specified(This,isSpecified);
 7339}
 7340static inline HRESULT IXMLDOMEntity_get_definition(IXMLDOMEntity* This,IXMLDOMNode **definitionNode) {
 7341    return This->lpVtbl->get_definition(This,definitionNode);
 7342}
 7343static inline HRESULT IXMLDOMEntity_get_nodeTypedValue(IXMLDOMEntity* This,VARIANT *typedValue) {
 7344    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 7345}
 7346static inline HRESULT IXMLDOMEntity_put_nodeTypedValue(IXMLDOMEntity* This,VARIANT typedValue) {
 7347    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 7348}
 7349static inline HRESULT IXMLDOMEntity_get_dataType(IXMLDOMEntity* This,VARIANT *dataTypeName) {
 7350    return This->lpVtbl->get_dataType(This,dataTypeName);
 7351}
 7352static inline HRESULT IXMLDOMEntity_put_dataType(IXMLDOMEntity* This,BSTR dataTypeName) {
 7353    return This->lpVtbl->put_dataType(This,dataTypeName);
 7354}
 7355static inline HRESULT IXMLDOMEntity_get_xml(IXMLDOMEntity* This,BSTR *xmlString) {
 7356    return This->lpVtbl->get_xml(This,xmlString);
 7357}
 7358static inline HRESULT IXMLDOMEntity_transformNode(IXMLDOMEntity* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 7359    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 7360}
 7361static inline HRESULT IXMLDOMEntity_selectNodes(IXMLDOMEntity* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 7362    return This->lpVtbl->selectNodes(This,queryString,resultList);
 7363}
 7364static inline HRESULT IXMLDOMEntity_selectSingleNode(IXMLDOMEntity* This,BSTR queryString,IXMLDOMNode **resultNode) {
 7365    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 7366}
 7367static inline HRESULT IXMLDOMEntity_get_parsed(IXMLDOMEntity* This,VARIANT_BOOL *isParsed) {
 7368    return This->lpVtbl->get_parsed(This,isParsed);
 7369}
 7370static inline HRESULT IXMLDOMEntity_get_namespaceURI(IXMLDOMEntity* This,BSTR *namespaceURI) {
 7371    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 7372}
 7373static inline HRESULT IXMLDOMEntity_get_prefix(IXMLDOMEntity* This,BSTR *prefixString) {
 7374    return This->lpVtbl->get_prefix(This,prefixString);
 7375}
 7376static inline HRESULT IXMLDOMEntity_get_baseName(IXMLDOMEntity* This,BSTR *nameString) {
 7377    return This->lpVtbl->get_baseName(This,nameString);
 7378}
 7379static inline HRESULT IXMLDOMEntity_transformNodeToObject(IXMLDOMEntity* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 7380    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 7381}
 7382/*** IXMLDOMEntity methods ***/
 7383static inline HRESULT IXMLDOMEntity_get_publicId(IXMLDOMEntity* This,VARIANT *publicId) {
 7384    return This->lpVtbl->get_publicId(This,publicId);
 7385}
 7386static inline HRESULT IXMLDOMEntity_get_systemId(IXMLDOMEntity* This,VARIANT *systemId) {
 7387    return This->lpVtbl->get_systemId(This,systemId);
 7388}
 7389static inline HRESULT IXMLDOMEntity_get_notationName(IXMLDOMEntity* This,BSTR *name) {
 7390    return This->lpVtbl->get_notationName(This,name);
 7391}
 7392#endif
 7393#endif
 7394
 7395#endif
 7396
 7397
 7398#endif  /* __IXMLDOMEntity_INTERFACE_DEFINED__ */
 7399
 7400/*****************************************************************************
 7401 * IXMLDOMEntityReference interface
 7402 */
 7403#ifndef __IXMLDOMEntityReference_INTERFACE_DEFINED__
 7404#define __IXMLDOMEntityReference_INTERFACE_DEFINED__
 7405
 7406DEFINE_GUID(IID_IXMLDOMEntityReference, 0x2933bf8e, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 7407#if defined(__cplusplus) && !defined(CINTERFACE)
 7408MIDL_INTERFACE("2933bf8e-7b36-11d2-b20e-00c04f983e60")
 7409IXMLDOMEntityReference : public IXMLDOMNode
 7410{
 7411};
 7412#ifdef __CRT_UUID_DECL
 7413__CRT_UUID_DECL(IXMLDOMEntityReference, 0x2933bf8e, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 7414#endif
 7415#else
 7416typedef struct IXMLDOMEntityReferenceVtbl {
 7417    BEGIN_INTERFACE
 7418
 7419    /*** IUnknown methods ***/
 7420    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7421        IXMLDOMEntityReference *This,
 7422        REFIID riid,
 7423        void **ppvObject);
 7424
 7425    ULONG (STDMETHODCALLTYPE *AddRef)(
 7426        IXMLDOMEntityReference *This);
 7427
 7428    ULONG (STDMETHODCALLTYPE *Release)(
 7429        IXMLDOMEntityReference *This);
 7430
 7431    /*** IDispatch methods ***/
 7432    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 7433        IXMLDOMEntityReference *This,
 7434        UINT *pctinfo);
 7435
 7436    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 7437        IXMLDOMEntityReference *This,
 7438        UINT iTInfo,
 7439        LCID lcid,
 7440        ITypeInfo **ppTInfo);
 7441
 7442    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 7443        IXMLDOMEntityReference *This,
 7444        REFIID riid,
 7445        LPOLESTR *rgszNames,
 7446        UINT cNames,
 7447        LCID lcid,
 7448        DISPID *rgDispId);
 7449
 7450    HRESULT (STDMETHODCALLTYPE *Invoke)(
 7451        IXMLDOMEntityReference *This,
 7452        DISPID dispIdMember,
 7453        REFIID riid,
 7454        LCID lcid,
 7455        WORD wFlags,
 7456        DISPPARAMS *pDispParams,
 7457        VARIANT *pVarResult,
 7458        EXCEPINFO *pExcepInfo,
 7459        UINT *puArgErr);
 7460
 7461    /*** IXMLDOMNode methods ***/
 7462    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 7463        IXMLDOMEntityReference *This,
 7464        BSTR *name);
 7465
 7466    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 7467        IXMLDOMEntityReference *This,
 7468        VARIANT *value);
 7469
 7470    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 7471        IXMLDOMEntityReference *This,
 7472        VARIANT value);
 7473
 7474    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 7475        IXMLDOMEntityReference *This,
 7476        DOMNodeType *type);
 7477
 7478    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 7479        IXMLDOMEntityReference *This,
 7480        IXMLDOMNode **parent);
 7481
 7482    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 7483        IXMLDOMEntityReference *This,
 7484        IXMLDOMNodeList **childList);
 7485
 7486    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 7487        IXMLDOMEntityReference *This,
 7488        IXMLDOMNode **firstChild);
 7489
 7490    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 7491        IXMLDOMEntityReference *This,
 7492        IXMLDOMNode **lastChild);
 7493
 7494    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 7495        IXMLDOMEntityReference *This,
 7496        IXMLDOMNode **previousSibling);
 7497
 7498    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 7499        IXMLDOMEntityReference *This,
 7500        IXMLDOMNode **nextSibling);
 7501
 7502    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 7503        IXMLDOMEntityReference *This,
 7504        IXMLDOMNamedNodeMap **attributeMap);
 7505
 7506    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 7507        IXMLDOMEntityReference *This,
 7508        IXMLDOMNode *newChild,
 7509        VARIANT refChild,
 7510        IXMLDOMNode **outNewChild);
 7511
 7512    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 7513        IXMLDOMEntityReference *This,
 7514        IXMLDOMNode *newChild,
 7515        IXMLDOMNode *oldChild,
 7516        IXMLDOMNode **outOldChild);
 7517
 7518    HRESULT (STDMETHODCALLTYPE *removeChild)(
 7519        IXMLDOMEntityReference *This,
 7520        IXMLDOMNode *childNode,
 7521        IXMLDOMNode **oldChild);
 7522
 7523    HRESULT (STDMETHODCALLTYPE *appendChild)(
 7524        IXMLDOMEntityReference *This,
 7525        IXMLDOMNode *newChild,
 7526        IXMLDOMNode **outNewChild);
 7527
 7528    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 7529        IXMLDOMEntityReference *This,
 7530        VARIANT_BOOL *hasChild);
 7531
 7532    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 7533        IXMLDOMEntityReference *This,
 7534        IXMLDOMDocument **DOMDocument);
 7535
 7536    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 7537        IXMLDOMEntityReference *This,
 7538        VARIANT_BOOL deep,
 7539        IXMLDOMNode **cloneRoot);
 7540
 7541    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 7542        IXMLDOMEntityReference *This,
 7543        BSTR *nodeType);
 7544
 7545    HRESULT (STDMETHODCALLTYPE *get_text)(
 7546        IXMLDOMEntityReference *This,
 7547        BSTR *text);
 7548
 7549    HRESULT (STDMETHODCALLTYPE *put_text)(
 7550        IXMLDOMEntityReference *This,
 7551        BSTR text);
 7552
 7553    HRESULT (STDMETHODCALLTYPE *get_specified)(
 7554        IXMLDOMEntityReference *This,
 7555        VARIANT_BOOL *isSpecified);
 7556
 7557    HRESULT (STDMETHODCALLTYPE *get_definition)(
 7558        IXMLDOMEntityReference *This,
 7559        IXMLDOMNode **definitionNode);
 7560
 7561    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 7562        IXMLDOMEntityReference *This,
 7563        VARIANT *typedValue);
 7564
 7565    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 7566        IXMLDOMEntityReference *This,
 7567        VARIANT typedValue);
 7568
 7569    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 7570        IXMLDOMEntityReference *This,
 7571        VARIANT *dataTypeName);
 7572
 7573    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 7574        IXMLDOMEntityReference *This,
 7575        BSTR dataTypeName);
 7576
 7577    HRESULT (STDMETHODCALLTYPE *get_xml)(
 7578        IXMLDOMEntityReference *This,
 7579        BSTR *xmlString);
 7580
 7581    HRESULT (STDMETHODCALLTYPE *transformNode)(
 7582        IXMLDOMEntityReference *This,
 7583        IXMLDOMNode *styleSheet,
 7584        BSTR *xmlString);
 7585
 7586    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 7587        IXMLDOMEntityReference *This,
 7588        BSTR queryString,
 7589        IXMLDOMNodeList **resultList);
 7590
 7591    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 7592        IXMLDOMEntityReference *This,
 7593        BSTR queryString,
 7594        IXMLDOMNode **resultNode);
 7595
 7596    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 7597        IXMLDOMEntityReference *This,
 7598        VARIANT_BOOL *isParsed);
 7599
 7600    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 7601        IXMLDOMEntityReference *This,
 7602        BSTR *namespaceURI);
 7603
 7604    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 7605        IXMLDOMEntityReference *This,
 7606        BSTR *prefixString);
 7607
 7608    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 7609        IXMLDOMEntityReference *This,
 7610        BSTR *nameString);
 7611
 7612    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 7613        IXMLDOMEntityReference *This,
 7614        IXMLDOMNode *stylesheet,
 7615        VARIANT outputObject);
 7616
 7617    END_INTERFACE
 7618} IXMLDOMEntityReferenceVtbl;
 7619
 7620interface IXMLDOMEntityReference {
 7621    CONST_VTBL IXMLDOMEntityReferenceVtbl* lpVtbl;
 7622};
 7623
 7624#ifdef COBJMACROS
 7625#ifndef WIDL_C_INLINE_WRAPPERS
 7626/*** IUnknown methods ***/
 7627#define IXMLDOMEntityReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7628#define IXMLDOMEntityReference_AddRef(This) (This)->lpVtbl->AddRef(This)
 7629#define IXMLDOMEntityReference_Release(This) (This)->lpVtbl->Release(This)
 7630/*** IDispatch methods ***/
 7631#define IXMLDOMEntityReference_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 7632#define IXMLDOMEntityReference_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 7633#define IXMLDOMEntityReference_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 7634#define IXMLDOMEntityReference_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 7635/*** IXMLDOMNode methods ***/
 7636#define IXMLDOMEntityReference_get_nodeName(This,name) (This)->lpVtbl->get_nodeName(This,name)
 7637#define IXMLDOMEntityReference_get_nodeValue(This,value) (This)->lpVtbl->get_nodeValue(This,value)
 7638#define IXMLDOMEntityReference_put_nodeValue(This,value) (This)->lpVtbl->put_nodeValue(This,value)
 7639#define IXMLDOMEntityReference_get_nodeType(This,type) (This)->lpVtbl->get_nodeType(This,type)
 7640#define IXMLDOMEntityReference_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 7641#define IXMLDOMEntityReference_get_childNodes(This,childList) (This)->lpVtbl->get_childNodes(This,childList)
 7642#define IXMLDOMEntityReference_get_firstChild(This,firstChild) (This)->lpVtbl->get_firstChild(This,firstChild)
 7643#define IXMLDOMEntityReference_get_lastChild(This,lastChild) (This)->lpVtbl->get_lastChild(This,lastChild)
 7644#define IXMLDOMEntityReference_get_previousSibling(This,previousSibling) (This)->lpVtbl->get_previousSibling(This,previousSibling)
 7645#define IXMLDOMEntityReference_get_nextSibling(This,nextSibling) (This)->lpVtbl->get_nextSibling(This,nextSibling)
 7646#define IXMLDOMEntityReference_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 7647#define IXMLDOMEntityReference_insertBefore(This,newChild,refChild,outNewChild) (This)->lpVtbl->insertBefore(This,newChild,refChild,outNewChild)
 7648#define IXMLDOMEntityReference_replaceChild(This,newChild,oldChild,outOldChild) (This)->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild)
 7649#define IXMLDOMEntityReference_removeChild(This,childNode,oldChild) (This)->lpVtbl->removeChild(This,childNode,oldChild)
 7650#define IXMLDOMEntityReference_appendChild(This,newChild,outNewChild) (This)->lpVtbl->appendChild(This,newChild,outNewChild)
 7651#define IXMLDOMEntityReference_hasChildNodes(This,hasChild) (This)->lpVtbl->hasChildNodes(This,hasChild)
 7652#define IXMLDOMEntityReference_get_ownerDocument(This,DOMDocument) (This)->lpVtbl->get_ownerDocument(This,DOMDocument)
 7653#define IXMLDOMEntityReference_cloneNode(This,deep,cloneRoot) (This)->lpVtbl->cloneNode(This,deep,cloneRoot)
 7654#define IXMLDOMEntityReference_get_nodeTypeString(This,nodeType) (This)->lpVtbl->get_nodeTypeString(This,nodeType)
 7655#define IXMLDOMEntityReference_get_text(This,text) (This)->lpVtbl->get_text(This,text)
 7656#define IXMLDOMEntityReference_put_text(This,text) (This)->lpVtbl->put_text(This,text)
 7657#define IXMLDOMEntityReference_get_specified(This,isSpecified) (This)->lpVtbl->get_specified(This,isSpecified)
 7658#define IXMLDOMEntityReference_get_definition(This,definitionNode) (This)->lpVtbl->get_definition(This,definitionNode)
 7659#define IXMLDOMEntityReference_get_nodeTypedValue(This,typedValue) (This)->lpVtbl->get_nodeTypedValue(This,typedValue)
 7660#define IXMLDOMEntityReference_put_nodeTypedValue(This,typedValue) (This)->lpVtbl->put_nodeTypedValue(This,typedValue)
 7661#define IXMLDOMEntityReference_get_dataType(This,dataTypeName) (This)->lpVtbl->get_dataType(This,dataTypeName)
 7662#define IXMLDOMEntityReference_put_dataType(This,dataTypeName) (This)->lpVtbl->put_dataType(This,dataTypeName)
 7663#define IXMLDOMEntityReference_get_xml(This,xmlString) (This)->lpVtbl->get_xml(This,xmlString)
 7664#define IXMLDOMEntityReference_transformNode(This,styleSheet,xmlString) (This)->lpVtbl->transformNode(This,styleSheet,xmlString)
 7665#define IXMLDOMEntityReference_selectNodes(This,queryString,resultList) (This)->lpVtbl->selectNodes(This,queryString,resultList)
 7666#define IXMLDOMEntityReference_selectSingleNode(This,queryString,resultNode) (This)->lpVtbl->selectSingleNode(This,queryString,resultNode)
 7667#define IXMLDOMEntityReference_get_parsed(This,isParsed) (This)->lpVtbl->get_parsed(This,isParsed)
 7668#define IXMLDOMEntityReference_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
 7669#define IXMLDOMEntityReference_get_prefix(This,prefixString) (This)->lpVtbl->get_prefix(This,prefixString)
 7670#define IXMLDOMEntityReference_get_baseName(This,nameString) (This)->lpVtbl->get_baseName(This,nameString)
 7671#define IXMLDOMEntityReference_transformNodeToObject(This,stylesheet,outputObject) (This)->lpVtbl->transformNodeToObject(This,stylesheet,outputObject)
 7672#else
 7673/*** IUnknown methods ***/
 7674static inline HRESULT IXMLDOMEntityReference_QueryInterface(IXMLDOMEntityReference* This,REFIID riid,void **ppvObject) {
 7675    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7676}
 7677static inline ULONG IXMLDOMEntityReference_AddRef(IXMLDOMEntityReference* This) {
 7678    return This->lpVtbl->AddRef(This);
 7679}
 7680static inline ULONG IXMLDOMEntityReference_Release(IXMLDOMEntityReference* This) {
 7681    return This->lpVtbl->Release(This);
 7682}
 7683/*** IDispatch methods ***/
 7684static inline HRESULT IXMLDOMEntityReference_GetTypeInfoCount(IXMLDOMEntityReference* This,UINT *pctinfo) {
 7685    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 7686}
 7687static inline HRESULT IXMLDOMEntityReference_GetTypeInfo(IXMLDOMEntityReference* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 7688    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 7689}
 7690static inline HRESULT IXMLDOMEntityReference_GetIDsOfNames(IXMLDOMEntityReference* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 7691    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 7692}
 7693static inline HRESULT IXMLDOMEntityReference_Invoke(IXMLDOMEntityReference* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 7694    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 7695}
 7696/*** IXMLDOMNode methods ***/
 7697static inline HRESULT IXMLDOMEntityReference_get_nodeName(IXMLDOMEntityReference* This,BSTR *name) {
 7698    return This->lpVtbl->get_nodeName(This,name);
 7699}
 7700static inline HRESULT IXMLDOMEntityReference_get_nodeValue(IXMLDOMEntityReference* This,VARIANT *value) {
 7701    return This->lpVtbl->get_nodeValue(This,value);
 7702}
 7703static inline HRESULT IXMLDOMEntityReference_put_nodeValue(IXMLDOMEntityReference* This,VARIANT value) {
 7704    return This->lpVtbl->put_nodeValue(This,value);
 7705}
 7706static inline HRESULT IXMLDOMEntityReference_get_nodeType(IXMLDOMEntityReference* This,DOMNodeType *type) {
 7707    return This->lpVtbl->get_nodeType(This,type);
 7708}
 7709static inline HRESULT IXMLDOMEntityReference_get_parentNode(IXMLDOMEntityReference* This,IXMLDOMNode **parent) {
 7710    return This->lpVtbl->get_parentNode(This,parent);
 7711}
 7712static inline HRESULT IXMLDOMEntityReference_get_childNodes(IXMLDOMEntityReference* This,IXMLDOMNodeList **childList) {
 7713    return This->lpVtbl->get_childNodes(This,childList);
 7714}
 7715static inline HRESULT IXMLDOMEntityReference_get_firstChild(IXMLDOMEntityReference* This,IXMLDOMNode **firstChild) {
 7716    return This->lpVtbl->get_firstChild(This,firstChild);
 7717}
 7718static inline HRESULT IXMLDOMEntityReference_get_lastChild(IXMLDOMEntityReference* This,IXMLDOMNode **lastChild) {
 7719    return This->lpVtbl->get_lastChild(This,lastChild);
 7720}
 7721static inline HRESULT IXMLDOMEntityReference_get_previousSibling(IXMLDOMEntityReference* This,IXMLDOMNode **previousSibling) {
 7722    return This->lpVtbl->get_previousSibling(This,previousSibling);
 7723}
 7724static inline HRESULT IXMLDOMEntityReference_get_nextSibling(IXMLDOMEntityReference* This,IXMLDOMNode **nextSibling) {
 7725    return This->lpVtbl->get_nextSibling(This,nextSibling);
 7726}
 7727static inline HRESULT IXMLDOMEntityReference_get_attributes(IXMLDOMEntityReference* This,IXMLDOMNamedNodeMap **attributeMap) {
 7728    return This->lpVtbl->get_attributes(This,attributeMap);
 7729}
 7730static inline HRESULT IXMLDOMEntityReference_insertBefore(IXMLDOMEntityReference* This,IXMLDOMNode *newChild,VARIANT refChild,IXMLDOMNode **outNewChild) {
 7731    return This->lpVtbl->insertBefore(This,newChild,refChild,outNewChild);
 7732}
 7733static inline HRESULT IXMLDOMEntityReference_replaceChild(IXMLDOMEntityReference* This,IXMLDOMNode *newChild,IXMLDOMNode *oldChild,IXMLDOMNode **outOldChild) {
 7734    return This->lpVtbl->replaceChild(This,newChild,oldChild,outOldChild);
 7735}
 7736static inline HRESULT IXMLDOMEntityReference_removeChild(IXMLDOMEntityReference* This,IXMLDOMNode *childNode,IXMLDOMNode **oldChild) {
 7737    return This->lpVtbl->removeChild(This,childNode,oldChild);
 7738}
 7739static inline HRESULT IXMLDOMEntityReference_appendChild(IXMLDOMEntityReference* This,IXMLDOMNode *newChild,IXMLDOMNode **outNewChild) {
 7740    return This->lpVtbl->appendChild(This,newChild,outNewChild);
 7741}
 7742static inline HRESULT IXMLDOMEntityReference_hasChildNodes(IXMLDOMEntityReference* This,VARIANT_BOOL *hasChild) {
 7743    return This->lpVtbl->hasChildNodes(This,hasChild);
 7744}
 7745static inline HRESULT IXMLDOMEntityReference_get_ownerDocument(IXMLDOMEntityReference* This,IXMLDOMDocument **DOMDocument) {
 7746    return This->lpVtbl->get_ownerDocument(This,DOMDocument);
 7747}
 7748static inline HRESULT IXMLDOMEntityReference_cloneNode(IXMLDOMEntityReference* This,VARIANT_BOOL deep,IXMLDOMNode **cloneRoot) {
 7749    return This->lpVtbl->cloneNode(This,deep,cloneRoot);
 7750}
 7751static inline HRESULT IXMLDOMEntityReference_get_nodeTypeString(IXMLDOMEntityReference* This,BSTR *nodeType) {
 7752    return This->lpVtbl->get_nodeTypeString(This,nodeType);
 7753}
 7754static inline HRESULT IXMLDOMEntityReference_get_text(IXMLDOMEntityReference* This,BSTR *text) {
 7755    return This->lpVtbl->get_text(This,text);
 7756}
 7757static inline HRESULT IXMLDOMEntityReference_put_text(IXMLDOMEntityReference* This,BSTR text) {
 7758    return This->lpVtbl->put_text(This,text);
 7759}
 7760static inline HRESULT IXMLDOMEntityReference_get_specified(IXMLDOMEntityReference* This,VARIANT_BOOL *isSpecified) {
 7761    return This->lpVtbl->get_specified(This,isSpecified);
 7762}
 7763static inline HRESULT IXMLDOMEntityReference_get_definition(IXMLDOMEntityReference* This,IXMLDOMNode **definitionNode) {
 7764    return This->lpVtbl->get_definition(This,definitionNode);
 7765}
 7766static inline HRESULT IXMLDOMEntityReference_get_nodeTypedValue(IXMLDOMEntityReference* This,VARIANT *typedValue) {
 7767    return This->lpVtbl->get_nodeTypedValue(This,typedValue);
 7768}
 7769static inline HRESULT IXMLDOMEntityReference_put_nodeTypedValue(IXMLDOMEntityReference* This,VARIANT typedValue) {
 7770    return This->lpVtbl->put_nodeTypedValue(This,typedValue);
 7771}
 7772static inline HRESULT IXMLDOMEntityReference_get_dataType(IXMLDOMEntityReference* This,VARIANT *dataTypeName) {
 7773    return This->lpVtbl->get_dataType(This,dataTypeName);
 7774}
 7775static inline HRESULT IXMLDOMEntityReference_put_dataType(IXMLDOMEntityReference* This,BSTR dataTypeName) {
 7776    return This->lpVtbl->put_dataType(This,dataTypeName);
 7777}
 7778static inline HRESULT IXMLDOMEntityReference_get_xml(IXMLDOMEntityReference* This,BSTR *xmlString) {
 7779    return This->lpVtbl->get_xml(This,xmlString);
 7780}
 7781static inline HRESULT IXMLDOMEntityReference_transformNode(IXMLDOMEntityReference* This,IXMLDOMNode *styleSheet,BSTR *xmlString) {
 7782    return This->lpVtbl->transformNode(This,styleSheet,xmlString);
 7783}
 7784static inline HRESULT IXMLDOMEntityReference_selectNodes(IXMLDOMEntityReference* This,BSTR queryString,IXMLDOMNodeList **resultList) {
 7785    return This->lpVtbl->selectNodes(This,queryString,resultList);
 7786}
 7787static inline HRESULT IXMLDOMEntityReference_selectSingleNode(IXMLDOMEntityReference* This,BSTR queryString,IXMLDOMNode **resultNode) {
 7788    return This->lpVtbl->selectSingleNode(This,queryString,resultNode);
 7789}
 7790static inline HRESULT IXMLDOMEntityReference_get_parsed(IXMLDOMEntityReference* This,VARIANT_BOOL *isParsed) {
 7791    return This->lpVtbl->get_parsed(This,isParsed);
 7792}
 7793static inline HRESULT IXMLDOMEntityReference_get_namespaceURI(IXMLDOMEntityReference* This,BSTR *namespaceURI) {
 7794    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
 7795}
 7796static inline HRESULT IXMLDOMEntityReference_get_prefix(IXMLDOMEntityReference* This,BSTR *prefixString) {
 7797    return This->lpVtbl->get_prefix(This,prefixString);
 7798}
 7799static inline HRESULT IXMLDOMEntityReference_get_baseName(IXMLDOMEntityReference* This,BSTR *nameString) {
 7800    return This->lpVtbl->get_baseName(This,nameString);
 7801}
 7802static inline HRESULT IXMLDOMEntityReference_transformNodeToObject(IXMLDOMEntityReference* This,IXMLDOMNode *stylesheet,VARIANT outputObject) {
 7803    return This->lpVtbl->transformNodeToObject(This,stylesheet,outputObject);
 7804}
 7805#endif
 7806#endif
 7807
 7808#endif
 7809
 7810
 7811#endif  /* __IXMLDOMEntityReference_INTERFACE_DEFINED__ */
 7812
 7813/*****************************************************************************
 7814 * IXMLDOMImplementation interface
 7815 */
 7816#ifndef __IXMLDOMImplementation_INTERFACE_DEFINED__
 7817#define __IXMLDOMImplementation_INTERFACE_DEFINED__
 7818
 7819DEFINE_GUID(IID_IXMLDOMImplementation, 0x2933bf8f, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 7820#if defined(__cplusplus) && !defined(CINTERFACE)
 7821MIDL_INTERFACE("2933bf8f-7b36-11d2-b20e-00c04f983e60")
 7822IXMLDOMImplementation : public IDispatch
 7823{
 7824    virtual HRESULT STDMETHODCALLTYPE hasFeature(
 7825        BSTR feature,
 7826        BSTR version,
 7827        VARIANT_BOOL *pbool) = 0;
 7828
 7829};
 7830#ifdef __CRT_UUID_DECL
 7831__CRT_UUID_DECL(IXMLDOMImplementation, 0x2933bf8f, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 7832#endif
 7833#else
 7834typedef struct IXMLDOMImplementationVtbl {
 7835    BEGIN_INTERFACE
 7836
 7837    /*** IUnknown methods ***/
 7838    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7839        IXMLDOMImplementation *This,
 7840        REFIID riid,
 7841        void **ppvObject);
 7842
 7843    ULONG (STDMETHODCALLTYPE *AddRef)(
 7844        IXMLDOMImplementation *This);
 7845
 7846    ULONG (STDMETHODCALLTYPE *Release)(
 7847        IXMLDOMImplementation *This);
 7848
 7849    /*** IDispatch methods ***/
 7850    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 7851        IXMLDOMImplementation *This,
 7852        UINT *pctinfo);
 7853
 7854    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 7855        IXMLDOMImplementation *This,
 7856        UINT iTInfo,
 7857        LCID lcid,
 7858        ITypeInfo **ppTInfo);
 7859
 7860    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 7861        IXMLDOMImplementation *This,
 7862        REFIID riid,
 7863        LPOLESTR *rgszNames,
 7864        UINT cNames,
 7865        LCID lcid,
 7866        DISPID *rgDispId);
 7867
 7868    HRESULT (STDMETHODCALLTYPE *Invoke)(
 7869        IXMLDOMImplementation *This,
 7870        DISPID dispIdMember,
 7871        REFIID riid,
 7872        LCID lcid,
 7873        WORD wFlags,
 7874        DISPPARAMS *pDispParams,
 7875        VARIANT *pVarResult,
 7876        EXCEPINFO *pExcepInfo,
 7877        UINT *puArgErr);
 7878
 7879    /*** IXMLDOMImplementation methods ***/
 7880    HRESULT (STDMETHODCALLTYPE *hasFeature)(
 7881        IXMLDOMImplementation *This,
 7882        BSTR feature,
 7883        BSTR version,
 7884        VARIANT_BOOL *pbool);
 7885
 7886    END_INTERFACE
 7887} IXMLDOMImplementationVtbl;
 7888
 7889interface IXMLDOMImplementation {
 7890    CONST_VTBL IXMLDOMImplementationVtbl* lpVtbl;
 7891};
 7892
 7893#ifdef COBJMACROS
 7894#ifndef WIDL_C_INLINE_WRAPPERS
 7895/*** IUnknown methods ***/
 7896#define IXMLDOMImplementation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7897#define IXMLDOMImplementation_AddRef(This) (This)->lpVtbl->AddRef(This)
 7898#define IXMLDOMImplementation_Release(This) (This)->lpVtbl->Release(This)
 7899/*** IDispatch methods ***/
 7900#define IXMLDOMImplementation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 7901#define IXMLDOMImplementation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 7902#define IXMLDOMImplementation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 7903#define IXMLDOMImplementation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 7904/*** IXMLDOMImplementation methods ***/
 7905#define IXMLDOMImplementation_hasFeature(This,feature,version,pbool) (This)->lpVtbl->hasFeature(This,feature,version,pbool)
 7906#else
 7907/*** IUnknown methods ***/
 7908static inline HRESULT IXMLDOMImplementation_QueryInterface(IXMLDOMImplementation* This,REFIID riid,void **ppvObject) {
 7909    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7910}
 7911static inline ULONG IXMLDOMImplementation_AddRef(IXMLDOMImplementation* This) {
 7912    return This->lpVtbl->AddRef(This);
 7913}
 7914static inline ULONG IXMLDOMImplementation_Release(IXMLDOMImplementation* This) {
 7915    return This->lpVtbl->Release(This);
 7916}
 7917/*** IDispatch methods ***/
 7918static inline HRESULT IXMLDOMImplementation_GetTypeInfoCount(IXMLDOMImplementation* This,UINT *pctinfo) {
 7919    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 7920}
 7921static inline HRESULT IXMLDOMImplementation_GetTypeInfo(IXMLDOMImplementation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 7922    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 7923}
 7924static inline HRESULT IXMLDOMImplementation_GetIDsOfNames(IXMLDOMImplementation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 7925    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 7926}
 7927static inline HRESULT IXMLDOMImplementation_Invoke(IXMLDOMImplementation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 7928    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 7929}
 7930/*** IXMLDOMImplementation methods ***/
 7931static inline HRESULT IXMLDOMImplementation_hasFeature(IXMLDOMImplementation* This,BSTR feature,BSTR version,VARIANT_BOOL *pbool) {
 7932    return This->lpVtbl->hasFeature(This,feature,version,pbool);
 7933}
 7934#endif
 7935#endif
 7936
 7937#endif
 7938
 7939
 7940#endif  /* __IXMLDOMImplementation_INTERFACE_DEFINED__ */
 7941
 7942/*****************************************************************************
 7943 * IXMLDOMParseError interface
 7944 */
 7945#ifndef __IXMLDOMParseError_INTERFACE_DEFINED__
 7946#define __IXMLDOMParseError_INTERFACE_DEFINED__
 7947
 7948DEFINE_GUID(IID_IXMLDOMParseError, 0x3efaa426, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
 7949#if defined(__cplusplus) && !defined(CINTERFACE)
 7950MIDL_INTERFACE("3efaa426-272f-11d2-836f-0000f87a7782")
 7951IXMLDOMParseError : public IDispatch
 7952{
 7953    virtual HRESULT STDMETHODCALLTYPE get_errorCode(
 7954        LONG *errCode) = 0;
 7955
 7956    virtual HRESULT STDMETHODCALLTYPE get_url(
 7957        BSTR *p) = 0;
 7958
 7959    virtual HRESULT STDMETHODCALLTYPE get_reason(
 7960        BSTR *p) = 0;
 7961
 7962    virtual HRESULT STDMETHODCALLTYPE get_srcText(
 7963        BSTR *p) = 0;
 7964
 7965    virtual HRESULT STDMETHODCALLTYPE get_line(
 7966        LONG *lineNo) = 0;
 7967
 7968    virtual HRESULT STDMETHODCALLTYPE get_linepos(
 7969        LONG *linePos) = 0;
 7970
 7971    virtual HRESULT STDMETHODCALLTYPE get_filepos(
 7972        LONG *filePos) = 0;
 7973
 7974};
 7975#ifdef __CRT_UUID_DECL
 7976__CRT_UUID_DECL(IXMLDOMParseError, 0x3efaa426, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
 7977#endif
 7978#else
 7979typedef struct IXMLDOMParseErrorVtbl {
 7980    BEGIN_INTERFACE
 7981
 7982    /*** IUnknown methods ***/
 7983    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7984        IXMLDOMParseError *This,
 7985        REFIID riid,
 7986        void **ppvObject);
 7987
 7988    ULONG (STDMETHODCALLTYPE *AddRef)(
 7989        IXMLDOMParseError *This);
 7990
 7991    ULONG (STDMETHODCALLTYPE *Release)(
 7992        IXMLDOMParseError *This);
 7993
 7994    /*** IDispatch methods ***/
 7995    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 7996        IXMLDOMParseError *This,
 7997        UINT *pctinfo);
 7998
 7999    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8000        IXMLDOMParseError *This,
 8001        UINT iTInfo,
 8002        LCID lcid,
 8003        ITypeInfo **ppTInfo);
 8004
 8005    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8006        IXMLDOMParseError *This,
 8007        REFIID riid,
 8008        LPOLESTR *rgszNames,
 8009        UINT cNames,
 8010        LCID lcid,
 8011        DISPID *rgDispId);
 8012
 8013    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8014        IXMLDOMParseError *This,
 8015        DISPID dispIdMember,
 8016        REFIID riid,
 8017        LCID lcid,
 8018        WORD wFlags,
 8019        DISPPARAMS *pDispParams,
 8020        VARIANT *pVarResult,
 8021        EXCEPINFO *pExcepInfo,
 8022        UINT *puArgErr);
 8023
 8024    /*** IXMLDOMParseError methods ***/
 8025    HRESULT (STDMETHODCALLTYPE *get_errorCode)(
 8026        IXMLDOMParseError *This,
 8027        LONG *errCode);
 8028
 8029    HRESULT (STDMETHODCALLTYPE *get_url)(
 8030        IXMLDOMParseError *This,
 8031        BSTR *p);
 8032
 8033    HRESULT (STDMETHODCALLTYPE *get_reason)(
 8034        IXMLDOMParseError *This,
 8035        BSTR *p);
 8036
 8037    HRESULT (STDMETHODCALLTYPE *get_srcText)(
 8038        IXMLDOMParseError *This,
 8039        BSTR *p);
 8040
 8041    HRESULT (STDMETHODCALLTYPE *get_line)(
 8042        IXMLDOMParseError *This,
 8043        LONG *lineNo);
 8044
 8045    HRESULT (STDMETHODCALLTYPE *get_linepos)(
 8046        IXMLDOMParseError *This,
 8047        LONG *linePos);
 8048
 8049    HRESULT (STDMETHODCALLTYPE *get_filepos)(
 8050        IXMLDOMParseError *This,
 8051        LONG *filePos);
 8052
 8053    END_INTERFACE
 8054} IXMLDOMParseErrorVtbl;
 8055
 8056interface IXMLDOMParseError {
 8057    CONST_VTBL IXMLDOMParseErrorVtbl* lpVtbl;
 8058};
 8059
 8060#ifdef COBJMACROS
 8061#ifndef WIDL_C_INLINE_WRAPPERS
 8062/*** IUnknown methods ***/
 8063#define IXMLDOMParseError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8064#define IXMLDOMParseError_AddRef(This) (This)->lpVtbl->AddRef(This)
 8065#define IXMLDOMParseError_Release(This) (This)->lpVtbl->Release(This)
 8066/*** IDispatch methods ***/
 8067#define IXMLDOMParseError_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8068#define IXMLDOMParseError_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8069#define IXMLDOMParseError_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8070#define IXMLDOMParseError_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8071/*** IXMLDOMParseError methods ***/
 8072#define IXMLDOMParseError_get_errorCode(This,errCode) (This)->lpVtbl->get_errorCode(This,errCode)
 8073#define IXMLDOMParseError_get_url(This,p) (This)->lpVtbl->get_url(This,p)
 8074#define IXMLDOMParseError_get_reason(This,p) (This)->lpVtbl->get_reason(This,p)
 8075#define IXMLDOMParseError_get_srcText(This,p) (This)->lpVtbl->get_srcText(This,p)
 8076#define IXMLDOMParseError_get_line(This,lineNo) (This)->lpVtbl->get_line(This,lineNo)
 8077#define IXMLDOMParseError_get_linepos(This,linePos) (This)->lpVtbl->get_linepos(This,linePos)
 8078#define IXMLDOMParseError_get_filepos(This,filePos) (This)->lpVtbl->get_filepos(This,filePos)
 8079#else
 8080/*** IUnknown methods ***/
 8081static inline HRESULT IXMLDOMParseError_QueryInterface(IXMLDOMParseError* This,REFIID riid,void **ppvObject) {
 8082    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8083}
 8084static inline ULONG IXMLDOMParseError_AddRef(IXMLDOMParseError* This) {
 8085    return This->lpVtbl->AddRef(This);
 8086}
 8087static inline ULONG IXMLDOMParseError_Release(IXMLDOMParseError* This) {
 8088    return This->lpVtbl->Release(This);
 8089}
 8090/*** IDispatch methods ***/
 8091static inline HRESULT IXMLDOMParseError_GetTypeInfoCount(IXMLDOMParseError* This,UINT *pctinfo) {
 8092    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8093}
 8094static inline HRESULT IXMLDOMParseError_GetTypeInfo(IXMLDOMParseError* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8095    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8096}
 8097static inline HRESULT IXMLDOMParseError_GetIDsOfNames(IXMLDOMParseError* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8098    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8099}
 8100static inline HRESULT IXMLDOMParseError_Invoke(IXMLDOMParseError* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8101    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8102}
 8103/*** IXMLDOMParseError methods ***/
 8104static inline HRESULT IXMLDOMParseError_get_errorCode(IXMLDOMParseError* This,LONG *errCode) {
 8105    return This->lpVtbl->get_errorCode(This,errCode);
 8106}
 8107static inline HRESULT IXMLDOMParseError_get_url(IXMLDOMParseError* This,BSTR *p) {
 8108    return This->lpVtbl->get_url(This,p);
 8109}
 8110static inline HRESULT IXMLDOMParseError_get_reason(IXMLDOMParseError* This,BSTR *p) {
 8111    return This->lpVtbl->get_reason(This,p);
 8112}
 8113static inline HRESULT IXMLDOMParseError_get_srcText(IXMLDOMParseError* This,BSTR *p) {
 8114    return This->lpVtbl->get_srcText(This,p);
 8115}
 8116static inline HRESULT IXMLDOMParseError_get_line(IXMLDOMParseError* This,LONG *lineNo) {
 8117    return This->lpVtbl->get_line(This,lineNo);
 8118}
 8119static inline HRESULT IXMLDOMParseError_get_linepos(IXMLDOMParseError* This,LONG *linePos) {
 8120    return This->lpVtbl->get_linepos(This,linePos);
 8121}
 8122static inline HRESULT IXMLDOMParseError_get_filepos(IXMLDOMParseError* This,LONG *filePos) {
 8123    return This->lpVtbl->get_filepos(This,filePos);
 8124}
 8125#endif
 8126#endif
 8127
 8128#endif
 8129
 8130
 8131#endif  /* __IXMLDOMParseError_INTERFACE_DEFINED__ */
 8132
 8133/*****************************************************************************
 8134 * XMLDOMDocumentEvents dispinterface
 8135 */
 8136#ifndef __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
 8137#define __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
 8138
 8139DEFINE_GUID(DIID_XMLDOMDocumentEvents, 0x3efaa427, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
 8140#if defined(__cplusplus) && !defined(CINTERFACE)
 8141MIDL_INTERFACE("3efaa427-272f-11d2-836f-0000f87a7782")
 8142XMLDOMDocumentEvents : public IDispatch
 8143{
 8144};
 8145#ifdef __CRT_UUID_DECL
 8146__CRT_UUID_DECL(XMLDOMDocumentEvents, 0x3efaa427, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
 8147#endif
 8148#else
 8149typedef struct XMLDOMDocumentEventsVtbl {
 8150    BEGIN_INTERFACE
 8151
 8152    /*** IUnknown methods ***/
 8153    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8154        XMLDOMDocumentEvents *This,
 8155        REFIID riid,
 8156        void **ppvObject);
 8157
 8158    ULONG (STDMETHODCALLTYPE *AddRef)(
 8159        XMLDOMDocumentEvents *This);
 8160
 8161    ULONG (STDMETHODCALLTYPE *Release)(
 8162        XMLDOMDocumentEvents *This);
 8163
 8164    /*** IDispatch methods ***/
 8165    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8166        XMLDOMDocumentEvents *This,
 8167        UINT *pctinfo);
 8168
 8169    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8170        XMLDOMDocumentEvents *This,
 8171        UINT iTInfo,
 8172        LCID lcid,
 8173        ITypeInfo **ppTInfo);
 8174
 8175    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8176        XMLDOMDocumentEvents *This,
 8177        REFIID riid,
 8178        LPOLESTR *rgszNames,
 8179        UINT cNames,
 8180        LCID lcid,
 8181        DISPID *rgDispId);
 8182
 8183    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8184        XMLDOMDocumentEvents *This,
 8185        DISPID dispIdMember,
 8186        REFIID riid,
 8187        LCID lcid,
 8188        WORD wFlags,
 8189        DISPPARAMS *pDispParams,
 8190        VARIANT *pVarResult,
 8191        EXCEPINFO *pExcepInfo,
 8192        UINT *puArgErr);
 8193
 8194    END_INTERFACE
 8195} XMLDOMDocumentEventsVtbl;
 8196
 8197interface XMLDOMDocumentEvents {
 8198    CONST_VTBL XMLDOMDocumentEventsVtbl* lpVtbl;
 8199};
 8200
 8201#ifdef COBJMACROS
 8202#ifndef WIDL_C_INLINE_WRAPPERS
 8203/*** IUnknown methods ***/
 8204#define XMLDOMDocumentEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8205#define XMLDOMDocumentEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
 8206#define XMLDOMDocumentEvents_Release(This) (This)->lpVtbl->Release(This)
 8207/*** IDispatch methods ***/
 8208#define XMLDOMDocumentEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8209#define XMLDOMDocumentEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8210#define XMLDOMDocumentEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8211#define XMLDOMDocumentEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8212#else
 8213/*** IUnknown methods ***/
 8214static inline HRESULT XMLDOMDocumentEvents_QueryInterface(XMLDOMDocumentEvents* This,REFIID riid,void **ppvObject) {
 8215    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8216}
 8217static inline ULONG XMLDOMDocumentEvents_AddRef(XMLDOMDocumentEvents* This) {
 8218    return This->lpVtbl->AddRef(This);
 8219}
 8220static inline ULONG XMLDOMDocumentEvents_Release(XMLDOMDocumentEvents* This) {
 8221    return This->lpVtbl->Release(This);
 8222}
 8223/*** IDispatch methods ***/
 8224static inline HRESULT XMLDOMDocumentEvents_GetTypeInfoCount(XMLDOMDocumentEvents* This,UINT *pctinfo) {
 8225    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8226}
 8227static inline HRESULT XMLDOMDocumentEvents_GetTypeInfo(XMLDOMDocumentEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8228    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8229}
 8230static inline HRESULT XMLDOMDocumentEvents_GetIDsOfNames(XMLDOMDocumentEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8231    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8232}
 8233static inline HRESULT XMLDOMDocumentEvents_Invoke(XMLDOMDocumentEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8234    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8235}
 8236#endif
 8237#endif
 8238
 8239#endif
 8240
 8241#endif  /* __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__ */
 8242
 8243/*****************************************************************************
 8244 * DOMDocument coclass
 8245 */
 8246
 8247DEFINE_GUID(CLSID_DOMDocument, 0x2933bf90, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 8248
 8249#ifdef __cplusplus
 8250class DECLSPEC_UUID("2933bf90-7b36-11d2-b20e-00c04f983e60") DOMDocument;
 8251#ifdef __CRT_UUID_DECL
 8252__CRT_UUID_DECL(DOMDocument, 0x2933bf90, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 8253#endif
 8254#endif
 8255
 8256/*****************************************************************************
 8257 * DOMFreeThreadedDocument coclass
 8258 */
 8259
 8260DEFINE_GUID(CLSID_DOMFreeThreadedDocument, 0x2933bf91, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 8261
 8262#ifdef __cplusplus
 8263class DECLSPEC_UUID("2933bf91-7b36-11d2-b20e-00c04f983e60") DOMFreeThreadedDocument;
 8264#ifdef __CRT_UUID_DECL
 8265__CRT_UUID_DECL(DOMFreeThreadedDocument, 0x2933bf91, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 8266#endif
 8267#endif
 8268
 8269/*****************************************************************************
 8270 * IXMLHttpRequest interface
 8271 */
 8272#ifndef __IXMLHttpRequest_INTERFACE_DEFINED__
 8273#define __IXMLHttpRequest_INTERFACE_DEFINED__
 8274
 8275DEFINE_GUID(IID_IXMLHttpRequest, 0xed8c108d, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8);
 8276#if defined(__cplusplus) && !defined(CINTERFACE)
 8277MIDL_INTERFACE("ed8c108d-4349-11d2-91a4-00c04f7969e8")
 8278IXMLHttpRequest : public IDispatch
 8279{
 8280    virtual HRESULT STDMETHODCALLTYPE open(
 8281        BSTR bstrMethod,
 8282        BSTR bstrUrl,
 8283        VARIANT varAsync,
 8284        VARIANT varUser,
 8285        VARIANT varPassword) = 0;
 8286
 8287    virtual HRESULT STDMETHODCALLTYPE setRequestHeader(
 8288        BSTR bstrHeader,
 8289        BSTR bstrValue) = 0;
 8290
 8291    virtual HRESULT STDMETHODCALLTYPE getResponseHeader(
 8292        BSTR bstrHeader,
 8293        BSTR *pbstrValue) = 0;
 8294
 8295    virtual HRESULT STDMETHODCALLTYPE getAllResponseHeaders(
 8296        BSTR *pbstrHeaders) = 0;
 8297
 8298    virtual HRESULT STDMETHODCALLTYPE send(
 8299        VARIANT varBody) = 0;
 8300
 8301    virtual HRESULT STDMETHODCALLTYPE abort(
 8302        ) = 0;
 8303
 8304    virtual HRESULT STDMETHODCALLTYPE get_status(
 8305        LONG *plStatus) = 0;
 8306
 8307    virtual HRESULT STDMETHODCALLTYPE get_statusText(
 8308        BSTR *bstrStatus) = 0;
 8309
 8310    virtual HRESULT STDMETHODCALLTYPE get_responseXML(
 8311        IDispatch **ppBody) = 0;
 8312
 8313    virtual HRESULT STDMETHODCALLTYPE get_responseText(
 8314        BSTR *pbstrBody) = 0;
 8315
 8316    virtual HRESULT STDMETHODCALLTYPE get_responseBody(
 8317        VARIANT *pvarBody) = 0;
 8318
 8319    virtual HRESULT STDMETHODCALLTYPE get_responseStream(
 8320        VARIANT *pvarBody) = 0;
 8321
 8322    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 8323        LONG *plState) = 0;
 8324
 8325    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
 8326        IDispatch *pReadyStateSink) = 0;
 8327
 8328};
 8329#ifdef __CRT_UUID_DECL
 8330__CRT_UUID_DECL(IXMLHttpRequest, 0xed8c108d, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8)
 8331#endif
 8332#else
 8333typedef struct IXMLHttpRequestVtbl {
 8334    BEGIN_INTERFACE
 8335
 8336    /*** IUnknown methods ***/
 8337    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8338        IXMLHttpRequest *This,
 8339        REFIID riid,
 8340        void **ppvObject);
 8341
 8342    ULONG (STDMETHODCALLTYPE *AddRef)(
 8343        IXMLHttpRequest *This);
 8344
 8345    ULONG (STDMETHODCALLTYPE *Release)(
 8346        IXMLHttpRequest *This);
 8347
 8348    /*** IDispatch methods ***/
 8349    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8350        IXMLHttpRequest *This,
 8351        UINT *pctinfo);
 8352
 8353    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8354        IXMLHttpRequest *This,
 8355        UINT iTInfo,
 8356        LCID lcid,
 8357        ITypeInfo **ppTInfo);
 8358
 8359    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8360        IXMLHttpRequest *This,
 8361        REFIID riid,
 8362        LPOLESTR *rgszNames,
 8363        UINT cNames,
 8364        LCID lcid,
 8365        DISPID *rgDispId);
 8366
 8367    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8368        IXMLHttpRequest *This,
 8369        DISPID dispIdMember,
 8370        REFIID riid,
 8371        LCID lcid,
 8372        WORD wFlags,
 8373        DISPPARAMS *pDispParams,
 8374        VARIANT *pVarResult,
 8375        EXCEPINFO *pExcepInfo,
 8376        UINT *puArgErr);
 8377
 8378    /*** IXMLHttpRequest methods ***/
 8379    HRESULT (STDMETHODCALLTYPE *open)(
 8380        IXMLHttpRequest *This,
 8381        BSTR bstrMethod,
 8382        BSTR bstrUrl,
 8383        VARIANT varAsync,
 8384        VARIANT varUser,
 8385        VARIANT varPassword);
 8386
 8387    HRESULT (STDMETHODCALLTYPE *setRequestHeader)(
 8388        IXMLHttpRequest *This,
 8389        BSTR bstrHeader,
 8390        BSTR bstrValue);
 8391
 8392    HRESULT (STDMETHODCALLTYPE *getResponseHeader)(
 8393        IXMLHttpRequest *This,
 8394        BSTR bstrHeader,
 8395        BSTR *pbstrValue);
 8396
 8397    HRESULT (STDMETHODCALLTYPE *getAllResponseHeaders)(
 8398        IXMLHttpRequest *This,
 8399        BSTR *pbstrHeaders);
 8400
 8401    HRESULT (STDMETHODCALLTYPE *send)(
 8402        IXMLHttpRequest *This,
 8403        VARIANT varBody);
 8404
 8405    HRESULT (STDMETHODCALLTYPE *abort)(
 8406        IXMLHttpRequest *This);
 8407
 8408    HRESULT (STDMETHODCALLTYPE *get_status)(
 8409        IXMLHttpRequest *This,
 8410        LONG *plStatus);
 8411
 8412    HRESULT (STDMETHODCALLTYPE *get_statusText)(
 8413        IXMLHttpRequest *This,
 8414        BSTR *bstrStatus);
 8415
 8416    HRESULT (STDMETHODCALLTYPE *get_responseXML)(
 8417        IXMLHttpRequest *This,
 8418        IDispatch **ppBody);
 8419
 8420    HRESULT (STDMETHODCALLTYPE *get_responseText)(
 8421        IXMLHttpRequest *This,
 8422        BSTR *pbstrBody);
 8423
 8424    HRESULT (STDMETHODCALLTYPE *get_responseBody)(
 8425        IXMLHttpRequest *This,
 8426        VARIANT *pvarBody);
 8427
 8428    HRESULT (STDMETHODCALLTYPE *get_responseStream)(
 8429        IXMLHttpRequest *This,
 8430        VARIANT *pvarBody);
 8431
 8432    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 8433        IXMLHttpRequest *This,
 8434        LONG *plState);
 8435
 8436    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
 8437        IXMLHttpRequest *This,
 8438        IDispatch *pReadyStateSink);
 8439
 8440    END_INTERFACE
 8441} IXMLHttpRequestVtbl;
 8442
 8443interface IXMLHttpRequest {
 8444    CONST_VTBL IXMLHttpRequestVtbl* lpVtbl;
 8445};
 8446
 8447#ifdef COBJMACROS
 8448#ifndef WIDL_C_INLINE_WRAPPERS
 8449/*** IUnknown methods ***/
 8450#define IXMLHttpRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8451#define IXMLHttpRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
 8452#define IXMLHttpRequest_Release(This) (This)->lpVtbl->Release(This)
 8453/*** IDispatch methods ***/
 8454#define IXMLHttpRequest_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8455#define IXMLHttpRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8456#define IXMLHttpRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8457#define IXMLHttpRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8458/*** IXMLHttpRequest methods ***/
 8459#define IXMLHttpRequest_open(This,bstrMethod,bstrUrl,varAsync,varUser,varPassword) (This)->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,varUser,varPassword)
 8460#define IXMLHttpRequest_setRequestHeader(This,bstrHeader,bstrValue) (This)->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue)
 8461#define IXMLHttpRequest_getResponseHeader(This,bstrHeader,pbstrValue) (This)->lpVtbl->getResponseHeader(This,bstrHeader,pbstrValue)
 8462#define IXMLHttpRequest_getAllResponseHeaders(This,pbstrHeaders) (This)->lpVtbl->getAllResponseHeaders(This,pbstrHeaders)
 8463#define IXMLHttpRequest_send(This,varBody) (This)->lpVtbl->send(This,varBody)
 8464#define IXMLHttpRequest_abort(This) (This)->lpVtbl->abort(This)
 8465#define IXMLHttpRequest_get_status(This,plStatus) (This)->lpVtbl->get_status(This,plStatus)
 8466#define IXMLHttpRequest_get_statusText(This,bstrStatus) (This)->lpVtbl->get_statusText(This,bstrStatus)
 8467#define IXMLHttpRequest_get_responseXML(This,ppBody) (This)->lpVtbl->get_responseXML(This,ppBody)
 8468#define IXMLHttpRequest_get_responseText(This,pbstrBody) (This)->lpVtbl->get_responseText(This,pbstrBody)
 8469#define IXMLHttpRequest_get_responseBody(This,pvarBody) (This)->lpVtbl->get_responseBody(This,pvarBody)
 8470#define IXMLHttpRequest_get_responseStream(This,pvarBody) (This)->lpVtbl->get_responseStream(This,pvarBody)
 8471#define IXMLHttpRequest_get_readyState(This,plState) (This)->lpVtbl->get_readyState(This,plState)
 8472#define IXMLHttpRequest_put_onreadystatechange(This,pReadyStateSink) (This)->lpVtbl->put_onreadystatechange(This,pReadyStateSink)
 8473#else
 8474/*** IUnknown methods ***/
 8475static inline HRESULT IXMLHttpRequest_QueryInterface(IXMLHttpRequest* This,REFIID riid,void **ppvObject) {
 8476    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8477}
 8478static inline ULONG IXMLHttpRequest_AddRef(IXMLHttpRequest* This) {
 8479    return This->lpVtbl->AddRef(This);
 8480}
 8481static inline ULONG IXMLHttpRequest_Release(IXMLHttpRequest* This) {
 8482    return This->lpVtbl->Release(This);
 8483}
 8484/*** IDispatch methods ***/
 8485static inline HRESULT IXMLHttpRequest_GetTypeInfoCount(IXMLHttpRequest* This,UINT *pctinfo) {
 8486    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8487}
 8488static inline HRESULT IXMLHttpRequest_GetTypeInfo(IXMLHttpRequest* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8489    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8490}
 8491static inline HRESULT IXMLHttpRequest_GetIDsOfNames(IXMLHttpRequest* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8492    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8493}
 8494static inline HRESULT IXMLHttpRequest_Invoke(IXMLHttpRequest* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8495    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8496}
 8497/*** IXMLHttpRequest methods ***/
 8498static inline HRESULT IXMLHttpRequest_open(IXMLHttpRequest* This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT varUser,VARIANT varPassword) {
 8499    return This->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,varUser,varPassword);
 8500}
 8501static inline HRESULT IXMLHttpRequest_setRequestHeader(IXMLHttpRequest* This,BSTR bstrHeader,BSTR bstrValue) {
 8502    return This->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue);
 8503}
 8504static inline HRESULT IXMLHttpRequest_getResponseHeader(IXMLHttpRequest* This,BSTR bstrHeader,BSTR *pbstrValue) {
 8505    return This->lpVtbl->getResponseHeader(This,bstrHeader,pbstrValue);
 8506}
 8507static inline HRESULT IXMLHttpRequest_getAllResponseHeaders(IXMLHttpRequest* This,BSTR *pbstrHeaders) {
 8508    return This->lpVtbl->getAllResponseHeaders(This,pbstrHeaders);
 8509}
 8510static inline HRESULT IXMLHttpRequest_send(IXMLHttpRequest* This,VARIANT varBody) {
 8511    return This->lpVtbl->send(This,varBody);
 8512}
 8513static inline HRESULT IXMLHttpRequest_abort(IXMLHttpRequest* This) {
 8514    return This->lpVtbl->abort(This);
 8515}
 8516static inline HRESULT IXMLHttpRequest_get_status(IXMLHttpRequest* This,LONG *plStatus) {
 8517    return This->lpVtbl->get_status(This,plStatus);
 8518}
 8519static inline HRESULT IXMLHttpRequest_get_statusText(IXMLHttpRequest* This,BSTR *bstrStatus) {
 8520    return This->lpVtbl->get_statusText(This,bstrStatus);
 8521}
 8522static inline HRESULT IXMLHttpRequest_get_responseXML(IXMLHttpRequest* This,IDispatch **ppBody) {
 8523    return This->lpVtbl->get_responseXML(This,ppBody);
 8524}
 8525static inline HRESULT IXMLHttpRequest_get_responseText(IXMLHttpRequest* This,BSTR *pbstrBody) {
 8526    return This->lpVtbl->get_responseText(This,pbstrBody);
 8527}
 8528static inline HRESULT IXMLHttpRequest_get_responseBody(IXMLHttpRequest* This,VARIANT *pvarBody) {
 8529    return This->lpVtbl->get_responseBody(This,pvarBody);
 8530}
 8531static inline HRESULT IXMLHttpRequest_get_responseStream(IXMLHttpRequest* This,VARIANT *pvarBody) {
 8532    return This->lpVtbl->get_responseStream(This,pvarBody);
 8533}
 8534static inline HRESULT IXMLHttpRequest_get_readyState(IXMLHttpRequest* This,LONG *plState) {
 8535    return This->lpVtbl->get_readyState(This,plState);
 8536}
 8537static inline HRESULT IXMLHttpRequest_put_onreadystatechange(IXMLHttpRequest* This,IDispatch *pReadyStateSink) {
 8538    return This->lpVtbl->put_onreadystatechange(This,pReadyStateSink);
 8539}
 8540#endif
 8541#endif
 8542
 8543#endif
 8544
 8545
 8546#endif  /* __IXMLHttpRequest_INTERFACE_DEFINED__ */
 8547
 8548/*****************************************************************************
 8549 * XMLHTTPRequest coclass
 8550 */
 8551
 8552DEFINE_GUID(CLSID_XMLHTTPRequest, 0xed8c108e, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8);
 8553
 8554#ifdef __cplusplus
 8555class DECLSPEC_UUID("ed8c108e-4349-11d2-91a4-00c04f7969e8") XMLHTTPRequest;
 8556#ifdef __CRT_UUID_DECL
 8557__CRT_UUID_DECL(XMLHTTPRequest, 0xed8c108e, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8)
 8558#endif
 8559#endif
 8560
 8561#ifndef __IXMLDOMDocument_FWD_DEFINED__
 8562#define __IXMLDOMDocument_FWD_DEFINED__
 8563typedef interface IXMLDOMDocument IXMLDOMDocument;
 8564#ifdef __cplusplus
 8565interface IXMLDOMDocument;
 8566#endif /* __cplusplus */
 8567#endif
 8568
 8569/*****************************************************************************
 8570 * IXMLDSOControl interface
 8571 */
 8572#ifndef __IXMLDSOControl_INTERFACE_DEFINED__
 8573#define __IXMLDSOControl_INTERFACE_DEFINED__
 8574
 8575DEFINE_GUID(IID_IXMLDSOControl, 0x310afa62, 0x0575, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39);
 8576#if defined(__cplusplus) && !defined(CINTERFACE)
 8577MIDL_INTERFACE("310afa62-0575-11d2-9ca9-0060b0ec3d39")
 8578IXMLDSOControl : public IDispatch
 8579{
 8580    virtual HRESULT STDMETHODCALLTYPE get_XMLDocument(
 8581        IXMLDOMDocument **ppDoc) = 0;
 8582
 8583    virtual HRESULT STDMETHODCALLTYPE put_XMLDocument(
 8584        IXMLDOMDocument *ppDoc) = 0;
 8585
 8586    virtual HRESULT STDMETHODCALLTYPE get_JavaDSOCompatible(
 8587        WINBOOL *fJavaDSOCompatible) = 0;
 8588
 8589    virtual HRESULT STDMETHODCALLTYPE put_JavaDSOCompatible(
 8590        WINBOOL fJavaDSOCompatible) = 0;
 8591
 8592    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 8593        LONG *state) = 0;
 8594
 8595};
 8596#ifdef __CRT_UUID_DECL
 8597__CRT_UUID_DECL(IXMLDSOControl, 0x310afa62, 0x0575, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39)
 8598#endif
 8599#else
 8600typedef struct IXMLDSOControlVtbl {
 8601    BEGIN_INTERFACE
 8602
 8603    /*** IUnknown methods ***/
 8604    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8605        IXMLDSOControl *This,
 8606        REFIID riid,
 8607        void **ppvObject);
 8608
 8609    ULONG (STDMETHODCALLTYPE *AddRef)(
 8610        IXMLDSOControl *This);
 8611
 8612    ULONG (STDMETHODCALLTYPE *Release)(
 8613        IXMLDSOControl *This);
 8614
 8615    /*** IDispatch methods ***/
 8616    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8617        IXMLDSOControl *This,
 8618        UINT *pctinfo);
 8619
 8620    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8621        IXMLDSOControl *This,
 8622        UINT iTInfo,
 8623        LCID lcid,
 8624        ITypeInfo **ppTInfo);
 8625
 8626    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8627        IXMLDSOControl *This,
 8628        REFIID riid,
 8629        LPOLESTR *rgszNames,
 8630        UINT cNames,
 8631        LCID lcid,
 8632        DISPID *rgDispId);
 8633
 8634    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8635        IXMLDSOControl *This,
 8636        DISPID dispIdMember,
 8637        REFIID riid,
 8638        LCID lcid,
 8639        WORD wFlags,
 8640        DISPPARAMS *pDispParams,
 8641        VARIANT *pVarResult,
 8642        EXCEPINFO *pExcepInfo,
 8643        UINT *puArgErr);
 8644
 8645    /*** IXMLDSOControl methods ***/
 8646    HRESULT (STDMETHODCALLTYPE *get_XMLDocument)(
 8647        IXMLDSOControl *This,
 8648        IXMLDOMDocument **ppDoc);
 8649
 8650    HRESULT (STDMETHODCALLTYPE *put_XMLDocument)(
 8651        IXMLDSOControl *This,
 8652        IXMLDOMDocument *ppDoc);
 8653
 8654    HRESULT (STDMETHODCALLTYPE *get_JavaDSOCompatible)(
 8655        IXMLDSOControl *This,
 8656        WINBOOL *fJavaDSOCompatible);
 8657
 8658    HRESULT (STDMETHODCALLTYPE *put_JavaDSOCompatible)(
 8659        IXMLDSOControl *This,
 8660        WINBOOL fJavaDSOCompatible);
 8661
 8662    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 8663        IXMLDSOControl *This,
 8664        LONG *state);
 8665
 8666    END_INTERFACE
 8667} IXMLDSOControlVtbl;
 8668
 8669interface IXMLDSOControl {
 8670    CONST_VTBL IXMLDSOControlVtbl* lpVtbl;
 8671};
 8672
 8673#ifdef COBJMACROS
 8674#ifndef WIDL_C_INLINE_WRAPPERS
 8675/*** IUnknown methods ***/
 8676#define IXMLDSOControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8677#define IXMLDSOControl_AddRef(This) (This)->lpVtbl->AddRef(This)
 8678#define IXMLDSOControl_Release(This) (This)->lpVtbl->Release(This)
 8679/*** IDispatch methods ***/
 8680#define IXMLDSOControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8681#define IXMLDSOControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8682#define IXMLDSOControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8683#define IXMLDSOControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8684/*** IXMLDSOControl methods ***/
 8685#define IXMLDSOControl_get_XMLDocument(This,ppDoc) (This)->lpVtbl->get_XMLDocument(This,ppDoc)
 8686#define IXMLDSOControl_put_XMLDocument(This,ppDoc) (This)->lpVtbl->put_XMLDocument(This,ppDoc)
 8687#define IXMLDSOControl_get_JavaDSOCompatible(This,fJavaDSOCompatible) (This)->lpVtbl->get_JavaDSOCompatible(This,fJavaDSOCompatible)
 8688#define IXMLDSOControl_put_JavaDSOCompatible(This,fJavaDSOCompatible) (This)->lpVtbl->put_JavaDSOCompatible(This,fJavaDSOCompatible)
 8689#define IXMLDSOControl_get_readyState(This,state) (This)->lpVtbl->get_readyState(This,state)
 8690#else
 8691/*** IUnknown methods ***/
 8692static inline HRESULT IXMLDSOControl_QueryInterface(IXMLDSOControl* This,REFIID riid,void **ppvObject) {
 8693    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8694}
 8695static inline ULONG IXMLDSOControl_AddRef(IXMLDSOControl* This) {
 8696    return This->lpVtbl->AddRef(This);
 8697}
 8698static inline ULONG IXMLDSOControl_Release(IXMLDSOControl* This) {
 8699    return This->lpVtbl->Release(This);
 8700}
 8701/*** IDispatch methods ***/
 8702static inline HRESULT IXMLDSOControl_GetTypeInfoCount(IXMLDSOControl* This,UINT *pctinfo) {
 8703    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8704}
 8705static inline HRESULT IXMLDSOControl_GetTypeInfo(IXMLDSOControl* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8706    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8707}
 8708static inline HRESULT IXMLDSOControl_GetIDsOfNames(IXMLDSOControl* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8709    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8710}
 8711static inline HRESULT IXMLDSOControl_Invoke(IXMLDSOControl* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8712    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8713}
 8714/*** IXMLDSOControl methods ***/
 8715static inline HRESULT IXMLDSOControl_get_XMLDocument(IXMLDSOControl* This,IXMLDOMDocument **ppDoc) {
 8716    return This->lpVtbl->get_XMLDocument(This,ppDoc);
 8717}
 8718static inline HRESULT IXMLDSOControl_put_XMLDocument(IXMLDSOControl* This,IXMLDOMDocument *ppDoc) {
 8719    return This->lpVtbl->put_XMLDocument(This,ppDoc);
 8720}
 8721static inline HRESULT IXMLDSOControl_get_JavaDSOCompatible(IXMLDSOControl* This,WINBOOL *fJavaDSOCompatible) {
 8722    return This->lpVtbl->get_JavaDSOCompatible(This,fJavaDSOCompatible);
 8723}
 8724static inline HRESULT IXMLDSOControl_put_JavaDSOCompatible(IXMLDSOControl* This,WINBOOL fJavaDSOCompatible) {
 8725    return This->lpVtbl->put_JavaDSOCompatible(This,fJavaDSOCompatible);
 8726}
 8727static inline HRESULT IXMLDSOControl_get_readyState(IXMLDSOControl* This,LONG *state) {
 8728    return This->lpVtbl->get_readyState(This,state);
 8729}
 8730#endif
 8731#endif
 8732
 8733#endif
 8734
 8735
 8736#endif  /* __IXMLDSOControl_INTERFACE_DEFINED__ */
 8737
 8738/*****************************************************************************
 8739 * XMLDSOControl coclass
 8740 */
 8741
 8742DEFINE_GUID(CLSID_XMLDSOControl, 0x550dda30, 0x0541, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39);
 8743
 8744#ifdef __cplusplus
 8745class DECLSPEC_UUID("550dda30-0541-11d2-9ca9-0060b0ec3d39") XMLDSOControl;
 8746#ifdef __CRT_UUID_DECL
 8747__CRT_UUID_DECL(XMLDSOControl, 0x550dda30, 0x0541, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39)
 8748#endif
 8749#endif
 8750
 8751/*****************************************************************************
 8752 * IXMLElementCollection interface
 8753 */
 8754#ifndef __IXMLElementCollection_INTERFACE_DEFINED__
 8755#define __IXMLElementCollection_INTERFACE_DEFINED__
 8756
 8757DEFINE_GUID(IID_IXMLElementCollection, 0x65725580, 0x9b5d, 0x11d0, 0x9b,0xfe, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
 8758#if defined(__cplusplus) && !defined(CINTERFACE)
 8759MIDL_INTERFACE("65725580-9b5d-11d0-9bfe-00c04fc99c8e")
 8760IXMLElementCollection : public IDispatch
 8761{
 8762    virtual HRESULT STDMETHODCALLTYPE put_length(
 8763        LONG v) = 0;
 8764
 8765    virtual HRESULT STDMETHODCALLTYPE get_length(
 8766        LONG *p) = 0;
 8767
 8768    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
 8769        IUnknown **ppUnk) = 0;
 8770
 8771    virtual HRESULT STDMETHODCALLTYPE item(
 8772        VARIANT var1,
 8773        VARIANT var2,
 8774        IDispatch **ppDisp) = 0;
 8775
 8776};
 8777#ifdef __CRT_UUID_DECL
 8778__CRT_UUID_DECL(IXMLElementCollection, 0x65725580, 0x9b5d, 0x11d0, 0x9b,0xfe, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
 8779#endif
 8780#else
 8781typedef struct IXMLElementCollectionVtbl {
 8782    BEGIN_INTERFACE
 8783
 8784    /*** IUnknown methods ***/
 8785    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8786        IXMLElementCollection *This,
 8787        REFIID riid,
 8788        void **ppvObject);
 8789
 8790    ULONG (STDMETHODCALLTYPE *AddRef)(
 8791        IXMLElementCollection *This);
 8792
 8793    ULONG (STDMETHODCALLTYPE *Release)(
 8794        IXMLElementCollection *This);
 8795
 8796    /*** IDispatch methods ***/
 8797    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8798        IXMLElementCollection *This,
 8799        UINT *pctinfo);
 8800
 8801    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8802        IXMLElementCollection *This,
 8803        UINT iTInfo,
 8804        LCID lcid,
 8805        ITypeInfo **ppTInfo);
 8806
 8807    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8808        IXMLElementCollection *This,
 8809        REFIID riid,
 8810        LPOLESTR *rgszNames,
 8811        UINT cNames,
 8812        LCID lcid,
 8813        DISPID *rgDispId);
 8814
 8815    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8816        IXMLElementCollection *This,
 8817        DISPID dispIdMember,
 8818        REFIID riid,
 8819        LCID lcid,
 8820        WORD wFlags,
 8821        DISPPARAMS *pDispParams,
 8822        VARIANT *pVarResult,
 8823        EXCEPINFO *pExcepInfo,
 8824        UINT *puArgErr);
 8825
 8826    /*** IXMLElementCollection methods ***/
 8827    HRESULT (STDMETHODCALLTYPE *put_length)(
 8828        IXMLElementCollection *This,
 8829        LONG v);
 8830
 8831    HRESULT (STDMETHODCALLTYPE *get_length)(
 8832        IXMLElementCollection *This,
 8833        LONG *p);
 8834
 8835    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 8836        IXMLElementCollection *This,
 8837        IUnknown **ppUnk);
 8838
 8839    HRESULT (STDMETHODCALLTYPE *item)(
 8840        IXMLElementCollection *This,
 8841        VARIANT var1,
 8842        VARIANT var2,
 8843        IDispatch **ppDisp);
 8844
 8845    END_INTERFACE
 8846} IXMLElementCollectionVtbl;
 8847
 8848interface IXMLElementCollection {
 8849    CONST_VTBL IXMLElementCollectionVtbl* lpVtbl;
 8850};
 8851
 8852#ifdef COBJMACROS
 8853#ifndef WIDL_C_INLINE_WRAPPERS
 8854/*** IUnknown methods ***/
 8855#define IXMLElementCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8856#define IXMLElementCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 8857#define IXMLElementCollection_Release(This) (This)->lpVtbl->Release(This)
 8858/*** IDispatch methods ***/
 8859#define IXMLElementCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8860#define IXMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8861#define IXMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8862#define IXMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8863/*** IXMLElementCollection methods ***/
 8864#define IXMLElementCollection_put_length(This,v) (This)->lpVtbl->put_length(This,v)
 8865#define IXMLElementCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
 8866#define IXMLElementCollection_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 8867#define IXMLElementCollection_item(This,var1,var2,ppDisp) (This)->lpVtbl->item(This,var1,var2,ppDisp)
 8868#else
 8869/*** IUnknown methods ***/
 8870static inline HRESULT IXMLElementCollection_QueryInterface(IXMLElementCollection* This,REFIID riid,void **ppvObject) {
 8871    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8872}
 8873static inline ULONG IXMLElementCollection_AddRef(IXMLElementCollection* This) {
 8874    return This->lpVtbl->AddRef(This);
 8875}
 8876static inline ULONG IXMLElementCollection_Release(IXMLElementCollection* This) {
 8877    return This->lpVtbl->Release(This);
 8878}
 8879/*** IDispatch methods ***/
 8880static inline HRESULT IXMLElementCollection_GetTypeInfoCount(IXMLElementCollection* This,UINT *pctinfo) {
 8881    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8882}
 8883static inline HRESULT IXMLElementCollection_GetTypeInfo(IXMLElementCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8884    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8885}
 8886static inline HRESULT IXMLElementCollection_GetIDsOfNames(IXMLElementCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8887    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8888}
 8889static inline HRESULT IXMLElementCollection_Invoke(IXMLElementCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8890    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8891}
 8892/*** IXMLElementCollection methods ***/
 8893static inline HRESULT IXMLElementCollection_put_length(IXMLElementCollection* This,LONG v) {
 8894    return This->lpVtbl->put_length(This,v);
 8895}
 8896static inline HRESULT IXMLElementCollection_get_length(IXMLElementCollection* This,LONG *p) {
 8897    return This->lpVtbl->get_length(This,p);
 8898}
 8899static inline HRESULT IXMLElementCollection_get__newEnum(IXMLElementCollection* This,IUnknown **ppUnk) {
 8900    return This->lpVtbl->get__newEnum(This,ppUnk);
 8901}
 8902static inline HRESULT IXMLElementCollection_item(IXMLElementCollection* This,VARIANT var1,VARIANT var2,IDispatch **ppDisp) {
 8903    return This->lpVtbl->item(This,var1,var2,ppDisp);
 8904}
 8905#endif
 8906#endif
 8907
 8908#endif
 8909
 8910
 8911#endif  /* __IXMLElementCollection_INTERFACE_DEFINED__ */
 8912
 8913/*****************************************************************************
 8914 * IXMLElement interface
 8915 */
 8916#ifndef __IXMLElement_INTERFACE_DEFINED__
 8917#define __IXMLElement_INTERFACE_DEFINED__
 8918
 8919DEFINE_GUID(IID_IXMLElement, 0x3f7f31ac, 0xe15f, 0x11d0, 0x9c,0x25, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
 8920#if defined(__cplusplus) && !defined(CINTERFACE)
 8921MIDL_INTERFACE("3f7f31ac-e15f-11d0-9c25-00c04fc99c8e")
 8922IXMLElement : public IDispatch
 8923{
 8924    virtual HRESULT STDMETHODCALLTYPE get_tagName(
 8925        BSTR *p) = 0;
 8926
 8927    virtual HRESULT STDMETHODCALLTYPE put_tagName(
 8928        BSTR p) = 0;
 8929
 8930    virtual HRESULT STDMETHODCALLTYPE get_parent(
 8931        IXMLElement **parent) = 0;
 8932
 8933    virtual HRESULT STDMETHODCALLTYPE setAttribute(
 8934        BSTR strPropertyName,
 8935        VARIANT PropertyValue) = 0;
 8936
 8937    virtual HRESULT STDMETHODCALLTYPE getAttribute(
 8938        BSTR strPropertyName,
 8939        VARIANT *PropertyValue) = 0;
 8940
 8941    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
 8942        BSTR strPropertyName) = 0;
 8943
 8944    virtual HRESULT STDMETHODCALLTYPE get_children(
 8945        IXMLElementCollection **p) = 0;
 8946
 8947    virtual HRESULT STDMETHODCALLTYPE get_type(
 8948        LONG *p) = 0;
 8949
 8950    virtual HRESULT STDMETHODCALLTYPE get_text(
 8951        BSTR *p) = 0;
 8952
 8953    virtual HRESULT STDMETHODCALLTYPE put_text(
 8954        BSTR p) = 0;
 8955
 8956    virtual HRESULT STDMETHODCALLTYPE addChild(
 8957        IXMLElement *pChildElem,
 8958        LONG lIndex,
 8959        LONG lreserved) = 0;
 8960
 8961    virtual HRESULT STDMETHODCALLTYPE removeChild(
 8962        IXMLElement *pChildElem) = 0;
 8963
 8964};
 8965#ifdef __CRT_UUID_DECL
 8966__CRT_UUID_DECL(IXMLElement, 0x3f7f31ac, 0xe15f, 0x11d0, 0x9c,0x25, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
 8967#endif
 8968#else
 8969typedef struct IXMLElementVtbl {
 8970    BEGIN_INTERFACE
 8971
 8972    /*** IUnknown methods ***/
 8973    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8974        IXMLElement *This,
 8975        REFIID riid,
 8976        void **ppvObject);
 8977
 8978    ULONG (STDMETHODCALLTYPE *AddRef)(
 8979        IXMLElement *This);
 8980
 8981    ULONG (STDMETHODCALLTYPE *Release)(
 8982        IXMLElement *This);
 8983
 8984    /*** IDispatch methods ***/
 8985    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8986        IXMLElement *This,
 8987        UINT *pctinfo);
 8988
 8989    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8990        IXMLElement *This,
 8991        UINT iTInfo,
 8992        LCID lcid,
 8993        ITypeInfo **ppTInfo);
 8994
 8995    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8996        IXMLElement *This,
 8997        REFIID riid,
 8998        LPOLESTR *rgszNames,
 8999        UINT cNames,
 9000        LCID lcid,
 9001        DISPID *rgDispId);
 9002
 9003    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9004        IXMLElement *This,
 9005        DISPID dispIdMember,
 9006        REFIID riid,
 9007        LCID lcid,
 9008        WORD wFlags,
 9009        DISPPARAMS *pDispParams,
 9010        VARIANT *pVarResult,
 9011        EXCEPINFO *pExcepInfo,
 9012        UINT *puArgErr);
 9013
 9014    /*** IXMLElement methods ***/
 9015    HRESULT (STDMETHODCALLTYPE *get_tagName)(
 9016        IXMLElement *This,
 9017        BSTR *p);
 9018
 9019    HRESULT (STDMETHODCALLTYPE *put_tagName)(
 9020        IXMLElement *This,
 9021        BSTR p);
 9022
 9023    HRESULT (STDMETHODCALLTYPE *get_parent)(
 9024        IXMLElement *This,
 9025        IXMLElement **parent);
 9026
 9027    HRESULT (STDMETHODCALLTYPE *setAttribute)(
 9028        IXMLElement *This,
 9029        BSTR strPropertyName,
 9030        VARIANT PropertyValue);
 9031
 9032    HRESULT (STDMETHODCALLTYPE *getAttribute)(
 9033        IXMLElement *This,
 9034        BSTR strPropertyName,
 9035        VARIANT *PropertyValue);
 9036
 9037    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
 9038        IXMLElement *This,
 9039        BSTR strPropertyName);
 9040
 9041    HRESULT (STDMETHODCALLTYPE *get_children)(
 9042        IXMLElement *This,
 9043        IXMLElementCollection **p);
 9044
 9045    HRESULT (STDMETHODCALLTYPE *get_type)(
 9046        IXMLElement *This,
 9047        LONG *p);
 9048
 9049    HRESULT (STDMETHODCALLTYPE *get_text)(
 9050        IXMLElement *This,
 9051        BSTR *p);
 9052
 9053    HRESULT (STDMETHODCALLTYPE *put_text)(
 9054        IXMLElement *This,
 9055        BSTR p);
 9056
 9057    HRESULT (STDMETHODCALLTYPE *addChild)(
 9058        IXMLElement *This,
 9059        IXMLElement *pChildElem,
 9060        LONG lIndex,
 9061        LONG lreserved);
 9062
 9063    HRESULT (STDMETHODCALLTYPE *removeChild)(
 9064        IXMLElement *This,
 9065        IXMLElement *pChildElem);
 9066
 9067    END_INTERFACE
 9068} IXMLElementVtbl;
 9069
 9070interface IXMLElement {
 9071    CONST_VTBL IXMLElementVtbl* lpVtbl;
 9072};
 9073
 9074#ifdef COBJMACROS
 9075#ifndef WIDL_C_INLINE_WRAPPERS
 9076/*** IUnknown methods ***/
 9077#define IXMLElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9078#define IXMLElement_AddRef(This) (This)->lpVtbl->AddRef(This)
 9079#define IXMLElement_Release(This) (This)->lpVtbl->Release(This)
 9080/*** IDispatch methods ***/
 9081#define IXMLElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9082#define IXMLElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9083#define IXMLElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9084#define IXMLElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9085/*** IXMLElement methods ***/
 9086#define IXMLElement_get_tagName(This,p) (This)->lpVtbl->get_tagName(This,p)
 9087#define IXMLElement_put_tagName(This,p) (This)->lpVtbl->put_tagName(This,p)
 9088#define IXMLElement_get_parent(This,parent) (This)->lpVtbl->get_parent(This,parent)
 9089#define IXMLElement_setAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->setAttribute(This,strPropertyName,PropertyValue)
 9090#define IXMLElement_getAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->getAttribute(This,strPropertyName,PropertyValue)
 9091#define IXMLElement_removeAttribute(This,strPropertyName) (This)->lpVtbl->removeAttribute(This,strPropertyName)
 9092#define IXMLElement_get_children(This,p) (This)->lpVtbl->get_children(This,p)
 9093#define IXMLElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
 9094#define IXMLElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 9095#define IXMLElement_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 9096#define IXMLElement_addChild(This,pChildElem,lIndex,lreserved) (This)->lpVtbl->addChild(This,pChildElem,lIndex,lreserved)
 9097#define IXMLElement_removeChild(This,pChildElem) (This)->lpVtbl->removeChild(This,pChildElem)
 9098#else
 9099/*** IUnknown methods ***/
 9100static inline HRESULT IXMLElement_QueryInterface(IXMLElement* This,REFIID riid,void **ppvObject) {
 9101    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9102}
 9103static inline ULONG IXMLElement_AddRef(IXMLElement* This) {
 9104    return This->lpVtbl->AddRef(This);
 9105}
 9106static inline ULONG IXMLElement_Release(IXMLElement* This) {
 9107    return This->lpVtbl->Release(This);
 9108}
 9109/*** IDispatch methods ***/
 9110static inline HRESULT IXMLElement_GetTypeInfoCount(IXMLElement* This,UINT *pctinfo) {
 9111    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9112}
 9113static inline HRESULT IXMLElement_GetTypeInfo(IXMLElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9114    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9115}
 9116static inline HRESULT IXMLElement_GetIDsOfNames(IXMLElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9117    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9118}
 9119static inline HRESULT IXMLElement_Invoke(IXMLElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9120    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9121}
 9122/*** IXMLElement methods ***/
 9123static inline HRESULT IXMLElement_get_tagName(IXMLElement* This,BSTR *p) {
 9124    return This->lpVtbl->get_tagName(This,p);
 9125}
 9126static inline HRESULT IXMLElement_put_tagName(IXMLElement* This,BSTR p) {
 9127    return This->lpVtbl->put_tagName(This,p);
 9128}
 9129static inline HRESULT IXMLElement_get_parent(IXMLElement* This,IXMLElement **parent) {
 9130    return This->lpVtbl->get_parent(This,parent);
 9131}
 9132static inline HRESULT IXMLElement_setAttribute(IXMLElement* This,BSTR strPropertyName,VARIANT PropertyValue) {
 9133    return This->lpVtbl->setAttribute(This,strPropertyName,PropertyValue);
 9134}
 9135static inline HRESULT IXMLElement_getAttribute(IXMLElement* This,BSTR strPropertyName,VARIANT *PropertyValue) {
 9136    return This->lpVtbl->getAttribute(This,strPropertyName,PropertyValue);
 9137}
 9138static inline HRESULT IXMLElement_removeAttribute(IXMLElement* This,BSTR strPropertyName) {
 9139    return This->lpVtbl->removeAttribute(This,strPropertyName);
 9140}
 9141static inline HRESULT IXMLElement_get_children(IXMLElement* This,IXMLElementCollection **p) {
 9142    return This->lpVtbl->get_children(This,p);
 9143}
 9144static inline HRESULT IXMLElement_get_type(IXMLElement* This,LONG *p) {
 9145    return This->lpVtbl->get_type(This,p);
 9146}
 9147static inline HRESULT IXMLElement_get_text(IXMLElement* This,BSTR *p) {
 9148    return This->lpVtbl->get_text(This,p);
 9149}
 9150static inline HRESULT IXMLElement_put_text(IXMLElement* This,BSTR p) {
 9151    return This->lpVtbl->put_text(This,p);
 9152}
 9153static inline HRESULT IXMLElement_addChild(IXMLElement* This,IXMLElement *pChildElem,LONG lIndex,LONG lreserved) {
 9154    return This->lpVtbl->addChild(This,pChildElem,lIndex,lreserved);
 9155}
 9156static inline HRESULT IXMLElement_removeChild(IXMLElement* This,IXMLElement *pChildElem) {
 9157    return This->lpVtbl->removeChild(This,pChildElem);
 9158}
 9159#endif
 9160#endif
 9161
 9162#endif
 9163
 9164
 9165#endif  /* __IXMLElement_INTERFACE_DEFINED__ */
 9166
 9167/*****************************************************************************
 9168 * IXMLDocument interface
 9169 */
 9170#ifndef __IXMLDocument_INTERFACE_DEFINED__
 9171#define __IXMLDocument_INTERFACE_DEFINED__
 9172
 9173DEFINE_GUID(IID_IXMLDocument, 0xf52e2b61, 0x18a1, 0x11d1, 0xb1,0x05, 0x00,0x80,0x5f,0x49,0x91,0x6b);
 9174#if defined(__cplusplus) && !defined(CINTERFACE)
 9175MIDL_INTERFACE("f52e2b61-18a1-11d1-b105-00805f49916b")
 9176IXMLDocument : public IDispatch
 9177{
 9178    virtual HRESULT STDMETHODCALLTYPE get_root(
 9179        IXMLElement **p) = 0;
 9180
 9181    virtual HRESULT STDMETHODCALLTYPE get_fileSize(
 9182        BSTR *p) = 0;
 9183
 9184    virtual HRESULT STDMETHODCALLTYPE get_fileModifiedDate(
 9185        BSTR *p) = 0;
 9186
 9187    virtual HRESULT STDMETHODCALLTYPE get_fileUpdatedDate(
 9188        BSTR *p) = 0;
 9189
 9190    virtual HRESULT STDMETHODCALLTYPE get_URL(
 9191        BSTR *p) = 0;
 9192
 9193    virtual HRESULT STDMETHODCALLTYPE put_URL(
 9194        BSTR p) = 0;
 9195
 9196    virtual HRESULT STDMETHODCALLTYPE get_mimeType(
 9197        BSTR *p) = 0;
 9198
 9199    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 9200        LONG *p) = 0;
 9201
 9202    virtual HRESULT STDMETHODCALLTYPE get_charset(
 9203        BSTR *p) = 0;
 9204
 9205    virtual HRESULT STDMETHODCALLTYPE put_charset(
 9206        BSTR p) = 0;
 9207
 9208    virtual HRESULT STDMETHODCALLTYPE get_version(
 9209        BSTR *p) = 0;
 9210
 9211    virtual HRESULT STDMETHODCALLTYPE get_doctype(
 9212        BSTR *p) = 0;
 9213
 9214    virtual HRESULT STDMETHODCALLTYPE get_dtdURl(
 9215        BSTR *p) = 0;
 9216
 9217    virtual HRESULT STDMETHODCALLTYPE createElement(
 9218        VARIANT vType,
 9219        VARIANT var1,
 9220        IXMLElement **ppElem) = 0;
 9221
 9222};
 9223#ifdef __CRT_UUID_DECL
 9224__CRT_UUID_DECL(IXMLDocument, 0xf52e2b61, 0x18a1, 0x11d1, 0xb1,0x05, 0x00,0x80,0x5f,0x49,0x91,0x6b)
 9225#endif
 9226#else
 9227typedef struct IXMLDocumentVtbl {
 9228    BEGIN_INTERFACE
 9229
 9230    /*** IUnknown methods ***/
 9231    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9232        IXMLDocument *This,
 9233        REFIID riid,
 9234        void **ppvObject);
 9235
 9236    ULONG (STDMETHODCALLTYPE *AddRef)(
 9237        IXMLDocument *This);
 9238
 9239    ULONG (STDMETHODCALLTYPE *Release)(
 9240        IXMLDocument *This);
 9241
 9242    /*** IDispatch methods ***/
 9243    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 9244        IXMLDocument *This,
 9245        UINT *pctinfo);
 9246
 9247    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 9248        IXMLDocument *This,
 9249        UINT iTInfo,
 9250        LCID lcid,
 9251        ITypeInfo **ppTInfo);
 9252
 9253    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 9254        IXMLDocument *This,
 9255        REFIID riid,
 9256        LPOLESTR *rgszNames,
 9257        UINT cNames,
 9258        LCID lcid,
 9259        DISPID *rgDispId);
 9260
 9261    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9262        IXMLDocument *This,
 9263        DISPID dispIdMember,
 9264        REFIID riid,
 9265        LCID lcid,
 9266        WORD wFlags,
 9267        DISPPARAMS *pDispParams,
 9268        VARIANT *pVarResult,
 9269        EXCEPINFO *pExcepInfo,
 9270        UINT *puArgErr);
 9271
 9272    /*** IXMLDocument methods ***/
 9273    HRESULT (STDMETHODCALLTYPE *get_root)(
 9274        IXMLDocument *This,
 9275        IXMLElement **p);
 9276
 9277    HRESULT (STDMETHODCALLTYPE *get_fileSize)(
 9278        IXMLDocument *This,
 9279        BSTR *p);
 9280
 9281    HRESULT (STDMETHODCALLTYPE *get_fileModifiedDate)(
 9282        IXMLDocument *This,
 9283        BSTR *p);
 9284
 9285    HRESULT (STDMETHODCALLTYPE *get_fileUpdatedDate)(
 9286        IXMLDocument *This,
 9287        BSTR *p);
 9288
 9289    HRESULT (STDMETHODCALLTYPE *get_URL)(
 9290        IXMLDocument *This,
 9291        BSTR *p);
 9292
 9293    HRESULT (STDMETHODCALLTYPE *put_URL)(
 9294        IXMLDocument *This,
 9295        BSTR p);
 9296
 9297    HRESULT (STDMETHODCALLTYPE *get_mimeType)(
 9298        IXMLDocument *This,
 9299        BSTR *p);
 9300
 9301    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 9302        IXMLDocument *This,
 9303        LONG *p);
 9304
 9305    HRESULT (STDMETHODCALLTYPE *get_charset)(
 9306        IXMLDocument *This,
 9307        BSTR *p);
 9308
 9309    HRESULT (STDMETHODCALLTYPE *put_charset)(
 9310        IXMLDocument *This,
 9311        BSTR p);
 9312
 9313    HRESULT (STDMETHODCALLTYPE *get_version)(
 9314        IXMLDocument *This,
 9315        BSTR *p);
 9316
 9317    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 9318        IXMLDocument *This,
 9319        BSTR *p);
 9320
 9321    HRESULT (STDMETHODCALLTYPE *get_dtdURl)(
 9322        IXMLDocument *This,
 9323        BSTR *p);
 9324
 9325    HRESULT (STDMETHODCALLTYPE *createElement)(
 9326        IXMLDocument *This,
 9327        VARIANT vType,
 9328        VARIANT var1,
 9329        IXMLElement **ppElem);
 9330
 9331    END_INTERFACE
 9332} IXMLDocumentVtbl;
 9333
 9334interface IXMLDocument {
 9335    CONST_VTBL IXMLDocumentVtbl* lpVtbl;
 9336};
 9337
 9338#ifdef COBJMACROS
 9339#ifndef WIDL_C_INLINE_WRAPPERS
 9340/*** IUnknown methods ***/
 9341#define IXMLDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9342#define IXMLDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
 9343#define IXMLDocument_Release(This) (This)->lpVtbl->Release(This)
 9344/*** IDispatch methods ***/
 9345#define IXMLDocument_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9346#define IXMLDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9347#define IXMLDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9348#define IXMLDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9349/*** IXMLDocument methods ***/
 9350#define IXMLDocument_get_root(This,p) (This)->lpVtbl->get_root(This,p)
 9351#define IXMLDocument_get_fileSize(This,p) (This)->lpVtbl->get_fileSize(This,p)
 9352#define IXMLDocument_get_fileModifiedDate(This,p) (This)->lpVtbl->get_fileModifiedDate(This,p)
 9353#define IXMLDocument_get_fileUpdatedDate(This,p) (This)->lpVtbl->get_fileUpdatedDate(This,p)
 9354#define IXMLDocument_get_URL(This,p) (This)->lpVtbl->get_URL(This,p)
 9355#define IXMLDocument_put_URL(This,p) (This)->lpVtbl->put_URL(This,p)
 9356#define IXMLDocument_get_mimeType(This,p) (This)->lpVtbl->get_mimeType(This,p)
 9357#define IXMLDocument_get_readyState(This,p) (This)->lpVtbl->get_readyState(This,p)
 9358#define IXMLDocument_get_charset(This,p) (This)->lpVtbl->get_charset(This,p)
 9359#define IXMLDocument_put_charset(This,p) (This)->lpVtbl->put_charset(This,p)
 9360#define IXMLDocument_get_version(This,p) (This)->lpVtbl->get_version(This,p)
 9361#define IXMLDocument_get_doctype(This,p) (This)->lpVtbl->get_doctype(This,p)
 9362#define IXMLDocument_get_dtdURl(This,p) (This)->lpVtbl->get_dtdURl(This,p)
 9363#define IXMLDocument_createElement(This,vType,var1,ppElem) (This)->lpVtbl->createElement(This,vType,var1,ppElem)
 9364#else
 9365/*** IUnknown methods ***/
 9366static inline HRESULT IXMLDocument_QueryInterface(IXMLDocument* This,REFIID riid,void **ppvObject) {
 9367    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9368}
 9369static inline ULONG IXMLDocument_AddRef(IXMLDocument* This) {
 9370    return This->lpVtbl->AddRef(This);
 9371}
 9372static inline ULONG IXMLDocument_Release(IXMLDocument* This) {
 9373    return This->lpVtbl->Release(This);
 9374}
 9375/*** IDispatch methods ***/
 9376static inline HRESULT IXMLDocument_GetTypeInfoCount(IXMLDocument* This,UINT *pctinfo) {
 9377    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9378}
 9379static inline HRESULT IXMLDocument_GetTypeInfo(IXMLDocument* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9380    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9381}
 9382static inline HRESULT IXMLDocument_GetIDsOfNames(IXMLDocument* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9383    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9384}
 9385static inline HRESULT IXMLDocument_Invoke(IXMLDocument* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9386    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9387}
 9388/*** IXMLDocument methods ***/
 9389static inline HRESULT IXMLDocument_get_root(IXMLDocument* This,IXMLElement **p) {
 9390    return This->lpVtbl->get_root(This,p);
 9391}
 9392static inline HRESULT IXMLDocument_get_fileSize(IXMLDocument* This,BSTR *p) {
 9393    return This->lpVtbl->get_fileSize(This,p);
 9394}
 9395static inline HRESULT IXMLDocument_get_fileModifiedDate(IXMLDocument* This,BSTR *p) {
 9396    return This->lpVtbl->get_fileModifiedDate(This,p);
 9397}
 9398static inline HRESULT IXMLDocument_get_fileUpdatedDate(IXMLDocument* This,BSTR *p) {
 9399    return This->lpVtbl->get_fileUpdatedDate(This,p);
 9400}
 9401static inline HRESULT IXMLDocument_get_URL(IXMLDocument* This,BSTR *p) {
 9402    return This->lpVtbl->get_URL(This,p);
 9403}
 9404static inline HRESULT IXMLDocument_put_URL(IXMLDocument* This,BSTR p) {
 9405    return This->lpVtbl->put_URL(This,p);
 9406}
 9407static inline HRESULT IXMLDocument_get_mimeType(IXMLDocument* This,BSTR *p) {
 9408    return This->lpVtbl->get_mimeType(This,p);
 9409}
 9410static inline HRESULT IXMLDocument_get_readyState(IXMLDocument* This,LONG *p) {
 9411    return This->lpVtbl->get_readyState(This,p);
 9412}
 9413static inline HRESULT IXMLDocument_get_charset(IXMLDocument* This,BSTR *p) {
 9414    return This->lpVtbl->get_charset(This,p);
 9415}
 9416static inline HRESULT IXMLDocument_put_charset(IXMLDocument* This,BSTR p) {
 9417    return This->lpVtbl->put_charset(This,p);
 9418}
 9419static inline HRESULT IXMLDocument_get_version(IXMLDocument* This,BSTR *p) {
 9420    return This->lpVtbl->get_version(This,p);
 9421}
 9422static inline HRESULT IXMLDocument_get_doctype(IXMLDocument* This,BSTR *p) {
 9423    return This->lpVtbl->get_doctype(This,p);
 9424}
 9425static inline HRESULT IXMLDocument_get_dtdURl(IXMLDocument* This,BSTR *p) {
 9426    return This->lpVtbl->get_dtdURl(This,p);
 9427}
 9428static inline HRESULT IXMLDocument_createElement(IXMLDocument* This,VARIANT vType,VARIANT var1,IXMLElement **ppElem) {
 9429    return This->lpVtbl->createElement(This,vType,var1,ppElem);
 9430}
 9431#endif
 9432#endif
 9433
 9434#endif
 9435
 9436
 9437#endif  /* __IXMLDocument_INTERFACE_DEFINED__ */
 9438
 9439/*****************************************************************************
 9440 * IXMLElement2 interface
 9441 */
 9442#ifndef __IXMLElement2_INTERFACE_DEFINED__
 9443#define __IXMLElement2_INTERFACE_DEFINED__
 9444
 9445DEFINE_GUID(IID_IXMLElement2, 0x2b8de2ff, 0x8d2d, 0x11d1, 0xb2,0xfc, 0x00,0xc0,0x4f,0xd9,0x15,0xa9);
 9446#if defined(__cplusplus) && !defined(CINTERFACE)
 9447MIDL_INTERFACE("2b8de2ff-8d2d-11d1-b2fc-00c04fd915a9")
 9448IXMLElement2 : public IDispatch
 9449{
 9450    virtual HRESULT STDMETHODCALLTYPE get_tagName(
 9451        BSTR *p) = 0;
 9452
 9453    virtual HRESULT STDMETHODCALLTYPE put_tagName(
 9454        BSTR p) = 0;
 9455
 9456    virtual HRESULT STDMETHODCALLTYPE get_parent(
 9457        IXMLElement2 **ppParent) = 0;
 9458
 9459    virtual HRESULT STDMETHODCALLTYPE setAttribute(
 9460        BSTR strPropertyName,
 9461        VARIANT PropertyValue) = 0;
 9462
 9463    virtual HRESULT STDMETHODCALLTYPE getAttribute(
 9464        BSTR strPropertyName,
 9465        VARIANT *PropertyValue) = 0;
 9466
 9467    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
 9468        BSTR strPropertyName) = 0;
 9469
 9470    virtual HRESULT STDMETHODCALLTYPE get_children(
 9471        IXMLElementCollection **pp) = 0;
 9472
 9473    virtual HRESULT STDMETHODCALLTYPE get_type(
 9474        LONG *plType) = 0;
 9475
 9476    virtual HRESULT STDMETHODCALLTYPE get_text(
 9477        BSTR *p) = 0;
 9478
 9479    virtual HRESULT STDMETHODCALLTYPE put_text(
 9480        BSTR p) = 0;
 9481
 9482    virtual HRESULT STDMETHODCALLTYPE addChild(
 9483        IXMLElement2 *pChildElem,
 9484        LONG lIndex,
 9485        LONG lReserved) = 0;
 9486
 9487    virtual HRESULT STDMETHODCALLTYPE removeChild(
 9488        IXMLElement2 *pChildElem) = 0;
 9489
 9490    virtual HRESULT STDMETHODCALLTYPE get_attributes(
 9491        IXMLElementCollection **pp) = 0;
 9492
 9493};
 9494#ifdef __CRT_UUID_DECL
 9495__CRT_UUID_DECL(IXMLElement2, 0x2b8de2ff, 0x8d2d, 0x11d1, 0xb2,0xfc, 0x00,0xc0,0x4f,0xd9,0x15,0xa9)
 9496#endif
 9497#else
 9498typedef struct IXMLElement2Vtbl {
 9499    BEGIN_INTERFACE
 9500
 9501    /*** IUnknown methods ***/
 9502    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9503        IXMLElement2 *This,
 9504        REFIID riid,
 9505        void **ppvObject);
 9506
 9507    ULONG (STDMETHODCALLTYPE *AddRef)(
 9508        IXMLElement2 *This);
 9509
 9510    ULONG (STDMETHODCALLTYPE *Release)(
 9511        IXMLElement2 *This);
 9512
 9513    /*** IDispatch methods ***/
 9514    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 9515        IXMLElement2 *This,
 9516        UINT *pctinfo);
 9517
 9518    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 9519        IXMLElement2 *This,
 9520        UINT iTInfo,
 9521        LCID lcid,
 9522        ITypeInfo **ppTInfo);
 9523
 9524    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 9525        IXMLElement2 *This,
 9526        REFIID riid,
 9527        LPOLESTR *rgszNames,
 9528        UINT cNames,
 9529        LCID lcid,
 9530        DISPID *rgDispId);
 9531
 9532    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9533        IXMLElement2 *This,
 9534        DISPID dispIdMember,
 9535        REFIID riid,
 9536        LCID lcid,
 9537        WORD wFlags,
 9538        DISPPARAMS *pDispParams,
 9539        VARIANT *pVarResult,
 9540        EXCEPINFO *pExcepInfo,
 9541        UINT *puArgErr);
 9542
 9543    /*** IXMLElement2 methods ***/
 9544    HRESULT (STDMETHODCALLTYPE *get_tagName)(
 9545        IXMLElement2 *This,
 9546        BSTR *p);
 9547
 9548    HRESULT (STDMETHODCALLTYPE *put_tagName)(
 9549        IXMLElement2 *This,
 9550        BSTR p);
 9551
 9552    HRESULT (STDMETHODCALLTYPE *get_parent)(
 9553        IXMLElement2 *This,
 9554        IXMLElement2 **ppParent);
 9555
 9556    HRESULT (STDMETHODCALLTYPE *setAttribute)(
 9557        IXMLElement2 *This,
 9558        BSTR strPropertyName,
 9559        VARIANT PropertyValue);
 9560
 9561    HRESULT (STDMETHODCALLTYPE *getAttribute)(
 9562        IXMLElement2 *This,
 9563        BSTR strPropertyName,
 9564        VARIANT *PropertyValue);
 9565
 9566    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
 9567        IXMLElement2 *This,
 9568        BSTR strPropertyName);
 9569
 9570    HRESULT (STDMETHODCALLTYPE *get_children)(
 9571        IXMLElement2 *This,
 9572        IXMLElementCollection **pp);
 9573
 9574    HRESULT (STDMETHODCALLTYPE *get_type)(
 9575        IXMLElement2 *This,
 9576        LONG *plType);
 9577
 9578    HRESULT (STDMETHODCALLTYPE *get_text)(
 9579        IXMLElement2 *This,
 9580        BSTR *p);
 9581
 9582    HRESULT (STDMETHODCALLTYPE *put_text)(
 9583        IXMLElement2 *This,
 9584        BSTR p);
 9585
 9586    HRESULT (STDMETHODCALLTYPE *addChild)(
 9587        IXMLElement2 *This,
 9588        IXMLElement2 *pChildElem,
 9589        LONG lIndex,
 9590        LONG lReserved);
 9591
 9592    HRESULT (STDMETHODCALLTYPE *removeChild)(
 9593        IXMLElement2 *This,
 9594        IXMLElement2 *pChildElem);
 9595
 9596    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 9597        IXMLElement2 *This,
 9598        IXMLElementCollection **pp);
 9599
 9600    END_INTERFACE
 9601} IXMLElement2Vtbl;
 9602
 9603interface IXMLElement2 {
 9604    CONST_VTBL IXMLElement2Vtbl* lpVtbl;
 9605};
 9606
 9607#ifdef COBJMACROS
 9608#ifndef WIDL_C_INLINE_WRAPPERS
 9609/*** IUnknown methods ***/
 9610#define IXMLElement2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9611#define IXMLElement2_AddRef(This) (This)->lpVtbl->AddRef(This)
 9612#define IXMLElement2_Release(This) (This)->lpVtbl->Release(This)
 9613/*** IDispatch methods ***/
 9614#define IXMLElement2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9615#define IXMLElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9616#define IXMLElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9617#define IXMLElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9618/*** IXMLElement2 methods ***/
 9619#define IXMLElement2_get_tagName(This,p) (This)->lpVtbl->get_tagName(This,p)
 9620#define IXMLElement2_put_tagName(This,p) (This)->lpVtbl->put_tagName(This,p)
 9621#define IXMLElement2_get_parent(This,ppParent) (This)->lpVtbl->get_parent(This,ppParent)
 9622#define IXMLElement2_setAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->setAttribute(This,strPropertyName,PropertyValue)
 9623#define IXMLElement2_getAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->getAttribute(This,strPropertyName,PropertyValue)
 9624#define IXMLElement2_removeAttribute(This,strPropertyName) (This)->lpVtbl->removeAttribute(This,strPropertyName)
 9625#define IXMLElement2_get_children(This,pp) (This)->lpVtbl->get_children(This,pp)
 9626#define IXMLElement2_get_type(This,plType) (This)->lpVtbl->get_type(This,plType)
 9627#define IXMLElement2_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 9628#define IXMLElement2_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 9629#define IXMLElement2_addChild(This,pChildElem,lIndex,lReserved) (This)->lpVtbl->addChild(This,pChildElem,lIndex,lReserved)
 9630#define IXMLElement2_removeChild(This,pChildElem) (This)->lpVtbl->removeChild(This,pChildElem)
 9631#define IXMLElement2_get_attributes(This,pp) (This)->lpVtbl->get_attributes(This,pp)
 9632#else
 9633/*** IUnknown methods ***/
 9634static inline HRESULT IXMLElement2_QueryInterface(IXMLElement2* This,REFIID riid,void **ppvObject) {
 9635    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9636}
 9637static inline ULONG IXMLElement2_AddRef(IXMLElement2* This) {
 9638    return This->lpVtbl->AddRef(This);
 9639}
 9640static inline ULONG IXMLElement2_Release(IXMLElement2* This) {
 9641    return This->lpVtbl->Release(This);
 9642}
 9643/*** IDispatch methods ***/
 9644static inline HRESULT IXMLElement2_GetTypeInfoCount(IXMLElement2* This,UINT *pctinfo) {
 9645    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9646}
 9647static inline HRESULT IXMLElement2_GetTypeInfo(IXMLElement2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9648    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9649}
 9650static inline HRESULT IXMLElement2_GetIDsOfNames(IXMLElement2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9651    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9652}
 9653static inline HRESULT IXMLElement2_Invoke(IXMLElement2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9654    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9655}
 9656/*** IXMLElement2 methods ***/
 9657static inline HRESULT IXMLElement2_get_tagName(IXMLElement2* This,BSTR *p) {
 9658    return This->lpVtbl->get_tagName(This,p);
 9659}
 9660static inline HRESULT IXMLElement2_put_tagName(IXMLElement2* This,BSTR p) {
 9661    return This->lpVtbl->put_tagName(This,p);
 9662}
 9663static inline HRESULT IXMLElement2_get_parent(IXMLElement2* This,IXMLElement2 **ppParent) {
 9664    return This->lpVtbl->get_parent(This,ppParent);
 9665}
 9666static inline HRESULT IXMLElement2_setAttribute(IXMLElement2* This,BSTR strPropertyName,VARIANT PropertyValue) {
 9667    return This->lpVtbl->setAttribute(This,strPropertyName,PropertyValue);
 9668}
 9669static inline HRESULT IXMLElement2_getAttribute(IXMLElement2* This,BSTR strPropertyName,VARIANT *PropertyValue) {
 9670    return This->lpVtbl->getAttribute(This,strPropertyName,PropertyValue);
 9671}
 9672static inline HRESULT IXMLElement2_removeAttribute(IXMLElement2* This,BSTR strPropertyName) {
 9673    return This->lpVtbl->removeAttribute(This,strPropertyName);
 9674}
 9675static inline HRESULT IXMLElement2_get_children(IXMLElement2* This,IXMLElementCollection **pp) {
 9676    return This->lpVtbl->get_children(This,pp);
 9677}
 9678static inline HRESULT IXMLElement2_get_type(IXMLElement2* This,LONG *plType) {
 9679    return This->lpVtbl->get_type(This,plType);
 9680}
 9681static inline HRESULT IXMLElement2_get_text(IXMLElement2* This,BSTR *p) {
 9682    return This->lpVtbl->get_text(This,p);
 9683}
 9684static inline HRESULT IXMLElement2_put_text(IXMLElement2* This,BSTR p) {
 9685    return This->lpVtbl->put_text(This,p);
 9686}
 9687static inline HRESULT IXMLElement2_addChild(IXMLElement2* This,IXMLElement2 *pChildElem,LONG lIndex,LONG lReserved) {
 9688    return This->lpVtbl->addChild(This,pChildElem,lIndex,lReserved);
 9689}
 9690static inline HRESULT IXMLElement2_removeChild(IXMLElement2* This,IXMLElement2 *pChildElem) {
 9691    return This->lpVtbl->removeChild(This,pChildElem);
 9692}
 9693static inline HRESULT IXMLElement2_get_attributes(IXMLElement2* This,IXMLElementCollection **pp) {
 9694    return This->lpVtbl->get_attributes(This,pp);
 9695}
 9696#endif
 9697#endif
 9698
 9699#endif
 9700
 9701
 9702#endif  /* __IXMLElement2_INTERFACE_DEFINED__ */
 9703
 9704/*****************************************************************************
 9705 * IXMLDocument2 interface
 9706 */
 9707#ifndef __IXMLDocument2_INTERFACE_DEFINED__
 9708#define __IXMLDocument2_INTERFACE_DEFINED__
 9709
 9710DEFINE_GUID(IID_IXMLDocument2, 0x2b8de2fe, 0x8d2d, 0x11d1, 0xb2,0xfc, 0x00,0xc0,0x4f,0xd9,0x15,0xa9);
 9711#if defined(__cplusplus) && !defined(CINTERFACE)
 9712MIDL_INTERFACE("2b8de2fe-8d2d-11d1-b2fc-00c04fd915a9")
 9713IXMLDocument2 : public IDispatch
 9714{
 9715    virtual HRESULT STDMETHODCALLTYPE get_root(
 9716        IXMLElement2 **p) = 0;
 9717
 9718    virtual HRESULT STDMETHODCALLTYPE get_fileSize(
 9719        BSTR *p) = 0;
 9720
 9721    virtual HRESULT STDMETHODCALLTYPE get_fileModifiedDate(
 9722        BSTR *p) = 0;
 9723
 9724    virtual HRESULT STDMETHODCALLTYPE get_fileUpdatedDate(
 9725        BSTR *p) = 0;
 9726
 9727    virtual HRESULT STDMETHODCALLTYPE get_URL(
 9728        BSTR *p) = 0;
 9729
 9730    virtual HRESULT STDMETHODCALLTYPE put_URL(
 9731        BSTR p) = 0;
 9732
 9733    virtual HRESULT STDMETHODCALLTYPE get_mimeType(
 9734        BSTR *p) = 0;
 9735
 9736    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 9737        LONG *pl) = 0;
 9738
 9739    virtual HRESULT STDMETHODCALLTYPE get_charset(
 9740        BSTR *p) = 0;
 9741
 9742    virtual HRESULT STDMETHODCALLTYPE put_charset(
 9743        BSTR p) = 0;
 9744
 9745    virtual HRESULT STDMETHODCALLTYPE get_version(
 9746        BSTR *p) = 0;
 9747
 9748    virtual HRESULT STDMETHODCALLTYPE get_doctype(
 9749        BSTR *p) = 0;
 9750
 9751    virtual HRESULT STDMETHODCALLTYPE get_dtdURL(
 9752        BSTR *p) = 0;
 9753
 9754    virtual HRESULT STDMETHODCALLTYPE createElement(
 9755        VARIANT vType,
 9756        VARIANT var,
 9757        IXMLElement2 **ppElem) = 0;
 9758
 9759    virtual HRESULT STDMETHODCALLTYPE get_async(
 9760        VARIANT_BOOL *pf) = 0;
 9761
 9762    virtual HRESULT STDMETHODCALLTYPE put_async(
 9763        VARIANT_BOOL f) = 0;
 9764
 9765};
 9766#ifdef __CRT_UUID_DECL
 9767__CRT_UUID_DECL(IXMLDocument2, 0x2b8de2fe, 0x8d2d, 0x11d1, 0xb2,0xfc, 0x00,0xc0,0x4f,0xd9,0x15,0xa9)
 9768#endif
 9769#else
 9770typedef struct IXMLDocument2Vtbl {
 9771    BEGIN_INTERFACE
 9772
 9773    /*** IUnknown methods ***/
 9774    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9775        IXMLDocument2 *This,
 9776        REFIID riid,
 9777        void **ppvObject);
 9778
 9779    ULONG (STDMETHODCALLTYPE *AddRef)(
 9780        IXMLDocument2 *This);
 9781
 9782    ULONG (STDMETHODCALLTYPE *Release)(
 9783        IXMLDocument2 *This);
 9784
 9785    /*** IDispatch methods ***/
 9786    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 9787        IXMLDocument2 *This,
 9788        UINT *pctinfo);
 9789
 9790    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 9791        IXMLDocument2 *This,
 9792        UINT iTInfo,
 9793        LCID lcid,
 9794        ITypeInfo **ppTInfo);
 9795
 9796    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 9797        IXMLDocument2 *This,
 9798        REFIID riid,
 9799        LPOLESTR *rgszNames,
 9800        UINT cNames,
 9801        LCID lcid,
 9802        DISPID *rgDispId);
 9803
 9804    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9805        IXMLDocument2 *This,
 9806        DISPID dispIdMember,
 9807        REFIID riid,
 9808        LCID lcid,
 9809        WORD wFlags,
 9810        DISPPARAMS *pDispParams,
 9811        VARIANT *pVarResult,
 9812        EXCEPINFO *pExcepInfo,
 9813        UINT *puArgErr);
 9814
 9815    /*** IXMLDocument2 methods ***/
 9816    HRESULT (STDMETHODCALLTYPE *get_root)(
 9817        IXMLDocument2 *This,
 9818        IXMLElement2 **p);
 9819
 9820    HRESULT (STDMETHODCALLTYPE *get_fileSize)(
 9821        IXMLDocument2 *This,
 9822        BSTR *p);
 9823
 9824    HRESULT (STDMETHODCALLTYPE *get_fileModifiedDate)(
 9825        IXMLDocument2 *This,
 9826        BSTR *p);
 9827
 9828    HRESULT (STDMETHODCALLTYPE *get_fileUpdatedDate)(
 9829        IXMLDocument2 *This,
 9830        BSTR *p);
 9831
 9832    HRESULT (STDMETHODCALLTYPE *get_URL)(
 9833        IXMLDocument2 *This,
 9834        BSTR *p);
 9835
 9836    HRESULT (STDMETHODCALLTYPE *put_URL)(
 9837        IXMLDocument2 *This,
 9838        BSTR p);
 9839
 9840    HRESULT (STDMETHODCALLTYPE *get_mimeType)(
 9841        IXMLDocument2 *This,
 9842        BSTR *p);
 9843
 9844    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 9845        IXMLDocument2 *This,
 9846        LONG *pl);
 9847
 9848    HRESULT (STDMETHODCALLTYPE *get_charset)(
 9849        IXMLDocument2 *This,
 9850        BSTR *p);
 9851
 9852    HRESULT (STDMETHODCALLTYPE *put_charset)(
 9853        IXMLDocument2 *This,
 9854        BSTR p);
 9855
 9856    HRESULT (STDMETHODCALLTYPE *get_version)(
 9857        IXMLDocument2 *This,
 9858        BSTR *p);
 9859
 9860    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 9861        IXMLDocument2 *This,
 9862        BSTR *p);
 9863
 9864    HRESULT (STDMETHODCALLTYPE *get_dtdURL)(
 9865        IXMLDocument2 *This,
 9866        BSTR *p);
 9867
 9868    HRESULT (STDMETHODCALLTYPE *createElement)(
 9869        IXMLDocument2 *This,
 9870        VARIANT vType,
 9871        VARIANT var,
 9872        IXMLElement2 **ppElem);
 9873
 9874    HRESULT (STDMETHODCALLTYPE *get_async)(
 9875        IXMLDocument2 *This,
 9876        VARIANT_BOOL *pf);
 9877
 9878    HRESULT (STDMETHODCALLTYPE *put_async)(
 9879        IXMLDocument2 *This,
 9880        VARIANT_BOOL f);
 9881
 9882    END_INTERFACE
 9883} IXMLDocument2Vtbl;
 9884
 9885interface IXMLDocument2 {
 9886    CONST_VTBL IXMLDocument2Vtbl* lpVtbl;
 9887};
 9888
 9889#ifdef COBJMACROS
 9890#ifndef WIDL_C_INLINE_WRAPPERS
 9891/*** IUnknown methods ***/
 9892#define IXMLDocument2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9893#define IXMLDocument2_AddRef(This) (This)->lpVtbl->AddRef(This)
 9894#define IXMLDocument2_Release(This) (This)->lpVtbl->Release(This)
 9895/*** IDispatch methods ***/
 9896#define IXMLDocument2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9897#define IXMLDocument2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9898#define IXMLDocument2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9899#define IXMLDocument2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9900/*** IXMLDocument2 methods ***/
 9901#define IXMLDocument2_get_root(This,p) (This)->lpVtbl->get_root(This,p)
 9902#define IXMLDocument2_get_fileSize(This,p) (This)->lpVtbl->get_fileSize(This,p)
 9903#define IXMLDocument2_get_fileModifiedDate(This,p) (This)->lpVtbl->get_fileModifiedDate(This,p)
 9904#define IXMLDocument2_get_fileUpdatedDate(This,p) (This)->lpVtbl->get_fileUpdatedDate(This,p)
 9905#define IXMLDocument2_get_URL(This,p) (This)->lpVtbl->get_URL(This,p)
 9906#define IXMLDocument2_put_URL(This,p) (This)->lpVtbl->put_URL(This,p)
 9907#define IXMLDocument2_get_mimeType(This,p) (This)->lpVtbl->get_mimeType(This,p)
 9908#define IXMLDocument2_get_readyState(This,pl) (This)->lpVtbl->get_readyState(This,pl)
 9909#define IXMLDocument2_get_charset(This,p) (This)->lpVtbl->get_charset(This,p)
 9910#define IXMLDocument2_put_charset(This,p) (This)->lpVtbl->put_charset(This,p)
 9911#define IXMLDocument2_get_version(This,p) (This)->lpVtbl->get_version(This,p)
 9912#define IXMLDocument2_get_doctype(This,p) (This)->lpVtbl->get_doctype(This,p)
 9913#define IXMLDocument2_get_dtdURL(This,p) (This)->lpVtbl->get_dtdURL(This,p)
 9914#define IXMLDocument2_createElement(This,vType,var,ppElem) (This)->lpVtbl->createElement(This,vType,var,ppElem)
 9915#define IXMLDocument2_get_async(This,pf) (This)->lpVtbl->get_async(This,pf)
 9916#define IXMLDocument2_put_async(This,f) (This)->lpVtbl->put_async(This,f)
 9917#else
 9918/*** IUnknown methods ***/
 9919static inline HRESULT IXMLDocument2_QueryInterface(IXMLDocument2* This,REFIID riid,void **ppvObject) {
 9920    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9921}
 9922static inline ULONG IXMLDocument2_AddRef(IXMLDocument2* This) {
 9923    return This->lpVtbl->AddRef(This);
 9924}
 9925static inline ULONG IXMLDocument2_Release(IXMLDocument2* This) {
 9926    return This->lpVtbl->Release(This);
 9927}
 9928/*** IDispatch methods ***/
 9929static inline HRESULT IXMLDocument2_GetTypeInfoCount(IXMLDocument2* This,UINT *pctinfo) {
 9930    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9931}
 9932static inline HRESULT IXMLDocument2_GetTypeInfo(IXMLDocument2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9933    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9934}
 9935static inline HRESULT IXMLDocument2_GetIDsOfNames(IXMLDocument2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9936    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9937}
 9938static inline HRESULT IXMLDocument2_Invoke(IXMLDocument2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9939    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9940}
 9941/*** IXMLDocument2 methods ***/
 9942static inline HRESULT IXMLDocument2_get_root(IXMLDocument2* This,IXMLElement2 **p) {
 9943    return This->lpVtbl->get_root(This,p);
 9944}
 9945static inline HRESULT IXMLDocument2_get_fileSize(IXMLDocument2* This,BSTR *p) {
 9946    return This->lpVtbl->get_fileSize(This,p);
 9947}
 9948static inline HRESULT IXMLDocument2_get_fileModifiedDate(IXMLDocument2* This,BSTR *p) {
 9949    return This->lpVtbl->get_fileModifiedDate(This,p);
 9950}
 9951static inline HRESULT IXMLDocument2_get_fileUpdatedDate(IXMLDocument2* This,BSTR *p) {
 9952    return This->lpVtbl->get_fileUpdatedDate(This,p);
 9953}
 9954static inline HRESULT IXMLDocument2_get_URL(IXMLDocument2* This,BSTR *p) {
 9955    return This->lpVtbl->get_URL(This,p);
 9956}
 9957static inline HRESULT IXMLDocument2_put_URL(IXMLDocument2* This,BSTR p) {
 9958    return This->lpVtbl->put_URL(This,p);
 9959}
 9960static inline HRESULT IXMLDocument2_get_mimeType(IXMLDocument2* This,BSTR *p) {
 9961    return This->lpVtbl->get_mimeType(This,p);
 9962}
 9963static inline HRESULT IXMLDocument2_get_readyState(IXMLDocument2* This,LONG *pl) {
 9964    return This->lpVtbl->get_readyState(This,pl);
 9965}
 9966static inline HRESULT IXMLDocument2_get_charset(IXMLDocument2* This,BSTR *p) {
 9967    return This->lpVtbl->get_charset(This,p);
 9968}
 9969static inline HRESULT IXMLDocument2_put_charset(IXMLDocument2* This,BSTR p) {
 9970    return This->lpVtbl->put_charset(This,p);
 9971}
 9972static inline HRESULT IXMLDocument2_get_version(IXMLDocument2* This,BSTR *p) {
 9973    return This->lpVtbl->get_version(This,p);
 9974}
 9975static inline HRESULT IXMLDocument2_get_doctype(IXMLDocument2* This,BSTR *p) {
 9976    return This->lpVtbl->get_doctype(This,p);
 9977}
 9978static inline HRESULT IXMLDocument2_get_dtdURL(IXMLDocument2* This,BSTR *p) {
 9979    return This->lpVtbl->get_dtdURL(This,p);
 9980}
 9981static inline HRESULT IXMLDocument2_createElement(IXMLDocument2* This,VARIANT vType,VARIANT var,IXMLElement2 **ppElem) {
 9982    return This->lpVtbl->createElement(This,vType,var,ppElem);
 9983}
 9984static inline HRESULT IXMLDocument2_get_async(IXMLDocument2* This,VARIANT_BOOL *pf) {
 9985    return This->lpVtbl->get_async(This,pf);
 9986}
 9987static inline HRESULT IXMLDocument2_put_async(IXMLDocument2* This,VARIANT_BOOL f) {
 9988    return This->lpVtbl->put_async(This,f);
 9989}
 9990#endif
 9991#endif
 9992
 9993#endif
 9994
 9995
 9996#endif  /* __IXMLDocument2_INTERFACE_DEFINED__ */
 9997
 9998typedef enum tagXMLEMEM_TYPE {
 9999    XMLELEMTYPE_ELEMENT = 0,
10000    XMLELEMTYPE_TEXT = 1,
10001    XMLELEMTYPE_COMMENT = 2,
10002    XMLELEMTYPE_DOCUMENT = 3,
10003    XMLELEMTYPE_DTD = 4,
10004    XMLELEMTYPE_PI = 5,
10005    XMLELEMTYPE_OTHER = 6
10006} XMLELEM_TYPE;
10007typedef struct _xml_error {
10008    UINT _nLine;
10009    BSTR _pchBuf;
10010    BSTR _cchBuf;
10011    UINT _ich;
10012    BSTR _pszFound;
10013    BSTR _pszExpected;
10014    DWORD _reserved1;
10015    DWORD _reserved2;
10016} XML_ERROR;
10017/*****************************************************************************
10018 * IXMLAttribute interface
10019 */
10020#ifndef __IXMLAttribute_INTERFACE_DEFINED__
10021#define __IXMLAttribute_INTERFACE_DEFINED__
10022
10023DEFINE_GUID(IID_IXMLAttribute, 0xd4d4a0fc, 0x3b73, 0x11d1, 0xb2,0xb4, 0x00,0xc0,0x4f,0xb9,0x25,0x96);
10024#if defined(__cplusplus) && !defined(CINTERFACE)
10025MIDL_INTERFACE("d4d4a0fc-3b73-11d1-b2b4-00c04fb92596")
10026IXMLAttribute : public IDispatch
10027{
10028    virtual HRESULT STDMETHODCALLTYPE get_name(
10029        BSTR *p) = 0;
10030
10031    virtual HRESULT STDMETHODCALLTYPE get_value(
10032        BSTR *p) = 0;
10033
10034};
10035#ifdef __CRT_UUID_DECL
10036__CRT_UUID_DECL(IXMLAttribute, 0xd4d4a0fc, 0x3b73, 0x11d1, 0xb2,0xb4, 0x00,0xc0,0x4f,0xb9,0x25,0x96)
10037#endif
10038#else
10039typedef struct IXMLAttributeVtbl {
10040    BEGIN_INTERFACE
10041
10042    /*** IUnknown methods ***/
10043    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10044        IXMLAttribute *This,
10045        REFIID riid,
10046        void **ppvObject);
10047
10048    ULONG (STDMETHODCALLTYPE *AddRef)(
10049        IXMLAttribute *This);
10050
10051    ULONG (STDMETHODCALLTYPE *Release)(
10052        IXMLAttribute *This);
10053
10054    /*** IDispatch methods ***/
10055    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10056        IXMLAttribute *This,
10057        UINT *pctinfo);
10058
10059    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10060        IXMLAttribute *This,
10061        UINT iTInfo,
10062        LCID lcid,
10063        ITypeInfo **ppTInfo);
10064
10065    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10066        IXMLAttribute *This,
10067        REFIID riid,
10068        LPOLESTR *rgszNames,
10069        UINT cNames,
10070        LCID lcid,
10071        DISPID *rgDispId);
10072
10073    HRESULT (STDMETHODCALLTYPE *Invoke)(
10074        IXMLAttribute *This,
10075        DISPID dispIdMember,
10076        REFIID riid,
10077        LCID lcid,
10078        WORD wFlags,
10079        DISPPARAMS *pDispParams,
10080        VARIANT *pVarResult,
10081        EXCEPINFO *pExcepInfo,
10082        UINT *puArgErr);
10083
10084    /*** IXMLAttribute methods ***/
10085    HRESULT (STDMETHODCALLTYPE *get_name)(
10086        IXMLAttribute *This,
10087        BSTR *p);
10088
10089    HRESULT (STDMETHODCALLTYPE *get_value)(
10090        IXMLAttribute *This,
10091        BSTR *p);
10092
10093    END_INTERFACE
10094} IXMLAttributeVtbl;
10095
10096interface IXMLAttribute {
10097    CONST_VTBL IXMLAttributeVtbl* lpVtbl;
10098};
10099
10100#ifdef COBJMACROS
10101#ifndef WIDL_C_INLINE_WRAPPERS
10102/*** IUnknown methods ***/
10103#define IXMLAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10104#define IXMLAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
10105#define IXMLAttribute_Release(This) (This)->lpVtbl->Release(This)
10106/*** IDispatch methods ***/
10107#define IXMLAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10108#define IXMLAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10109#define IXMLAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10110#define IXMLAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10111/*** IXMLAttribute methods ***/
10112#define IXMLAttribute_get_name(This,p) (This)->lpVtbl->get_name(This,p)
10113#define IXMLAttribute_get_value(This,p) (This)->lpVtbl->get_value(This,p)
10114#else
10115/*** IUnknown methods ***/
10116static inline HRESULT IXMLAttribute_QueryInterface(IXMLAttribute* This,REFIID riid,void **ppvObject) {
10117    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10118}
10119static inline ULONG IXMLAttribute_AddRef(IXMLAttribute* This) {
10120    return This->lpVtbl->AddRef(This);
10121}
10122static inline ULONG IXMLAttribute_Release(IXMLAttribute* This) {
10123    return This->lpVtbl->Release(This);
10124}
10125/*** IDispatch methods ***/
10126static inline HRESULT IXMLAttribute_GetTypeInfoCount(IXMLAttribute* This,UINT *pctinfo) {
10127    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10128}
10129static inline HRESULT IXMLAttribute_GetTypeInfo(IXMLAttribute* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10130    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10131}
10132static inline HRESULT IXMLAttribute_GetIDsOfNames(IXMLAttribute* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10133    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10134}
10135static inline HRESULT IXMLAttribute_Invoke(IXMLAttribute* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10136    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10137}
10138/*** IXMLAttribute methods ***/
10139static inline HRESULT IXMLAttribute_get_name(IXMLAttribute* This,BSTR *p) {
10140    return This->lpVtbl->get_name(This,p);
10141}
10142static inline HRESULT IXMLAttribute_get_value(IXMLAttribute* This,BSTR *p) {
10143    return This->lpVtbl->get_value(This,p);
10144}
10145#endif
10146#endif
10147
10148#endif
10149
10150
10151#endif  /* __IXMLAttribute_INTERFACE_DEFINED__ */
10152
10153/*****************************************************************************
10154 * IXMLError interface
10155 */
10156#ifndef __IXMLError_INTERFACE_DEFINED__
10157#define __IXMLError_INTERFACE_DEFINED__
10158
10159DEFINE_GUID(IID_IXMLError, 0x948c5ad3, 0xc58d, 0x11d0, 0x9c,0x0b, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
10160#if defined(__cplusplus) && !defined(CINTERFACE)
10161MIDL_INTERFACE("948c5ad3-c58d-11d0-9c0b-00c04fc99c8e")
10162IXMLError : public IUnknown
10163{
10164    virtual HRESULT STDMETHODCALLTYPE GetErrorInfo(
10165        XML_ERROR *pErrorReturn) = 0;
10166
10167};
10168#ifdef __CRT_UUID_DECL
10169__CRT_UUID_DECL(IXMLError, 0x948c5ad3, 0xc58d, 0x11d0, 0x9c,0x0b, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
10170#endif
10171#else
10172typedef struct IXMLErrorVtbl {
10173    BEGIN_INTERFACE
10174
10175    /*** IUnknown methods ***/
10176    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10177        IXMLError *This,
10178        REFIID riid,
10179        void **ppvObject);
10180
10181    ULONG (STDMETHODCALLTYPE *AddRef)(
10182        IXMLError *This);
10183
10184    ULONG (STDMETHODCALLTYPE *Release)(
10185        IXMLError *This);
10186
10187    /*** IXMLError methods ***/
10188    HRESULT (STDMETHODCALLTYPE *GetErrorInfo)(
10189        IXMLError *This,
10190        XML_ERROR *pErrorReturn);
10191
10192    END_INTERFACE
10193} IXMLErrorVtbl;
10194
10195interface IXMLError {
10196    CONST_VTBL IXMLErrorVtbl* lpVtbl;
10197};
10198
10199#ifdef COBJMACROS
10200#ifndef WIDL_C_INLINE_WRAPPERS
10201/*** IUnknown methods ***/
10202#define IXMLError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10203#define IXMLError_AddRef(This) (This)->lpVtbl->AddRef(This)
10204#define IXMLError_Release(This) (This)->lpVtbl->Release(This)
10205/*** IXMLError methods ***/
10206#define IXMLError_GetErrorInfo(This,pErrorReturn) (This)->lpVtbl->GetErrorInfo(This,pErrorReturn)
10207#else
10208/*** IUnknown methods ***/
10209static inline HRESULT IXMLError_QueryInterface(IXMLError* This,REFIID riid,void **ppvObject) {
10210    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10211}
10212static inline ULONG IXMLError_AddRef(IXMLError* This) {
10213    return This->lpVtbl->AddRef(This);
10214}
10215static inline ULONG IXMLError_Release(IXMLError* This) {
10216    return This->lpVtbl->Release(This);
10217}
10218/*** IXMLError methods ***/
10219static inline HRESULT IXMLError_GetErrorInfo(IXMLError* This,XML_ERROR *pErrorReturn) {
10220    return This->lpVtbl->GetErrorInfo(This,pErrorReturn);
10221}
10222#endif
10223#endif
10224
10225#endif
10226
10227
10228#endif  /* __IXMLError_INTERFACE_DEFINED__ */
10229
10230/*****************************************************************************
10231 * IXMLElementNotificationSink interface
10232 */
10233#ifndef __IXMLElementNotificationSink_INTERFACE_DEFINED__
10234#define __IXMLElementNotificationSink_INTERFACE_DEFINED__
10235
10236DEFINE_GUID(IID_IXMLElementNotificationSink, 0xd9f1e15a, 0xccdb, 0x11d0, 0x9c,0x0c, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
10237#if defined(__cplusplus) && !defined(CINTERFACE)
10238MIDL_INTERFACE("d9f1e15a-ccdb-11d0-9c0c-00c04fc99c8e")
10239IXMLElementNotificationSink : public IDispatch
10240{
10241    virtual HRESULT STDMETHODCALLTYPE ChildAdded(
10242        IDispatch *pChildElem) = 0;
10243
10244};
10245#ifdef __CRT_UUID_DECL
10246__CRT_UUID_DECL(IXMLElementNotificationSink, 0xd9f1e15a, 0xccdb, 0x11d0, 0x9c,0x0c, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
10247#endif
10248#else
10249typedef struct IXMLElementNotificationSinkVtbl {
10250    BEGIN_INTERFACE
10251
10252    /*** IUnknown methods ***/
10253    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10254        IXMLElementNotificationSink *This,
10255        REFIID riid,
10256        void **ppvObject);
10257
10258    ULONG (STDMETHODCALLTYPE *AddRef)(
10259        IXMLElementNotificationSink *This);
10260
10261    ULONG (STDMETHODCALLTYPE *Release)(
10262        IXMLElementNotificationSink *This);
10263
10264    /*** IDispatch methods ***/
10265    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10266        IXMLElementNotificationSink *This,
10267        UINT *pctinfo);
10268
10269    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10270        IXMLElementNotificationSink *This,
10271        UINT iTInfo,
10272        LCID lcid,
10273        ITypeInfo **ppTInfo);
10274
10275    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10276        IXMLElementNotificationSink *This,
10277        REFIID riid,
10278        LPOLESTR *rgszNames,
10279        UINT cNames,
10280        LCID lcid,
10281        DISPID *rgDispId);
10282
10283    HRESULT (STDMETHODCALLTYPE *Invoke)(
10284        IXMLElementNotificationSink *This,
10285        DISPID dispIdMember,
10286        REFIID riid,
10287        LCID lcid,
10288        WORD wFlags,
10289        DISPPARAMS *pDispParams,
10290        VARIANT *pVarResult,
10291        EXCEPINFO *pExcepInfo,
10292        UINT *puArgErr);
10293
10294    /*** IXMLElementNotificationSink methods ***/
10295    HRESULT (STDMETHODCALLTYPE *ChildAdded)(
10296        IXMLElementNotificationSink *This,
10297        IDispatch *pChildElem);
10298
10299    END_INTERFACE
10300} IXMLElementNotificationSinkVtbl;
10301
10302interface IXMLElementNotificationSink {
10303    CONST_VTBL IXMLElementNotificationSinkVtbl* lpVtbl;
10304};
10305
10306#ifdef COBJMACROS
10307#ifndef WIDL_C_INLINE_WRAPPERS
10308/*** IUnknown methods ***/
10309#define IXMLElementNotificationSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10310#define IXMLElementNotificationSink_AddRef(This) (This)->lpVtbl->AddRef(This)
10311#define IXMLElementNotificationSink_Release(This) (This)->lpVtbl->Release(This)
10312/*** IDispatch methods ***/
10313#define IXMLElementNotificationSink_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10314#define IXMLElementNotificationSink_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10315#define IXMLElementNotificationSink_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10316#define IXMLElementNotificationSink_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10317/*** IXMLElementNotificationSink methods ***/
10318#define IXMLElementNotificationSink_ChildAdded(This,pChildElem) (This)->lpVtbl->ChildAdded(This,pChildElem)
10319#else
10320/*** IUnknown methods ***/
10321static inline HRESULT IXMLElementNotificationSink_QueryInterface(IXMLElementNotificationSink* This,REFIID riid,void **ppvObject) {
10322    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10323}
10324static inline ULONG IXMLElementNotificationSink_AddRef(IXMLElementNotificationSink* This) {
10325    return This->lpVtbl->AddRef(This);
10326}
10327static inline ULONG IXMLElementNotificationSink_Release(IXMLElementNotificationSink* This) {
10328    return This->lpVtbl->Release(This);
10329}
10330/*** IDispatch methods ***/
10331static inline HRESULT IXMLElementNotificationSink_GetTypeInfoCount(IXMLElementNotificationSink* This,UINT *pctinfo) {
10332    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10333}
10334static inline HRESULT IXMLElementNotificationSink_GetTypeInfo(IXMLElementNotificationSink* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10335    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10336}
10337static inline HRESULT IXMLElementNotificationSink_GetIDsOfNames(IXMLElementNotificationSink* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10338    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10339}
10340static inline HRESULT IXMLElementNotificationSink_Invoke(IXMLElementNotificationSink* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10341    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10342}
10343/*** IXMLElementNotificationSink methods ***/
10344static inline HRESULT IXMLElementNotificationSink_ChildAdded(IXMLElementNotificationSink* This,IDispatch *pChildElem) {
10345    return This->lpVtbl->ChildAdded(This,pChildElem);
10346}
10347#endif
10348#endif
10349
10350#endif
10351
10352
10353#endif  /* __IXMLElementNotificationSink_INTERFACE_DEFINED__ */
10354
10355/*****************************************************************************
10356 * XMLDocument coclass
10357 */
10358
10359DEFINE_GUID(CLSID_XMLDocument, 0xcfc399af, 0xd876, 0x11d0, 0x9c,0x10, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
10360
10361#ifdef __cplusplus
10362class DECLSPEC_UUID("cfc399af-d876-11d0-9c10-00c04fc99c8e") XMLDocument;
10363#ifdef __CRT_UUID_DECL
10364__CRT_UUID_DECL(XMLDocument, 0xcfc399af, 0xd876, 0x11d0, 0x9c,0x10, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
10365#endif
10366#endif
10367
10368#endif /* __MSXML_LIBRARY_DEFINED__ */
10369/* Begin additional prototypes for all interfaces */
10370
10371ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
10372unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
10373unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
10374void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
10375ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
10376unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
10377unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
10378void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
10379
10380/* End additional prototypes */
10381
10382#ifdef __cplusplus
10383}
10384#endif
10385
10386#endif /* __msxml_h__ */