master
    1/*** Autogenerated by WIDL 10.4 from include/msxml2.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 __msxml2_h__
   17#define __msxml2_h__
   18
   19/* Forward declarations */
   20
   21#ifndef __IXMLElementCollection_FWD_DEFINED__
   22#define __IXMLElementCollection_FWD_DEFINED__
   23typedef interface IXMLElementCollection IXMLElementCollection;
   24#ifdef __cplusplus
   25interface IXMLElementCollection;
   26#endif /* __cplusplus */
   27#endif
   28
   29#ifndef __IXMLElement_FWD_DEFINED__
   30#define __IXMLElement_FWD_DEFINED__
   31typedef interface IXMLElement IXMLElement;
   32#ifdef __cplusplus
   33interface IXMLElement;
   34#endif /* __cplusplus */
   35#endif
   36
   37#ifndef __IXMLDOMNode_FWD_DEFINED__
   38#define __IXMLDOMNode_FWD_DEFINED__
   39typedef interface IXMLDOMNode IXMLDOMNode;
   40#ifdef __cplusplus
   41interface IXMLDOMNode;
   42#endif /* __cplusplus */
   43#endif
   44
   45#ifndef __IXMLDOMDocument_FWD_DEFINED__
   46#define __IXMLDOMDocument_FWD_DEFINED__
   47typedef interface IXMLDOMDocument IXMLDOMDocument;
   48#ifdef __cplusplus
   49interface IXMLDOMDocument;
   50#endif /* __cplusplus */
   51#endif
   52
   53#ifndef __IXMLDOMSchemaCollection_FWD_DEFINED__
   54#define __IXMLDOMSchemaCollection_FWD_DEFINED__
   55typedef interface IXMLDOMSchemaCollection IXMLDOMSchemaCollection;
   56#ifdef __cplusplus
   57interface IXMLDOMSchemaCollection;
   58#endif /* __cplusplus */
   59#endif
   60
   61#ifndef __IXMLDOMSchemaCollection2_FWD_DEFINED__
   62#define __IXMLDOMSchemaCollection2_FWD_DEFINED__
   63typedef interface IXMLDOMSchemaCollection2 IXMLDOMSchemaCollection2;
   64#ifdef __cplusplus
   65interface IXMLDOMSchemaCollection2;
   66#endif /* __cplusplus */
   67#endif
   68
   69#ifndef __IXMLDOMDocument2_FWD_DEFINED__
   70#define __IXMLDOMDocument2_FWD_DEFINED__
   71typedef interface IXMLDOMDocument2 IXMLDOMDocument2;
   72#ifdef __cplusplus
   73interface IXMLDOMDocument2;
   74#endif /* __cplusplus */
   75#endif
   76
   77#ifndef __IXMLDOMDocument3_FWD_DEFINED__
   78#define __IXMLDOMDocument3_FWD_DEFINED__
   79typedef interface IXMLDOMDocument3 IXMLDOMDocument3;
   80#ifdef __cplusplus
   81interface IXMLDOMDocument3;
   82#endif /* __cplusplus */
   83#endif
   84
   85#ifndef __IXMLDOMNodeList_FWD_DEFINED__
   86#define __IXMLDOMNodeList_FWD_DEFINED__
   87typedef interface IXMLDOMNodeList IXMLDOMNodeList;
   88#ifdef __cplusplus
   89interface IXMLDOMNodeList;
   90#endif /* __cplusplus */
   91#endif
   92
   93#ifndef __IXMLDOMSelection_FWD_DEFINED__
   94#define __IXMLDOMSelection_FWD_DEFINED__
   95typedef interface IXMLDOMSelection IXMLDOMSelection;
   96#ifdef __cplusplus
   97interface IXMLDOMSelection;
   98#endif /* __cplusplus */
   99#endif
  100
  101#ifndef __IXMLDOMNamedNodeMap_FWD_DEFINED__
  102#define __IXMLDOMNamedNodeMap_FWD_DEFINED__
  103typedef interface IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
  104#ifdef __cplusplus
  105interface IXMLDOMNamedNodeMap;
  106#endif /* __cplusplus */
  107#endif
  108
  109#ifndef __IXMLDOMDocumentFragment_FWD_DEFINED__
  110#define __IXMLDOMDocumentFragment_FWD_DEFINED__
  111typedef interface IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
  112#ifdef __cplusplus
  113interface IXMLDOMDocumentFragment;
  114#endif /* __cplusplus */
  115#endif
  116
  117#ifndef __IXMLDOMCharacterData_FWD_DEFINED__
  118#define __IXMLDOMCharacterData_FWD_DEFINED__
  119typedef interface IXMLDOMCharacterData IXMLDOMCharacterData;
  120#ifdef __cplusplus
  121interface IXMLDOMCharacterData;
  122#endif /* __cplusplus */
  123#endif
  124
  125#ifndef __IXMLDOMAttribute_FWD_DEFINED__
  126#define __IXMLDOMAttribute_FWD_DEFINED__
  127typedef interface IXMLDOMAttribute IXMLDOMAttribute;
  128#ifdef __cplusplus
  129interface IXMLDOMAttribute;
  130#endif /* __cplusplus */
  131#endif
  132
  133#ifndef __IXMLDOMElement_FWD_DEFINED__
  134#define __IXMLDOMElement_FWD_DEFINED__
  135typedef interface IXMLDOMElement IXMLDOMElement;
  136#ifdef __cplusplus
  137interface IXMLDOMElement;
  138#endif /* __cplusplus */
  139#endif
  140
  141#ifndef __IXMLDOMText_FWD_DEFINED__
  142#define __IXMLDOMText_FWD_DEFINED__
  143typedef interface IXMLDOMText IXMLDOMText;
  144#ifdef __cplusplus
  145interface IXMLDOMText;
  146#endif /* __cplusplus */
  147#endif
  148
  149#ifndef __IXMLDOMComment_FWD_DEFINED__
  150#define __IXMLDOMComment_FWD_DEFINED__
  151typedef interface IXMLDOMComment IXMLDOMComment;
  152#ifdef __cplusplus
  153interface IXMLDOMComment;
  154#endif /* __cplusplus */
  155#endif
  156
  157#ifndef __IXMLDOMProcessingInstruction_FWD_DEFINED__
  158#define __IXMLDOMProcessingInstruction_FWD_DEFINED__
  159typedef interface IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
  160#ifdef __cplusplus
  161interface IXMLDOMProcessingInstruction;
  162#endif /* __cplusplus */
  163#endif
  164
  165#ifndef __IXMLDOMCDATASection_FWD_DEFINED__
  166#define __IXMLDOMCDATASection_FWD_DEFINED__
  167typedef interface IXMLDOMCDATASection IXMLDOMCDATASection;
  168#ifdef __cplusplus
  169interface IXMLDOMCDATASection;
  170#endif /* __cplusplus */
  171#endif
  172
  173#ifndef __IXMLDOMDocumentType_FWD_DEFINED__
  174#define __IXMLDOMDocumentType_FWD_DEFINED__
  175typedef interface IXMLDOMDocumentType IXMLDOMDocumentType;
  176#ifdef __cplusplus
  177interface IXMLDOMDocumentType;
  178#endif /* __cplusplus */
  179#endif
  180
  181#ifndef __IXMLDOMNotation_FWD_DEFINED__
  182#define __IXMLDOMNotation_FWD_DEFINED__
  183typedef interface IXMLDOMNotation IXMLDOMNotation;
  184#ifdef __cplusplus
  185interface IXMLDOMNotation;
  186#endif /* __cplusplus */
  187#endif
  188
  189#ifndef __IXMLDOMEntity_FWD_DEFINED__
  190#define __IXMLDOMEntity_FWD_DEFINED__
  191typedef interface IXMLDOMEntity IXMLDOMEntity;
  192#ifdef __cplusplus
  193interface IXMLDOMEntity;
  194#endif /* __cplusplus */
  195#endif
  196
  197#ifndef __IXMLDOMEntityReference_FWD_DEFINED__
  198#define __IXMLDOMEntityReference_FWD_DEFINED__
  199typedef interface IXMLDOMEntityReference IXMLDOMEntityReference;
  200#ifdef __cplusplus
  201interface IXMLDOMEntityReference;
  202#endif /* __cplusplus */
  203#endif
  204
  205#ifndef __IXMLDOMImplementation_FWD_DEFINED__
  206#define __IXMLDOMImplementation_FWD_DEFINED__
  207typedef interface IXMLDOMImplementation IXMLDOMImplementation;
  208#ifdef __cplusplus
  209interface IXMLDOMImplementation;
  210#endif /* __cplusplus */
  211#endif
  212
  213#ifndef __IXTLRuntime_FWD_DEFINED__
  214#define __IXTLRuntime_FWD_DEFINED__
  215typedef interface IXTLRuntime IXTLRuntime;
  216#ifdef __cplusplus
  217interface IXTLRuntime;
  218#endif /* __cplusplus */
  219#endif
  220
  221#ifndef __IDSOControl_FWD_DEFINED__
  222#define __IDSOControl_FWD_DEFINED__
  223typedef interface IDSOControl IDSOControl;
  224#ifdef __cplusplus
  225interface IDSOControl;
  226#endif /* __cplusplus */
  227#endif
  228
  229#ifndef __XMLDOMDocumentEvents_FWD_DEFINED__
  230#define __XMLDOMDocumentEvents_FWD_DEFINED__
  231typedef interface XMLDOMDocumentEvents XMLDOMDocumentEvents;
  232#ifdef __cplusplus
  233interface XMLDOMDocumentEvents;
  234#endif /* __cplusplus */
  235#endif
  236
  237#ifndef __IXSLProcessor_FWD_DEFINED__
  238#define __IXSLProcessor_FWD_DEFINED__
  239typedef interface IXSLProcessor IXSLProcessor;
  240#ifdef __cplusplus
  241interface IXSLProcessor;
  242#endif /* __cplusplus */
  243#endif
  244
  245#ifndef __IXSLTemplate_FWD_DEFINED__
  246#define __IXSLTemplate_FWD_DEFINED__
  247typedef interface IXSLTemplate IXSLTemplate;
  248#ifdef __cplusplus
  249interface IXSLTemplate;
  250#endif /* __cplusplus */
  251#endif
  252
  253#ifndef __IXMLHTTPRequest_FWD_DEFINED__
  254#define __IXMLHTTPRequest_FWD_DEFINED__
  255typedef interface IXMLHTTPRequest IXMLHTTPRequest;
  256#ifdef __cplusplus
  257interface IXMLHTTPRequest;
  258#endif /* __cplusplus */
  259#endif
  260
  261#ifndef __IServerXMLHTTPRequest_FWD_DEFINED__
  262#define __IServerXMLHTTPRequest_FWD_DEFINED__
  263typedef interface IServerXMLHTTPRequest IServerXMLHTTPRequest;
  264#ifdef __cplusplus
  265interface IServerXMLHTTPRequest;
  266#endif /* __cplusplus */
  267#endif
  268
  269#ifndef __IServerXMLHTTPRequest2_FWD_DEFINED__
  270#define __IServerXMLHTTPRequest2_FWD_DEFINED__
  271typedef interface IServerXMLHTTPRequest2 IServerXMLHTTPRequest2;
  272#ifdef __cplusplus
  273interface IServerXMLHTTPRequest2;
  274#endif /* __cplusplus */
  275#endif
  276
  277#ifndef __IXMLDOMParseError_FWD_DEFINED__
  278#define __IXMLDOMParseError_FWD_DEFINED__
  279typedef interface IXMLDOMParseError IXMLDOMParseError;
  280#ifdef __cplusplus
  281interface IXMLDOMParseError;
  282#endif /* __cplusplus */
  283#endif
  284
  285#ifndef __IXMLDOMParseError2_FWD_DEFINED__
  286#define __IXMLDOMParseError2_FWD_DEFINED__
  287typedef interface IXMLDOMParseError2 IXMLDOMParseError2;
  288#ifdef __cplusplus
  289interface IXMLDOMParseError2;
  290#endif /* __cplusplus */
  291#endif
  292
  293#ifndef __IXMLDOMParseErrorCollection_FWD_DEFINED__
  294#define __IXMLDOMParseErrorCollection_FWD_DEFINED__
  295typedef interface IXMLDOMParseErrorCollection IXMLDOMParseErrorCollection;
  296#ifdef __cplusplus
  297interface IXMLDOMParseErrorCollection;
  298#endif /* __cplusplus */
  299#endif
  300
  301#ifndef __DOMDocument26_FWD_DEFINED__
  302#define __DOMDocument26_FWD_DEFINED__
  303#ifdef __cplusplus
  304typedef class DOMDocument26 DOMDocument26;
  305#else
  306typedef struct DOMDocument26 DOMDocument26;
  307#endif /* defined __cplusplus */
  308#endif /* defined __DOMDocument26_FWD_DEFINED__ */
  309
  310#ifndef __DOMDocument30_FWD_DEFINED__
  311#define __DOMDocument30_FWD_DEFINED__
  312#ifdef __cplusplus
  313typedef class DOMDocument30 DOMDocument30;
  314#else
  315typedef struct DOMDocument30 DOMDocument30;
  316#endif /* defined __cplusplus */
  317#endif /* defined __DOMDocument30_FWD_DEFINED__ */
  318
  319#ifndef __DOMDocument40_FWD_DEFINED__
  320#define __DOMDocument40_FWD_DEFINED__
  321#ifdef __cplusplus
  322typedef class DOMDocument40 DOMDocument40;
  323#else
  324typedef struct DOMDocument40 DOMDocument40;
  325#endif /* defined __cplusplus */
  326#endif /* defined __DOMDocument40_FWD_DEFINED__ */
  327
  328#ifndef __DOMDocument60_FWD_DEFINED__
  329#define __DOMDocument60_FWD_DEFINED__
  330#ifdef __cplusplus
  331typedef class DOMDocument60 DOMDocument60;
  332#else
  333typedef struct DOMDocument60 DOMDocument60;
  334#endif /* defined __cplusplus */
  335#endif /* defined __DOMDocument60_FWD_DEFINED__ */
  336
  337#ifndef __DOMDocument_FWD_DEFINED__
  338#define __DOMDocument_FWD_DEFINED__
  339#ifdef __cplusplus
  340typedef class DOMDocument DOMDocument;
  341#else
  342typedef struct DOMDocument DOMDocument;
  343#endif /* defined __cplusplus */
  344#endif /* defined __DOMDocument_FWD_DEFINED__ */
  345
  346#ifndef __FreeThreadedDOMDocument26_FWD_DEFINED__
  347#define __FreeThreadedDOMDocument26_FWD_DEFINED__
  348#ifdef __cplusplus
  349typedef class FreeThreadedDOMDocument26 FreeThreadedDOMDocument26;
  350#else
  351typedef struct FreeThreadedDOMDocument26 FreeThreadedDOMDocument26;
  352#endif /* defined __cplusplus */
  353#endif /* defined __FreeThreadedDOMDocument26_FWD_DEFINED__ */
  354
  355#ifndef __FreeThreadedDOMDocument30_FWD_DEFINED__
  356#define __FreeThreadedDOMDocument30_FWD_DEFINED__
  357#ifdef __cplusplus
  358typedef class FreeThreadedDOMDocument30 FreeThreadedDOMDocument30;
  359#else
  360typedef struct FreeThreadedDOMDocument30 FreeThreadedDOMDocument30;
  361#endif /* defined __cplusplus */
  362#endif /* defined __FreeThreadedDOMDocument30_FWD_DEFINED__ */
  363
  364#ifndef __FreeThreadedDOMDocument40_FWD_DEFINED__
  365#define __FreeThreadedDOMDocument40_FWD_DEFINED__
  366#ifdef __cplusplus
  367typedef class FreeThreadedDOMDocument40 FreeThreadedDOMDocument40;
  368#else
  369typedef struct FreeThreadedDOMDocument40 FreeThreadedDOMDocument40;
  370#endif /* defined __cplusplus */
  371#endif /* defined __FreeThreadedDOMDocument40_FWD_DEFINED__ */
  372
  373#ifndef __FreeThreadedDOMDocument60_FWD_DEFINED__
  374#define __FreeThreadedDOMDocument60_FWD_DEFINED__
  375#ifdef __cplusplus
  376typedef class FreeThreadedDOMDocument60 FreeThreadedDOMDocument60;
  377#else
  378typedef struct FreeThreadedDOMDocument60 FreeThreadedDOMDocument60;
  379#endif /* defined __cplusplus */
  380#endif /* defined __FreeThreadedDOMDocument60_FWD_DEFINED__ */
  381
  382#ifndef __FreeThreadedDOMDocument_FWD_DEFINED__
  383#define __FreeThreadedDOMDocument_FWD_DEFINED__
  384#ifdef __cplusplus
  385typedef class FreeThreadedDOMDocument FreeThreadedDOMDocument;
  386#else
  387typedef struct FreeThreadedDOMDocument FreeThreadedDOMDocument;
  388#endif /* defined __cplusplus */
  389#endif /* defined __FreeThreadedDOMDocument_FWD_DEFINED__ */
  390
  391#ifndef __XMLHTTP26_FWD_DEFINED__
  392#define __XMLHTTP26_FWD_DEFINED__
  393#ifdef __cplusplus
  394typedef class XMLHTTP26 XMLHTTP26;
  395#else
  396typedef struct XMLHTTP26 XMLHTTP26;
  397#endif /* defined __cplusplus */
  398#endif /* defined __XMLHTTP26_FWD_DEFINED__ */
  399
  400#ifndef __XMLHTTP30_FWD_DEFINED__
  401#define __XMLHTTP30_FWD_DEFINED__
  402#ifdef __cplusplus
  403typedef class XMLHTTP30 XMLHTTP30;
  404#else
  405typedef struct XMLHTTP30 XMLHTTP30;
  406#endif /* defined __cplusplus */
  407#endif /* defined __XMLHTTP30_FWD_DEFINED__ */
  408
  409#ifndef __XMLHTTP40_FWD_DEFINED__
  410#define __XMLHTTP40_FWD_DEFINED__
  411#ifdef __cplusplus
  412typedef class XMLHTTP40 XMLHTTP40;
  413#else
  414typedef struct XMLHTTP40 XMLHTTP40;
  415#endif /* defined __cplusplus */
  416#endif /* defined __XMLHTTP40_FWD_DEFINED__ */
  417
  418#ifndef __XMLHTTP60_FWD_DEFINED__
  419#define __XMLHTTP60_FWD_DEFINED__
  420#ifdef __cplusplus
  421typedef class XMLHTTP60 XMLHTTP60;
  422#else
  423typedef struct XMLHTTP60 XMLHTTP60;
  424#endif /* defined __cplusplus */
  425#endif /* defined __XMLHTTP60_FWD_DEFINED__ */
  426
  427#ifndef __XMLHTTP_FWD_DEFINED__
  428#define __XMLHTTP_FWD_DEFINED__
  429#ifdef __cplusplus
  430typedef class XMLHTTP XMLHTTP;
  431#else
  432typedef struct XMLHTTP XMLHTTP;
  433#endif /* defined __cplusplus */
  434#endif /* defined __XMLHTTP_FWD_DEFINED__ */
  435
  436#ifndef __ServerXMLHTTP30_FWD_DEFINED__
  437#define __ServerXMLHTTP30_FWD_DEFINED__
  438#ifdef __cplusplus
  439typedef class ServerXMLHTTP30 ServerXMLHTTP30;
  440#else
  441typedef struct ServerXMLHTTP30 ServerXMLHTTP30;
  442#endif /* defined __cplusplus */
  443#endif /* defined __ServerXMLHTTP30_FWD_DEFINED__ */
  444
  445#ifndef __ServerXMLHTTP40_FWD_DEFINED__
  446#define __ServerXMLHTTP40_FWD_DEFINED__
  447#ifdef __cplusplus
  448typedef class ServerXMLHTTP40 ServerXMLHTTP40;
  449#else
  450typedef struct ServerXMLHTTP40 ServerXMLHTTP40;
  451#endif /* defined __cplusplus */
  452#endif /* defined __ServerXMLHTTP40_FWD_DEFINED__ */
  453
  454#ifndef __ServerXMLHTTP60_FWD_DEFINED__
  455#define __ServerXMLHTTP60_FWD_DEFINED__
  456#ifdef __cplusplus
  457typedef class ServerXMLHTTP60 ServerXMLHTTP60;
  458#else
  459typedef struct ServerXMLHTTP60 ServerXMLHTTP60;
  460#endif /* defined __cplusplus */
  461#endif /* defined __ServerXMLHTTP60_FWD_DEFINED__ */
  462
  463#ifndef __ServerXMLHTTP_FWD_DEFINED__
  464#define __ServerXMLHTTP_FWD_DEFINED__
  465#ifdef __cplusplus
  466typedef class ServerXMLHTTP ServerXMLHTTP;
  467#else
  468typedef struct ServerXMLHTTP ServerXMLHTTP;
  469#endif /* defined __cplusplus */
  470#endif /* defined __ServerXMLHTTP_FWD_DEFINED__ */
  471
  472#ifndef __XMLSchemaCache26_FWD_DEFINED__
  473#define __XMLSchemaCache26_FWD_DEFINED__
  474#ifdef __cplusplus
  475typedef class XMLSchemaCache26 XMLSchemaCache26;
  476#else
  477typedef struct XMLSchemaCache26 XMLSchemaCache26;
  478#endif /* defined __cplusplus */
  479#endif /* defined __XMLSchemaCache26_FWD_DEFINED__ */
  480
  481#ifndef __XMLSchemaCache30_FWD_DEFINED__
  482#define __XMLSchemaCache30_FWD_DEFINED__
  483#ifdef __cplusplus
  484typedef class XMLSchemaCache30 XMLSchemaCache30;
  485#else
  486typedef struct XMLSchemaCache30 XMLSchemaCache30;
  487#endif /* defined __cplusplus */
  488#endif /* defined __XMLSchemaCache30_FWD_DEFINED__ */
  489
  490#ifndef __XMLSchemaCache40_FWD_DEFINED__
  491#define __XMLSchemaCache40_FWD_DEFINED__
  492#ifdef __cplusplus
  493typedef class XMLSchemaCache40 XMLSchemaCache40;
  494#else
  495typedef struct XMLSchemaCache40 XMLSchemaCache40;
  496#endif /* defined __cplusplus */
  497#endif /* defined __XMLSchemaCache40_FWD_DEFINED__ */
  498
  499#ifndef __XMLSchemaCache_FWD_DEFINED__
  500#define __XMLSchemaCache_FWD_DEFINED__
  501#ifdef __cplusplus
  502typedef class XMLSchemaCache XMLSchemaCache;
  503#else
  504typedef struct XMLSchemaCache XMLSchemaCache;
  505#endif /* defined __cplusplus */
  506#endif /* defined __XMLSchemaCache_FWD_DEFINED__ */
  507
  508#ifndef __XSLTemplate26_FWD_DEFINED__
  509#define __XSLTemplate26_FWD_DEFINED__
  510#ifdef __cplusplus
  511typedef class XSLTemplate26 XSLTemplate26;
  512#else
  513typedef struct XSLTemplate26 XSLTemplate26;
  514#endif /* defined __cplusplus */
  515#endif /* defined __XSLTemplate26_FWD_DEFINED__ */
  516
  517#ifndef __XSLTemplate30_FWD_DEFINED__
  518#define __XSLTemplate30_FWD_DEFINED__
  519#ifdef __cplusplus
  520typedef class XSLTemplate30 XSLTemplate30;
  521#else
  522typedef struct XSLTemplate30 XSLTemplate30;
  523#endif /* defined __cplusplus */
  524#endif /* defined __XSLTemplate30_FWD_DEFINED__ */
  525
  526#ifndef __XSLTemplate40_FWD_DEFINED__
  527#define __XSLTemplate40_FWD_DEFINED__
  528#ifdef __cplusplus
  529typedef class XSLTemplate40 XSLTemplate40;
  530#else
  531typedef struct XSLTemplate40 XSLTemplate40;
  532#endif /* defined __cplusplus */
  533#endif /* defined __XSLTemplate40_FWD_DEFINED__ */
  534
  535#ifndef __XSLTemplate60_FWD_DEFINED__
  536#define __XSLTemplate60_FWD_DEFINED__
  537#ifdef __cplusplus
  538typedef class XSLTemplate60 XSLTemplate60;
  539#else
  540typedef struct XSLTemplate60 XSLTemplate60;
  541#endif /* defined __cplusplus */
  542#endif /* defined __XSLTemplate60_FWD_DEFINED__ */
  543
  544#ifndef __XSLTemplate_FWD_DEFINED__
  545#define __XSLTemplate_FWD_DEFINED__
  546#ifdef __cplusplus
  547typedef class XSLTemplate XSLTemplate;
  548#else
  549typedef struct XSLTemplate XSLTemplate;
  550#endif /* defined __cplusplus */
  551#endif /* defined __XSLTemplate_FWD_DEFINED__ */
  552
  553#ifndef __ISAXAttributes_FWD_DEFINED__
  554#define __ISAXAttributes_FWD_DEFINED__
  555typedef interface ISAXAttributes ISAXAttributes;
  556#ifdef __cplusplus
  557interface ISAXAttributes;
  558#endif /* __cplusplus */
  559#endif
  560
  561#ifndef __ISAXContentHandler_FWD_DEFINED__
  562#define __ISAXContentHandler_FWD_DEFINED__
  563typedef interface ISAXContentHandler ISAXContentHandler;
  564#ifdef __cplusplus
  565interface ISAXContentHandler;
  566#endif /* __cplusplus */
  567#endif
  568
  569#ifndef __ISAXDeclHandler_FWD_DEFINED__
  570#define __ISAXDeclHandler_FWD_DEFINED__
  571typedef interface ISAXDeclHandler ISAXDeclHandler;
  572#ifdef __cplusplus
  573interface ISAXDeclHandler;
  574#endif /* __cplusplus */
  575#endif
  576
  577#ifndef __ISAXDTDHandler_FWD_DEFINED__
  578#define __ISAXDTDHandler_FWD_DEFINED__
  579typedef interface ISAXDTDHandler ISAXDTDHandler;
  580#ifdef __cplusplus
  581interface ISAXDTDHandler;
  582#endif /* __cplusplus */
  583#endif
  584
  585#ifndef __ISAXEntityResolver_FWD_DEFINED__
  586#define __ISAXEntityResolver_FWD_DEFINED__
  587typedef interface ISAXEntityResolver ISAXEntityResolver;
  588#ifdef __cplusplus
  589interface ISAXEntityResolver;
  590#endif /* __cplusplus */
  591#endif
  592
  593#ifndef __ISAXErrorHandler_FWD_DEFINED__
  594#define __ISAXErrorHandler_FWD_DEFINED__
  595typedef interface ISAXErrorHandler ISAXErrorHandler;
  596#ifdef __cplusplus
  597interface ISAXErrorHandler;
  598#endif /* __cplusplus */
  599#endif
  600
  601#ifndef __ISAXLexicalHandler_FWD_DEFINED__
  602#define __ISAXLexicalHandler_FWD_DEFINED__
  603typedef interface ISAXLexicalHandler ISAXLexicalHandler;
  604#ifdef __cplusplus
  605interface ISAXLexicalHandler;
  606#endif /* __cplusplus */
  607#endif
  608
  609#ifndef __ISAXLocator_FWD_DEFINED__
  610#define __ISAXLocator_FWD_DEFINED__
  611typedef interface ISAXLocator ISAXLocator;
  612#ifdef __cplusplus
  613interface ISAXLocator;
  614#endif /* __cplusplus */
  615#endif
  616
  617#ifndef __ISAXXMLReader_FWD_DEFINED__
  618#define __ISAXXMLReader_FWD_DEFINED__
  619typedef interface ISAXXMLReader ISAXXMLReader;
  620#ifdef __cplusplus
  621interface ISAXXMLReader;
  622#endif /* __cplusplus */
  623#endif
  624
  625#ifndef __ISAXXMLFilter_FWD_DEFINED__
  626#define __ISAXXMLFilter_FWD_DEFINED__
  627typedef interface ISAXXMLFilter ISAXXMLFilter;
  628#ifdef __cplusplus
  629interface ISAXXMLFilter;
  630#endif /* __cplusplus */
  631#endif
  632
  633#ifndef __IVBSAXAttributes_FWD_DEFINED__
  634#define __IVBSAXAttributes_FWD_DEFINED__
  635typedef interface IVBSAXAttributes IVBSAXAttributes;
  636#ifdef __cplusplus
  637interface IVBSAXAttributes;
  638#endif /* __cplusplus */
  639#endif
  640
  641#ifndef __IVBSAXContentHandler_FWD_DEFINED__
  642#define __IVBSAXContentHandler_FWD_DEFINED__
  643typedef interface IVBSAXContentHandler IVBSAXContentHandler;
  644#ifdef __cplusplus
  645interface IVBSAXContentHandler;
  646#endif /* __cplusplus */
  647#endif
  648
  649#ifndef __IVBSAXDeclHandler_FWD_DEFINED__
  650#define __IVBSAXDeclHandler_FWD_DEFINED__
  651typedef interface IVBSAXDeclHandler IVBSAXDeclHandler;
  652#ifdef __cplusplus
  653interface IVBSAXDeclHandler;
  654#endif /* __cplusplus */
  655#endif
  656
  657#ifndef __IVBSAXDTDHandler_FWD_DEFINED__
  658#define __IVBSAXDTDHandler_FWD_DEFINED__
  659typedef interface IVBSAXDTDHandler IVBSAXDTDHandler;
  660#ifdef __cplusplus
  661interface IVBSAXDTDHandler;
  662#endif /* __cplusplus */
  663#endif
  664
  665#ifndef __IVBSAXEntityResolver_FWD_DEFINED__
  666#define __IVBSAXEntityResolver_FWD_DEFINED__
  667typedef interface IVBSAXEntityResolver IVBSAXEntityResolver;
  668#ifdef __cplusplus
  669interface IVBSAXEntityResolver;
  670#endif /* __cplusplus */
  671#endif
  672
  673#ifndef __IVBSAXErrorHandler_FWD_DEFINED__
  674#define __IVBSAXErrorHandler_FWD_DEFINED__
  675typedef interface IVBSAXErrorHandler IVBSAXErrorHandler;
  676#ifdef __cplusplus
  677interface IVBSAXErrorHandler;
  678#endif /* __cplusplus */
  679#endif
  680
  681#ifndef __IVBSAXLexicalHandler_FWD_DEFINED__
  682#define __IVBSAXLexicalHandler_FWD_DEFINED__
  683typedef interface IVBSAXLexicalHandler IVBSAXLexicalHandler;
  684#ifdef __cplusplus
  685interface IVBSAXLexicalHandler;
  686#endif /* __cplusplus */
  687#endif
  688
  689#ifndef __IVBSAXLocator_FWD_DEFINED__
  690#define __IVBSAXLocator_FWD_DEFINED__
  691typedef interface IVBSAXLocator IVBSAXLocator;
  692#ifdef __cplusplus
  693interface IVBSAXLocator;
  694#endif /* __cplusplus */
  695#endif
  696
  697#ifndef __IVBSAXXMLFilter_FWD_DEFINED__
  698#define __IVBSAXXMLFilter_FWD_DEFINED__
  699typedef interface IVBSAXXMLFilter IVBSAXXMLFilter;
  700#ifdef __cplusplus
  701interface IVBSAXXMLFilter;
  702#endif /* __cplusplus */
  703#endif
  704
  705#ifndef __IVBSAXXMLReader_FWD_DEFINED__
  706#define __IVBSAXXMLReader_FWD_DEFINED__
  707typedef interface IVBSAXXMLReader IVBSAXXMLReader;
  708#ifdef __cplusplus
  709interface IVBSAXXMLReader;
  710#endif /* __cplusplus */
  711#endif
  712
  713#ifndef __IMXAttributes_FWD_DEFINED__
  714#define __IMXAttributes_FWD_DEFINED__
  715typedef interface IMXAttributes IMXAttributes;
  716#ifdef __cplusplus
  717interface IMXAttributes;
  718#endif /* __cplusplus */
  719#endif
  720
  721#ifndef __IMXSchemaDeclHandler_FWD_DEFINED__
  722#define __IMXSchemaDeclHandler_FWD_DEFINED__
  723typedef interface IMXSchemaDeclHandler IMXSchemaDeclHandler;
  724#ifdef __cplusplus
  725interface IMXSchemaDeclHandler;
  726#endif /* __cplusplus */
  727#endif
  728
  729#ifndef __IMXReaderControl_FWD_DEFINED__
  730#define __IMXReaderControl_FWD_DEFINED__
  731typedef interface IMXReaderControl IMXReaderControl;
  732#ifdef __cplusplus
  733interface IMXReaderControl;
  734#endif /* __cplusplus */
  735#endif
  736
  737#ifndef __IMXWriter_FWD_DEFINED__
  738#define __IMXWriter_FWD_DEFINED__
  739typedef interface IMXWriter IMXWriter;
  740#ifdef __cplusplus
  741interface IMXWriter;
  742#endif /* __cplusplus */
  743#endif
  744
  745#ifndef __IMXNamespacePrefixes_FWD_DEFINED__
  746#define __IMXNamespacePrefixes_FWD_DEFINED__
  747typedef interface IMXNamespacePrefixes IMXNamespacePrefixes;
  748#ifdef __cplusplus
  749interface IMXNamespacePrefixes;
  750#endif /* __cplusplus */
  751#endif
  752
  753#ifndef __IMXNamespaceManager_FWD_DEFINED__
  754#define __IMXNamespaceManager_FWD_DEFINED__
  755typedef interface IMXNamespaceManager IMXNamespaceManager;
  756#ifdef __cplusplus
  757interface IMXNamespaceManager;
  758#endif /* __cplusplus */
  759#endif
  760
  761#ifndef __IVBMXNamespaceManager_FWD_DEFINED__
  762#define __IVBMXNamespaceManager_FWD_DEFINED__
  763typedef interface IVBMXNamespaceManager IVBMXNamespaceManager;
  764#ifdef __cplusplus
  765interface IVBMXNamespaceManager;
  766#endif /* __cplusplus */
  767#endif
  768
  769#ifndef __IMXXMLFilter_FWD_DEFINED__
  770#define __IMXXMLFilter_FWD_DEFINED__
  771typedef interface IMXXMLFilter IMXXMLFilter;
  772#ifdef __cplusplus
  773interface IMXXMLFilter;
  774#endif /* __cplusplus */
  775#endif
  776
  777#ifndef __ISchemaStringCollection_FWD_DEFINED__
  778#define __ISchemaStringCollection_FWD_DEFINED__
  779typedef interface ISchemaStringCollection ISchemaStringCollection;
  780#ifdef __cplusplus
  781interface ISchemaStringCollection;
  782#endif /* __cplusplus */
  783#endif
  784
  785#ifndef __ISchemaItemCollection_FWD_DEFINED__
  786#define __ISchemaItemCollection_FWD_DEFINED__
  787typedef interface ISchemaItemCollection ISchemaItemCollection;
  788#ifdef __cplusplus
  789interface ISchemaItemCollection;
  790#endif /* __cplusplus */
  791#endif
  792
  793#ifndef __ISchemaItem_FWD_DEFINED__
  794#define __ISchemaItem_FWD_DEFINED__
  795typedef interface ISchemaItem ISchemaItem;
  796#ifdef __cplusplus
  797interface ISchemaItem;
  798#endif /* __cplusplus */
  799#endif
  800
  801#ifndef __ISchema_FWD_DEFINED__
  802#define __ISchema_FWD_DEFINED__
  803typedef interface ISchema ISchema;
  804#ifdef __cplusplus
  805interface ISchema;
  806#endif /* __cplusplus */
  807#endif
  808
  809#ifndef __ISchemaParticle_FWD_DEFINED__
  810#define __ISchemaParticle_FWD_DEFINED__
  811typedef interface ISchemaParticle ISchemaParticle;
  812#ifdef __cplusplus
  813interface ISchemaParticle;
  814#endif /* __cplusplus */
  815#endif
  816
  817#ifndef __ISchemaAttribute_FWD_DEFINED__
  818#define __ISchemaAttribute_FWD_DEFINED__
  819typedef interface ISchemaAttribute ISchemaAttribute;
  820#ifdef __cplusplus
  821interface ISchemaAttribute;
  822#endif /* __cplusplus */
  823#endif
  824
  825#ifndef __ISchemaElement_FWD_DEFINED__
  826#define __ISchemaElement_FWD_DEFINED__
  827typedef interface ISchemaElement ISchemaElement;
  828#ifdef __cplusplus
  829interface ISchemaElement;
  830#endif /* __cplusplus */
  831#endif
  832
  833#ifndef __ISchemaType_FWD_DEFINED__
  834#define __ISchemaType_FWD_DEFINED__
  835typedef interface ISchemaType ISchemaType;
  836#ifdef __cplusplus
  837interface ISchemaType;
  838#endif /* __cplusplus */
  839#endif
  840
  841#ifndef __ISchemaComplexType_FWD_DEFINED__
  842#define __ISchemaComplexType_FWD_DEFINED__
  843typedef interface ISchemaComplexType ISchemaComplexType;
  844#ifdef __cplusplus
  845interface ISchemaComplexType;
  846#endif /* __cplusplus */
  847#endif
  848
  849#ifndef __ISchemaAttributeGroup_FWD_DEFINED__
  850#define __ISchemaAttributeGroup_FWD_DEFINED__
  851typedef interface ISchemaAttributeGroup ISchemaAttributeGroup;
  852#ifdef __cplusplus
  853interface ISchemaAttributeGroup;
  854#endif /* __cplusplus */
  855#endif
  856
  857#ifndef __ISchemaModelGroup_FWD_DEFINED__
  858#define __ISchemaModelGroup_FWD_DEFINED__
  859typedef interface ISchemaModelGroup ISchemaModelGroup;
  860#ifdef __cplusplus
  861interface ISchemaModelGroup;
  862#endif /* __cplusplus */
  863#endif
  864
  865#ifndef __ISchemaAny_FWD_DEFINED__
  866#define __ISchemaAny_FWD_DEFINED__
  867typedef interface ISchemaAny ISchemaAny;
  868#ifdef __cplusplus
  869interface ISchemaAny;
  870#endif /* __cplusplus */
  871#endif
  872
  873#ifndef __ISchemaIdentityConstraint_FWD_DEFINED__
  874#define __ISchemaIdentityConstraint_FWD_DEFINED__
  875typedef interface ISchemaIdentityConstraint ISchemaIdentityConstraint;
  876#ifdef __cplusplus
  877interface ISchemaIdentityConstraint;
  878#endif /* __cplusplus */
  879#endif
  880
  881#ifndef __ISchemaNotation_FWD_DEFINED__
  882#define __ISchemaNotation_FWD_DEFINED__
  883typedef interface ISchemaNotation ISchemaNotation;
  884#ifdef __cplusplus
  885interface ISchemaNotation;
  886#endif /* __cplusplus */
  887#endif
  888
  889#ifndef __SAXXMLReader30_FWD_DEFINED__
  890#define __SAXXMLReader30_FWD_DEFINED__
  891#ifdef __cplusplus
  892typedef class SAXXMLReader30 SAXXMLReader30;
  893#else
  894typedef struct SAXXMLReader30 SAXXMLReader30;
  895#endif /* defined __cplusplus */
  896#endif /* defined __SAXXMLReader30_FWD_DEFINED__ */
  897
  898#ifndef __SAXXMLReader40_FWD_DEFINED__
  899#define __SAXXMLReader40_FWD_DEFINED__
  900#ifdef __cplusplus
  901typedef class SAXXMLReader40 SAXXMLReader40;
  902#else
  903typedef struct SAXXMLReader40 SAXXMLReader40;
  904#endif /* defined __cplusplus */
  905#endif /* defined __SAXXMLReader40_FWD_DEFINED__ */
  906
  907#ifndef __SAXXMLReader60_FWD_DEFINED__
  908#define __SAXXMLReader60_FWD_DEFINED__
  909#ifdef __cplusplus
  910typedef class SAXXMLReader60 SAXXMLReader60;
  911#else
  912typedef struct SAXXMLReader60 SAXXMLReader60;
  913#endif /* defined __cplusplus */
  914#endif /* defined __SAXXMLReader60_FWD_DEFINED__ */
  915
  916#ifndef __SAXXMLReader_FWD_DEFINED__
  917#define __SAXXMLReader_FWD_DEFINED__
  918#ifdef __cplusplus
  919typedef class SAXXMLReader SAXXMLReader;
  920#else
  921typedef struct SAXXMLReader SAXXMLReader;
  922#endif /* defined __cplusplus */
  923#endif /* defined __SAXXMLReader_FWD_DEFINED__ */
  924
  925#ifndef __MXHTMLWriter_FWD_DEFINED__
  926#define __MXHTMLWriter_FWD_DEFINED__
  927#ifdef __cplusplus
  928typedef class MXHTMLWriter MXHTMLWriter;
  929#else
  930typedef struct MXHTMLWriter MXHTMLWriter;
  931#endif /* defined __cplusplus */
  932#endif /* defined __MXHTMLWriter_FWD_DEFINED__ */
  933
  934#ifndef __MXHTMLWriter30_FWD_DEFINED__
  935#define __MXHTMLWriter30_FWD_DEFINED__
  936#ifdef __cplusplus
  937typedef class MXHTMLWriter30 MXHTMLWriter30;
  938#else
  939typedef struct MXHTMLWriter30 MXHTMLWriter30;
  940#endif /* defined __cplusplus */
  941#endif /* defined __MXHTMLWriter30_FWD_DEFINED__ */
  942
  943#ifndef __MXHTMLWriter40_FWD_DEFINED__
  944#define __MXHTMLWriter40_FWD_DEFINED__
  945#ifdef __cplusplus
  946typedef class MXHTMLWriter40 MXHTMLWriter40;
  947#else
  948typedef struct MXHTMLWriter40 MXHTMLWriter40;
  949#endif /* defined __cplusplus */
  950#endif /* defined __MXHTMLWriter40_FWD_DEFINED__ */
  951
  952#ifndef __MXHTMLWriter60_FWD_DEFINED__
  953#define __MXHTMLWriter60_FWD_DEFINED__
  954#ifdef __cplusplus
  955typedef class MXHTMLWriter60 MXHTMLWriter60;
  956#else
  957typedef struct MXHTMLWriter60 MXHTMLWriter60;
  958#endif /* defined __cplusplus */
  959#endif /* defined __MXHTMLWriter60_FWD_DEFINED__ */
  960
  961#ifndef __MXXMLWriter30_FWD_DEFINED__
  962#define __MXXMLWriter30_FWD_DEFINED__
  963#ifdef __cplusplus
  964typedef class MXXMLWriter30 MXXMLWriter30;
  965#else
  966typedef struct MXXMLWriter30 MXXMLWriter30;
  967#endif /* defined __cplusplus */
  968#endif /* defined __MXXMLWriter30_FWD_DEFINED__ */
  969
  970#ifndef __MXXMLWriter40_FWD_DEFINED__
  971#define __MXXMLWriter40_FWD_DEFINED__
  972#ifdef __cplusplus
  973typedef class MXXMLWriter40 MXXMLWriter40;
  974#else
  975typedef struct MXXMLWriter40 MXXMLWriter40;
  976#endif /* defined __cplusplus */
  977#endif /* defined __MXXMLWriter40_FWD_DEFINED__ */
  978
  979#ifndef __MXXMLWriter60_FWD_DEFINED__
  980#define __MXXMLWriter60_FWD_DEFINED__
  981#ifdef __cplusplus
  982typedef class MXXMLWriter60 MXXMLWriter60;
  983#else
  984typedef struct MXXMLWriter60 MXXMLWriter60;
  985#endif /* defined __cplusplus */
  986#endif /* defined __MXXMLWriter60_FWD_DEFINED__ */
  987
  988#ifndef __MXXMLWriter_FWD_DEFINED__
  989#define __MXXMLWriter_FWD_DEFINED__
  990#ifdef __cplusplus
  991typedef class MXXMLWriter MXXMLWriter;
  992#else
  993typedef struct MXXMLWriter MXXMLWriter;
  994#endif /* defined __cplusplus */
  995#endif /* defined __MXXMLWriter_FWD_DEFINED__ */
  996
  997#ifndef __MXNamespaceManager_FWD_DEFINED__
  998#define __MXNamespaceManager_FWD_DEFINED__
  999#ifdef __cplusplus
 1000typedef class MXNamespaceManager MXNamespaceManager;
 1001#else
 1002typedef struct MXNamespaceManager MXNamespaceManager;
 1003#endif /* defined __cplusplus */
 1004#endif /* defined __MXNamespaceManager_FWD_DEFINED__ */
 1005
 1006#ifndef __MXNamespaceManager40_FWD_DEFINED__
 1007#define __MXNamespaceManager40_FWD_DEFINED__
 1008#ifdef __cplusplus
 1009typedef class MXNamespaceManager40 MXNamespaceManager40;
 1010#else
 1011typedef struct MXNamespaceManager40 MXNamespaceManager40;
 1012#endif /* defined __cplusplus */
 1013#endif /* defined __MXNamespaceManager40_FWD_DEFINED__ */
 1014
 1015#ifndef __MXNamespaceManager60_FWD_DEFINED__
 1016#define __MXNamespaceManager60_FWD_DEFINED__
 1017#ifdef __cplusplus
 1018typedef class MXNamespaceManager60 MXNamespaceManager60;
 1019#else
 1020typedef struct MXNamespaceManager60 MXNamespaceManager60;
 1021#endif /* defined __cplusplus */
 1022#endif /* defined __MXNamespaceManager60_FWD_DEFINED__ */
 1023
 1024#ifndef __SAXAttributes30_FWD_DEFINED__
 1025#define __SAXAttributes30_FWD_DEFINED__
 1026#ifdef __cplusplus
 1027typedef class SAXAttributes30 SAXAttributes30;
 1028#else
 1029typedef struct SAXAttributes30 SAXAttributes30;
 1030#endif /* defined __cplusplus */
 1031#endif /* defined __SAXAttributes30_FWD_DEFINED__ */
 1032
 1033#ifndef __SAXAttributes40_FWD_DEFINED__
 1034#define __SAXAttributes40_FWD_DEFINED__
 1035#ifdef __cplusplus
 1036typedef class SAXAttributes40 SAXAttributes40;
 1037#else
 1038typedef struct SAXAttributes40 SAXAttributes40;
 1039#endif /* defined __cplusplus */
 1040#endif /* defined __SAXAttributes40_FWD_DEFINED__ */
 1041
 1042#ifndef __SAXAttributes60_FWD_DEFINED__
 1043#define __SAXAttributes60_FWD_DEFINED__
 1044#ifdef __cplusplus
 1045typedef class SAXAttributes60 SAXAttributes60;
 1046#else
 1047typedef struct SAXAttributes60 SAXAttributes60;
 1048#endif /* defined __cplusplus */
 1049#endif /* defined __SAXAttributes60_FWD_DEFINED__ */
 1050
 1051#ifndef __SAXAttributes_FWD_DEFINED__
 1052#define __SAXAttributes_FWD_DEFINED__
 1053#ifdef __cplusplus
 1054typedef class SAXAttributes SAXAttributes;
 1055#else
 1056typedef struct SAXAttributes SAXAttributes;
 1057#endif /* defined __cplusplus */
 1058#endif /* defined __SAXAttributes_FWD_DEFINED__ */
 1059
 1060/* Headers for imported files */
 1061
 1062#include <unknwn.h>
 1063#include <objidl.h>
 1064#include <oaidl.h>
 1065
 1066#ifdef __cplusplus
 1067extern "C" {
 1068#endif
 1069
 1070#ifdef __ISAXXMLReader_INTERFACE_DEFINED__
 1071#undef __MSXML2_LIBRARY_DEFINED__
 1072#endif
 1073#ifndef __MSXML2_LIBRARY_DEFINED__
 1074#define __MSXML2_LIBRARY_DEFINED__
 1075
 1076DEFINE_GUID(LIBID_MSXML2, 0xf5078f18, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
 1077
 1078#ifndef __IXMLDOMImplementation_FWD_DEFINED__
 1079#define __IXMLDOMImplementation_FWD_DEFINED__
 1080typedef interface IXMLDOMImplementation IXMLDOMImplementation;
 1081#ifdef __cplusplus
 1082interface IXMLDOMImplementation;
 1083#endif /* __cplusplus */
 1084#endif
 1085
 1086#ifndef __IXMLDOMNode_FWD_DEFINED__
 1087#define __IXMLDOMNode_FWD_DEFINED__
 1088typedef interface IXMLDOMNode IXMLDOMNode;
 1089#ifdef __cplusplus
 1090interface IXMLDOMNode;
 1091#endif /* __cplusplus */
 1092#endif
 1093
 1094#ifndef __IXMLDOMDocumentFragment_FWD_DEFINED__
 1095#define __IXMLDOMDocumentFragment_FWD_DEFINED__
 1096typedef interface IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
 1097#ifdef __cplusplus
 1098interface IXMLDOMDocumentFragment;
 1099#endif /* __cplusplus */
 1100#endif
 1101
 1102#ifndef __IXMLDOMDocument_FWD_DEFINED__
 1103#define __IXMLDOMDocument_FWD_DEFINED__
 1104typedef interface IXMLDOMDocument IXMLDOMDocument;
 1105#ifdef __cplusplus
 1106interface IXMLDOMDocument;
 1107#endif /* __cplusplus */
 1108#endif
 1109
 1110#ifndef __IXMLDOMSchemaCollection_FWD_DEFINED__
 1111#define __IXMLDOMSchemaCollection_FWD_DEFINED__
 1112typedef interface IXMLDOMSchemaCollection IXMLDOMSchemaCollection;
 1113#ifdef __cplusplus
 1114interface IXMLDOMSchemaCollection;
 1115#endif /* __cplusplus */
 1116#endif
 1117
 1118#ifndef __IXMLDOMDocument2_FWD_DEFINED__
 1119#define __IXMLDOMDocument2_FWD_DEFINED__
 1120typedef interface IXMLDOMDocument2 IXMLDOMDocument2;
 1121#ifdef __cplusplus
 1122interface IXMLDOMDocument2;
 1123#endif /* __cplusplus */
 1124#endif
 1125
 1126#ifndef __IXMLDOMNodeList_FWD_DEFINED__
 1127#define __IXMLDOMNodeList_FWD_DEFINED__
 1128typedef interface IXMLDOMNodeList IXMLDOMNodeList;
 1129#ifdef __cplusplus
 1130interface IXMLDOMNodeList;
 1131#endif /* __cplusplus */
 1132#endif
 1133
 1134#ifndef __IXMLDOMNamedNodeMap_FWD_DEFINED__
 1135#define __IXMLDOMNamedNodeMap_FWD_DEFINED__
 1136typedef interface IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
 1137#ifdef __cplusplus
 1138interface IXMLDOMNamedNodeMap;
 1139#endif /* __cplusplus */
 1140#endif
 1141
 1142#ifndef __IXMLDOMCharacterData_FWD_DEFINED__
 1143#define __IXMLDOMCharacterData_FWD_DEFINED__
 1144typedef interface IXMLDOMCharacterData IXMLDOMCharacterData;
 1145#ifdef __cplusplus
 1146interface IXMLDOMCharacterData;
 1147#endif /* __cplusplus */
 1148#endif
 1149
 1150#ifndef __IXMLDOMAttribute_FWD_DEFINED__
 1151#define __IXMLDOMAttribute_FWD_DEFINED__
 1152typedef interface IXMLDOMAttribute IXMLDOMAttribute;
 1153#ifdef __cplusplus
 1154interface IXMLDOMAttribute;
 1155#endif /* __cplusplus */
 1156#endif
 1157
 1158#ifndef __IXMLDOMElement_FWD_DEFINED__
 1159#define __IXMLDOMElement_FWD_DEFINED__
 1160typedef interface IXMLDOMElement IXMLDOMElement;
 1161#ifdef __cplusplus
 1162interface IXMLDOMElement;
 1163#endif /* __cplusplus */
 1164#endif
 1165
 1166#ifndef __IXMLDOMText_FWD_DEFINED__
 1167#define __IXMLDOMText_FWD_DEFINED__
 1168typedef interface IXMLDOMText IXMLDOMText;
 1169#ifdef __cplusplus
 1170interface IXMLDOMText;
 1171#endif /* __cplusplus */
 1172#endif
 1173
 1174#ifndef __IXMLDOMComment_FWD_DEFINED__
 1175#define __IXMLDOMComment_FWD_DEFINED__
 1176typedef interface IXMLDOMComment IXMLDOMComment;
 1177#ifdef __cplusplus
 1178interface IXMLDOMComment;
 1179#endif /* __cplusplus */
 1180#endif
 1181
 1182#ifndef __IXMLDOMProcessingInstruction_FWD_DEFINED__
 1183#define __IXMLDOMProcessingInstruction_FWD_DEFINED__
 1184typedef interface IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
 1185#ifdef __cplusplus
 1186interface IXMLDOMProcessingInstruction;
 1187#endif /* __cplusplus */
 1188#endif
 1189
 1190#ifndef __IXMLDOMCDATASection_FWD_DEFINED__
 1191#define __IXMLDOMCDATASection_FWD_DEFINED__
 1192typedef interface IXMLDOMCDATASection IXMLDOMCDATASection;
 1193#ifdef __cplusplus
 1194interface IXMLDOMCDATASection;
 1195#endif /* __cplusplus */
 1196#endif
 1197
 1198#ifndef __IXMLDOMDocumentType_FWD_DEFINED__
 1199#define __IXMLDOMDocumentType_FWD_DEFINED__
 1200typedef interface IXMLDOMDocumentType IXMLDOMDocumentType;
 1201#ifdef __cplusplus
 1202interface IXMLDOMDocumentType;
 1203#endif /* __cplusplus */
 1204#endif
 1205
 1206#ifndef __IXMLDOMNotation_FWD_DEFINED__
 1207#define __IXMLDOMNotation_FWD_DEFINED__
 1208typedef interface IXMLDOMNotation IXMLDOMNotation;
 1209#ifdef __cplusplus
 1210interface IXMLDOMNotation;
 1211#endif /* __cplusplus */
 1212#endif
 1213
 1214#ifndef __IXMLDOMEntity_FWD_DEFINED__
 1215#define __IXMLDOMEntity_FWD_DEFINED__
 1216typedef interface IXMLDOMEntity IXMLDOMEntity;
 1217#ifdef __cplusplus
 1218interface IXMLDOMEntity;
 1219#endif /* __cplusplus */
 1220#endif
 1221
 1222#ifndef __IXMLDOMEntityReference_FWD_DEFINED__
 1223#define __IXMLDOMEntityReference_FWD_DEFINED__
 1224typedef interface IXMLDOMEntityReference IXMLDOMEntityReference;
 1225#ifdef __cplusplus
 1226interface IXMLDOMEntityReference;
 1227#endif /* __cplusplus */
 1228#endif
 1229
 1230#ifndef __IXMLDOMParseError_FWD_DEFINED__
 1231#define __IXMLDOMParseError_FWD_DEFINED__
 1232typedef interface IXMLDOMParseError IXMLDOMParseError;
 1233#ifdef __cplusplus
 1234interface IXMLDOMParseError;
 1235#endif /* __cplusplus */
 1236#endif
 1237
 1238#ifndef __IXMLDOMParseErrorCollection_FWD_DEFINED__
 1239#define __IXMLDOMParseErrorCollection_FWD_DEFINED__
 1240typedef interface IXMLDOMParseErrorCollection IXMLDOMParseErrorCollection;
 1241#ifdef __cplusplus
 1242interface IXMLDOMParseErrorCollection;
 1243#endif /* __cplusplus */
 1244#endif
 1245
 1246#ifndef __IXTLRuntime_FWD_DEFINED__
 1247#define __IXTLRuntime_FWD_DEFINED__
 1248typedef interface IXTLRuntime IXTLRuntime;
 1249#ifdef __cplusplus
 1250interface IXTLRuntime;
 1251#endif /* __cplusplus */
 1252#endif
 1253
 1254#ifndef __IXSLTemplate_FWD_DEFINED__
 1255#define __IXSLTemplate_FWD_DEFINED__
 1256typedef interface IXSLTemplate IXSLTemplate;
 1257#ifdef __cplusplus
 1258interface IXSLTemplate;
 1259#endif /* __cplusplus */
 1260#endif
 1261
 1262#ifndef __IXSLProcessor_FWD_DEFINED__
 1263#define __IXSLProcessor_FWD_DEFINED__
 1264typedef interface IXSLProcessor IXSLProcessor;
 1265#ifdef __cplusplus
 1266interface IXSLProcessor;
 1267#endif /* __cplusplus */
 1268#endif
 1269
 1270#ifndef __ISAXAttributes_FWD_DEFINED__
 1271#define __ISAXAttributes_FWD_DEFINED__
 1272typedef interface ISAXAttributes ISAXAttributes;
 1273#ifdef __cplusplus
 1274interface ISAXAttributes;
 1275#endif /* __cplusplus */
 1276#endif
 1277
 1278#ifndef __ISAXContentHandler_FWD_DEFINED__
 1279#define __ISAXContentHandler_FWD_DEFINED__
 1280typedef interface ISAXContentHandler ISAXContentHandler;
 1281#ifdef __cplusplus
 1282interface ISAXContentHandler;
 1283#endif /* __cplusplus */
 1284#endif
 1285
 1286#ifndef __ISAXDeclHandler_FWD_DEFINED__
 1287#define __ISAXDeclHandler_FWD_DEFINED__
 1288typedef interface ISAXDeclHandler ISAXDeclHandler;
 1289#ifdef __cplusplus
 1290interface ISAXDeclHandler;
 1291#endif /* __cplusplus */
 1292#endif
 1293
 1294#ifndef __ISAXDTDHandler_FWD_DEFINED__
 1295#define __ISAXDTDHandler_FWD_DEFINED__
 1296typedef interface ISAXDTDHandler ISAXDTDHandler;
 1297#ifdef __cplusplus
 1298interface ISAXDTDHandler;
 1299#endif /* __cplusplus */
 1300#endif
 1301
 1302#ifndef __ISAXEntityResolver_FWD_DEFINED__
 1303#define __ISAXEntityResolver_FWD_DEFINED__
 1304typedef interface ISAXEntityResolver ISAXEntityResolver;
 1305#ifdef __cplusplus
 1306interface ISAXEntityResolver;
 1307#endif /* __cplusplus */
 1308#endif
 1309
 1310#ifndef __ISAXErrorHandler_FWD_DEFINED__
 1311#define __ISAXErrorHandler_FWD_DEFINED__
 1312typedef interface ISAXErrorHandler ISAXErrorHandler;
 1313#ifdef __cplusplus
 1314interface ISAXErrorHandler;
 1315#endif /* __cplusplus */
 1316#endif
 1317
 1318#ifndef __ISAXLexicalHandler_FWD_DEFINED__
 1319#define __ISAXLexicalHandler_FWD_DEFINED__
 1320typedef interface ISAXLexicalHandler ISAXLexicalHandler;
 1321#ifdef __cplusplus
 1322interface ISAXLexicalHandler;
 1323#endif /* __cplusplus */
 1324#endif
 1325
 1326#ifndef __ISAXLocator_FWD_DEFINED__
 1327#define __ISAXLocator_FWD_DEFINED__
 1328typedef interface ISAXLocator ISAXLocator;
 1329#ifdef __cplusplus
 1330interface ISAXLocator;
 1331#endif /* __cplusplus */
 1332#endif
 1333
 1334#ifndef __ISAXXMLFilter_FWD_DEFINED__
 1335#define __ISAXXMLFilter_FWD_DEFINED__
 1336typedef interface ISAXXMLFilter ISAXXMLFilter;
 1337#ifdef __cplusplus
 1338interface ISAXXMLFilter;
 1339#endif /* __cplusplus */
 1340#endif
 1341
 1342#ifndef __ISAXXMLReader_FWD_DEFINED__
 1343#define __ISAXXMLReader_FWD_DEFINED__
 1344typedef interface ISAXXMLReader ISAXXMLReader;
 1345#ifdef __cplusplus
 1346interface ISAXXMLReader;
 1347#endif /* __cplusplus */
 1348#endif
 1349
 1350#ifndef __IVBSAXAttributes_FWD_DEFINED__
 1351#define __IVBSAXAttributes_FWD_DEFINED__
 1352typedef interface IVBSAXAttributes IVBSAXAttributes;
 1353#ifdef __cplusplus
 1354interface IVBSAXAttributes;
 1355#endif /* __cplusplus */
 1356#endif
 1357
 1358#ifndef __IVBSAXContentHandler_FWD_DEFINED__
 1359#define __IVBSAXContentHandler_FWD_DEFINED__
 1360typedef interface IVBSAXContentHandler IVBSAXContentHandler;
 1361#ifdef __cplusplus
 1362interface IVBSAXContentHandler;
 1363#endif /* __cplusplus */
 1364#endif
 1365
 1366#ifndef __IVBSAXDeclHandler_FWD_DEFINED__
 1367#define __IVBSAXDeclHandler_FWD_DEFINED__
 1368typedef interface IVBSAXDeclHandler IVBSAXDeclHandler;
 1369#ifdef __cplusplus
 1370interface IVBSAXDeclHandler;
 1371#endif /* __cplusplus */
 1372#endif
 1373
 1374#ifndef __IVBSAXDTDHandler_FWD_DEFINED__
 1375#define __IVBSAXDTDHandler_FWD_DEFINED__
 1376typedef interface IVBSAXDTDHandler IVBSAXDTDHandler;
 1377#ifdef __cplusplus
 1378interface IVBSAXDTDHandler;
 1379#endif /* __cplusplus */
 1380#endif
 1381
 1382#ifndef __IVBSAXEntityResolver_FWD_DEFINED__
 1383#define __IVBSAXEntityResolver_FWD_DEFINED__
 1384typedef interface IVBSAXEntityResolver IVBSAXEntityResolver;
 1385#ifdef __cplusplus
 1386interface IVBSAXEntityResolver;
 1387#endif /* __cplusplus */
 1388#endif
 1389
 1390#ifndef __IVBSAXErrorHandler_FWD_DEFINED__
 1391#define __IVBSAXErrorHandler_FWD_DEFINED__
 1392typedef interface IVBSAXErrorHandler IVBSAXErrorHandler;
 1393#ifdef __cplusplus
 1394interface IVBSAXErrorHandler;
 1395#endif /* __cplusplus */
 1396#endif
 1397
 1398#ifndef __IVBSAXLexicalHandler_FWD_DEFINED__
 1399#define __IVBSAXLexicalHandler_FWD_DEFINED__
 1400typedef interface IVBSAXLexicalHandler IVBSAXLexicalHandler;
 1401#ifdef __cplusplus
 1402interface IVBSAXLexicalHandler;
 1403#endif /* __cplusplus */
 1404#endif
 1405
 1406#ifndef __IVBSAXLocator_FWD_DEFINED__
 1407#define __IVBSAXLocator_FWD_DEFINED__
 1408typedef interface IVBSAXLocator IVBSAXLocator;
 1409#ifdef __cplusplus
 1410interface IVBSAXLocator;
 1411#endif /* __cplusplus */
 1412#endif
 1413
 1414#ifndef __IVBSAXXMLFilter_FWD_DEFINED__
 1415#define __IVBSAXXMLFilter_FWD_DEFINED__
 1416typedef interface IVBSAXXMLFilter IVBSAXXMLFilter;
 1417#ifdef __cplusplus
 1418interface IVBSAXXMLFilter;
 1419#endif /* __cplusplus */
 1420#endif
 1421
 1422#ifndef __IVBSAXXMLReader_FWD_DEFINED__
 1423#define __IVBSAXXMLReader_FWD_DEFINED__
 1424typedef interface IVBSAXXMLReader IVBSAXXMLReader;
 1425#ifdef __cplusplus
 1426interface IVBSAXXMLReader;
 1427#endif /* __cplusplus */
 1428#endif
 1429
 1430#ifndef __IMXAttributes_FWD_DEFINED__
 1431#define __IMXAttributes_FWD_DEFINED__
 1432typedef interface IMXAttributes IMXAttributes;
 1433#ifdef __cplusplus
 1434interface IMXAttributes;
 1435#endif /* __cplusplus */
 1436#endif
 1437
 1438#ifndef __IMXReaderControl_FWD_DEFINED__
 1439#define __IMXReaderControl_FWD_DEFINED__
 1440typedef interface IMXReaderControl IMXReaderControl;
 1441#ifdef __cplusplus
 1442interface IMXReaderControl;
 1443#endif /* __cplusplus */
 1444#endif
 1445
 1446#ifndef __IMXWriter_FWD_DEFINED__
 1447#define __IMXWriter_FWD_DEFINED__
 1448typedef interface IMXWriter IMXWriter;
 1449#ifdef __cplusplus
 1450interface IMXWriter;
 1451#endif /* __cplusplus */
 1452#endif
 1453
 1454#ifndef __IXMLDOMSchemaCollection2_FWD_DEFINED__
 1455#define __IXMLDOMSchemaCollection2_FWD_DEFINED__
 1456typedef interface IXMLDOMSchemaCollection2 IXMLDOMSchemaCollection2;
 1457#ifdef __cplusplus
 1458interface IXMLDOMSchemaCollection2;
 1459#endif /* __cplusplus */
 1460#endif
 1461
 1462#ifndef __ISchemaStringCollection_FWD_DEFINED__
 1463#define __ISchemaStringCollection_FWD_DEFINED__
 1464typedef interface ISchemaStringCollection ISchemaStringCollection;
 1465#ifdef __cplusplus
 1466interface ISchemaStringCollection;
 1467#endif /* __cplusplus */
 1468#endif
 1469
 1470#ifndef __ISchemaItemCollection_FWD_DEFINED__
 1471#define __ISchemaItemCollection_FWD_DEFINED__
 1472typedef interface ISchemaItemCollection ISchemaItemCollection;
 1473#ifdef __cplusplus
 1474interface ISchemaItemCollection;
 1475#endif /* __cplusplus */
 1476#endif
 1477
 1478#ifndef __ISchemaItem_FWD_DEFINED__
 1479#define __ISchemaItem_FWD_DEFINED__
 1480typedef interface ISchemaItem ISchemaItem;
 1481#ifdef __cplusplus
 1482interface ISchemaItem;
 1483#endif /* __cplusplus */
 1484#endif
 1485
 1486#ifndef __ISchema_FWD_DEFINED__
 1487#define __ISchema_FWD_DEFINED__
 1488typedef interface ISchema ISchema;
 1489#ifdef __cplusplus
 1490interface ISchema;
 1491#endif /* __cplusplus */
 1492#endif
 1493
 1494#ifndef __ISchemaParticle_FWD_DEFINED__
 1495#define __ISchemaParticle_FWD_DEFINED__
 1496typedef interface ISchemaParticle ISchemaParticle;
 1497#ifdef __cplusplus
 1498interface ISchemaParticle;
 1499#endif /* __cplusplus */
 1500#endif
 1501
 1502#ifndef __ISchemaAttribute_FWD_DEFINED__
 1503#define __ISchemaAttribute_FWD_DEFINED__
 1504typedef interface ISchemaAttribute ISchemaAttribute;
 1505#ifdef __cplusplus
 1506interface ISchemaAttribute;
 1507#endif /* __cplusplus */
 1508#endif
 1509
 1510#ifndef __ISchemaElement_FWD_DEFINED__
 1511#define __ISchemaElement_FWD_DEFINED__
 1512typedef interface ISchemaElement ISchemaElement;
 1513#ifdef __cplusplus
 1514interface ISchemaElement;
 1515#endif /* __cplusplus */
 1516#endif
 1517
 1518#ifndef __ISchemaType_FWD_DEFINED__
 1519#define __ISchemaType_FWD_DEFINED__
 1520typedef interface ISchemaType ISchemaType;
 1521#ifdef __cplusplus
 1522interface ISchemaType;
 1523#endif /* __cplusplus */
 1524#endif
 1525
 1526#ifndef __ISchemaComplexType_FWD_DEFINED__
 1527#define __ISchemaComplexType_FWD_DEFINED__
 1528typedef interface ISchemaComplexType ISchemaComplexType;
 1529#ifdef __cplusplus
 1530interface ISchemaComplexType;
 1531#endif /* __cplusplus */
 1532#endif
 1533
 1534#ifndef __ISchemaAttributeGroup_FWD_DEFINED__
 1535#define __ISchemaAttributeGroup_FWD_DEFINED__
 1536typedef interface ISchemaAttributeGroup ISchemaAttributeGroup;
 1537#ifdef __cplusplus
 1538interface ISchemaAttributeGroup;
 1539#endif /* __cplusplus */
 1540#endif
 1541
 1542#ifndef __ISchemaModelGroup_FWD_DEFINED__
 1543#define __ISchemaModelGroup_FWD_DEFINED__
 1544typedef interface ISchemaModelGroup ISchemaModelGroup;
 1545#ifdef __cplusplus
 1546interface ISchemaModelGroup;
 1547#endif /* __cplusplus */
 1548#endif
 1549
 1550#ifndef __ISchemaAny_FWD_DEFINED__
 1551#define __ISchemaAny_FWD_DEFINED__
 1552typedef interface ISchemaAny ISchemaAny;
 1553#ifdef __cplusplus
 1554interface ISchemaAny;
 1555#endif /* __cplusplus */
 1556#endif
 1557
 1558#ifndef __ISchemaIdentityConstraint_FWD_DEFINED__
 1559#define __ISchemaIdentityConstraint_FWD_DEFINED__
 1560typedef interface ISchemaIdentityConstraint ISchemaIdentityConstraint;
 1561#ifdef __cplusplus
 1562interface ISchemaIdentityConstraint;
 1563#endif /* __cplusplus */
 1564#endif
 1565
 1566#ifndef __ISchemaNotation_FWD_DEFINED__
 1567#define __ISchemaNotation_FWD_DEFINED__
 1568typedef interface ISchemaNotation ISchemaNotation;
 1569#ifdef __cplusplus
 1570interface ISchemaNotation;
 1571#endif /* __cplusplus */
 1572#endif
 1573
 1574#define DOMDocument DOMDocument2
 1575#define CLSID_DOMDocument CLSID_DOMDocument2
 1576#ifndef __MSXML_DOMNODETYPE_DEFINED
 1577#define __MSXML_DOMNODETYPE_DEFINED
 1578typedef enum tagDOMNodeType {
 1579    NODE_INVALID = 0,
 1580    NODE_ELEMENT = 1,
 1581    NODE_ATTRIBUTE = 2,
 1582    NODE_TEXT = 3,
 1583    NODE_CDATA_SECTION = 4,
 1584    NODE_ENTITY_REFERENCE = 5,
 1585    NODE_ENTITY = 6,
 1586    NODE_PROCESSING_INSTRUCTION = 7,
 1587    NODE_COMMENT = 8,
 1588    NODE_DOCUMENT = 9,
 1589    NODE_DOCUMENT_TYPE = 10,
 1590    NODE_DOCUMENT_FRAGMENT = 11,
 1591    NODE_NOTATION = 12
 1592} DOMNodeType;
 1593#endif
 1594#ifndef __msxml_som_enums__
 1595#define __msxml_som_enums__
 1596typedef enum _SOMITEMTYPE {
 1597    SOMITEM_SCHEMA = 0x1000,
 1598    SOMITEM_ATTRIBUTE = 0x1001,
 1599    SOMITEM_ATTRIBUTEGROUP = 0x1002,
 1600    SOMITEM_NOTATION = 0x1003,
 1601    SOMITEM_IDENTITYCONSTRAINT = 0x1100,
 1602    SOMITEM_KEY = 0x1101,
 1603    SOMITEM_KEYREF = 0x1102,
 1604    SOMITEM_UNIQUE = 0x1103,
 1605    SOMITEM_ANYTYPE = 0x2000,
 1606    SOMITEM_DATATYPE = 0x2100,
 1607    SOMITEM_DATATYPE_ANYTYPE = 0x2101,
 1608    SOMITEM_DATATYPE_ANYURI = 0x2102,
 1609    SOMITEM_DATATYPE_BASE64BINARY = 0x2103,
 1610    SOMITEM_DATATYPE_BOOLEAN = 0x2104,
 1611    SOMITEM_DATATYPE_BYTE = 0x2105,
 1612    SOMITEM_DATATYPE_DATE = 0x2106,
 1613    SOMITEM_DATATYPE_DATETIME = 0x2107,
 1614    SOMITEM_DATATYPE_DAY = 0x2108,
 1615    SOMITEM_DATATYPE_DECIMAL = 0x2109,
 1616    SOMITEM_DATATYPE_DOUBLE = 0x210a,
 1617    SOMITEM_DATATYPE_DURATION = 0x210b,
 1618    SOMITEM_DATATYPE_ENTITIES = 0x210c,
 1619    SOMITEM_DATATYPE_ENTITY = 0x210d,
 1620    SOMITEM_DATATYPE_FLOAT = 0x210e,
 1621    SOMITEM_DATATYPE_HEXBINARY = 0x210f,
 1622    SOMITEM_DATATYPE_ID = 0x2110,
 1623    SOMITEM_DATATYPE_IDREF = 0x2111,
 1624    SOMITEM_DATATYPE_IDREFS = 0x2112,
 1625    SOMITEM_DATATYPE_INT = 0x2113,
 1626    SOMITEM_DATATYPE_INTEGER = 0x2114,
 1627    SOMITEM_DATATYPE_LANGUAGE = 0x2115,
 1628    SOMITEM_DATATYPE_LONG = 0x2116,
 1629    SOMITEM_DATATYPE_MONTH = 0x2117,
 1630    SOMITEM_DATATYPE_MONTHDAY = 0x2118,
 1631    SOMITEM_DATATYPE_NAME = 0x2119,
 1632    SOMITEM_DATATYPE_NCNAME = 0x211a,
 1633    SOMITEM_DATATYPE_NEGATIVEINTEGER = 0x211b,
 1634    SOMITEM_DATATYPE_NMTOKEN = 0x211c,
 1635    SOMITEM_DATATYPE_NMTOKENS = 0x211d,
 1636    SOMITEM_DATATYPE_NONNEGATIVEINTEGER = 0x211e,
 1637    SOMITEM_DATATYPE_NONPOSITIVEINTEGER = 0x211f,
 1638    SOMITEM_DATATYPE_NORMALIZEDSTRING = 0x2120,
 1639    SOMITEM_DATATYPE_NOTATION = 0x2121,
 1640    SOMITEM_DATATYPE_POSITIVEINTEGER = 0x2122,
 1641    SOMITEM_DATATYPE_QNAME = 0x2123,
 1642    SOMITEM_DATATYPE_SHORT = 0x2124,
 1643    SOMITEM_DATATYPE_STRING = 0x2125,
 1644    SOMITEM_DATATYPE_TIME = 0x2126,
 1645    SOMITEM_DATATYPE_TOKEN = 0x2127,
 1646    SOMITEM_DATATYPE_UNSIGNEDBYTE = 0x2128,
 1647    SOMITEM_DATATYPE_UNSIGNEDINT = 0x2129,
 1648    SOMITEM_DATATYPE_UNSIGNEDLONG = 0x212a,
 1649    SOMITEM_DATATYPE_UNSIGNEDSHORT = 0x212b,
 1650    SOMITEM_DATATYPE_YEAR = 0x212c,
 1651    SOMITEM_DATATYPE_YEARMONTH = 0x212d,
 1652    SOMITEM_DATATYPE_ANYSIMPLETYPE = 0x21ff,
 1653    SOMITEM_SIMPLETYPE = 0x2200,
 1654    SOMITEM_COMPLEXTYPE = 0x2400,
 1655    SOMITEM_PARTICLE = 0x4000,
 1656    SOMITEM_ANY = 0x4001,
 1657    SOMITEM_ANYATTRIBUTE = 0x4002,
 1658    SOMITEM_ELEMENT = 0x4003,
 1659    SOMITEM_GROUP = 0x4100,
 1660    SOMITEM_ALL = 0x4101,
 1661    SOMITEM_CHOICE = 0x4102,
 1662    SOMITEM_SEQUENCE = 0x4103,
 1663    SOMITEM_EMPTYPARTICLE = 0x4104,
 1664    SOMITEM_NULL = 0x800,
 1665    SOMITEM_NULL_TYPE = 0x2800,
 1666    SOMITEM_NULL_ANY = 0x4801,
 1667    SOMITEM_NULL_ANYATTRIBUTE = 0x4802,
 1668    SOMITEM_NULL_ELEMENT = 0x4803
 1669} SOMITEMTYPE;
 1670typedef enum _SCHEMAUSE {
 1671    SCHEMAUSE_OPTIONAL = 0,
 1672    SCHEMAUSE_PROHIBITED = 1,
 1673    SCHEMAUSE_REQUIRED = 2
 1674} SCHEMAUSE;
 1675typedef enum _SCHEMADERIVATIONMETHOD {
 1676    SCHEMADERIVATIONMETHOD_EMPTY = 0x0,
 1677    SCHEMADERIVATIONMETHOD_SUBSTITUTION = 0x1,
 1678    SCHEMADERIVATIONMETHOD_EXTENSION = 0x2,
 1679    SCHEMADERIVATIONMETHOD_RESTRICTION = 0x4,
 1680    SCHEMADERIVATIONMETHOD_LIST = 0x8,
 1681    SCHEMADERIVATIONMETHOD_UNION = 0x10,
 1682    SCHEMADERIVATIONMETHOD_ALL = 0xff,
 1683    SCHEMADERIVATIONMETHOD_NONE = 0x100
 1684} SCHEMADERIVATIONMETHOD;
 1685typedef enum _SCHEMACONTENTTYPE {
 1686    SCHEMACONTENTTYPE_EMPTY = 0,
 1687    SCHEMACONTENTTYPE_TEXTONLY = 1,
 1688    SCHEMACONTENTTYPE_ELEMENTONLY = 2,
 1689    SCHEMACONTENTTYPE_MIXED = 3
 1690} SCHEMACONTENTTYPE;
 1691typedef enum _SCHEMAPROCESSCONTENTS {
 1692    SCHEMAPROCESSCONTENTS_NONE = 0,
 1693    SCHEMAPROCESSCONTENTS_SKIP = 1,
 1694    SCHEMAPROCESSCONTENTS_LAX = 2,
 1695    SCHEMAPROCESSCONTENTS_STRICT = 3
 1696} SCHEMAPROCESSCONTENTS;
 1697typedef enum _SCHEMAWHITESPACE {
 1698    SCHEMAWHITESPACE_NONE = -1,
 1699    SCHEMAWHITESPACE_PRESERVE = 0,
 1700    SCHEMAWHITESPACE_REPLACE = 1,
 1701    SCHEMAWHITESPACE_COLLAPSE = 2
 1702} SCHEMAWHITESPACE;
 1703typedef enum _SCHEMATYPEVARIETY {
 1704    SCHEMATYPEVARIETY_NONE = -1,
 1705    SCHEMATYPEVARIETY_ATOMIC = 0,
 1706    SCHEMATYPEVARIETY_LIST = 1,
 1707    SCHEMATYPEVARIETY_UNION = 2
 1708} SCHEMATYPEVARIETY;
 1709#endif /* __msxml_som_enums__ */
 1710/*****************************************************************************
 1711 * IXMLElementCollection interface
 1712 */
 1713#ifndef __IXMLElementCollection_INTERFACE_DEFINED__
 1714#define __IXMLElementCollection_INTERFACE_DEFINED__
 1715
 1716DEFINE_GUID(IID_IXMLElementCollection, 0x65725580, 0x9b5d, 0x11d0, 0x9b,0xfe, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
 1717#if defined(__cplusplus) && !defined(CINTERFACE)
 1718MIDL_INTERFACE("65725580-9b5d-11d0-9bfe-00c04fc99c8e")
 1719IXMLElementCollection : public IDispatch
 1720{
 1721    virtual HRESULT STDMETHODCALLTYPE put_length(
 1722        LONG v) = 0;
 1723
 1724    virtual HRESULT STDMETHODCALLTYPE get_length(
 1725        LONG *p) = 0;
 1726
 1727    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
 1728        IUnknown **ppUnk) = 0;
 1729
 1730    virtual HRESULT STDMETHODCALLTYPE item(
 1731        VARIANT var1,
 1732        VARIANT var2,
 1733        IDispatch **ppDisp) = 0;
 1734
 1735};
 1736#ifdef __CRT_UUID_DECL
 1737__CRT_UUID_DECL(IXMLElementCollection, 0x65725580, 0x9b5d, 0x11d0, 0x9b,0xfe, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
 1738#endif
 1739#else
 1740typedef struct IXMLElementCollectionVtbl {
 1741    BEGIN_INTERFACE
 1742
 1743    /*** IUnknown methods ***/
 1744    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1745        IXMLElementCollection *This,
 1746        REFIID riid,
 1747        void **ppvObject);
 1748
 1749    ULONG (STDMETHODCALLTYPE *AddRef)(
 1750        IXMLElementCollection *This);
 1751
 1752    ULONG (STDMETHODCALLTYPE *Release)(
 1753        IXMLElementCollection *This);
 1754
 1755    /*** IDispatch methods ***/
 1756    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1757        IXMLElementCollection *This,
 1758        UINT *pctinfo);
 1759
 1760    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1761        IXMLElementCollection *This,
 1762        UINT iTInfo,
 1763        LCID lcid,
 1764        ITypeInfo **ppTInfo);
 1765
 1766    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1767        IXMLElementCollection *This,
 1768        REFIID riid,
 1769        LPOLESTR *rgszNames,
 1770        UINT cNames,
 1771        LCID lcid,
 1772        DISPID *rgDispId);
 1773
 1774    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1775        IXMLElementCollection *This,
 1776        DISPID dispIdMember,
 1777        REFIID riid,
 1778        LCID lcid,
 1779        WORD wFlags,
 1780        DISPPARAMS *pDispParams,
 1781        VARIANT *pVarResult,
 1782        EXCEPINFO *pExcepInfo,
 1783        UINT *puArgErr);
 1784
 1785    /*** IXMLElementCollection methods ***/
 1786    HRESULT (STDMETHODCALLTYPE *put_length)(
 1787        IXMLElementCollection *This,
 1788        LONG v);
 1789
 1790    HRESULT (STDMETHODCALLTYPE *get_length)(
 1791        IXMLElementCollection *This,
 1792        LONG *p);
 1793
 1794    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 1795        IXMLElementCollection *This,
 1796        IUnknown **ppUnk);
 1797
 1798    HRESULT (STDMETHODCALLTYPE *item)(
 1799        IXMLElementCollection *This,
 1800        VARIANT var1,
 1801        VARIANT var2,
 1802        IDispatch **ppDisp);
 1803
 1804    END_INTERFACE
 1805} IXMLElementCollectionVtbl;
 1806
 1807interface IXMLElementCollection {
 1808    CONST_VTBL IXMLElementCollectionVtbl* lpVtbl;
 1809};
 1810
 1811#ifdef COBJMACROS
 1812#ifndef WIDL_C_INLINE_WRAPPERS
 1813/*** IUnknown methods ***/
 1814#define IXMLElementCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1815#define IXMLElementCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 1816#define IXMLElementCollection_Release(This) (This)->lpVtbl->Release(This)
 1817/*** IDispatch methods ***/
 1818#define IXMLElementCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1819#define IXMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1820#define IXMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1821#define IXMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1822/*** IXMLElementCollection methods ***/
 1823#define IXMLElementCollection_put_length(This,v) (This)->lpVtbl->put_length(This,v)
 1824#define IXMLElementCollection_get_length(This,p) (This)->lpVtbl->get_length(This,p)
 1825#define IXMLElementCollection_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 1826#define IXMLElementCollection_item(This,var1,var2,ppDisp) (This)->lpVtbl->item(This,var1,var2,ppDisp)
 1827#else
 1828/*** IUnknown methods ***/
 1829static inline HRESULT IXMLElementCollection_QueryInterface(IXMLElementCollection* This,REFIID riid,void **ppvObject) {
 1830    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1831}
 1832static inline ULONG IXMLElementCollection_AddRef(IXMLElementCollection* This) {
 1833    return This->lpVtbl->AddRef(This);
 1834}
 1835static inline ULONG IXMLElementCollection_Release(IXMLElementCollection* This) {
 1836    return This->lpVtbl->Release(This);
 1837}
 1838/*** IDispatch methods ***/
 1839static inline HRESULT IXMLElementCollection_GetTypeInfoCount(IXMLElementCollection* This,UINT *pctinfo) {
 1840    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1841}
 1842static inline HRESULT IXMLElementCollection_GetTypeInfo(IXMLElementCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1843    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1844}
 1845static inline HRESULT IXMLElementCollection_GetIDsOfNames(IXMLElementCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1846    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1847}
 1848static inline HRESULT IXMLElementCollection_Invoke(IXMLElementCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1849    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1850}
 1851/*** IXMLElementCollection methods ***/
 1852static inline HRESULT IXMLElementCollection_put_length(IXMLElementCollection* This,LONG v) {
 1853    return This->lpVtbl->put_length(This,v);
 1854}
 1855static inline HRESULT IXMLElementCollection_get_length(IXMLElementCollection* This,LONG *p) {
 1856    return This->lpVtbl->get_length(This,p);
 1857}
 1858static inline HRESULT IXMLElementCollection_get__newEnum(IXMLElementCollection* This,IUnknown **ppUnk) {
 1859    return This->lpVtbl->get__newEnum(This,ppUnk);
 1860}
 1861static inline HRESULT IXMLElementCollection_item(IXMLElementCollection* This,VARIANT var1,VARIANT var2,IDispatch **ppDisp) {
 1862    return This->lpVtbl->item(This,var1,var2,ppDisp);
 1863}
 1864#endif
 1865#endif
 1866
 1867#endif
 1868
 1869
 1870#endif  /* __IXMLElementCollection_INTERFACE_DEFINED__ */
 1871
 1872/*****************************************************************************
 1873 * IXMLElement interface
 1874 */
 1875#ifndef __IXMLElement_INTERFACE_DEFINED__
 1876#define __IXMLElement_INTERFACE_DEFINED__
 1877
 1878DEFINE_GUID(IID_IXMLElement, 0x3f7f31ac, 0xe15f, 0x11d0, 0x9c,0x25, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e);
 1879#if defined(__cplusplus) && !defined(CINTERFACE)
 1880MIDL_INTERFACE("3f7f31ac-e15f-11d0-9c25-00c04fc99c8e")
 1881IXMLElement : public IDispatch
 1882{
 1883    virtual HRESULT STDMETHODCALLTYPE get_tagName(
 1884        BSTR *p) = 0;
 1885
 1886    virtual HRESULT STDMETHODCALLTYPE put_tagName(
 1887        BSTR p) = 0;
 1888
 1889    virtual HRESULT STDMETHODCALLTYPE get_parent(
 1890        IXMLElement **parent) = 0;
 1891
 1892    virtual HRESULT STDMETHODCALLTYPE setAttribute(
 1893        BSTR strPropertyName,
 1894        VARIANT PropertyValue) = 0;
 1895
 1896    virtual HRESULT STDMETHODCALLTYPE getAttribute(
 1897        BSTR strPropertyName,
 1898        VARIANT *PropertyValue) = 0;
 1899
 1900    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
 1901        BSTR strPropertyName) = 0;
 1902
 1903    virtual HRESULT STDMETHODCALLTYPE get_children(
 1904        IXMLElementCollection **p) = 0;
 1905
 1906    virtual HRESULT STDMETHODCALLTYPE get_type(
 1907        LONG *p) = 0;
 1908
 1909    virtual HRESULT STDMETHODCALLTYPE get_text(
 1910        BSTR *p) = 0;
 1911
 1912    virtual HRESULT STDMETHODCALLTYPE put_text(
 1913        BSTR p) = 0;
 1914
 1915    virtual HRESULT STDMETHODCALLTYPE addChild(
 1916        IXMLElement *pChildElem,
 1917        LONG lIndex,
 1918        LONG lreserved) = 0;
 1919
 1920    virtual HRESULT STDMETHODCALLTYPE removeChild(
 1921        IXMLElement *pChildElem) = 0;
 1922
 1923};
 1924#ifdef __CRT_UUID_DECL
 1925__CRT_UUID_DECL(IXMLElement, 0x3f7f31ac, 0xe15f, 0x11d0, 0x9c,0x25, 0x00,0xc0,0x4f,0xc9,0x9c,0x8e)
 1926#endif
 1927#else
 1928typedef struct IXMLElementVtbl {
 1929    BEGIN_INTERFACE
 1930
 1931    /*** IUnknown methods ***/
 1932    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1933        IXMLElement *This,
 1934        REFIID riid,
 1935        void **ppvObject);
 1936
 1937    ULONG (STDMETHODCALLTYPE *AddRef)(
 1938        IXMLElement *This);
 1939
 1940    ULONG (STDMETHODCALLTYPE *Release)(
 1941        IXMLElement *This);
 1942
 1943    /*** IDispatch methods ***/
 1944    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1945        IXMLElement *This,
 1946        UINT *pctinfo);
 1947
 1948    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1949        IXMLElement *This,
 1950        UINT iTInfo,
 1951        LCID lcid,
 1952        ITypeInfo **ppTInfo);
 1953
 1954    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1955        IXMLElement *This,
 1956        REFIID riid,
 1957        LPOLESTR *rgszNames,
 1958        UINT cNames,
 1959        LCID lcid,
 1960        DISPID *rgDispId);
 1961
 1962    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1963        IXMLElement *This,
 1964        DISPID dispIdMember,
 1965        REFIID riid,
 1966        LCID lcid,
 1967        WORD wFlags,
 1968        DISPPARAMS *pDispParams,
 1969        VARIANT *pVarResult,
 1970        EXCEPINFO *pExcepInfo,
 1971        UINT *puArgErr);
 1972
 1973    /*** IXMLElement methods ***/
 1974    HRESULT (STDMETHODCALLTYPE *get_tagName)(
 1975        IXMLElement *This,
 1976        BSTR *p);
 1977
 1978    HRESULT (STDMETHODCALLTYPE *put_tagName)(
 1979        IXMLElement *This,
 1980        BSTR p);
 1981
 1982    HRESULT (STDMETHODCALLTYPE *get_parent)(
 1983        IXMLElement *This,
 1984        IXMLElement **parent);
 1985
 1986    HRESULT (STDMETHODCALLTYPE *setAttribute)(
 1987        IXMLElement *This,
 1988        BSTR strPropertyName,
 1989        VARIANT PropertyValue);
 1990
 1991    HRESULT (STDMETHODCALLTYPE *getAttribute)(
 1992        IXMLElement *This,
 1993        BSTR strPropertyName,
 1994        VARIANT *PropertyValue);
 1995
 1996    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
 1997        IXMLElement *This,
 1998        BSTR strPropertyName);
 1999
 2000    HRESULT (STDMETHODCALLTYPE *get_children)(
 2001        IXMLElement *This,
 2002        IXMLElementCollection **p);
 2003
 2004    HRESULT (STDMETHODCALLTYPE *get_type)(
 2005        IXMLElement *This,
 2006        LONG *p);
 2007
 2008    HRESULT (STDMETHODCALLTYPE *get_text)(
 2009        IXMLElement *This,
 2010        BSTR *p);
 2011
 2012    HRESULT (STDMETHODCALLTYPE *put_text)(
 2013        IXMLElement *This,
 2014        BSTR p);
 2015
 2016    HRESULT (STDMETHODCALLTYPE *addChild)(
 2017        IXMLElement *This,
 2018        IXMLElement *pChildElem,
 2019        LONG lIndex,
 2020        LONG lreserved);
 2021
 2022    HRESULT (STDMETHODCALLTYPE *removeChild)(
 2023        IXMLElement *This,
 2024        IXMLElement *pChildElem);
 2025
 2026    END_INTERFACE
 2027} IXMLElementVtbl;
 2028
 2029interface IXMLElement {
 2030    CONST_VTBL IXMLElementVtbl* lpVtbl;
 2031};
 2032
 2033#ifdef COBJMACROS
 2034#ifndef WIDL_C_INLINE_WRAPPERS
 2035/*** IUnknown methods ***/
 2036#define IXMLElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2037#define IXMLElement_AddRef(This) (This)->lpVtbl->AddRef(This)
 2038#define IXMLElement_Release(This) (This)->lpVtbl->Release(This)
 2039/*** IDispatch methods ***/
 2040#define IXMLElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2041#define IXMLElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2042#define IXMLElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2043#define IXMLElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2044/*** IXMLElement methods ***/
 2045#define IXMLElement_get_tagName(This,p) (This)->lpVtbl->get_tagName(This,p)
 2046#define IXMLElement_put_tagName(This,p) (This)->lpVtbl->put_tagName(This,p)
 2047#define IXMLElement_get_parent(This,parent) (This)->lpVtbl->get_parent(This,parent)
 2048#define IXMLElement_setAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->setAttribute(This,strPropertyName,PropertyValue)
 2049#define IXMLElement_getAttribute(This,strPropertyName,PropertyValue) (This)->lpVtbl->getAttribute(This,strPropertyName,PropertyValue)
 2050#define IXMLElement_removeAttribute(This,strPropertyName) (This)->lpVtbl->removeAttribute(This,strPropertyName)
 2051#define IXMLElement_get_children(This,p) (This)->lpVtbl->get_children(This,p)
 2052#define IXMLElement_get_type(This,p) (This)->lpVtbl->get_type(This,p)
 2053#define IXMLElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 2054#define IXMLElement_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 2055#define IXMLElement_addChild(This,pChildElem,lIndex,lreserved) (This)->lpVtbl->addChild(This,pChildElem,lIndex,lreserved)
 2056#define IXMLElement_removeChild(This,pChildElem) (This)->lpVtbl->removeChild(This,pChildElem)
 2057#else
 2058/*** IUnknown methods ***/
 2059static inline HRESULT IXMLElement_QueryInterface(IXMLElement* This,REFIID riid,void **ppvObject) {
 2060    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2061}
 2062static inline ULONG IXMLElement_AddRef(IXMLElement* This) {
 2063    return This->lpVtbl->AddRef(This);
 2064}
 2065static inline ULONG IXMLElement_Release(IXMLElement* This) {
 2066    return This->lpVtbl->Release(This);
 2067}
 2068/*** IDispatch methods ***/
 2069static inline HRESULT IXMLElement_GetTypeInfoCount(IXMLElement* This,UINT *pctinfo) {
 2070    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2071}
 2072static inline HRESULT IXMLElement_GetTypeInfo(IXMLElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2073    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2074}
 2075static inline HRESULT IXMLElement_GetIDsOfNames(IXMLElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2076    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2077}
 2078static inline HRESULT IXMLElement_Invoke(IXMLElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2079    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2080}
 2081/*** IXMLElement methods ***/
 2082static inline HRESULT IXMLElement_get_tagName(IXMLElement* This,BSTR *p) {
 2083    return This->lpVtbl->get_tagName(This,p);
 2084}
 2085static inline HRESULT IXMLElement_put_tagName(IXMLElement* This,BSTR p) {
 2086    return This->lpVtbl->put_tagName(This,p);
 2087}
 2088static inline HRESULT IXMLElement_get_parent(IXMLElement* This,IXMLElement **parent) {
 2089    return This->lpVtbl->get_parent(This,parent);
 2090}
 2091static inline HRESULT IXMLElement_setAttribute(IXMLElement* This,BSTR strPropertyName,VARIANT PropertyValue) {
 2092    return This->lpVtbl->setAttribute(This,strPropertyName,PropertyValue);
 2093}
 2094static inline HRESULT IXMLElement_getAttribute(IXMLElement* This,BSTR strPropertyName,VARIANT *PropertyValue) {
 2095    return This->lpVtbl->getAttribute(This,strPropertyName,PropertyValue);
 2096}
 2097static inline HRESULT IXMLElement_removeAttribute(IXMLElement* This,BSTR strPropertyName) {
 2098    return This->lpVtbl->removeAttribute(This,strPropertyName);
 2099}
 2100static inline HRESULT IXMLElement_get_children(IXMLElement* This,IXMLElementCollection **p) {
 2101    return This->lpVtbl->get_children(This,p);
 2102}
 2103static inline HRESULT IXMLElement_get_type(IXMLElement* This,LONG *p) {
 2104    return This->lpVtbl->get_type(This,p);
 2105}
 2106static inline HRESULT IXMLElement_get_text(IXMLElement* This,BSTR *p) {
 2107    return This->lpVtbl->get_text(This,p);
 2108}
 2109static inline HRESULT IXMLElement_put_text(IXMLElement* This,BSTR p) {
 2110    return This->lpVtbl->put_text(This,p);
 2111}
 2112static inline HRESULT IXMLElement_addChild(IXMLElement* This,IXMLElement *pChildElem,LONG lIndex,LONG lreserved) {
 2113    return This->lpVtbl->addChild(This,pChildElem,lIndex,lreserved);
 2114}
 2115static inline HRESULT IXMLElement_removeChild(IXMLElement* This,IXMLElement *pChildElem) {
 2116    return This->lpVtbl->removeChild(This,pChildElem);
 2117}
 2118#endif
 2119#endif
 2120
 2121#endif
 2122
 2123
 2124#endif  /* __IXMLElement_INTERFACE_DEFINED__ */
 2125
 2126/*****************************************************************************
 2127 * IXMLDOMNode interface
 2128 */
 2129#ifndef __IXMLDOMNode_INTERFACE_DEFINED__
 2130#define __IXMLDOMNode_INTERFACE_DEFINED__
 2131
 2132DEFINE_GUID(IID_IXMLDOMNode, 0x2933bf80, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 2133#if defined(__cplusplus) && !defined(CINTERFACE)
 2134MIDL_INTERFACE("2933bf80-7b36-11d2-b20e-00c04f983e60")
 2135IXMLDOMNode : public IDispatch
 2136{
 2137    virtual HRESULT STDMETHODCALLTYPE get_nodeName(
 2138        BSTR *p) = 0;
 2139
 2140    virtual HRESULT STDMETHODCALLTYPE get_nodeValue(
 2141        VARIANT *var1) = 0;
 2142
 2143    virtual HRESULT STDMETHODCALLTYPE put_nodeValue(
 2144        VARIANT var1) = 0;
 2145
 2146    virtual HRESULT STDMETHODCALLTYPE get_nodeType(
 2147        DOMNodeType *domNodeType) = 0;
 2148
 2149    virtual HRESULT STDMETHODCALLTYPE get_parentNode(
 2150        IXMLDOMNode **parent) = 0;
 2151
 2152    virtual HRESULT STDMETHODCALLTYPE get_childNodes(
 2153        IXMLDOMNodeList **outList) = 0;
 2154
 2155    virtual HRESULT STDMETHODCALLTYPE get_firstChild(
 2156        IXMLDOMNode **domNode) = 0;
 2157
 2158    virtual HRESULT STDMETHODCALLTYPE get_lastChild(
 2159        IXMLDOMNode **domNode) = 0;
 2160
 2161    virtual HRESULT STDMETHODCALLTYPE get_previousSibling(
 2162        IXMLDOMNode **domNode) = 0;
 2163
 2164    virtual HRESULT STDMETHODCALLTYPE get_nextSibling(
 2165        IXMLDOMNode **domNode) = 0;
 2166
 2167    virtual HRESULT STDMETHODCALLTYPE get_attributes(
 2168        IXMLDOMNamedNodeMap **attributeMap) = 0;
 2169
 2170    virtual HRESULT STDMETHODCALLTYPE insertBefore(
 2171        IXMLDOMNode *newNode,
 2172        VARIANT var1,
 2173        IXMLDOMNode **outOldNode) = 0;
 2174
 2175    virtual HRESULT STDMETHODCALLTYPE replaceChild(
 2176        IXMLDOMNode *newNode,
 2177        IXMLDOMNode *oldNode,
 2178        IXMLDOMNode **outOldNode) = 0;
 2179
 2180    virtual HRESULT STDMETHODCALLTYPE removeChild(
 2181        IXMLDOMNode *domNode,
 2182        IXMLDOMNode **oldNode) = 0;
 2183
 2184    virtual HRESULT STDMETHODCALLTYPE appendChild(
 2185        IXMLDOMNode *newNode,
 2186        IXMLDOMNode **outNewNode) = 0;
 2187
 2188    virtual HRESULT STDMETHODCALLTYPE hasChildNodes(
 2189        VARIANT_BOOL *pbool) = 0;
 2190
 2191    virtual HRESULT STDMETHODCALLTYPE get_ownerDocument(
 2192        IXMLDOMDocument **domDocument) = 0;
 2193
 2194    virtual HRESULT STDMETHODCALLTYPE cloneNode(
 2195        VARIANT_BOOL pbool,
 2196        IXMLDOMNode **outNode) = 0;
 2197
 2198    virtual HRESULT STDMETHODCALLTYPE get_nodeTypeString(
 2199        BSTR *p) = 0;
 2200
 2201    virtual HRESULT STDMETHODCALLTYPE get_text(
 2202        BSTR *p) = 0;
 2203
 2204    virtual HRESULT STDMETHODCALLTYPE put_text(
 2205        BSTR p) = 0;
 2206
 2207    virtual HRESULT STDMETHODCALLTYPE get_specified(
 2208        VARIANT_BOOL *pbool) = 0;
 2209
 2210    virtual HRESULT STDMETHODCALLTYPE get_definition(
 2211        IXMLDOMNode **domNode) = 0;
 2212
 2213    virtual HRESULT STDMETHODCALLTYPE get_nodeTypedValue(
 2214        VARIANT *var1) = 0;
 2215
 2216    virtual HRESULT STDMETHODCALLTYPE put_nodeTypedValue(
 2217        VARIANT var1) = 0;
 2218
 2219    virtual HRESULT STDMETHODCALLTYPE get_dataType(
 2220        VARIANT *var1) = 0;
 2221
 2222    virtual HRESULT STDMETHODCALLTYPE put_dataType(
 2223        BSTR p) = 0;
 2224
 2225    virtual HRESULT STDMETHODCALLTYPE get_xml(
 2226        BSTR *p) = 0;
 2227
 2228    virtual HRESULT STDMETHODCALLTYPE transformNode(
 2229        IXMLDOMNode *domNode,
 2230        BSTR *p) = 0;
 2231
 2232    virtual HRESULT STDMETHODCALLTYPE selectNodes(
 2233        BSTR p,
 2234        IXMLDOMNodeList **outList) = 0;
 2235
 2236    virtual HRESULT STDMETHODCALLTYPE selectSingleNode(
 2237        BSTR p,
 2238        IXMLDOMNode **outNode) = 0;
 2239
 2240    virtual HRESULT STDMETHODCALLTYPE get_parsed(
 2241        VARIANT_BOOL *pbool) = 0;
 2242
 2243    virtual HRESULT STDMETHODCALLTYPE get_namespaceURI(
 2244        BSTR *p) = 0;
 2245
 2246    virtual HRESULT STDMETHODCALLTYPE get_prefix(
 2247        BSTR *p) = 0;
 2248
 2249    virtual HRESULT STDMETHODCALLTYPE get_baseName(
 2250        BSTR *p) = 0;
 2251
 2252    virtual HRESULT STDMETHODCALLTYPE transformNodeToObject(
 2253        IXMLDOMNode *domNode,
 2254        VARIANT var1) = 0;
 2255
 2256};
 2257#ifdef __CRT_UUID_DECL
 2258__CRT_UUID_DECL(IXMLDOMNode, 0x2933bf80, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 2259#endif
 2260#else
 2261typedef struct IXMLDOMNodeVtbl {
 2262    BEGIN_INTERFACE
 2263
 2264    /*** IUnknown methods ***/
 2265    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2266        IXMLDOMNode *This,
 2267        REFIID riid,
 2268        void **ppvObject);
 2269
 2270    ULONG (STDMETHODCALLTYPE *AddRef)(
 2271        IXMLDOMNode *This);
 2272
 2273    ULONG (STDMETHODCALLTYPE *Release)(
 2274        IXMLDOMNode *This);
 2275
 2276    /*** IDispatch methods ***/
 2277    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2278        IXMLDOMNode *This,
 2279        UINT *pctinfo);
 2280
 2281    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2282        IXMLDOMNode *This,
 2283        UINT iTInfo,
 2284        LCID lcid,
 2285        ITypeInfo **ppTInfo);
 2286
 2287    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2288        IXMLDOMNode *This,
 2289        REFIID riid,
 2290        LPOLESTR *rgszNames,
 2291        UINT cNames,
 2292        LCID lcid,
 2293        DISPID *rgDispId);
 2294
 2295    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2296        IXMLDOMNode *This,
 2297        DISPID dispIdMember,
 2298        REFIID riid,
 2299        LCID lcid,
 2300        WORD wFlags,
 2301        DISPPARAMS *pDispParams,
 2302        VARIANT *pVarResult,
 2303        EXCEPINFO *pExcepInfo,
 2304        UINT *puArgErr);
 2305
 2306    /*** IXMLDOMNode methods ***/
 2307    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 2308        IXMLDOMNode *This,
 2309        BSTR *p);
 2310
 2311    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 2312        IXMLDOMNode *This,
 2313        VARIANT *var1);
 2314
 2315    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 2316        IXMLDOMNode *This,
 2317        VARIANT var1);
 2318
 2319    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 2320        IXMLDOMNode *This,
 2321        DOMNodeType *domNodeType);
 2322
 2323    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 2324        IXMLDOMNode *This,
 2325        IXMLDOMNode **parent);
 2326
 2327    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 2328        IXMLDOMNode *This,
 2329        IXMLDOMNodeList **outList);
 2330
 2331    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 2332        IXMLDOMNode *This,
 2333        IXMLDOMNode **domNode);
 2334
 2335    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 2336        IXMLDOMNode *This,
 2337        IXMLDOMNode **domNode);
 2338
 2339    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 2340        IXMLDOMNode *This,
 2341        IXMLDOMNode **domNode);
 2342
 2343    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 2344        IXMLDOMNode *This,
 2345        IXMLDOMNode **domNode);
 2346
 2347    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 2348        IXMLDOMNode *This,
 2349        IXMLDOMNamedNodeMap **attributeMap);
 2350
 2351    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 2352        IXMLDOMNode *This,
 2353        IXMLDOMNode *newNode,
 2354        VARIANT var1,
 2355        IXMLDOMNode **outOldNode);
 2356
 2357    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 2358        IXMLDOMNode *This,
 2359        IXMLDOMNode *newNode,
 2360        IXMLDOMNode *oldNode,
 2361        IXMLDOMNode **outOldNode);
 2362
 2363    HRESULT (STDMETHODCALLTYPE *removeChild)(
 2364        IXMLDOMNode *This,
 2365        IXMLDOMNode *domNode,
 2366        IXMLDOMNode **oldNode);
 2367
 2368    HRESULT (STDMETHODCALLTYPE *appendChild)(
 2369        IXMLDOMNode *This,
 2370        IXMLDOMNode *newNode,
 2371        IXMLDOMNode **outNewNode);
 2372
 2373    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 2374        IXMLDOMNode *This,
 2375        VARIANT_BOOL *pbool);
 2376
 2377    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 2378        IXMLDOMNode *This,
 2379        IXMLDOMDocument **domDocument);
 2380
 2381    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 2382        IXMLDOMNode *This,
 2383        VARIANT_BOOL pbool,
 2384        IXMLDOMNode **outNode);
 2385
 2386    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 2387        IXMLDOMNode *This,
 2388        BSTR *p);
 2389
 2390    HRESULT (STDMETHODCALLTYPE *get_text)(
 2391        IXMLDOMNode *This,
 2392        BSTR *p);
 2393
 2394    HRESULT (STDMETHODCALLTYPE *put_text)(
 2395        IXMLDOMNode *This,
 2396        BSTR p);
 2397
 2398    HRESULT (STDMETHODCALLTYPE *get_specified)(
 2399        IXMLDOMNode *This,
 2400        VARIANT_BOOL *pbool);
 2401
 2402    HRESULT (STDMETHODCALLTYPE *get_definition)(
 2403        IXMLDOMNode *This,
 2404        IXMLDOMNode **domNode);
 2405
 2406    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 2407        IXMLDOMNode *This,
 2408        VARIANT *var1);
 2409
 2410    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 2411        IXMLDOMNode *This,
 2412        VARIANT var1);
 2413
 2414    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 2415        IXMLDOMNode *This,
 2416        VARIANT *var1);
 2417
 2418    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 2419        IXMLDOMNode *This,
 2420        BSTR p);
 2421
 2422    HRESULT (STDMETHODCALLTYPE *get_xml)(
 2423        IXMLDOMNode *This,
 2424        BSTR *p);
 2425
 2426    HRESULT (STDMETHODCALLTYPE *transformNode)(
 2427        IXMLDOMNode *This,
 2428        IXMLDOMNode *domNode,
 2429        BSTR *p);
 2430
 2431    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 2432        IXMLDOMNode *This,
 2433        BSTR p,
 2434        IXMLDOMNodeList **outList);
 2435
 2436    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 2437        IXMLDOMNode *This,
 2438        BSTR p,
 2439        IXMLDOMNode **outNode);
 2440
 2441    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 2442        IXMLDOMNode *This,
 2443        VARIANT_BOOL *pbool);
 2444
 2445    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 2446        IXMLDOMNode *This,
 2447        BSTR *p);
 2448
 2449    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 2450        IXMLDOMNode *This,
 2451        BSTR *p);
 2452
 2453    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 2454        IXMLDOMNode *This,
 2455        BSTR *p);
 2456
 2457    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 2458        IXMLDOMNode *This,
 2459        IXMLDOMNode *domNode,
 2460        VARIANT var1);
 2461
 2462    END_INTERFACE
 2463} IXMLDOMNodeVtbl;
 2464
 2465interface IXMLDOMNode {
 2466    CONST_VTBL IXMLDOMNodeVtbl* lpVtbl;
 2467};
 2468
 2469#ifdef COBJMACROS
 2470#ifndef WIDL_C_INLINE_WRAPPERS
 2471/*** IUnknown methods ***/
 2472#define IXMLDOMNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2473#define IXMLDOMNode_AddRef(This) (This)->lpVtbl->AddRef(This)
 2474#define IXMLDOMNode_Release(This) (This)->lpVtbl->Release(This)
 2475/*** IDispatch methods ***/
 2476#define IXMLDOMNode_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2477#define IXMLDOMNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2478#define IXMLDOMNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2479#define IXMLDOMNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2480/*** IXMLDOMNode methods ***/
 2481#define IXMLDOMNode_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 2482#define IXMLDOMNode_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 2483#define IXMLDOMNode_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 2484#define IXMLDOMNode_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 2485#define IXMLDOMNode_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 2486#define IXMLDOMNode_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 2487#define IXMLDOMNode_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 2488#define IXMLDOMNode_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 2489#define IXMLDOMNode_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 2490#define IXMLDOMNode_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 2491#define IXMLDOMNode_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 2492#define IXMLDOMNode_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 2493#define IXMLDOMNode_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 2494#define IXMLDOMNode_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 2495#define IXMLDOMNode_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 2496#define IXMLDOMNode_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 2497#define IXMLDOMNode_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 2498#define IXMLDOMNode_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 2499#define IXMLDOMNode_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 2500#define IXMLDOMNode_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 2501#define IXMLDOMNode_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 2502#define IXMLDOMNode_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 2503#define IXMLDOMNode_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 2504#define IXMLDOMNode_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 2505#define IXMLDOMNode_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 2506#define IXMLDOMNode_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 2507#define IXMLDOMNode_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 2508#define IXMLDOMNode_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 2509#define IXMLDOMNode_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 2510#define IXMLDOMNode_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 2511#define IXMLDOMNode_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 2512#define IXMLDOMNode_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 2513#define IXMLDOMNode_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 2514#define IXMLDOMNode_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 2515#define IXMLDOMNode_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 2516#define IXMLDOMNode_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 2517#else
 2518/*** IUnknown methods ***/
 2519static inline HRESULT IXMLDOMNode_QueryInterface(IXMLDOMNode* This,REFIID riid,void **ppvObject) {
 2520    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2521}
 2522static inline ULONG IXMLDOMNode_AddRef(IXMLDOMNode* This) {
 2523    return This->lpVtbl->AddRef(This);
 2524}
 2525static inline ULONG IXMLDOMNode_Release(IXMLDOMNode* This) {
 2526    return This->lpVtbl->Release(This);
 2527}
 2528/*** IDispatch methods ***/
 2529static inline HRESULT IXMLDOMNode_GetTypeInfoCount(IXMLDOMNode* This,UINT *pctinfo) {
 2530    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2531}
 2532static inline HRESULT IXMLDOMNode_GetTypeInfo(IXMLDOMNode* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2533    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2534}
 2535static inline HRESULT IXMLDOMNode_GetIDsOfNames(IXMLDOMNode* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2536    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2537}
 2538static inline HRESULT IXMLDOMNode_Invoke(IXMLDOMNode* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2539    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2540}
 2541/*** IXMLDOMNode methods ***/
 2542static inline HRESULT IXMLDOMNode_get_nodeName(IXMLDOMNode* This,BSTR *p) {
 2543    return This->lpVtbl->get_nodeName(This,p);
 2544}
 2545static inline HRESULT IXMLDOMNode_get_nodeValue(IXMLDOMNode* This,VARIANT *var1) {
 2546    return This->lpVtbl->get_nodeValue(This,var1);
 2547}
 2548static inline HRESULT IXMLDOMNode_put_nodeValue(IXMLDOMNode* This,VARIANT var1) {
 2549    return This->lpVtbl->put_nodeValue(This,var1);
 2550}
 2551static inline HRESULT IXMLDOMNode_get_nodeType(IXMLDOMNode* This,DOMNodeType *domNodeType) {
 2552    return This->lpVtbl->get_nodeType(This,domNodeType);
 2553}
 2554static inline HRESULT IXMLDOMNode_get_parentNode(IXMLDOMNode* This,IXMLDOMNode **parent) {
 2555    return This->lpVtbl->get_parentNode(This,parent);
 2556}
 2557static inline HRESULT IXMLDOMNode_get_childNodes(IXMLDOMNode* This,IXMLDOMNodeList **outList) {
 2558    return This->lpVtbl->get_childNodes(This,outList);
 2559}
 2560static inline HRESULT IXMLDOMNode_get_firstChild(IXMLDOMNode* This,IXMLDOMNode **domNode) {
 2561    return This->lpVtbl->get_firstChild(This,domNode);
 2562}
 2563static inline HRESULT IXMLDOMNode_get_lastChild(IXMLDOMNode* This,IXMLDOMNode **domNode) {
 2564    return This->lpVtbl->get_lastChild(This,domNode);
 2565}
 2566static inline HRESULT IXMLDOMNode_get_previousSibling(IXMLDOMNode* This,IXMLDOMNode **domNode) {
 2567    return This->lpVtbl->get_previousSibling(This,domNode);
 2568}
 2569static inline HRESULT IXMLDOMNode_get_nextSibling(IXMLDOMNode* This,IXMLDOMNode **domNode) {
 2570    return This->lpVtbl->get_nextSibling(This,domNode);
 2571}
 2572static inline HRESULT IXMLDOMNode_get_attributes(IXMLDOMNode* This,IXMLDOMNamedNodeMap **attributeMap) {
 2573    return This->lpVtbl->get_attributes(This,attributeMap);
 2574}
 2575static inline HRESULT IXMLDOMNode_insertBefore(IXMLDOMNode* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 2576    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 2577}
 2578static inline HRESULT IXMLDOMNode_replaceChild(IXMLDOMNode* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 2579    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 2580}
 2581static inline HRESULT IXMLDOMNode_removeChild(IXMLDOMNode* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 2582    return This->lpVtbl->removeChild(This,domNode,oldNode);
 2583}
 2584static inline HRESULT IXMLDOMNode_appendChild(IXMLDOMNode* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 2585    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 2586}
 2587static inline HRESULT IXMLDOMNode_hasChildNodes(IXMLDOMNode* This,VARIANT_BOOL *pbool) {
 2588    return This->lpVtbl->hasChildNodes(This,pbool);
 2589}
 2590static inline HRESULT IXMLDOMNode_get_ownerDocument(IXMLDOMNode* This,IXMLDOMDocument **domDocument) {
 2591    return This->lpVtbl->get_ownerDocument(This,domDocument);
 2592}
 2593static inline HRESULT IXMLDOMNode_cloneNode(IXMLDOMNode* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 2594    return This->lpVtbl->cloneNode(This,pbool,outNode);
 2595}
 2596static inline HRESULT IXMLDOMNode_get_nodeTypeString(IXMLDOMNode* This,BSTR *p) {
 2597    return This->lpVtbl->get_nodeTypeString(This,p);
 2598}
 2599static inline HRESULT IXMLDOMNode_get_text(IXMLDOMNode* This,BSTR *p) {
 2600    return This->lpVtbl->get_text(This,p);
 2601}
 2602static inline HRESULT IXMLDOMNode_put_text(IXMLDOMNode* This,BSTR p) {
 2603    return This->lpVtbl->put_text(This,p);
 2604}
 2605static inline HRESULT IXMLDOMNode_get_specified(IXMLDOMNode* This,VARIANT_BOOL *pbool) {
 2606    return This->lpVtbl->get_specified(This,pbool);
 2607}
 2608static inline HRESULT IXMLDOMNode_get_definition(IXMLDOMNode* This,IXMLDOMNode **domNode) {
 2609    return This->lpVtbl->get_definition(This,domNode);
 2610}
 2611static inline HRESULT IXMLDOMNode_get_nodeTypedValue(IXMLDOMNode* This,VARIANT *var1) {
 2612    return This->lpVtbl->get_nodeTypedValue(This,var1);
 2613}
 2614static inline HRESULT IXMLDOMNode_put_nodeTypedValue(IXMLDOMNode* This,VARIANT var1) {
 2615    return This->lpVtbl->put_nodeTypedValue(This,var1);
 2616}
 2617static inline HRESULT IXMLDOMNode_get_dataType(IXMLDOMNode* This,VARIANT *var1) {
 2618    return This->lpVtbl->get_dataType(This,var1);
 2619}
 2620static inline HRESULT IXMLDOMNode_put_dataType(IXMLDOMNode* This,BSTR p) {
 2621    return This->lpVtbl->put_dataType(This,p);
 2622}
 2623static inline HRESULT IXMLDOMNode_get_xml(IXMLDOMNode* This,BSTR *p) {
 2624    return This->lpVtbl->get_xml(This,p);
 2625}
 2626static inline HRESULT IXMLDOMNode_transformNode(IXMLDOMNode* This,IXMLDOMNode *domNode,BSTR *p) {
 2627    return This->lpVtbl->transformNode(This,domNode,p);
 2628}
 2629static inline HRESULT IXMLDOMNode_selectNodes(IXMLDOMNode* This,BSTR p,IXMLDOMNodeList **outList) {
 2630    return This->lpVtbl->selectNodes(This,p,outList);
 2631}
 2632static inline HRESULT IXMLDOMNode_selectSingleNode(IXMLDOMNode* This,BSTR p,IXMLDOMNode **outNode) {
 2633    return This->lpVtbl->selectSingleNode(This,p,outNode);
 2634}
 2635static inline HRESULT IXMLDOMNode_get_parsed(IXMLDOMNode* This,VARIANT_BOOL *pbool) {
 2636    return This->lpVtbl->get_parsed(This,pbool);
 2637}
 2638static inline HRESULT IXMLDOMNode_get_namespaceURI(IXMLDOMNode* This,BSTR *p) {
 2639    return This->lpVtbl->get_namespaceURI(This,p);
 2640}
 2641static inline HRESULT IXMLDOMNode_get_prefix(IXMLDOMNode* This,BSTR *p) {
 2642    return This->lpVtbl->get_prefix(This,p);
 2643}
 2644static inline HRESULT IXMLDOMNode_get_baseName(IXMLDOMNode* This,BSTR *p) {
 2645    return This->lpVtbl->get_baseName(This,p);
 2646}
 2647static inline HRESULT IXMLDOMNode_transformNodeToObject(IXMLDOMNode* This,IXMLDOMNode *domNode,VARIANT var1) {
 2648    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 2649}
 2650#endif
 2651#endif
 2652
 2653#endif
 2654
 2655
 2656#endif  /* __IXMLDOMNode_INTERFACE_DEFINED__ */
 2657
 2658/*****************************************************************************
 2659 * IXMLDOMDocument interface
 2660 */
 2661#ifndef __IXMLDOMDocument_INTERFACE_DEFINED__
 2662#define __IXMLDOMDocument_INTERFACE_DEFINED__
 2663
 2664DEFINE_GUID(IID_IXMLDOMDocument, 0x2933bf81, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 2665#if defined(__cplusplus) && !defined(CINTERFACE)
 2666MIDL_INTERFACE("2933bf81-7b36-11d2-b20e-00c04f983e60")
 2667IXMLDOMDocument : public IXMLDOMNode
 2668{
 2669    virtual HRESULT STDMETHODCALLTYPE get_doctype(
 2670        IXMLDOMDocumentType **docType) = 0;
 2671
 2672    virtual HRESULT STDMETHODCALLTYPE get_implementation(
 2673        IXMLDOMImplementation **impl) = 0;
 2674
 2675    virtual HRESULT STDMETHODCALLTYPE get_documentElement(
 2676        IXMLDOMElement **domElement) = 0;
 2677
 2678    virtual HRESULT STDMETHODCALLTYPE putref_documentElement(
 2679        IXMLDOMElement *domElement) = 0;
 2680
 2681    virtual HRESULT STDMETHODCALLTYPE createElement(
 2682        BSTR p,
 2683        IXMLDOMElement **domElement) = 0;
 2684
 2685    virtual HRESULT STDMETHODCALLTYPE createDocumentFragment(
 2686        IXMLDOMDocumentFragment **docFrag) = 0;
 2687
 2688    virtual HRESULT STDMETHODCALLTYPE createTextNode(
 2689        BSTR p,
 2690        IXMLDOMText **text) = 0;
 2691
 2692    virtual HRESULT STDMETHODCALLTYPE createComment(
 2693        BSTR p,
 2694        IXMLDOMComment **comment) = 0;
 2695
 2696    virtual HRESULT STDMETHODCALLTYPE createCDATASection(
 2697        BSTR p,
 2698        IXMLDOMCDATASection **cdata) = 0;
 2699
 2700    virtual HRESULT STDMETHODCALLTYPE createProcessingInstruction(
 2701        BSTR target,
 2702        BSTR data,
 2703        IXMLDOMProcessingInstruction **pi) = 0;
 2704
 2705    virtual HRESULT STDMETHODCALLTYPE createAttribute(
 2706        BSTR p,
 2707        IXMLDOMAttribute **attribute) = 0;
 2708
 2709    virtual HRESULT STDMETHODCALLTYPE createEntityReference(
 2710        BSTR p,
 2711        IXMLDOMEntityReference **entityRef) = 0;
 2712
 2713    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
 2714        BSTR p,
 2715        IXMLDOMNodeList **resultList) = 0;
 2716
 2717    virtual HRESULT STDMETHODCALLTYPE createNode(
 2718        VARIANT var,
 2719        BSTR name,
 2720        BSTR uri,
 2721        IXMLDOMNode **node) = 0;
 2722
 2723    virtual HRESULT STDMETHODCALLTYPE nodeFromID(
 2724        BSTR id,
 2725        IXMLDOMNode **node) = 0;
 2726
 2727    virtual HRESULT STDMETHODCALLTYPE load(
 2728        VARIANT var1,
 2729        VARIANT_BOOL *pbool) = 0;
 2730
 2731    virtual HRESULT STDMETHODCALLTYPE get_readyState(
 2732        LONG *value) = 0;
 2733
 2734    virtual HRESULT STDMETHODCALLTYPE get_parseError(
 2735        IXMLDOMParseError **err) = 0;
 2736
 2737    virtual HRESULT STDMETHODCALLTYPE get_url(
 2738        BSTR *p) = 0;
 2739
 2740    virtual HRESULT STDMETHODCALLTYPE get_async(
 2741        VARIANT_BOOL *pbool) = 0;
 2742
 2743    virtual HRESULT STDMETHODCALLTYPE put_async(
 2744        VARIANT_BOOL pbool) = 0;
 2745
 2746    virtual HRESULT STDMETHODCALLTYPE abort(
 2747        ) = 0;
 2748
 2749    virtual HRESULT STDMETHODCALLTYPE loadXML(
 2750        BSTR p,
 2751        VARIANT_BOOL *pbool) = 0;
 2752
 2753    virtual HRESULT STDMETHODCALLTYPE save(
 2754        VARIANT var1) = 0;
 2755
 2756    virtual HRESULT STDMETHODCALLTYPE get_validateOnParse(
 2757        VARIANT_BOOL *pbool) = 0;
 2758
 2759    virtual HRESULT STDMETHODCALLTYPE put_validateOnParse(
 2760        VARIANT_BOOL pbool) = 0;
 2761
 2762    virtual HRESULT STDMETHODCALLTYPE get_resolveExternals(
 2763        VARIANT_BOOL *pbool) = 0;
 2764
 2765    virtual HRESULT STDMETHODCALLTYPE put_resolveExternals(
 2766        VARIANT_BOOL pbool) = 0;
 2767
 2768    virtual HRESULT STDMETHODCALLTYPE get_preserveWhiteSpace(
 2769        VARIANT_BOOL *pbool) = 0;
 2770
 2771    virtual HRESULT STDMETHODCALLTYPE put_preserveWhiteSpace(
 2772        VARIANT_BOOL pbool) = 0;
 2773
 2774    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
 2775        VARIANT var1) = 0;
 2776
 2777    virtual HRESULT STDMETHODCALLTYPE put_ondataavailable(
 2778        VARIANT var1) = 0;
 2779
 2780    virtual HRESULT STDMETHODCALLTYPE put_ontransformnode(
 2781        VARIANT var1) = 0;
 2782
 2783};
 2784#ifdef __CRT_UUID_DECL
 2785__CRT_UUID_DECL(IXMLDOMDocument, 0x2933bf81, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 2786#endif
 2787#else
 2788typedef struct IXMLDOMDocumentVtbl {
 2789    BEGIN_INTERFACE
 2790
 2791    /*** IUnknown methods ***/
 2792    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2793        IXMLDOMDocument *This,
 2794        REFIID riid,
 2795        void **ppvObject);
 2796
 2797    ULONG (STDMETHODCALLTYPE *AddRef)(
 2798        IXMLDOMDocument *This);
 2799
 2800    ULONG (STDMETHODCALLTYPE *Release)(
 2801        IXMLDOMDocument *This);
 2802
 2803    /*** IDispatch methods ***/
 2804    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2805        IXMLDOMDocument *This,
 2806        UINT *pctinfo);
 2807
 2808    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2809        IXMLDOMDocument *This,
 2810        UINT iTInfo,
 2811        LCID lcid,
 2812        ITypeInfo **ppTInfo);
 2813
 2814    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2815        IXMLDOMDocument *This,
 2816        REFIID riid,
 2817        LPOLESTR *rgszNames,
 2818        UINT cNames,
 2819        LCID lcid,
 2820        DISPID *rgDispId);
 2821
 2822    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2823        IXMLDOMDocument *This,
 2824        DISPID dispIdMember,
 2825        REFIID riid,
 2826        LCID lcid,
 2827        WORD wFlags,
 2828        DISPPARAMS *pDispParams,
 2829        VARIANT *pVarResult,
 2830        EXCEPINFO *pExcepInfo,
 2831        UINT *puArgErr);
 2832
 2833    /*** IXMLDOMNode methods ***/
 2834    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 2835        IXMLDOMDocument *This,
 2836        BSTR *p);
 2837
 2838    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 2839        IXMLDOMDocument *This,
 2840        VARIANT *var1);
 2841
 2842    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 2843        IXMLDOMDocument *This,
 2844        VARIANT var1);
 2845
 2846    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 2847        IXMLDOMDocument *This,
 2848        DOMNodeType *domNodeType);
 2849
 2850    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 2851        IXMLDOMDocument *This,
 2852        IXMLDOMNode **parent);
 2853
 2854    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 2855        IXMLDOMDocument *This,
 2856        IXMLDOMNodeList **outList);
 2857
 2858    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 2859        IXMLDOMDocument *This,
 2860        IXMLDOMNode **domNode);
 2861
 2862    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 2863        IXMLDOMDocument *This,
 2864        IXMLDOMNode **domNode);
 2865
 2866    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 2867        IXMLDOMDocument *This,
 2868        IXMLDOMNode **domNode);
 2869
 2870    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 2871        IXMLDOMDocument *This,
 2872        IXMLDOMNode **domNode);
 2873
 2874    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 2875        IXMLDOMDocument *This,
 2876        IXMLDOMNamedNodeMap **attributeMap);
 2877
 2878    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 2879        IXMLDOMDocument *This,
 2880        IXMLDOMNode *newNode,
 2881        VARIANT var1,
 2882        IXMLDOMNode **outOldNode);
 2883
 2884    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 2885        IXMLDOMDocument *This,
 2886        IXMLDOMNode *newNode,
 2887        IXMLDOMNode *oldNode,
 2888        IXMLDOMNode **outOldNode);
 2889
 2890    HRESULT (STDMETHODCALLTYPE *removeChild)(
 2891        IXMLDOMDocument *This,
 2892        IXMLDOMNode *domNode,
 2893        IXMLDOMNode **oldNode);
 2894
 2895    HRESULT (STDMETHODCALLTYPE *appendChild)(
 2896        IXMLDOMDocument *This,
 2897        IXMLDOMNode *newNode,
 2898        IXMLDOMNode **outNewNode);
 2899
 2900    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 2901        IXMLDOMDocument *This,
 2902        VARIANT_BOOL *pbool);
 2903
 2904    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 2905        IXMLDOMDocument *This,
 2906        IXMLDOMDocument **domDocument);
 2907
 2908    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 2909        IXMLDOMDocument *This,
 2910        VARIANT_BOOL pbool,
 2911        IXMLDOMNode **outNode);
 2912
 2913    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 2914        IXMLDOMDocument *This,
 2915        BSTR *p);
 2916
 2917    HRESULT (STDMETHODCALLTYPE *get_text)(
 2918        IXMLDOMDocument *This,
 2919        BSTR *p);
 2920
 2921    HRESULT (STDMETHODCALLTYPE *put_text)(
 2922        IXMLDOMDocument *This,
 2923        BSTR p);
 2924
 2925    HRESULT (STDMETHODCALLTYPE *get_specified)(
 2926        IXMLDOMDocument *This,
 2927        VARIANT_BOOL *pbool);
 2928
 2929    HRESULT (STDMETHODCALLTYPE *get_definition)(
 2930        IXMLDOMDocument *This,
 2931        IXMLDOMNode **domNode);
 2932
 2933    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 2934        IXMLDOMDocument *This,
 2935        VARIANT *var1);
 2936
 2937    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 2938        IXMLDOMDocument *This,
 2939        VARIANT var1);
 2940
 2941    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 2942        IXMLDOMDocument *This,
 2943        VARIANT *var1);
 2944
 2945    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 2946        IXMLDOMDocument *This,
 2947        BSTR p);
 2948
 2949    HRESULT (STDMETHODCALLTYPE *get_xml)(
 2950        IXMLDOMDocument *This,
 2951        BSTR *p);
 2952
 2953    HRESULT (STDMETHODCALLTYPE *transformNode)(
 2954        IXMLDOMDocument *This,
 2955        IXMLDOMNode *domNode,
 2956        BSTR *p);
 2957
 2958    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 2959        IXMLDOMDocument *This,
 2960        BSTR p,
 2961        IXMLDOMNodeList **outList);
 2962
 2963    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 2964        IXMLDOMDocument *This,
 2965        BSTR p,
 2966        IXMLDOMNode **outNode);
 2967
 2968    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 2969        IXMLDOMDocument *This,
 2970        VARIANT_BOOL *pbool);
 2971
 2972    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 2973        IXMLDOMDocument *This,
 2974        BSTR *p);
 2975
 2976    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 2977        IXMLDOMDocument *This,
 2978        BSTR *p);
 2979
 2980    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 2981        IXMLDOMDocument *This,
 2982        BSTR *p);
 2983
 2984    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 2985        IXMLDOMDocument *This,
 2986        IXMLDOMNode *domNode,
 2987        VARIANT var1);
 2988
 2989    /*** IXMLDOMDocument methods ***/
 2990    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 2991        IXMLDOMDocument *This,
 2992        IXMLDOMDocumentType **docType);
 2993
 2994    HRESULT (STDMETHODCALLTYPE *get_implementation)(
 2995        IXMLDOMDocument *This,
 2996        IXMLDOMImplementation **impl);
 2997
 2998    HRESULT (STDMETHODCALLTYPE *get_documentElement)(
 2999        IXMLDOMDocument *This,
 3000        IXMLDOMElement **domElement);
 3001
 3002    HRESULT (STDMETHODCALLTYPE *putref_documentElement)(
 3003        IXMLDOMDocument *This,
 3004        IXMLDOMElement *domElement);
 3005
 3006    HRESULT (STDMETHODCALLTYPE *createElement)(
 3007        IXMLDOMDocument *This,
 3008        BSTR p,
 3009        IXMLDOMElement **domElement);
 3010
 3011    HRESULT (STDMETHODCALLTYPE *createDocumentFragment)(
 3012        IXMLDOMDocument *This,
 3013        IXMLDOMDocumentFragment **docFrag);
 3014
 3015    HRESULT (STDMETHODCALLTYPE *createTextNode)(
 3016        IXMLDOMDocument *This,
 3017        BSTR p,
 3018        IXMLDOMText **text);
 3019
 3020    HRESULT (STDMETHODCALLTYPE *createComment)(
 3021        IXMLDOMDocument *This,
 3022        BSTR p,
 3023        IXMLDOMComment **comment);
 3024
 3025    HRESULT (STDMETHODCALLTYPE *createCDATASection)(
 3026        IXMLDOMDocument *This,
 3027        BSTR p,
 3028        IXMLDOMCDATASection **cdata);
 3029
 3030    HRESULT (STDMETHODCALLTYPE *createProcessingInstruction)(
 3031        IXMLDOMDocument *This,
 3032        BSTR target,
 3033        BSTR data,
 3034        IXMLDOMProcessingInstruction **pi);
 3035
 3036    HRESULT (STDMETHODCALLTYPE *createAttribute)(
 3037        IXMLDOMDocument *This,
 3038        BSTR p,
 3039        IXMLDOMAttribute **attribute);
 3040
 3041    HRESULT (STDMETHODCALLTYPE *createEntityReference)(
 3042        IXMLDOMDocument *This,
 3043        BSTR p,
 3044        IXMLDOMEntityReference **entityRef);
 3045
 3046    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 3047        IXMLDOMDocument *This,
 3048        BSTR p,
 3049        IXMLDOMNodeList **resultList);
 3050
 3051    HRESULT (STDMETHODCALLTYPE *createNode)(
 3052        IXMLDOMDocument *This,
 3053        VARIANT var,
 3054        BSTR name,
 3055        BSTR uri,
 3056        IXMLDOMNode **node);
 3057
 3058    HRESULT (STDMETHODCALLTYPE *nodeFromID)(
 3059        IXMLDOMDocument *This,
 3060        BSTR id,
 3061        IXMLDOMNode **node);
 3062
 3063    HRESULT (STDMETHODCALLTYPE *load)(
 3064        IXMLDOMDocument *This,
 3065        VARIANT var1,
 3066        VARIANT_BOOL *pbool);
 3067
 3068    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 3069        IXMLDOMDocument *This,
 3070        LONG *value);
 3071
 3072    HRESULT (STDMETHODCALLTYPE *get_parseError)(
 3073        IXMLDOMDocument *This,
 3074        IXMLDOMParseError **err);
 3075
 3076    HRESULT (STDMETHODCALLTYPE *get_url)(
 3077        IXMLDOMDocument *This,
 3078        BSTR *p);
 3079
 3080    HRESULT (STDMETHODCALLTYPE *get_async)(
 3081        IXMLDOMDocument *This,
 3082        VARIANT_BOOL *pbool);
 3083
 3084    HRESULT (STDMETHODCALLTYPE *put_async)(
 3085        IXMLDOMDocument *This,
 3086        VARIANT_BOOL pbool);
 3087
 3088    HRESULT (STDMETHODCALLTYPE *abort)(
 3089        IXMLDOMDocument *This);
 3090
 3091    HRESULT (STDMETHODCALLTYPE *loadXML)(
 3092        IXMLDOMDocument *This,
 3093        BSTR p,
 3094        VARIANT_BOOL *pbool);
 3095
 3096    HRESULT (STDMETHODCALLTYPE *save)(
 3097        IXMLDOMDocument *This,
 3098        VARIANT var1);
 3099
 3100    HRESULT (STDMETHODCALLTYPE *get_validateOnParse)(
 3101        IXMLDOMDocument *This,
 3102        VARIANT_BOOL *pbool);
 3103
 3104    HRESULT (STDMETHODCALLTYPE *put_validateOnParse)(
 3105        IXMLDOMDocument *This,
 3106        VARIANT_BOOL pbool);
 3107
 3108    HRESULT (STDMETHODCALLTYPE *get_resolveExternals)(
 3109        IXMLDOMDocument *This,
 3110        VARIANT_BOOL *pbool);
 3111
 3112    HRESULT (STDMETHODCALLTYPE *put_resolveExternals)(
 3113        IXMLDOMDocument *This,
 3114        VARIANT_BOOL pbool);
 3115
 3116    HRESULT (STDMETHODCALLTYPE *get_preserveWhiteSpace)(
 3117        IXMLDOMDocument *This,
 3118        VARIANT_BOOL *pbool);
 3119
 3120    HRESULT (STDMETHODCALLTYPE *put_preserveWhiteSpace)(
 3121        IXMLDOMDocument *This,
 3122        VARIANT_BOOL pbool);
 3123
 3124    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
 3125        IXMLDOMDocument *This,
 3126        VARIANT var1);
 3127
 3128    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
 3129        IXMLDOMDocument *This,
 3130        VARIANT var1);
 3131
 3132    HRESULT (STDMETHODCALLTYPE *put_ontransformnode)(
 3133        IXMLDOMDocument *This,
 3134        VARIANT var1);
 3135
 3136    END_INTERFACE
 3137} IXMLDOMDocumentVtbl;
 3138
 3139interface IXMLDOMDocument {
 3140    CONST_VTBL IXMLDOMDocumentVtbl* lpVtbl;
 3141};
 3142
 3143#ifdef COBJMACROS
 3144#ifndef WIDL_C_INLINE_WRAPPERS
 3145/*** IUnknown methods ***/
 3146#define IXMLDOMDocument_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3147#define IXMLDOMDocument_AddRef(This) (This)->lpVtbl->AddRef(This)
 3148#define IXMLDOMDocument_Release(This) (This)->lpVtbl->Release(This)
 3149/*** IDispatch methods ***/
 3150#define IXMLDOMDocument_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3151#define IXMLDOMDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3152#define IXMLDOMDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3153#define IXMLDOMDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3154/*** IXMLDOMNode methods ***/
 3155#define IXMLDOMDocument_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 3156#define IXMLDOMDocument_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 3157#define IXMLDOMDocument_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 3158#define IXMLDOMDocument_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 3159#define IXMLDOMDocument_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 3160#define IXMLDOMDocument_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 3161#define IXMLDOMDocument_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 3162#define IXMLDOMDocument_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 3163#define IXMLDOMDocument_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 3164#define IXMLDOMDocument_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 3165#define IXMLDOMDocument_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 3166#define IXMLDOMDocument_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 3167#define IXMLDOMDocument_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 3168#define IXMLDOMDocument_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 3169#define IXMLDOMDocument_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 3170#define IXMLDOMDocument_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 3171#define IXMLDOMDocument_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 3172#define IXMLDOMDocument_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 3173#define IXMLDOMDocument_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 3174#define IXMLDOMDocument_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 3175#define IXMLDOMDocument_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 3176#define IXMLDOMDocument_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 3177#define IXMLDOMDocument_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 3178#define IXMLDOMDocument_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 3179#define IXMLDOMDocument_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 3180#define IXMLDOMDocument_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 3181#define IXMLDOMDocument_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 3182#define IXMLDOMDocument_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 3183#define IXMLDOMDocument_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 3184#define IXMLDOMDocument_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 3185#define IXMLDOMDocument_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 3186#define IXMLDOMDocument_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 3187#define IXMLDOMDocument_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 3188#define IXMLDOMDocument_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 3189#define IXMLDOMDocument_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 3190#define IXMLDOMDocument_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 3191/*** IXMLDOMDocument methods ***/
 3192#define IXMLDOMDocument_get_doctype(This,docType) (This)->lpVtbl->get_doctype(This,docType)
 3193#define IXMLDOMDocument_get_implementation(This,impl) (This)->lpVtbl->get_implementation(This,impl)
 3194#define IXMLDOMDocument_get_documentElement(This,domElement) (This)->lpVtbl->get_documentElement(This,domElement)
 3195#define IXMLDOMDocument_putref_documentElement(This,domElement) (This)->lpVtbl->putref_documentElement(This,domElement)
 3196#define IXMLDOMDocument_createElement(This,p,domElement) (This)->lpVtbl->createElement(This,p,domElement)
 3197#define IXMLDOMDocument_createDocumentFragment(This,docFrag) (This)->lpVtbl->createDocumentFragment(This,docFrag)
 3198#define IXMLDOMDocument_createTextNode(This,p,text) (This)->lpVtbl->createTextNode(This,p,text)
 3199#define IXMLDOMDocument_createComment(This,p,comment) (This)->lpVtbl->createComment(This,p,comment)
 3200#define IXMLDOMDocument_createCDATASection(This,p,cdata) (This)->lpVtbl->createCDATASection(This,p,cdata)
 3201#define IXMLDOMDocument_createProcessingInstruction(This,target,data,pi) (This)->lpVtbl->createProcessingInstruction(This,target,data,pi)
 3202#define IXMLDOMDocument_createAttribute(This,p,attribute) (This)->lpVtbl->createAttribute(This,p,attribute)
 3203#define IXMLDOMDocument_createEntityReference(This,p,entityRef) (This)->lpVtbl->createEntityReference(This,p,entityRef)
 3204#define IXMLDOMDocument_getElementsByTagName(This,p,resultList) (This)->lpVtbl->getElementsByTagName(This,p,resultList)
 3205#define IXMLDOMDocument_createNode(This,var,name,uri,node) (This)->lpVtbl->createNode(This,var,name,uri,node)
 3206#define IXMLDOMDocument_nodeFromID(This,id,node) (This)->lpVtbl->nodeFromID(This,id,node)
 3207#define IXMLDOMDocument_load(This,var1,pbool) (This)->lpVtbl->load(This,var1,pbool)
 3208#define IXMLDOMDocument_get_readyState(This,value) (This)->lpVtbl->get_readyState(This,value)
 3209#define IXMLDOMDocument_get_parseError(This,err) (This)->lpVtbl->get_parseError(This,err)
 3210#define IXMLDOMDocument_get_url(This,p) (This)->lpVtbl->get_url(This,p)
 3211#define IXMLDOMDocument_get_async(This,pbool) (This)->lpVtbl->get_async(This,pbool)
 3212#define IXMLDOMDocument_put_async(This,pbool) (This)->lpVtbl->put_async(This,pbool)
 3213#define IXMLDOMDocument_abort(This) (This)->lpVtbl->abort(This)
 3214#define IXMLDOMDocument_loadXML(This,p,pbool) (This)->lpVtbl->loadXML(This,p,pbool)
 3215#define IXMLDOMDocument_save(This,var1) (This)->lpVtbl->save(This,var1)
 3216#define IXMLDOMDocument_get_validateOnParse(This,pbool) (This)->lpVtbl->get_validateOnParse(This,pbool)
 3217#define IXMLDOMDocument_put_validateOnParse(This,pbool) (This)->lpVtbl->put_validateOnParse(This,pbool)
 3218#define IXMLDOMDocument_get_resolveExternals(This,pbool) (This)->lpVtbl->get_resolveExternals(This,pbool)
 3219#define IXMLDOMDocument_put_resolveExternals(This,pbool) (This)->lpVtbl->put_resolveExternals(This,pbool)
 3220#define IXMLDOMDocument_get_preserveWhiteSpace(This,pbool) (This)->lpVtbl->get_preserveWhiteSpace(This,pbool)
 3221#define IXMLDOMDocument_put_preserveWhiteSpace(This,pbool) (This)->lpVtbl->put_preserveWhiteSpace(This,pbool)
 3222#define IXMLDOMDocument_put_onreadystatechange(This,var1) (This)->lpVtbl->put_onreadystatechange(This,var1)
 3223#define IXMLDOMDocument_put_ondataavailable(This,var1) (This)->lpVtbl->put_ondataavailable(This,var1)
 3224#define IXMLDOMDocument_put_ontransformnode(This,var1) (This)->lpVtbl->put_ontransformnode(This,var1)
 3225#else
 3226/*** IUnknown methods ***/
 3227static inline HRESULT IXMLDOMDocument_QueryInterface(IXMLDOMDocument* This,REFIID riid,void **ppvObject) {
 3228    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3229}
 3230static inline ULONG IXMLDOMDocument_AddRef(IXMLDOMDocument* This) {
 3231    return This->lpVtbl->AddRef(This);
 3232}
 3233static inline ULONG IXMLDOMDocument_Release(IXMLDOMDocument* This) {
 3234    return This->lpVtbl->Release(This);
 3235}
 3236/*** IDispatch methods ***/
 3237static inline HRESULT IXMLDOMDocument_GetTypeInfoCount(IXMLDOMDocument* This,UINT *pctinfo) {
 3238    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3239}
 3240static inline HRESULT IXMLDOMDocument_GetTypeInfo(IXMLDOMDocument* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3241    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3242}
 3243static inline HRESULT IXMLDOMDocument_GetIDsOfNames(IXMLDOMDocument* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3244    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3245}
 3246static inline HRESULT IXMLDOMDocument_Invoke(IXMLDOMDocument* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3247    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3248}
 3249/*** IXMLDOMNode methods ***/
 3250static inline HRESULT IXMLDOMDocument_get_nodeName(IXMLDOMDocument* This,BSTR *p) {
 3251    return This->lpVtbl->get_nodeName(This,p);
 3252}
 3253static inline HRESULT IXMLDOMDocument_get_nodeValue(IXMLDOMDocument* This,VARIANT *var1) {
 3254    return This->lpVtbl->get_nodeValue(This,var1);
 3255}
 3256static inline HRESULT IXMLDOMDocument_put_nodeValue(IXMLDOMDocument* This,VARIANT var1) {
 3257    return This->lpVtbl->put_nodeValue(This,var1);
 3258}
 3259static inline HRESULT IXMLDOMDocument_get_nodeType(IXMLDOMDocument* This,DOMNodeType *domNodeType) {
 3260    return This->lpVtbl->get_nodeType(This,domNodeType);
 3261}
 3262static inline HRESULT IXMLDOMDocument_get_parentNode(IXMLDOMDocument* This,IXMLDOMNode **parent) {
 3263    return This->lpVtbl->get_parentNode(This,parent);
 3264}
 3265static inline HRESULT IXMLDOMDocument_get_childNodes(IXMLDOMDocument* This,IXMLDOMNodeList **outList) {
 3266    return This->lpVtbl->get_childNodes(This,outList);
 3267}
 3268static inline HRESULT IXMLDOMDocument_get_firstChild(IXMLDOMDocument* This,IXMLDOMNode **domNode) {
 3269    return This->lpVtbl->get_firstChild(This,domNode);
 3270}
 3271static inline HRESULT IXMLDOMDocument_get_lastChild(IXMLDOMDocument* This,IXMLDOMNode **domNode) {
 3272    return This->lpVtbl->get_lastChild(This,domNode);
 3273}
 3274static inline HRESULT IXMLDOMDocument_get_previousSibling(IXMLDOMDocument* This,IXMLDOMNode **domNode) {
 3275    return This->lpVtbl->get_previousSibling(This,domNode);
 3276}
 3277static inline HRESULT IXMLDOMDocument_get_nextSibling(IXMLDOMDocument* This,IXMLDOMNode **domNode) {
 3278    return This->lpVtbl->get_nextSibling(This,domNode);
 3279}
 3280static inline HRESULT IXMLDOMDocument_get_attributes(IXMLDOMDocument* This,IXMLDOMNamedNodeMap **attributeMap) {
 3281    return This->lpVtbl->get_attributes(This,attributeMap);
 3282}
 3283static inline HRESULT IXMLDOMDocument_insertBefore(IXMLDOMDocument* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 3284    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 3285}
 3286static inline HRESULT IXMLDOMDocument_replaceChild(IXMLDOMDocument* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 3287    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 3288}
 3289static inline HRESULT IXMLDOMDocument_removeChild(IXMLDOMDocument* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 3290    return This->lpVtbl->removeChild(This,domNode,oldNode);
 3291}
 3292static inline HRESULT IXMLDOMDocument_appendChild(IXMLDOMDocument* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 3293    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 3294}
 3295static inline HRESULT IXMLDOMDocument_hasChildNodes(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3296    return This->lpVtbl->hasChildNodes(This,pbool);
 3297}
 3298static inline HRESULT IXMLDOMDocument_get_ownerDocument(IXMLDOMDocument* This,IXMLDOMDocument **domDocument) {
 3299    return This->lpVtbl->get_ownerDocument(This,domDocument);
 3300}
 3301static inline HRESULT IXMLDOMDocument_cloneNode(IXMLDOMDocument* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 3302    return This->lpVtbl->cloneNode(This,pbool,outNode);
 3303}
 3304static inline HRESULT IXMLDOMDocument_get_nodeTypeString(IXMLDOMDocument* This,BSTR *p) {
 3305    return This->lpVtbl->get_nodeTypeString(This,p);
 3306}
 3307static inline HRESULT IXMLDOMDocument_get_text(IXMLDOMDocument* This,BSTR *p) {
 3308    return This->lpVtbl->get_text(This,p);
 3309}
 3310static inline HRESULT IXMLDOMDocument_put_text(IXMLDOMDocument* This,BSTR p) {
 3311    return This->lpVtbl->put_text(This,p);
 3312}
 3313static inline HRESULT IXMLDOMDocument_get_specified(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3314    return This->lpVtbl->get_specified(This,pbool);
 3315}
 3316static inline HRESULT IXMLDOMDocument_get_definition(IXMLDOMDocument* This,IXMLDOMNode **domNode) {
 3317    return This->lpVtbl->get_definition(This,domNode);
 3318}
 3319static inline HRESULT IXMLDOMDocument_get_nodeTypedValue(IXMLDOMDocument* This,VARIANT *var1) {
 3320    return This->lpVtbl->get_nodeTypedValue(This,var1);
 3321}
 3322static inline HRESULT IXMLDOMDocument_put_nodeTypedValue(IXMLDOMDocument* This,VARIANT var1) {
 3323    return This->lpVtbl->put_nodeTypedValue(This,var1);
 3324}
 3325static inline HRESULT IXMLDOMDocument_get_dataType(IXMLDOMDocument* This,VARIANT *var1) {
 3326    return This->lpVtbl->get_dataType(This,var1);
 3327}
 3328static inline HRESULT IXMLDOMDocument_put_dataType(IXMLDOMDocument* This,BSTR p) {
 3329    return This->lpVtbl->put_dataType(This,p);
 3330}
 3331static inline HRESULT IXMLDOMDocument_get_xml(IXMLDOMDocument* This,BSTR *p) {
 3332    return This->lpVtbl->get_xml(This,p);
 3333}
 3334static inline HRESULT IXMLDOMDocument_transformNode(IXMLDOMDocument* This,IXMLDOMNode *domNode,BSTR *p) {
 3335    return This->lpVtbl->transformNode(This,domNode,p);
 3336}
 3337static inline HRESULT IXMLDOMDocument_selectNodes(IXMLDOMDocument* This,BSTR p,IXMLDOMNodeList **outList) {
 3338    return This->lpVtbl->selectNodes(This,p,outList);
 3339}
 3340static inline HRESULT IXMLDOMDocument_selectSingleNode(IXMLDOMDocument* This,BSTR p,IXMLDOMNode **outNode) {
 3341    return This->lpVtbl->selectSingleNode(This,p,outNode);
 3342}
 3343static inline HRESULT IXMLDOMDocument_get_parsed(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3344    return This->lpVtbl->get_parsed(This,pbool);
 3345}
 3346static inline HRESULT IXMLDOMDocument_get_namespaceURI(IXMLDOMDocument* This,BSTR *p) {
 3347    return This->lpVtbl->get_namespaceURI(This,p);
 3348}
 3349static inline HRESULT IXMLDOMDocument_get_prefix(IXMLDOMDocument* This,BSTR *p) {
 3350    return This->lpVtbl->get_prefix(This,p);
 3351}
 3352static inline HRESULT IXMLDOMDocument_get_baseName(IXMLDOMDocument* This,BSTR *p) {
 3353    return This->lpVtbl->get_baseName(This,p);
 3354}
 3355static inline HRESULT IXMLDOMDocument_transformNodeToObject(IXMLDOMDocument* This,IXMLDOMNode *domNode,VARIANT var1) {
 3356    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 3357}
 3358/*** IXMLDOMDocument methods ***/
 3359static inline HRESULT IXMLDOMDocument_get_doctype(IXMLDOMDocument* This,IXMLDOMDocumentType **docType) {
 3360    return This->lpVtbl->get_doctype(This,docType);
 3361}
 3362static inline HRESULT IXMLDOMDocument_get_implementation(IXMLDOMDocument* This,IXMLDOMImplementation **impl) {
 3363    return This->lpVtbl->get_implementation(This,impl);
 3364}
 3365static inline HRESULT IXMLDOMDocument_get_documentElement(IXMLDOMDocument* This,IXMLDOMElement **domElement) {
 3366    return This->lpVtbl->get_documentElement(This,domElement);
 3367}
 3368static inline HRESULT IXMLDOMDocument_putref_documentElement(IXMLDOMDocument* This,IXMLDOMElement *domElement) {
 3369    return This->lpVtbl->putref_documentElement(This,domElement);
 3370}
 3371static inline HRESULT IXMLDOMDocument_createElement(IXMLDOMDocument* This,BSTR p,IXMLDOMElement **domElement) {
 3372    return This->lpVtbl->createElement(This,p,domElement);
 3373}
 3374static inline HRESULT IXMLDOMDocument_createDocumentFragment(IXMLDOMDocument* This,IXMLDOMDocumentFragment **docFrag) {
 3375    return This->lpVtbl->createDocumentFragment(This,docFrag);
 3376}
 3377static inline HRESULT IXMLDOMDocument_createTextNode(IXMLDOMDocument* This,BSTR p,IXMLDOMText **text) {
 3378    return This->lpVtbl->createTextNode(This,p,text);
 3379}
 3380static inline HRESULT IXMLDOMDocument_createComment(IXMLDOMDocument* This,BSTR p,IXMLDOMComment **comment) {
 3381    return This->lpVtbl->createComment(This,p,comment);
 3382}
 3383static inline HRESULT IXMLDOMDocument_createCDATASection(IXMLDOMDocument* This,BSTR p,IXMLDOMCDATASection **cdata) {
 3384    return This->lpVtbl->createCDATASection(This,p,cdata);
 3385}
 3386static inline HRESULT IXMLDOMDocument_createProcessingInstruction(IXMLDOMDocument* This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi) {
 3387    return This->lpVtbl->createProcessingInstruction(This,target,data,pi);
 3388}
 3389static inline HRESULT IXMLDOMDocument_createAttribute(IXMLDOMDocument* This,BSTR p,IXMLDOMAttribute **attribute) {
 3390    return This->lpVtbl->createAttribute(This,p,attribute);
 3391}
 3392static inline HRESULT IXMLDOMDocument_createEntityReference(IXMLDOMDocument* This,BSTR p,IXMLDOMEntityReference **entityRef) {
 3393    return This->lpVtbl->createEntityReference(This,p,entityRef);
 3394}
 3395static inline HRESULT IXMLDOMDocument_getElementsByTagName(IXMLDOMDocument* This,BSTR p,IXMLDOMNodeList **resultList) {
 3396    return This->lpVtbl->getElementsByTagName(This,p,resultList);
 3397}
 3398static inline HRESULT IXMLDOMDocument_createNode(IXMLDOMDocument* This,VARIANT var,BSTR name,BSTR uri,IXMLDOMNode **node) {
 3399    return This->lpVtbl->createNode(This,var,name,uri,node);
 3400}
 3401static inline HRESULT IXMLDOMDocument_nodeFromID(IXMLDOMDocument* This,BSTR id,IXMLDOMNode **node) {
 3402    return This->lpVtbl->nodeFromID(This,id,node);
 3403}
 3404static inline HRESULT IXMLDOMDocument_load(IXMLDOMDocument* This,VARIANT var1,VARIANT_BOOL *pbool) {
 3405    return This->lpVtbl->load(This,var1,pbool);
 3406}
 3407static inline HRESULT IXMLDOMDocument_get_readyState(IXMLDOMDocument* This,LONG *value) {
 3408    return This->lpVtbl->get_readyState(This,value);
 3409}
 3410static inline HRESULT IXMLDOMDocument_get_parseError(IXMLDOMDocument* This,IXMLDOMParseError **err) {
 3411    return This->lpVtbl->get_parseError(This,err);
 3412}
 3413static inline HRESULT IXMLDOMDocument_get_url(IXMLDOMDocument* This,BSTR *p) {
 3414    return This->lpVtbl->get_url(This,p);
 3415}
 3416static inline HRESULT IXMLDOMDocument_get_async(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3417    return This->lpVtbl->get_async(This,pbool);
 3418}
 3419static inline HRESULT IXMLDOMDocument_put_async(IXMLDOMDocument* This,VARIANT_BOOL pbool) {
 3420    return This->lpVtbl->put_async(This,pbool);
 3421}
 3422static inline HRESULT IXMLDOMDocument_abort(IXMLDOMDocument* This) {
 3423    return This->lpVtbl->abort(This);
 3424}
 3425static inline HRESULT IXMLDOMDocument_loadXML(IXMLDOMDocument* This,BSTR p,VARIANT_BOOL *pbool) {
 3426    return This->lpVtbl->loadXML(This,p,pbool);
 3427}
 3428static inline HRESULT IXMLDOMDocument_save(IXMLDOMDocument* This,VARIANT var1) {
 3429    return This->lpVtbl->save(This,var1);
 3430}
 3431static inline HRESULT IXMLDOMDocument_get_validateOnParse(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3432    return This->lpVtbl->get_validateOnParse(This,pbool);
 3433}
 3434static inline HRESULT IXMLDOMDocument_put_validateOnParse(IXMLDOMDocument* This,VARIANT_BOOL pbool) {
 3435    return This->lpVtbl->put_validateOnParse(This,pbool);
 3436}
 3437static inline HRESULT IXMLDOMDocument_get_resolveExternals(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3438    return This->lpVtbl->get_resolveExternals(This,pbool);
 3439}
 3440static inline HRESULT IXMLDOMDocument_put_resolveExternals(IXMLDOMDocument* This,VARIANT_BOOL pbool) {
 3441    return This->lpVtbl->put_resolveExternals(This,pbool);
 3442}
 3443static inline HRESULT IXMLDOMDocument_get_preserveWhiteSpace(IXMLDOMDocument* This,VARIANT_BOOL *pbool) {
 3444    return This->lpVtbl->get_preserveWhiteSpace(This,pbool);
 3445}
 3446static inline HRESULT IXMLDOMDocument_put_preserveWhiteSpace(IXMLDOMDocument* This,VARIANT_BOOL pbool) {
 3447    return This->lpVtbl->put_preserveWhiteSpace(This,pbool);
 3448}
 3449static inline HRESULT IXMLDOMDocument_put_onreadystatechange(IXMLDOMDocument* This,VARIANT var1) {
 3450    return This->lpVtbl->put_onreadystatechange(This,var1);
 3451}
 3452static inline HRESULT IXMLDOMDocument_put_ondataavailable(IXMLDOMDocument* This,VARIANT var1) {
 3453    return This->lpVtbl->put_ondataavailable(This,var1);
 3454}
 3455static inline HRESULT IXMLDOMDocument_put_ontransformnode(IXMLDOMDocument* This,VARIANT var1) {
 3456    return This->lpVtbl->put_ontransformnode(This,var1);
 3457}
 3458#endif
 3459#endif
 3460
 3461#endif
 3462
 3463
 3464#endif  /* __IXMLDOMDocument_INTERFACE_DEFINED__ */
 3465
 3466/*****************************************************************************
 3467 * IXMLDOMSchemaCollection interface
 3468 */
 3469#ifndef __IXMLDOMSchemaCollection_INTERFACE_DEFINED__
 3470#define __IXMLDOMSchemaCollection_INTERFACE_DEFINED__
 3471
 3472DEFINE_GUID(IID_IXMLDOMSchemaCollection, 0x373984c8, 0xb845, 0x449b, 0x91,0xe7, 0x45,0xac,0x83,0x03,0x6a,0xde);
 3473#if defined(__cplusplus) && !defined(CINTERFACE)
 3474MIDL_INTERFACE("373984c8-b845-449b-91e7-45ac83036ade")
 3475IXMLDOMSchemaCollection : public IDispatch
 3476{
 3477    virtual HRESULT STDMETHODCALLTYPE add(
 3478        BSTR uri,
 3479        VARIANT var) = 0;
 3480
 3481    virtual HRESULT STDMETHODCALLTYPE get(
 3482        BSTR uri,
 3483        IXMLDOMNode **node) = 0;
 3484
 3485    virtual HRESULT STDMETHODCALLTYPE remove(
 3486        BSTR uri) = 0;
 3487
 3488    virtual HRESULT STDMETHODCALLTYPE get_length(
 3489        LONG *length) = 0;
 3490
 3491    virtual HRESULT STDMETHODCALLTYPE get_namespaceURI(
 3492        LONG index,
 3493        BSTR *len) = 0;
 3494
 3495    virtual HRESULT STDMETHODCALLTYPE addCollection(
 3496        IXMLDOMSchemaCollection *otherCollection) = 0;
 3497
 3498    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
 3499        IUnknown **ppUnk) = 0;
 3500
 3501};
 3502#ifdef __CRT_UUID_DECL
 3503__CRT_UUID_DECL(IXMLDOMSchemaCollection, 0x373984c8, 0xb845, 0x449b, 0x91,0xe7, 0x45,0xac,0x83,0x03,0x6a,0xde)
 3504#endif
 3505#else
 3506typedef struct IXMLDOMSchemaCollectionVtbl {
 3507    BEGIN_INTERFACE
 3508
 3509    /*** IUnknown methods ***/
 3510    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3511        IXMLDOMSchemaCollection *This,
 3512        REFIID riid,
 3513        void **ppvObject);
 3514
 3515    ULONG (STDMETHODCALLTYPE *AddRef)(
 3516        IXMLDOMSchemaCollection *This);
 3517
 3518    ULONG (STDMETHODCALLTYPE *Release)(
 3519        IXMLDOMSchemaCollection *This);
 3520
 3521    /*** IDispatch methods ***/
 3522    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3523        IXMLDOMSchemaCollection *This,
 3524        UINT *pctinfo);
 3525
 3526    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3527        IXMLDOMSchemaCollection *This,
 3528        UINT iTInfo,
 3529        LCID lcid,
 3530        ITypeInfo **ppTInfo);
 3531
 3532    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3533        IXMLDOMSchemaCollection *This,
 3534        REFIID riid,
 3535        LPOLESTR *rgszNames,
 3536        UINT cNames,
 3537        LCID lcid,
 3538        DISPID *rgDispId);
 3539
 3540    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3541        IXMLDOMSchemaCollection *This,
 3542        DISPID dispIdMember,
 3543        REFIID riid,
 3544        LCID lcid,
 3545        WORD wFlags,
 3546        DISPPARAMS *pDispParams,
 3547        VARIANT *pVarResult,
 3548        EXCEPINFO *pExcepInfo,
 3549        UINT *puArgErr);
 3550
 3551    /*** IXMLDOMSchemaCollection methods ***/
 3552    HRESULT (STDMETHODCALLTYPE *add)(
 3553        IXMLDOMSchemaCollection *This,
 3554        BSTR uri,
 3555        VARIANT var);
 3556
 3557    HRESULT (STDMETHODCALLTYPE *get)(
 3558        IXMLDOMSchemaCollection *This,
 3559        BSTR uri,
 3560        IXMLDOMNode **node);
 3561
 3562    HRESULT (STDMETHODCALLTYPE *remove)(
 3563        IXMLDOMSchemaCollection *This,
 3564        BSTR uri);
 3565
 3566    HRESULT (STDMETHODCALLTYPE *get_length)(
 3567        IXMLDOMSchemaCollection *This,
 3568        LONG *length);
 3569
 3570    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 3571        IXMLDOMSchemaCollection *This,
 3572        LONG index,
 3573        BSTR *len);
 3574
 3575    HRESULT (STDMETHODCALLTYPE *addCollection)(
 3576        IXMLDOMSchemaCollection *This,
 3577        IXMLDOMSchemaCollection *otherCollection);
 3578
 3579    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 3580        IXMLDOMSchemaCollection *This,
 3581        IUnknown **ppUnk);
 3582
 3583    END_INTERFACE
 3584} IXMLDOMSchemaCollectionVtbl;
 3585
 3586interface IXMLDOMSchemaCollection {
 3587    CONST_VTBL IXMLDOMSchemaCollectionVtbl* lpVtbl;
 3588};
 3589
 3590#ifdef COBJMACROS
 3591#ifndef WIDL_C_INLINE_WRAPPERS
 3592/*** IUnknown methods ***/
 3593#define IXMLDOMSchemaCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3594#define IXMLDOMSchemaCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 3595#define IXMLDOMSchemaCollection_Release(This) (This)->lpVtbl->Release(This)
 3596/*** IDispatch methods ***/
 3597#define IXMLDOMSchemaCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3598#define IXMLDOMSchemaCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3599#define IXMLDOMSchemaCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3600#define IXMLDOMSchemaCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3601/*** IXMLDOMSchemaCollection methods ***/
 3602#define IXMLDOMSchemaCollection_add(This,uri,var) (This)->lpVtbl->add(This,uri,var)
 3603#define IXMLDOMSchemaCollection_get(This,uri,node) (This)->lpVtbl->get(This,uri,node)
 3604#define IXMLDOMSchemaCollection_remove(This,uri) (This)->lpVtbl->remove(This,uri)
 3605#define IXMLDOMSchemaCollection_get_length(This,length) (This)->lpVtbl->get_length(This,length)
 3606#define IXMLDOMSchemaCollection_get_namespaceURI(This,index,len) (This)->lpVtbl->get_namespaceURI(This,index,len)
 3607#define IXMLDOMSchemaCollection_addCollection(This,otherCollection) (This)->lpVtbl->addCollection(This,otherCollection)
 3608#define IXMLDOMSchemaCollection_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 3609#else
 3610/*** IUnknown methods ***/
 3611static inline HRESULT IXMLDOMSchemaCollection_QueryInterface(IXMLDOMSchemaCollection* This,REFIID riid,void **ppvObject) {
 3612    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3613}
 3614static inline ULONG IXMLDOMSchemaCollection_AddRef(IXMLDOMSchemaCollection* This) {
 3615    return This->lpVtbl->AddRef(This);
 3616}
 3617static inline ULONG IXMLDOMSchemaCollection_Release(IXMLDOMSchemaCollection* This) {
 3618    return This->lpVtbl->Release(This);
 3619}
 3620/*** IDispatch methods ***/
 3621static inline HRESULT IXMLDOMSchemaCollection_GetTypeInfoCount(IXMLDOMSchemaCollection* This,UINT *pctinfo) {
 3622    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3623}
 3624static inline HRESULT IXMLDOMSchemaCollection_GetTypeInfo(IXMLDOMSchemaCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3625    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3626}
 3627static inline HRESULT IXMLDOMSchemaCollection_GetIDsOfNames(IXMLDOMSchemaCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3628    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3629}
 3630static inline HRESULT IXMLDOMSchemaCollection_Invoke(IXMLDOMSchemaCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3631    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3632}
 3633/*** IXMLDOMSchemaCollection methods ***/
 3634static inline HRESULT IXMLDOMSchemaCollection_add(IXMLDOMSchemaCollection* This,BSTR uri,VARIANT var) {
 3635    return This->lpVtbl->add(This,uri,var);
 3636}
 3637static inline HRESULT IXMLDOMSchemaCollection_get(IXMLDOMSchemaCollection* This,BSTR uri,IXMLDOMNode **node) {
 3638    return This->lpVtbl->get(This,uri,node);
 3639}
 3640static inline HRESULT IXMLDOMSchemaCollection_remove(IXMLDOMSchemaCollection* This,BSTR uri) {
 3641    return This->lpVtbl->remove(This,uri);
 3642}
 3643static inline HRESULT IXMLDOMSchemaCollection_get_length(IXMLDOMSchemaCollection* This,LONG *length) {
 3644    return This->lpVtbl->get_length(This,length);
 3645}
 3646static inline HRESULT IXMLDOMSchemaCollection_get_namespaceURI(IXMLDOMSchemaCollection* This,LONG index,BSTR *len) {
 3647    return This->lpVtbl->get_namespaceURI(This,index,len);
 3648}
 3649static inline HRESULT IXMLDOMSchemaCollection_addCollection(IXMLDOMSchemaCollection* This,IXMLDOMSchemaCollection *otherCollection) {
 3650    return This->lpVtbl->addCollection(This,otherCollection);
 3651}
 3652static inline HRESULT IXMLDOMSchemaCollection_get__newEnum(IXMLDOMSchemaCollection* This,IUnknown **ppUnk) {
 3653    return This->lpVtbl->get__newEnum(This,ppUnk);
 3654}
 3655#endif
 3656#endif
 3657
 3658#endif
 3659
 3660
 3661#endif  /* __IXMLDOMSchemaCollection_INTERFACE_DEFINED__ */
 3662
 3663/*****************************************************************************
 3664 * IXMLDOMSchemaCollection2 interface
 3665 */
 3666#ifndef __IXMLDOMSchemaCollection2_INTERFACE_DEFINED__
 3667#define __IXMLDOMSchemaCollection2_INTERFACE_DEFINED__
 3668
 3669DEFINE_GUID(IID_IXMLDOMSchemaCollection2, 0x50ea08b0, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
 3670#if defined(__cplusplus) && !defined(CINTERFACE)
 3671MIDL_INTERFACE("50ea08b0-dd1b-4664-9a50-c2f40f4bd79a")
 3672IXMLDOMSchemaCollection2 : public IXMLDOMSchemaCollection
 3673{
 3674    virtual HRESULT STDMETHODCALLTYPE validate(
 3675        ) = 0;
 3676
 3677    virtual HRESULT STDMETHODCALLTYPE put_validateOnLoad(
 3678        VARIANT_BOOL validateOnLoad) = 0;
 3679
 3680    virtual HRESULT STDMETHODCALLTYPE get_validateOnLoad(
 3681        VARIANT_BOOL *validateOnLoad) = 0;
 3682
 3683    virtual HRESULT STDMETHODCALLTYPE getSchema(
 3684        BSTR namespaceURI,
 3685        ISchema **schema) = 0;
 3686
 3687    virtual HRESULT STDMETHODCALLTYPE getDeclaration(
 3688        IXMLDOMNode *node,
 3689        ISchemaItem **item) = 0;
 3690
 3691};
 3692#ifdef __CRT_UUID_DECL
 3693__CRT_UUID_DECL(IXMLDOMSchemaCollection2, 0x50ea08b0, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
 3694#endif
 3695#else
 3696typedef struct IXMLDOMSchemaCollection2Vtbl {
 3697    BEGIN_INTERFACE
 3698
 3699    /*** IUnknown methods ***/
 3700    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3701        IXMLDOMSchemaCollection2 *This,
 3702        REFIID riid,
 3703        void **ppvObject);
 3704
 3705    ULONG (STDMETHODCALLTYPE *AddRef)(
 3706        IXMLDOMSchemaCollection2 *This);
 3707
 3708    ULONG (STDMETHODCALLTYPE *Release)(
 3709        IXMLDOMSchemaCollection2 *This);
 3710
 3711    /*** IDispatch methods ***/
 3712    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3713        IXMLDOMSchemaCollection2 *This,
 3714        UINT *pctinfo);
 3715
 3716    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3717        IXMLDOMSchemaCollection2 *This,
 3718        UINT iTInfo,
 3719        LCID lcid,
 3720        ITypeInfo **ppTInfo);
 3721
 3722    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3723        IXMLDOMSchemaCollection2 *This,
 3724        REFIID riid,
 3725        LPOLESTR *rgszNames,
 3726        UINT cNames,
 3727        LCID lcid,
 3728        DISPID *rgDispId);
 3729
 3730    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3731        IXMLDOMSchemaCollection2 *This,
 3732        DISPID dispIdMember,
 3733        REFIID riid,
 3734        LCID lcid,
 3735        WORD wFlags,
 3736        DISPPARAMS *pDispParams,
 3737        VARIANT *pVarResult,
 3738        EXCEPINFO *pExcepInfo,
 3739        UINT *puArgErr);
 3740
 3741    /*** IXMLDOMSchemaCollection methods ***/
 3742    HRESULT (STDMETHODCALLTYPE *add)(
 3743        IXMLDOMSchemaCollection2 *This,
 3744        BSTR uri,
 3745        VARIANT var);
 3746
 3747    HRESULT (STDMETHODCALLTYPE *get)(
 3748        IXMLDOMSchemaCollection2 *This,
 3749        BSTR uri,
 3750        IXMLDOMNode **node);
 3751
 3752    HRESULT (STDMETHODCALLTYPE *remove)(
 3753        IXMLDOMSchemaCollection2 *This,
 3754        BSTR uri);
 3755
 3756    HRESULT (STDMETHODCALLTYPE *get_length)(
 3757        IXMLDOMSchemaCollection2 *This,
 3758        LONG *length);
 3759
 3760    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 3761        IXMLDOMSchemaCollection2 *This,
 3762        LONG index,
 3763        BSTR *len);
 3764
 3765    HRESULT (STDMETHODCALLTYPE *addCollection)(
 3766        IXMLDOMSchemaCollection2 *This,
 3767        IXMLDOMSchemaCollection *otherCollection);
 3768
 3769    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 3770        IXMLDOMSchemaCollection2 *This,
 3771        IUnknown **ppUnk);
 3772
 3773    /*** IXMLDOMSchemaCollection2 methods ***/
 3774    HRESULT (STDMETHODCALLTYPE *validate)(
 3775        IXMLDOMSchemaCollection2 *This);
 3776
 3777    HRESULT (STDMETHODCALLTYPE *put_validateOnLoad)(
 3778        IXMLDOMSchemaCollection2 *This,
 3779        VARIANT_BOOL validateOnLoad);
 3780
 3781    HRESULT (STDMETHODCALLTYPE *get_validateOnLoad)(
 3782        IXMLDOMSchemaCollection2 *This,
 3783        VARIANT_BOOL *validateOnLoad);
 3784
 3785    HRESULT (STDMETHODCALLTYPE *getSchema)(
 3786        IXMLDOMSchemaCollection2 *This,
 3787        BSTR namespaceURI,
 3788        ISchema **schema);
 3789
 3790    HRESULT (STDMETHODCALLTYPE *getDeclaration)(
 3791        IXMLDOMSchemaCollection2 *This,
 3792        IXMLDOMNode *node,
 3793        ISchemaItem **item);
 3794
 3795    END_INTERFACE
 3796} IXMLDOMSchemaCollection2Vtbl;
 3797
 3798interface IXMLDOMSchemaCollection2 {
 3799    CONST_VTBL IXMLDOMSchemaCollection2Vtbl* lpVtbl;
 3800};
 3801
 3802#ifdef COBJMACROS
 3803#ifndef WIDL_C_INLINE_WRAPPERS
 3804/*** IUnknown methods ***/
 3805#define IXMLDOMSchemaCollection2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3806#define IXMLDOMSchemaCollection2_AddRef(This) (This)->lpVtbl->AddRef(This)
 3807#define IXMLDOMSchemaCollection2_Release(This) (This)->lpVtbl->Release(This)
 3808/*** IDispatch methods ***/
 3809#define IXMLDOMSchemaCollection2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3810#define IXMLDOMSchemaCollection2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3811#define IXMLDOMSchemaCollection2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3812#define IXMLDOMSchemaCollection2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3813/*** IXMLDOMSchemaCollection methods ***/
 3814#define IXMLDOMSchemaCollection2_add(This,uri,var) (This)->lpVtbl->add(This,uri,var)
 3815#define IXMLDOMSchemaCollection2_get(This,uri,node) (This)->lpVtbl->get(This,uri,node)
 3816#define IXMLDOMSchemaCollection2_remove(This,uri) (This)->lpVtbl->remove(This,uri)
 3817#define IXMLDOMSchemaCollection2_get_length(This,length) (This)->lpVtbl->get_length(This,length)
 3818#define IXMLDOMSchemaCollection2_get_namespaceURI(This,index,len) (This)->lpVtbl->get_namespaceURI(This,index,len)
 3819#define IXMLDOMSchemaCollection2_addCollection(This,otherCollection) (This)->lpVtbl->addCollection(This,otherCollection)
 3820#define IXMLDOMSchemaCollection2_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 3821/*** IXMLDOMSchemaCollection2 methods ***/
 3822#define IXMLDOMSchemaCollection2_validate(This) (This)->lpVtbl->validate(This)
 3823#define IXMLDOMSchemaCollection2_put_validateOnLoad(This,validateOnLoad) (This)->lpVtbl->put_validateOnLoad(This,validateOnLoad)
 3824#define IXMLDOMSchemaCollection2_get_validateOnLoad(This,validateOnLoad) (This)->lpVtbl->get_validateOnLoad(This,validateOnLoad)
 3825#define IXMLDOMSchemaCollection2_getSchema(This,namespaceURI,schema) (This)->lpVtbl->getSchema(This,namespaceURI,schema)
 3826#define IXMLDOMSchemaCollection2_getDeclaration(This,node,item) (This)->lpVtbl->getDeclaration(This,node,item)
 3827#else
 3828/*** IUnknown methods ***/
 3829static inline HRESULT IXMLDOMSchemaCollection2_QueryInterface(IXMLDOMSchemaCollection2* This,REFIID riid,void **ppvObject) {
 3830    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3831}
 3832static inline ULONG IXMLDOMSchemaCollection2_AddRef(IXMLDOMSchemaCollection2* This) {
 3833    return This->lpVtbl->AddRef(This);
 3834}
 3835static inline ULONG IXMLDOMSchemaCollection2_Release(IXMLDOMSchemaCollection2* This) {
 3836    return This->lpVtbl->Release(This);
 3837}
 3838/*** IDispatch methods ***/
 3839static inline HRESULT IXMLDOMSchemaCollection2_GetTypeInfoCount(IXMLDOMSchemaCollection2* This,UINT *pctinfo) {
 3840    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3841}
 3842static inline HRESULT IXMLDOMSchemaCollection2_GetTypeInfo(IXMLDOMSchemaCollection2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3843    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3844}
 3845static inline HRESULT IXMLDOMSchemaCollection2_GetIDsOfNames(IXMLDOMSchemaCollection2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3846    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3847}
 3848static inline HRESULT IXMLDOMSchemaCollection2_Invoke(IXMLDOMSchemaCollection2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3849    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3850}
 3851/*** IXMLDOMSchemaCollection methods ***/
 3852static inline HRESULT IXMLDOMSchemaCollection2_add(IXMLDOMSchemaCollection2* This,BSTR uri,VARIANT var) {
 3853    return This->lpVtbl->add(This,uri,var);
 3854}
 3855static inline HRESULT IXMLDOMSchemaCollection2_get(IXMLDOMSchemaCollection2* This,BSTR uri,IXMLDOMNode **node) {
 3856    return This->lpVtbl->get(This,uri,node);
 3857}
 3858static inline HRESULT IXMLDOMSchemaCollection2_remove(IXMLDOMSchemaCollection2* This,BSTR uri) {
 3859    return This->lpVtbl->remove(This,uri);
 3860}
 3861static inline HRESULT IXMLDOMSchemaCollection2_get_length(IXMLDOMSchemaCollection2* This,LONG *length) {
 3862    return This->lpVtbl->get_length(This,length);
 3863}
 3864static inline HRESULT IXMLDOMSchemaCollection2_get_namespaceURI(IXMLDOMSchemaCollection2* This,LONG index,BSTR *len) {
 3865    return This->lpVtbl->get_namespaceURI(This,index,len);
 3866}
 3867static inline HRESULT IXMLDOMSchemaCollection2_addCollection(IXMLDOMSchemaCollection2* This,IXMLDOMSchemaCollection *otherCollection) {
 3868    return This->lpVtbl->addCollection(This,otherCollection);
 3869}
 3870static inline HRESULT IXMLDOMSchemaCollection2_get__newEnum(IXMLDOMSchemaCollection2* This,IUnknown **ppUnk) {
 3871    return This->lpVtbl->get__newEnum(This,ppUnk);
 3872}
 3873/*** IXMLDOMSchemaCollection2 methods ***/
 3874static inline HRESULT IXMLDOMSchemaCollection2_validate(IXMLDOMSchemaCollection2* This) {
 3875    return This->lpVtbl->validate(This);
 3876}
 3877static inline HRESULT IXMLDOMSchemaCollection2_put_validateOnLoad(IXMLDOMSchemaCollection2* This,VARIANT_BOOL validateOnLoad) {
 3878    return This->lpVtbl->put_validateOnLoad(This,validateOnLoad);
 3879}
 3880static inline HRESULT IXMLDOMSchemaCollection2_get_validateOnLoad(IXMLDOMSchemaCollection2* This,VARIANT_BOOL *validateOnLoad) {
 3881    return This->lpVtbl->get_validateOnLoad(This,validateOnLoad);
 3882}
 3883static inline HRESULT IXMLDOMSchemaCollection2_getSchema(IXMLDOMSchemaCollection2* This,BSTR namespaceURI,ISchema **schema) {
 3884    return This->lpVtbl->getSchema(This,namespaceURI,schema);
 3885}
 3886static inline HRESULT IXMLDOMSchemaCollection2_getDeclaration(IXMLDOMSchemaCollection2* This,IXMLDOMNode *node,ISchemaItem **item) {
 3887    return This->lpVtbl->getDeclaration(This,node,item);
 3888}
 3889#endif
 3890#endif
 3891
 3892#endif
 3893
 3894
 3895#endif  /* __IXMLDOMSchemaCollection2_INTERFACE_DEFINED__ */
 3896
 3897/*****************************************************************************
 3898 * IXMLDOMDocument2 interface
 3899 */
 3900#ifndef __IXMLDOMDocument2_INTERFACE_DEFINED__
 3901#define __IXMLDOMDocument2_INTERFACE_DEFINED__
 3902
 3903DEFINE_GUID(IID_IXMLDOMDocument2, 0x2933bf95, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 3904#if defined(__cplusplus) && !defined(CINTERFACE)
 3905MIDL_INTERFACE("2933bf95-7b36-11d2-b20e-00c04f983e60")
 3906IXMLDOMDocument2 : public IXMLDOMDocument
 3907{
 3908    virtual HRESULT STDMETHODCALLTYPE get_namespaces(
 3909        IXMLDOMSchemaCollection **schemaCollection) = 0;
 3910
 3911    virtual HRESULT STDMETHODCALLTYPE get_schemas(
 3912        VARIANT *var1) = 0;
 3913
 3914    virtual HRESULT STDMETHODCALLTYPE putref_schemas(
 3915        VARIANT var1) = 0;
 3916
 3917    virtual HRESULT STDMETHODCALLTYPE validate(
 3918        IXMLDOMParseError **err) = 0;
 3919
 3920    virtual HRESULT STDMETHODCALLTYPE setProperty(
 3921        BSTR p,
 3922        VARIANT var) = 0;
 3923
 3924    virtual HRESULT STDMETHODCALLTYPE getProperty(
 3925        BSTR p,
 3926        VARIANT *var) = 0;
 3927
 3928};
 3929#ifdef __CRT_UUID_DECL
 3930__CRT_UUID_DECL(IXMLDOMDocument2, 0x2933bf95, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 3931#endif
 3932#else
 3933typedef struct IXMLDOMDocument2Vtbl {
 3934    BEGIN_INTERFACE
 3935
 3936    /*** IUnknown methods ***/
 3937    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3938        IXMLDOMDocument2 *This,
 3939        REFIID riid,
 3940        void **ppvObject);
 3941
 3942    ULONG (STDMETHODCALLTYPE *AddRef)(
 3943        IXMLDOMDocument2 *This);
 3944
 3945    ULONG (STDMETHODCALLTYPE *Release)(
 3946        IXMLDOMDocument2 *This);
 3947
 3948    /*** IDispatch methods ***/
 3949    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3950        IXMLDOMDocument2 *This,
 3951        UINT *pctinfo);
 3952
 3953    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3954        IXMLDOMDocument2 *This,
 3955        UINT iTInfo,
 3956        LCID lcid,
 3957        ITypeInfo **ppTInfo);
 3958
 3959    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3960        IXMLDOMDocument2 *This,
 3961        REFIID riid,
 3962        LPOLESTR *rgszNames,
 3963        UINT cNames,
 3964        LCID lcid,
 3965        DISPID *rgDispId);
 3966
 3967    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3968        IXMLDOMDocument2 *This,
 3969        DISPID dispIdMember,
 3970        REFIID riid,
 3971        LCID lcid,
 3972        WORD wFlags,
 3973        DISPPARAMS *pDispParams,
 3974        VARIANT *pVarResult,
 3975        EXCEPINFO *pExcepInfo,
 3976        UINT *puArgErr);
 3977
 3978    /*** IXMLDOMNode methods ***/
 3979    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 3980        IXMLDOMDocument2 *This,
 3981        BSTR *p);
 3982
 3983    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 3984        IXMLDOMDocument2 *This,
 3985        VARIANT *var1);
 3986
 3987    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 3988        IXMLDOMDocument2 *This,
 3989        VARIANT var1);
 3990
 3991    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 3992        IXMLDOMDocument2 *This,
 3993        DOMNodeType *domNodeType);
 3994
 3995    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 3996        IXMLDOMDocument2 *This,
 3997        IXMLDOMNode **parent);
 3998
 3999    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 4000        IXMLDOMDocument2 *This,
 4001        IXMLDOMNodeList **outList);
 4002
 4003    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 4004        IXMLDOMDocument2 *This,
 4005        IXMLDOMNode **domNode);
 4006
 4007    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 4008        IXMLDOMDocument2 *This,
 4009        IXMLDOMNode **domNode);
 4010
 4011    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 4012        IXMLDOMDocument2 *This,
 4013        IXMLDOMNode **domNode);
 4014
 4015    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 4016        IXMLDOMDocument2 *This,
 4017        IXMLDOMNode **domNode);
 4018
 4019    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 4020        IXMLDOMDocument2 *This,
 4021        IXMLDOMNamedNodeMap **attributeMap);
 4022
 4023    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 4024        IXMLDOMDocument2 *This,
 4025        IXMLDOMNode *newNode,
 4026        VARIANT var1,
 4027        IXMLDOMNode **outOldNode);
 4028
 4029    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 4030        IXMLDOMDocument2 *This,
 4031        IXMLDOMNode *newNode,
 4032        IXMLDOMNode *oldNode,
 4033        IXMLDOMNode **outOldNode);
 4034
 4035    HRESULT (STDMETHODCALLTYPE *removeChild)(
 4036        IXMLDOMDocument2 *This,
 4037        IXMLDOMNode *domNode,
 4038        IXMLDOMNode **oldNode);
 4039
 4040    HRESULT (STDMETHODCALLTYPE *appendChild)(
 4041        IXMLDOMDocument2 *This,
 4042        IXMLDOMNode *newNode,
 4043        IXMLDOMNode **outNewNode);
 4044
 4045    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 4046        IXMLDOMDocument2 *This,
 4047        VARIANT_BOOL *pbool);
 4048
 4049    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 4050        IXMLDOMDocument2 *This,
 4051        IXMLDOMDocument **domDocument);
 4052
 4053    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 4054        IXMLDOMDocument2 *This,
 4055        VARIANT_BOOL pbool,
 4056        IXMLDOMNode **outNode);
 4057
 4058    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 4059        IXMLDOMDocument2 *This,
 4060        BSTR *p);
 4061
 4062    HRESULT (STDMETHODCALLTYPE *get_text)(
 4063        IXMLDOMDocument2 *This,
 4064        BSTR *p);
 4065
 4066    HRESULT (STDMETHODCALLTYPE *put_text)(
 4067        IXMLDOMDocument2 *This,
 4068        BSTR p);
 4069
 4070    HRESULT (STDMETHODCALLTYPE *get_specified)(
 4071        IXMLDOMDocument2 *This,
 4072        VARIANT_BOOL *pbool);
 4073
 4074    HRESULT (STDMETHODCALLTYPE *get_definition)(
 4075        IXMLDOMDocument2 *This,
 4076        IXMLDOMNode **domNode);
 4077
 4078    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 4079        IXMLDOMDocument2 *This,
 4080        VARIANT *var1);
 4081
 4082    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 4083        IXMLDOMDocument2 *This,
 4084        VARIANT var1);
 4085
 4086    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 4087        IXMLDOMDocument2 *This,
 4088        VARIANT *var1);
 4089
 4090    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 4091        IXMLDOMDocument2 *This,
 4092        BSTR p);
 4093
 4094    HRESULT (STDMETHODCALLTYPE *get_xml)(
 4095        IXMLDOMDocument2 *This,
 4096        BSTR *p);
 4097
 4098    HRESULT (STDMETHODCALLTYPE *transformNode)(
 4099        IXMLDOMDocument2 *This,
 4100        IXMLDOMNode *domNode,
 4101        BSTR *p);
 4102
 4103    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 4104        IXMLDOMDocument2 *This,
 4105        BSTR p,
 4106        IXMLDOMNodeList **outList);
 4107
 4108    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 4109        IXMLDOMDocument2 *This,
 4110        BSTR p,
 4111        IXMLDOMNode **outNode);
 4112
 4113    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 4114        IXMLDOMDocument2 *This,
 4115        VARIANT_BOOL *pbool);
 4116
 4117    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 4118        IXMLDOMDocument2 *This,
 4119        BSTR *p);
 4120
 4121    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 4122        IXMLDOMDocument2 *This,
 4123        BSTR *p);
 4124
 4125    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 4126        IXMLDOMDocument2 *This,
 4127        BSTR *p);
 4128
 4129    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 4130        IXMLDOMDocument2 *This,
 4131        IXMLDOMNode *domNode,
 4132        VARIANT var1);
 4133
 4134    /*** IXMLDOMDocument methods ***/
 4135    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 4136        IXMLDOMDocument2 *This,
 4137        IXMLDOMDocumentType **docType);
 4138
 4139    HRESULT (STDMETHODCALLTYPE *get_implementation)(
 4140        IXMLDOMDocument2 *This,
 4141        IXMLDOMImplementation **impl);
 4142
 4143    HRESULT (STDMETHODCALLTYPE *get_documentElement)(
 4144        IXMLDOMDocument2 *This,
 4145        IXMLDOMElement **domElement);
 4146
 4147    HRESULT (STDMETHODCALLTYPE *putref_documentElement)(
 4148        IXMLDOMDocument2 *This,
 4149        IXMLDOMElement *domElement);
 4150
 4151    HRESULT (STDMETHODCALLTYPE *createElement)(
 4152        IXMLDOMDocument2 *This,
 4153        BSTR p,
 4154        IXMLDOMElement **domElement);
 4155
 4156    HRESULT (STDMETHODCALLTYPE *createDocumentFragment)(
 4157        IXMLDOMDocument2 *This,
 4158        IXMLDOMDocumentFragment **docFrag);
 4159
 4160    HRESULT (STDMETHODCALLTYPE *createTextNode)(
 4161        IXMLDOMDocument2 *This,
 4162        BSTR p,
 4163        IXMLDOMText **text);
 4164
 4165    HRESULT (STDMETHODCALLTYPE *createComment)(
 4166        IXMLDOMDocument2 *This,
 4167        BSTR p,
 4168        IXMLDOMComment **comment);
 4169
 4170    HRESULT (STDMETHODCALLTYPE *createCDATASection)(
 4171        IXMLDOMDocument2 *This,
 4172        BSTR p,
 4173        IXMLDOMCDATASection **cdata);
 4174
 4175    HRESULT (STDMETHODCALLTYPE *createProcessingInstruction)(
 4176        IXMLDOMDocument2 *This,
 4177        BSTR target,
 4178        BSTR data,
 4179        IXMLDOMProcessingInstruction **pi);
 4180
 4181    HRESULT (STDMETHODCALLTYPE *createAttribute)(
 4182        IXMLDOMDocument2 *This,
 4183        BSTR p,
 4184        IXMLDOMAttribute **attribute);
 4185
 4186    HRESULT (STDMETHODCALLTYPE *createEntityReference)(
 4187        IXMLDOMDocument2 *This,
 4188        BSTR p,
 4189        IXMLDOMEntityReference **entityRef);
 4190
 4191    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 4192        IXMLDOMDocument2 *This,
 4193        BSTR p,
 4194        IXMLDOMNodeList **resultList);
 4195
 4196    HRESULT (STDMETHODCALLTYPE *createNode)(
 4197        IXMLDOMDocument2 *This,
 4198        VARIANT var,
 4199        BSTR name,
 4200        BSTR uri,
 4201        IXMLDOMNode **node);
 4202
 4203    HRESULT (STDMETHODCALLTYPE *nodeFromID)(
 4204        IXMLDOMDocument2 *This,
 4205        BSTR id,
 4206        IXMLDOMNode **node);
 4207
 4208    HRESULT (STDMETHODCALLTYPE *load)(
 4209        IXMLDOMDocument2 *This,
 4210        VARIANT var1,
 4211        VARIANT_BOOL *pbool);
 4212
 4213    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 4214        IXMLDOMDocument2 *This,
 4215        LONG *value);
 4216
 4217    HRESULT (STDMETHODCALLTYPE *get_parseError)(
 4218        IXMLDOMDocument2 *This,
 4219        IXMLDOMParseError **err);
 4220
 4221    HRESULT (STDMETHODCALLTYPE *get_url)(
 4222        IXMLDOMDocument2 *This,
 4223        BSTR *p);
 4224
 4225    HRESULT (STDMETHODCALLTYPE *get_async)(
 4226        IXMLDOMDocument2 *This,
 4227        VARIANT_BOOL *pbool);
 4228
 4229    HRESULT (STDMETHODCALLTYPE *put_async)(
 4230        IXMLDOMDocument2 *This,
 4231        VARIANT_BOOL pbool);
 4232
 4233    HRESULT (STDMETHODCALLTYPE *abort)(
 4234        IXMLDOMDocument2 *This);
 4235
 4236    HRESULT (STDMETHODCALLTYPE *loadXML)(
 4237        IXMLDOMDocument2 *This,
 4238        BSTR p,
 4239        VARIANT_BOOL *pbool);
 4240
 4241    HRESULT (STDMETHODCALLTYPE *save)(
 4242        IXMLDOMDocument2 *This,
 4243        VARIANT var1);
 4244
 4245    HRESULT (STDMETHODCALLTYPE *get_validateOnParse)(
 4246        IXMLDOMDocument2 *This,
 4247        VARIANT_BOOL *pbool);
 4248
 4249    HRESULT (STDMETHODCALLTYPE *put_validateOnParse)(
 4250        IXMLDOMDocument2 *This,
 4251        VARIANT_BOOL pbool);
 4252
 4253    HRESULT (STDMETHODCALLTYPE *get_resolveExternals)(
 4254        IXMLDOMDocument2 *This,
 4255        VARIANT_BOOL *pbool);
 4256
 4257    HRESULT (STDMETHODCALLTYPE *put_resolveExternals)(
 4258        IXMLDOMDocument2 *This,
 4259        VARIANT_BOOL pbool);
 4260
 4261    HRESULT (STDMETHODCALLTYPE *get_preserveWhiteSpace)(
 4262        IXMLDOMDocument2 *This,
 4263        VARIANT_BOOL *pbool);
 4264
 4265    HRESULT (STDMETHODCALLTYPE *put_preserveWhiteSpace)(
 4266        IXMLDOMDocument2 *This,
 4267        VARIANT_BOOL pbool);
 4268
 4269    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
 4270        IXMLDOMDocument2 *This,
 4271        VARIANT var1);
 4272
 4273    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
 4274        IXMLDOMDocument2 *This,
 4275        VARIANT var1);
 4276
 4277    HRESULT (STDMETHODCALLTYPE *put_ontransformnode)(
 4278        IXMLDOMDocument2 *This,
 4279        VARIANT var1);
 4280
 4281    /*** IXMLDOMDocument2 methods ***/
 4282    HRESULT (STDMETHODCALLTYPE *get_namespaces)(
 4283        IXMLDOMDocument2 *This,
 4284        IXMLDOMSchemaCollection **schemaCollection);
 4285
 4286    HRESULT (STDMETHODCALLTYPE *get_schemas)(
 4287        IXMLDOMDocument2 *This,
 4288        VARIANT *var1);
 4289
 4290    HRESULT (STDMETHODCALLTYPE *putref_schemas)(
 4291        IXMLDOMDocument2 *This,
 4292        VARIANT var1);
 4293
 4294    HRESULT (STDMETHODCALLTYPE *validate)(
 4295        IXMLDOMDocument2 *This,
 4296        IXMLDOMParseError **err);
 4297
 4298    HRESULT (STDMETHODCALLTYPE *setProperty)(
 4299        IXMLDOMDocument2 *This,
 4300        BSTR p,
 4301        VARIANT var);
 4302
 4303    HRESULT (STDMETHODCALLTYPE *getProperty)(
 4304        IXMLDOMDocument2 *This,
 4305        BSTR p,
 4306        VARIANT *var);
 4307
 4308    END_INTERFACE
 4309} IXMLDOMDocument2Vtbl;
 4310
 4311interface IXMLDOMDocument2 {
 4312    CONST_VTBL IXMLDOMDocument2Vtbl* lpVtbl;
 4313};
 4314
 4315#ifdef COBJMACROS
 4316#ifndef WIDL_C_INLINE_WRAPPERS
 4317/*** IUnknown methods ***/
 4318#define IXMLDOMDocument2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4319#define IXMLDOMDocument2_AddRef(This) (This)->lpVtbl->AddRef(This)
 4320#define IXMLDOMDocument2_Release(This) (This)->lpVtbl->Release(This)
 4321/*** IDispatch methods ***/
 4322#define IXMLDOMDocument2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4323#define IXMLDOMDocument2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4324#define IXMLDOMDocument2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4325#define IXMLDOMDocument2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4326/*** IXMLDOMNode methods ***/
 4327#define IXMLDOMDocument2_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 4328#define IXMLDOMDocument2_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 4329#define IXMLDOMDocument2_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 4330#define IXMLDOMDocument2_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 4331#define IXMLDOMDocument2_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 4332#define IXMLDOMDocument2_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 4333#define IXMLDOMDocument2_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 4334#define IXMLDOMDocument2_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 4335#define IXMLDOMDocument2_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 4336#define IXMLDOMDocument2_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 4337#define IXMLDOMDocument2_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 4338#define IXMLDOMDocument2_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 4339#define IXMLDOMDocument2_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 4340#define IXMLDOMDocument2_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 4341#define IXMLDOMDocument2_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 4342#define IXMLDOMDocument2_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 4343#define IXMLDOMDocument2_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 4344#define IXMLDOMDocument2_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 4345#define IXMLDOMDocument2_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 4346#define IXMLDOMDocument2_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 4347#define IXMLDOMDocument2_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 4348#define IXMLDOMDocument2_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 4349#define IXMLDOMDocument2_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 4350#define IXMLDOMDocument2_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 4351#define IXMLDOMDocument2_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 4352#define IXMLDOMDocument2_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 4353#define IXMLDOMDocument2_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 4354#define IXMLDOMDocument2_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 4355#define IXMLDOMDocument2_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 4356#define IXMLDOMDocument2_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 4357#define IXMLDOMDocument2_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 4358#define IXMLDOMDocument2_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 4359#define IXMLDOMDocument2_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 4360#define IXMLDOMDocument2_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 4361#define IXMLDOMDocument2_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 4362#define IXMLDOMDocument2_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 4363/*** IXMLDOMDocument methods ***/
 4364#define IXMLDOMDocument2_get_doctype(This,docType) (This)->lpVtbl->get_doctype(This,docType)
 4365#define IXMLDOMDocument2_get_implementation(This,impl) (This)->lpVtbl->get_implementation(This,impl)
 4366#define IXMLDOMDocument2_get_documentElement(This,domElement) (This)->lpVtbl->get_documentElement(This,domElement)
 4367#define IXMLDOMDocument2_putref_documentElement(This,domElement) (This)->lpVtbl->putref_documentElement(This,domElement)
 4368#define IXMLDOMDocument2_createElement(This,p,domElement) (This)->lpVtbl->createElement(This,p,domElement)
 4369#define IXMLDOMDocument2_createDocumentFragment(This,docFrag) (This)->lpVtbl->createDocumentFragment(This,docFrag)
 4370#define IXMLDOMDocument2_createTextNode(This,p,text) (This)->lpVtbl->createTextNode(This,p,text)
 4371#define IXMLDOMDocument2_createComment(This,p,comment) (This)->lpVtbl->createComment(This,p,comment)
 4372#define IXMLDOMDocument2_createCDATASection(This,p,cdata) (This)->lpVtbl->createCDATASection(This,p,cdata)
 4373#define IXMLDOMDocument2_createProcessingInstruction(This,target,data,pi) (This)->lpVtbl->createProcessingInstruction(This,target,data,pi)
 4374#define IXMLDOMDocument2_createAttribute(This,p,attribute) (This)->lpVtbl->createAttribute(This,p,attribute)
 4375#define IXMLDOMDocument2_createEntityReference(This,p,entityRef) (This)->lpVtbl->createEntityReference(This,p,entityRef)
 4376#define IXMLDOMDocument2_getElementsByTagName(This,p,resultList) (This)->lpVtbl->getElementsByTagName(This,p,resultList)
 4377#define IXMLDOMDocument2_createNode(This,var,name,uri,node) (This)->lpVtbl->createNode(This,var,name,uri,node)
 4378#define IXMLDOMDocument2_nodeFromID(This,id,node) (This)->lpVtbl->nodeFromID(This,id,node)
 4379#define IXMLDOMDocument2_load(This,var1,pbool) (This)->lpVtbl->load(This,var1,pbool)
 4380#define IXMLDOMDocument2_get_readyState(This,value) (This)->lpVtbl->get_readyState(This,value)
 4381#define IXMLDOMDocument2_get_parseError(This,err) (This)->lpVtbl->get_parseError(This,err)
 4382#define IXMLDOMDocument2_get_url(This,p) (This)->lpVtbl->get_url(This,p)
 4383#define IXMLDOMDocument2_get_async(This,pbool) (This)->lpVtbl->get_async(This,pbool)
 4384#define IXMLDOMDocument2_put_async(This,pbool) (This)->lpVtbl->put_async(This,pbool)
 4385#define IXMLDOMDocument2_abort(This) (This)->lpVtbl->abort(This)
 4386#define IXMLDOMDocument2_loadXML(This,p,pbool) (This)->lpVtbl->loadXML(This,p,pbool)
 4387#define IXMLDOMDocument2_save(This,var1) (This)->lpVtbl->save(This,var1)
 4388#define IXMLDOMDocument2_get_validateOnParse(This,pbool) (This)->lpVtbl->get_validateOnParse(This,pbool)
 4389#define IXMLDOMDocument2_put_validateOnParse(This,pbool) (This)->lpVtbl->put_validateOnParse(This,pbool)
 4390#define IXMLDOMDocument2_get_resolveExternals(This,pbool) (This)->lpVtbl->get_resolveExternals(This,pbool)
 4391#define IXMLDOMDocument2_put_resolveExternals(This,pbool) (This)->lpVtbl->put_resolveExternals(This,pbool)
 4392#define IXMLDOMDocument2_get_preserveWhiteSpace(This,pbool) (This)->lpVtbl->get_preserveWhiteSpace(This,pbool)
 4393#define IXMLDOMDocument2_put_preserveWhiteSpace(This,pbool) (This)->lpVtbl->put_preserveWhiteSpace(This,pbool)
 4394#define IXMLDOMDocument2_put_onreadystatechange(This,var1) (This)->lpVtbl->put_onreadystatechange(This,var1)
 4395#define IXMLDOMDocument2_put_ondataavailable(This,var1) (This)->lpVtbl->put_ondataavailable(This,var1)
 4396#define IXMLDOMDocument2_put_ontransformnode(This,var1) (This)->lpVtbl->put_ontransformnode(This,var1)
 4397/*** IXMLDOMDocument2 methods ***/
 4398#define IXMLDOMDocument2_get_namespaces(This,schemaCollection) (This)->lpVtbl->get_namespaces(This,schemaCollection)
 4399#define IXMLDOMDocument2_get_schemas(This,var1) (This)->lpVtbl->get_schemas(This,var1)
 4400#define IXMLDOMDocument2_putref_schemas(This,var1) (This)->lpVtbl->putref_schemas(This,var1)
 4401#define IXMLDOMDocument2_validate(This,err) (This)->lpVtbl->validate(This,err)
 4402#define IXMLDOMDocument2_setProperty(This,p,var) (This)->lpVtbl->setProperty(This,p,var)
 4403#define IXMLDOMDocument2_getProperty(This,p,var) (This)->lpVtbl->getProperty(This,p,var)
 4404#else
 4405/*** IUnknown methods ***/
 4406static inline HRESULT IXMLDOMDocument2_QueryInterface(IXMLDOMDocument2* This,REFIID riid,void **ppvObject) {
 4407    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4408}
 4409static inline ULONG IXMLDOMDocument2_AddRef(IXMLDOMDocument2* This) {
 4410    return This->lpVtbl->AddRef(This);
 4411}
 4412static inline ULONG IXMLDOMDocument2_Release(IXMLDOMDocument2* This) {
 4413    return This->lpVtbl->Release(This);
 4414}
 4415/*** IDispatch methods ***/
 4416static inline HRESULT IXMLDOMDocument2_GetTypeInfoCount(IXMLDOMDocument2* This,UINT *pctinfo) {
 4417    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4418}
 4419static inline HRESULT IXMLDOMDocument2_GetTypeInfo(IXMLDOMDocument2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4420    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4421}
 4422static inline HRESULT IXMLDOMDocument2_GetIDsOfNames(IXMLDOMDocument2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4423    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4424}
 4425static inline HRESULT IXMLDOMDocument2_Invoke(IXMLDOMDocument2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4426    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4427}
 4428/*** IXMLDOMNode methods ***/
 4429static inline HRESULT IXMLDOMDocument2_get_nodeName(IXMLDOMDocument2* This,BSTR *p) {
 4430    return This->lpVtbl->get_nodeName(This,p);
 4431}
 4432static inline HRESULT IXMLDOMDocument2_get_nodeValue(IXMLDOMDocument2* This,VARIANT *var1) {
 4433    return This->lpVtbl->get_nodeValue(This,var1);
 4434}
 4435static inline HRESULT IXMLDOMDocument2_put_nodeValue(IXMLDOMDocument2* This,VARIANT var1) {
 4436    return This->lpVtbl->put_nodeValue(This,var1);
 4437}
 4438static inline HRESULT IXMLDOMDocument2_get_nodeType(IXMLDOMDocument2* This,DOMNodeType *domNodeType) {
 4439    return This->lpVtbl->get_nodeType(This,domNodeType);
 4440}
 4441static inline HRESULT IXMLDOMDocument2_get_parentNode(IXMLDOMDocument2* This,IXMLDOMNode **parent) {
 4442    return This->lpVtbl->get_parentNode(This,parent);
 4443}
 4444static inline HRESULT IXMLDOMDocument2_get_childNodes(IXMLDOMDocument2* This,IXMLDOMNodeList **outList) {
 4445    return This->lpVtbl->get_childNodes(This,outList);
 4446}
 4447static inline HRESULT IXMLDOMDocument2_get_firstChild(IXMLDOMDocument2* This,IXMLDOMNode **domNode) {
 4448    return This->lpVtbl->get_firstChild(This,domNode);
 4449}
 4450static inline HRESULT IXMLDOMDocument2_get_lastChild(IXMLDOMDocument2* This,IXMLDOMNode **domNode) {
 4451    return This->lpVtbl->get_lastChild(This,domNode);
 4452}
 4453static inline HRESULT IXMLDOMDocument2_get_previousSibling(IXMLDOMDocument2* This,IXMLDOMNode **domNode) {
 4454    return This->lpVtbl->get_previousSibling(This,domNode);
 4455}
 4456static inline HRESULT IXMLDOMDocument2_get_nextSibling(IXMLDOMDocument2* This,IXMLDOMNode **domNode) {
 4457    return This->lpVtbl->get_nextSibling(This,domNode);
 4458}
 4459static inline HRESULT IXMLDOMDocument2_get_attributes(IXMLDOMDocument2* This,IXMLDOMNamedNodeMap **attributeMap) {
 4460    return This->lpVtbl->get_attributes(This,attributeMap);
 4461}
 4462static inline HRESULT IXMLDOMDocument2_insertBefore(IXMLDOMDocument2* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 4463    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 4464}
 4465static inline HRESULT IXMLDOMDocument2_replaceChild(IXMLDOMDocument2* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 4466    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 4467}
 4468static inline HRESULT IXMLDOMDocument2_removeChild(IXMLDOMDocument2* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 4469    return This->lpVtbl->removeChild(This,domNode,oldNode);
 4470}
 4471static inline HRESULT IXMLDOMDocument2_appendChild(IXMLDOMDocument2* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 4472    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 4473}
 4474static inline HRESULT IXMLDOMDocument2_hasChildNodes(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4475    return This->lpVtbl->hasChildNodes(This,pbool);
 4476}
 4477static inline HRESULT IXMLDOMDocument2_get_ownerDocument(IXMLDOMDocument2* This,IXMLDOMDocument **domDocument) {
 4478    return This->lpVtbl->get_ownerDocument(This,domDocument);
 4479}
 4480static inline HRESULT IXMLDOMDocument2_cloneNode(IXMLDOMDocument2* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 4481    return This->lpVtbl->cloneNode(This,pbool,outNode);
 4482}
 4483static inline HRESULT IXMLDOMDocument2_get_nodeTypeString(IXMLDOMDocument2* This,BSTR *p) {
 4484    return This->lpVtbl->get_nodeTypeString(This,p);
 4485}
 4486static inline HRESULT IXMLDOMDocument2_get_text(IXMLDOMDocument2* This,BSTR *p) {
 4487    return This->lpVtbl->get_text(This,p);
 4488}
 4489static inline HRESULT IXMLDOMDocument2_put_text(IXMLDOMDocument2* This,BSTR p) {
 4490    return This->lpVtbl->put_text(This,p);
 4491}
 4492static inline HRESULT IXMLDOMDocument2_get_specified(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4493    return This->lpVtbl->get_specified(This,pbool);
 4494}
 4495static inline HRESULT IXMLDOMDocument2_get_definition(IXMLDOMDocument2* This,IXMLDOMNode **domNode) {
 4496    return This->lpVtbl->get_definition(This,domNode);
 4497}
 4498static inline HRESULT IXMLDOMDocument2_get_nodeTypedValue(IXMLDOMDocument2* This,VARIANT *var1) {
 4499    return This->lpVtbl->get_nodeTypedValue(This,var1);
 4500}
 4501static inline HRESULT IXMLDOMDocument2_put_nodeTypedValue(IXMLDOMDocument2* This,VARIANT var1) {
 4502    return This->lpVtbl->put_nodeTypedValue(This,var1);
 4503}
 4504static inline HRESULT IXMLDOMDocument2_get_dataType(IXMLDOMDocument2* This,VARIANT *var1) {
 4505    return This->lpVtbl->get_dataType(This,var1);
 4506}
 4507static inline HRESULT IXMLDOMDocument2_put_dataType(IXMLDOMDocument2* This,BSTR p) {
 4508    return This->lpVtbl->put_dataType(This,p);
 4509}
 4510static inline HRESULT IXMLDOMDocument2_get_xml(IXMLDOMDocument2* This,BSTR *p) {
 4511    return This->lpVtbl->get_xml(This,p);
 4512}
 4513static inline HRESULT IXMLDOMDocument2_transformNode(IXMLDOMDocument2* This,IXMLDOMNode *domNode,BSTR *p) {
 4514    return This->lpVtbl->transformNode(This,domNode,p);
 4515}
 4516static inline HRESULT IXMLDOMDocument2_selectNodes(IXMLDOMDocument2* This,BSTR p,IXMLDOMNodeList **outList) {
 4517    return This->lpVtbl->selectNodes(This,p,outList);
 4518}
 4519static inline HRESULT IXMLDOMDocument2_selectSingleNode(IXMLDOMDocument2* This,BSTR p,IXMLDOMNode **outNode) {
 4520    return This->lpVtbl->selectSingleNode(This,p,outNode);
 4521}
 4522static inline HRESULT IXMLDOMDocument2_get_parsed(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4523    return This->lpVtbl->get_parsed(This,pbool);
 4524}
 4525static inline HRESULT IXMLDOMDocument2_get_namespaceURI(IXMLDOMDocument2* This,BSTR *p) {
 4526    return This->lpVtbl->get_namespaceURI(This,p);
 4527}
 4528static inline HRESULT IXMLDOMDocument2_get_prefix(IXMLDOMDocument2* This,BSTR *p) {
 4529    return This->lpVtbl->get_prefix(This,p);
 4530}
 4531static inline HRESULT IXMLDOMDocument2_get_baseName(IXMLDOMDocument2* This,BSTR *p) {
 4532    return This->lpVtbl->get_baseName(This,p);
 4533}
 4534static inline HRESULT IXMLDOMDocument2_transformNodeToObject(IXMLDOMDocument2* This,IXMLDOMNode *domNode,VARIANT var1) {
 4535    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 4536}
 4537/*** IXMLDOMDocument methods ***/
 4538static inline HRESULT IXMLDOMDocument2_get_doctype(IXMLDOMDocument2* This,IXMLDOMDocumentType **docType) {
 4539    return This->lpVtbl->get_doctype(This,docType);
 4540}
 4541static inline HRESULT IXMLDOMDocument2_get_implementation(IXMLDOMDocument2* This,IXMLDOMImplementation **impl) {
 4542    return This->lpVtbl->get_implementation(This,impl);
 4543}
 4544static inline HRESULT IXMLDOMDocument2_get_documentElement(IXMLDOMDocument2* This,IXMLDOMElement **domElement) {
 4545    return This->lpVtbl->get_documentElement(This,domElement);
 4546}
 4547static inline HRESULT IXMLDOMDocument2_putref_documentElement(IXMLDOMDocument2* This,IXMLDOMElement *domElement) {
 4548    return This->lpVtbl->putref_documentElement(This,domElement);
 4549}
 4550static inline HRESULT IXMLDOMDocument2_createElement(IXMLDOMDocument2* This,BSTR p,IXMLDOMElement **domElement) {
 4551    return This->lpVtbl->createElement(This,p,domElement);
 4552}
 4553static inline HRESULT IXMLDOMDocument2_createDocumentFragment(IXMLDOMDocument2* This,IXMLDOMDocumentFragment **docFrag) {
 4554    return This->lpVtbl->createDocumentFragment(This,docFrag);
 4555}
 4556static inline HRESULT IXMLDOMDocument2_createTextNode(IXMLDOMDocument2* This,BSTR p,IXMLDOMText **text) {
 4557    return This->lpVtbl->createTextNode(This,p,text);
 4558}
 4559static inline HRESULT IXMLDOMDocument2_createComment(IXMLDOMDocument2* This,BSTR p,IXMLDOMComment **comment) {
 4560    return This->lpVtbl->createComment(This,p,comment);
 4561}
 4562static inline HRESULT IXMLDOMDocument2_createCDATASection(IXMLDOMDocument2* This,BSTR p,IXMLDOMCDATASection **cdata) {
 4563    return This->lpVtbl->createCDATASection(This,p,cdata);
 4564}
 4565static inline HRESULT IXMLDOMDocument2_createProcessingInstruction(IXMLDOMDocument2* This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi) {
 4566    return This->lpVtbl->createProcessingInstruction(This,target,data,pi);
 4567}
 4568static inline HRESULT IXMLDOMDocument2_createAttribute(IXMLDOMDocument2* This,BSTR p,IXMLDOMAttribute **attribute) {
 4569    return This->lpVtbl->createAttribute(This,p,attribute);
 4570}
 4571static inline HRESULT IXMLDOMDocument2_createEntityReference(IXMLDOMDocument2* This,BSTR p,IXMLDOMEntityReference **entityRef) {
 4572    return This->lpVtbl->createEntityReference(This,p,entityRef);
 4573}
 4574static inline HRESULT IXMLDOMDocument2_getElementsByTagName(IXMLDOMDocument2* This,BSTR p,IXMLDOMNodeList **resultList) {
 4575    return This->lpVtbl->getElementsByTagName(This,p,resultList);
 4576}
 4577static inline HRESULT IXMLDOMDocument2_createNode(IXMLDOMDocument2* This,VARIANT var,BSTR name,BSTR uri,IXMLDOMNode **node) {
 4578    return This->lpVtbl->createNode(This,var,name,uri,node);
 4579}
 4580static inline HRESULT IXMLDOMDocument2_nodeFromID(IXMLDOMDocument2* This,BSTR id,IXMLDOMNode **node) {
 4581    return This->lpVtbl->nodeFromID(This,id,node);
 4582}
 4583static inline HRESULT IXMLDOMDocument2_load(IXMLDOMDocument2* This,VARIANT var1,VARIANT_BOOL *pbool) {
 4584    return This->lpVtbl->load(This,var1,pbool);
 4585}
 4586static inline HRESULT IXMLDOMDocument2_get_readyState(IXMLDOMDocument2* This,LONG *value) {
 4587    return This->lpVtbl->get_readyState(This,value);
 4588}
 4589static inline HRESULT IXMLDOMDocument2_get_parseError(IXMLDOMDocument2* This,IXMLDOMParseError **err) {
 4590    return This->lpVtbl->get_parseError(This,err);
 4591}
 4592static inline HRESULT IXMLDOMDocument2_get_url(IXMLDOMDocument2* This,BSTR *p) {
 4593    return This->lpVtbl->get_url(This,p);
 4594}
 4595static inline HRESULT IXMLDOMDocument2_get_async(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4596    return This->lpVtbl->get_async(This,pbool);
 4597}
 4598static inline HRESULT IXMLDOMDocument2_put_async(IXMLDOMDocument2* This,VARIANT_BOOL pbool) {
 4599    return This->lpVtbl->put_async(This,pbool);
 4600}
 4601static inline HRESULT IXMLDOMDocument2_abort(IXMLDOMDocument2* This) {
 4602    return This->lpVtbl->abort(This);
 4603}
 4604static inline HRESULT IXMLDOMDocument2_loadXML(IXMLDOMDocument2* This,BSTR p,VARIANT_BOOL *pbool) {
 4605    return This->lpVtbl->loadXML(This,p,pbool);
 4606}
 4607static inline HRESULT IXMLDOMDocument2_save(IXMLDOMDocument2* This,VARIANT var1) {
 4608    return This->lpVtbl->save(This,var1);
 4609}
 4610static inline HRESULT IXMLDOMDocument2_get_validateOnParse(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4611    return This->lpVtbl->get_validateOnParse(This,pbool);
 4612}
 4613static inline HRESULT IXMLDOMDocument2_put_validateOnParse(IXMLDOMDocument2* This,VARIANT_BOOL pbool) {
 4614    return This->lpVtbl->put_validateOnParse(This,pbool);
 4615}
 4616static inline HRESULT IXMLDOMDocument2_get_resolveExternals(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4617    return This->lpVtbl->get_resolveExternals(This,pbool);
 4618}
 4619static inline HRESULT IXMLDOMDocument2_put_resolveExternals(IXMLDOMDocument2* This,VARIANT_BOOL pbool) {
 4620    return This->lpVtbl->put_resolveExternals(This,pbool);
 4621}
 4622static inline HRESULT IXMLDOMDocument2_get_preserveWhiteSpace(IXMLDOMDocument2* This,VARIANT_BOOL *pbool) {
 4623    return This->lpVtbl->get_preserveWhiteSpace(This,pbool);
 4624}
 4625static inline HRESULT IXMLDOMDocument2_put_preserveWhiteSpace(IXMLDOMDocument2* This,VARIANT_BOOL pbool) {
 4626    return This->lpVtbl->put_preserveWhiteSpace(This,pbool);
 4627}
 4628static inline HRESULT IXMLDOMDocument2_put_onreadystatechange(IXMLDOMDocument2* This,VARIANT var1) {
 4629    return This->lpVtbl->put_onreadystatechange(This,var1);
 4630}
 4631static inline HRESULT IXMLDOMDocument2_put_ondataavailable(IXMLDOMDocument2* This,VARIANT var1) {
 4632    return This->lpVtbl->put_ondataavailable(This,var1);
 4633}
 4634static inline HRESULT IXMLDOMDocument2_put_ontransformnode(IXMLDOMDocument2* This,VARIANT var1) {
 4635    return This->lpVtbl->put_ontransformnode(This,var1);
 4636}
 4637/*** IXMLDOMDocument2 methods ***/
 4638static inline HRESULT IXMLDOMDocument2_get_namespaces(IXMLDOMDocument2* This,IXMLDOMSchemaCollection **schemaCollection) {
 4639    return This->lpVtbl->get_namespaces(This,schemaCollection);
 4640}
 4641static inline HRESULT IXMLDOMDocument2_get_schemas(IXMLDOMDocument2* This,VARIANT *var1) {
 4642    return This->lpVtbl->get_schemas(This,var1);
 4643}
 4644static inline HRESULT IXMLDOMDocument2_putref_schemas(IXMLDOMDocument2* This,VARIANT var1) {
 4645    return This->lpVtbl->putref_schemas(This,var1);
 4646}
 4647static inline HRESULT IXMLDOMDocument2_validate(IXMLDOMDocument2* This,IXMLDOMParseError **err) {
 4648    return This->lpVtbl->validate(This,err);
 4649}
 4650static inline HRESULT IXMLDOMDocument2_setProperty(IXMLDOMDocument2* This,BSTR p,VARIANT var) {
 4651    return This->lpVtbl->setProperty(This,p,var);
 4652}
 4653static inline HRESULT IXMLDOMDocument2_getProperty(IXMLDOMDocument2* This,BSTR p,VARIANT *var) {
 4654    return This->lpVtbl->getProperty(This,p,var);
 4655}
 4656#endif
 4657#endif
 4658
 4659#endif
 4660
 4661
 4662#endif  /* __IXMLDOMDocument2_INTERFACE_DEFINED__ */
 4663
 4664/*****************************************************************************
 4665 * IXMLDOMDocument3 interface
 4666 */
 4667#ifndef __IXMLDOMDocument3_INTERFACE_DEFINED__
 4668#define __IXMLDOMDocument3_INTERFACE_DEFINED__
 4669
 4670DEFINE_GUID(IID_IXMLDOMDocument3, 0x2933bf96, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 4671#if defined(__cplusplus) && !defined(CINTERFACE)
 4672MIDL_INTERFACE("2933bf96-7b36-11d2-b20e-00c04f983e60")
 4673IXMLDOMDocument3 : public IXMLDOMDocument2
 4674{
 4675    virtual HRESULT STDMETHODCALLTYPE validateNode(
 4676        IXMLDOMNode *node,
 4677        IXMLDOMParseError **error) = 0;
 4678
 4679    virtual HRESULT STDMETHODCALLTYPE importNode(
 4680        IXMLDOMNode *node,
 4681        VARIANT_BOOL deep,
 4682        IXMLDOMNode **clone) = 0;
 4683
 4684};
 4685#ifdef __CRT_UUID_DECL
 4686__CRT_UUID_DECL(IXMLDOMDocument3, 0x2933bf96, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 4687#endif
 4688#else
 4689typedef struct IXMLDOMDocument3Vtbl {
 4690    BEGIN_INTERFACE
 4691
 4692    /*** IUnknown methods ***/
 4693    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4694        IXMLDOMDocument3 *This,
 4695        REFIID riid,
 4696        void **ppvObject);
 4697
 4698    ULONG (STDMETHODCALLTYPE *AddRef)(
 4699        IXMLDOMDocument3 *This);
 4700
 4701    ULONG (STDMETHODCALLTYPE *Release)(
 4702        IXMLDOMDocument3 *This);
 4703
 4704    /*** IDispatch methods ***/
 4705    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4706        IXMLDOMDocument3 *This,
 4707        UINT *pctinfo);
 4708
 4709    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4710        IXMLDOMDocument3 *This,
 4711        UINT iTInfo,
 4712        LCID lcid,
 4713        ITypeInfo **ppTInfo);
 4714
 4715    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4716        IXMLDOMDocument3 *This,
 4717        REFIID riid,
 4718        LPOLESTR *rgszNames,
 4719        UINT cNames,
 4720        LCID lcid,
 4721        DISPID *rgDispId);
 4722
 4723    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4724        IXMLDOMDocument3 *This,
 4725        DISPID dispIdMember,
 4726        REFIID riid,
 4727        LCID lcid,
 4728        WORD wFlags,
 4729        DISPPARAMS *pDispParams,
 4730        VARIANT *pVarResult,
 4731        EXCEPINFO *pExcepInfo,
 4732        UINT *puArgErr);
 4733
 4734    /*** IXMLDOMNode methods ***/
 4735    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 4736        IXMLDOMDocument3 *This,
 4737        BSTR *p);
 4738
 4739    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 4740        IXMLDOMDocument3 *This,
 4741        VARIANT *var1);
 4742
 4743    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 4744        IXMLDOMDocument3 *This,
 4745        VARIANT var1);
 4746
 4747    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 4748        IXMLDOMDocument3 *This,
 4749        DOMNodeType *domNodeType);
 4750
 4751    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 4752        IXMLDOMDocument3 *This,
 4753        IXMLDOMNode **parent);
 4754
 4755    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 4756        IXMLDOMDocument3 *This,
 4757        IXMLDOMNodeList **outList);
 4758
 4759    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 4760        IXMLDOMDocument3 *This,
 4761        IXMLDOMNode **domNode);
 4762
 4763    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 4764        IXMLDOMDocument3 *This,
 4765        IXMLDOMNode **domNode);
 4766
 4767    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 4768        IXMLDOMDocument3 *This,
 4769        IXMLDOMNode **domNode);
 4770
 4771    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 4772        IXMLDOMDocument3 *This,
 4773        IXMLDOMNode **domNode);
 4774
 4775    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 4776        IXMLDOMDocument3 *This,
 4777        IXMLDOMNamedNodeMap **attributeMap);
 4778
 4779    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 4780        IXMLDOMDocument3 *This,
 4781        IXMLDOMNode *newNode,
 4782        VARIANT var1,
 4783        IXMLDOMNode **outOldNode);
 4784
 4785    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 4786        IXMLDOMDocument3 *This,
 4787        IXMLDOMNode *newNode,
 4788        IXMLDOMNode *oldNode,
 4789        IXMLDOMNode **outOldNode);
 4790
 4791    HRESULT (STDMETHODCALLTYPE *removeChild)(
 4792        IXMLDOMDocument3 *This,
 4793        IXMLDOMNode *domNode,
 4794        IXMLDOMNode **oldNode);
 4795
 4796    HRESULT (STDMETHODCALLTYPE *appendChild)(
 4797        IXMLDOMDocument3 *This,
 4798        IXMLDOMNode *newNode,
 4799        IXMLDOMNode **outNewNode);
 4800
 4801    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 4802        IXMLDOMDocument3 *This,
 4803        VARIANT_BOOL *pbool);
 4804
 4805    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 4806        IXMLDOMDocument3 *This,
 4807        IXMLDOMDocument **domDocument);
 4808
 4809    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 4810        IXMLDOMDocument3 *This,
 4811        VARIANT_BOOL pbool,
 4812        IXMLDOMNode **outNode);
 4813
 4814    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 4815        IXMLDOMDocument3 *This,
 4816        BSTR *p);
 4817
 4818    HRESULT (STDMETHODCALLTYPE *get_text)(
 4819        IXMLDOMDocument3 *This,
 4820        BSTR *p);
 4821
 4822    HRESULT (STDMETHODCALLTYPE *put_text)(
 4823        IXMLDOMDocument3 *This,
 4824        BSTR p);
 4825
 4826    HRESULT (STDMETHODCALLTYPE *get_specified)(
 4827        IXMLDOMDocument3 *This,
 4828        VARIANT_BOOL *pbool);
 4829
 4830    HRESULT (STDMETHODCALLTYPE *get_definition)(
 4831        IXMLDOMDocument3 *This,
 4832        IXMLDOMNode **domNode);
 4833
 4834    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 4835        IXMLDOMDocument3 *This,
 4836        VARIANT *var1);
 4837
 4838    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 4839        IXMLDOMDocument3 *This,
 4840        VARIANT var1);
 4841
 4842    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 4843        IXMLDOMDocument3 *This,
 4844        VARIANT *var1);
 4845
 4846    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 4847        IXMLDOMDocument3 *This,
 4848        BSTR p);
 4849
 4850    HRESULT (STDMETHODCALLTYPE *get_xml)(
 4851        IXMLDOMDocument3 *This,
 4852        BSTR *p);
 4853
 4854    HRESULT (STDMETHODCALLTYPE *transformNode)(
 4855        IXMLDOMDocument3 *This,
 4856        IXMLDOMNode *domNode,
 4857        BSTR *p);
 4858
 4859    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 4860        IXMLDOMDocument3 *This,
 4861        BSTR p,
 4862        IXMLDOMNodeList **outList);
 4863
 4864    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 4865        IXMLDOMDocument3 *This,
 4866        BSTR p,
 4867        IXMLDOMNode **outNode);
 4868
 4869    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 4870        IXMLDOMDocument3 *This,
 4871        VARIANT_BOOL *pbool);
 4872
 4873    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 4874        IXMLDOMDocument3 *This,
 4875        BSTR *p);
 4876
 4877    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 4878        IXMLDOMDocument3 *This,
 4879        BSTR *p);
 4880
 4881    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 4882        IXMLDOMDocument3 *This,
 4883        BSTR *p);
 4884
 4885    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 4886        IXMLDOMDocument3 *This,
 4887        IXMLDOMNode *domNode,
 4888        VARIANT var1);
 4889
 4890    /*** IXMLDOMDocument methods ***/
 4891    HRESULT (STDMETHODCALLTYPE *get_doctype)(
 4892        IXMLDOMDocument3 *This,
 4893        IXMLDOMDocumentType **docType);
 4894
 4895    HRESULT (STDMETHODCALLTYPE *get_implementation)(
 4896        IXMLDOMDocument3 *This,
 4897        IXMLDOMImplementation **impl);
 4898
 4899    HRESULT (STDMETHODCALLTYPE *get_documentElement)(
 4900        IXMLDOMDocument3 *This,
 4901        IXMLDOMElement **domElement);
 4902
 4903    HRESULT (STDMETHODCALLTYPE *putref_documentElement)(
 4904        IXMLDOMDocument3 *This,
 4905        IXMLDOMElement *domElement);
 4906
 4907    HRESULT (STDMETHODCALLTYPE *createElement)(
 4908        IXMLDOMDocument3 *This,
 4909        BSTR p,
 4910        IXMLDOMElement **domElement);
 4911
 4912    HRESULT (STDMETHODCALLTYPE *createDocumentFragment)(
 4913        IXMLDOMDocument3 *This,
 4914        IXMLDOMDocumentFragment **docFrag);
 4915
 4916    HRESULT (STDMETHODCALLTYPE *createTextNode)(
 4917        IXMLDOMDocument3 *This,
 4918        BSTR p,
 4919        IXMLDOMText **text);
 4920
 4921    HRESULT (STDMETHODCALLTYPE *createComment)(
 4922        IXMLDOMDocument3 *This,
 4923        BSTR p,
 4924        IXMLDOMComment **comment);
 4925
 4926    HRESULT (STDMETHODCALLTYPE *createCDATASection)(
 4927        IXMLDOMDocument3 *This,
 4928        BSTR p,
 4929        IXMLDOMCDATASection **cdata);
 4930
 4931    HRESULT (STDMETHODCALLTYPE *createProcessingInstruction)(
 4932        IXMLDOMDocument3 *This,
 4933        BSTR target,
 4934        BSTR data,
 4935        IXMLDOMProcessingInstruction **pi);
 4936
 4937    HRESULT (STDMETHODCALLTYPE *createAttribute)(
 4938        IXMLDOMDocument3 *This,
 4939        BSTR p,
 4940        IXMLDOMAttribute **attribute);
 4941
 4942    HRESULT (STDMETHODCALLTYPE *createEntityReference)(
 4943        IXMLDOMDocument3 *This,
 4944        BSTR p,
 4945        IXMLDOMEntityReference **entityRef);
 4946
 4947    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 4948        IXMLDOMDocument3 *This,
 4949        BSTR p,
 4950        IXMLDOMNodeList **resultList);
 4951
 4952    HRESULT (STDMETHODCALLTYPE *createNode)(
 4953        IXMLDOMDocument3 *This,
 4954        VARIANT var,
 4955        BSTR name,
 4956        BSTR uri,
 4957        IXMLDOMNode **node);
 4958
 4959    HRESULT (STDMETHODCALLTYPE *nodeFromID)(
 4960        IXMLDOMDocument3 *This,
 4961        BSTR id,
 4962        IXMLDOMNode **node);
 4963
 4964    HRESULT (STDMETHODCALLTYPE *load)(
 4965        IXMLDOMDocument3 *This,
 4966        VARIANT var1,
 4967        VARIANT_BOOL *pbool);
 4968
 4969    HRESULT (STDMETHODCALLTYPE *get_readyState)(
 4970        IXMLDOMDocument3 *This,
 4971        LONG *value);
 4972
 4973    HRESULT (STDMETHODCALLTYPE *get_parseError)(
 4974        IXMLDOMDocument3 *This,
 4975        IXMLDOMParseError **err);
 4976
 4977    HRESULT (STDMETHODCALLTYPE *get_url)(
 4978        IXMLDOMDocument3 *This,
 4979        BSTR *p);
 4980
 4981    HRESULT (STDMETHODCALLTYPE *get_async)(
 4982        IXMLDOMDocument3 *This,
 4983        VARIANT_BOOL *pbool);
 4984
 4985    HRESULT (STDMETHODCALLTYPE *put_async)(
 4986        IXMLDOMDocument3 *This,
 4987        VARIANT_BOOL pbool);
 4988
 4989    HRESULT (STDMETHODCALLTYPE *abort)(
 4990        IXMLDOMDocument3 *This);
 4991
 4992    HRESULT (STDMETHODCALLTYPE *loadXML)(
 4993        IXMLDOMDocument3 *This,
 4994        BSTR p,
 4995        VARIANT_BOOL *pbool);
 4996
 4997    HRESULT (STDMETHODCALLTYPE *save)(
 4998        IXMLDOMDocument3 *This,
 4999        VARIANT var1);
 5000
 5001    HRESULT (STDMETHODCALLTYPE *get_validateOnParse)(
 5002        IXMLDOMDocument3 *This,
 5003        VARIANT_BOOL *pbool);
 5004
 5005    HRESULT (STDMETHODCALLTYPE *put_validateOnParse)(
 5006        IXMLDOMDocument3 *This,
 5007        VARIANT_BOOL pbool);
 5008
 5009    HRESULT (STDMETHODCALLTYPE *get_resolveExternals)(
 5010        IXMLDOMDocument3 *This,
 5011        VARIANT_BOOL *pbool);
 5012
 5013    HRESULT (STDMETHODCALLTYPE *put_resolveExternals)(
 5014        IXMLDOMDocument3 *This,
 5015        VARIANT_BOOL pbool);
 5016
 5017    HRESULT (STDMETHODCALLTYPE *get_preserveWhiteSpace)(
 5018        IXMLDOMDocument3 *This,
 5019        VARIANT_BOOL *pbool);
 5020
 5021    HRESULT (STDMETHODCALLTYPE *put_preserveWhiteSpace)(
 5022        IXMLDOMDocument3 *This,
 5023        VARIANT_BOOL pbool);
 5024
 5025    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
 5026        IXMLDOMDocument3 *This,
 5027        VARIANT var1);
 5028
 5029    HRESULT (STDMETHODCALLTYPE *put_ondataavailable)(
 5030        IXMLDOMDocument3 *This,
 5031        VARIANT var1);
 5032
 5033    HRESULT (STDMETHODCALLTYPE *put_ontransformnode)(
 5034        IXMLDOMDocument3 *This,
 5035        VARIANT var1);
 5036
 5037    /*** IXMLDOMDocument2 methods ***/
 5038    HRESULT (STDMETHODCALLTYPE *get_namespaces)(
 5039        IXMLDOMDocument3 *This,
 5040        IXMLDOMSchemaCollection **schemaCollection);
 5041
 5042    HRESULT (STDMETHODCALLTYPE *get_schemas)(
 5043        IXMLDOMDocument3 *This,
 5044        VARIANT *var1);
 5045
 5046    HRESULT (STDMETHODCALLTYPE *putref_schemas)(
 5047        IXMLDOMDocument3 *This,
 5048        VARIANT var1);
 5049
 5050    HRESULT (STDMETHODCALLTYPE *validate)(
 5051        IXMLDOMDocument3 *This,
 5052        IXMLDOMParseError **err);
 5053
 5054    HRESULT (STDMETHODCALLTYPE *setProperty)(
 5055        IXMLDOMDocument3 *This,
 5056        BSTR p,
 5057        VARIANT var);
 5058
 5059    HRESULT (STDMETHODCALLTYPE *getProperty)(
 5060        IXMLDOMDocument3 *This,
 5061        BSTR p,
 5062        VARIANT *var);
 5063
 5064    /*** IXMLDOMDocument3 methods ***/
 5065    HRESULT (STDMETHODCALLTYPE *validateNode)(
 5066        IXMLDOMDocument3 *This,
 5067        IXMLDOMNode *node,
 5068        IXMLDOMParseError **error);
 5069
 5070    HRESULT (STDMETHODCALLTYPE *importNode)(
 5071        IXMLDOMDocument3 *This,
 5072        IXMLDOMNode *node,
 5073        VARIANT_BOOL deep,
 5074        IXMLDOMNode **clone);
 5075
 5076    END_INTERFACE
 5077} IXMLDOMDocument3Vtbl;
 5078
 5079interface IXMLDOMDocument3 {
 5080    CONST_VTBL IXMLDOMDocument3Vtbl* lpVtbl;
 5081};
 5082
 5083#ifdef COBJMACROS
 5084#ifndef WIDL_C_INLINE_WRAPPERS
 5085/*** IUnknown methods ***/
 5086#define IXMLDOMDocument3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5087#define IXMLDOMDocument3_AddRef(This) (This)->lpVtbl->AddRef(This)
 5088#define IXMLDOMDocument3_Release(This) (This)->lpVtbl->Release(This)
 5089/*** IDispatch methods ***/
 5090#define IXMLDOMDocument3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5091#define IXMLDOMDocument3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5092#define IXMLDOMDocument3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5093#define IXMLDOMDocument3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5094/*** IXMLDOMNode methods ***/
 5095#define IXMLDOMDocument3_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 5096#define IXMLDOMDocument3_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 5097#define IXMLDOMDocument3_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 5098#define IXMLDOMDocument3_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 5099#define IXMLDOMDocument3_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 5100#define IXMLDOMDocument3_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 5101#define IXMLDOMDocument3_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 5102#define IXMLDOMDocument3_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 5103#define IXMLDOMDocument3_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 5104#define IXMLDOMDocument3_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 5105#define IXMLDOMDocument3_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 5106#define IXMLDOMDocument3_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 5107#define IXMLDOMDocument3_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 5108#define IXMLDOMDocument3_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 5109#define IXMLDOMDocument3_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 5110#define IXMLDOMDocument3_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 5111#define IXMLDOMDocument3_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 5112#define IXMLDOMDocument3_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 5113#define IXMLDOMDocument3_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 5114#define IXMLDOMDocument3_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 5115#define IXMLDOMDocument3_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 5116#define IXMLDOMDocument3_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 5117#define IXMLDOMDocument3_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 5118#define IXMLDOMDocument3_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 5119#define IXMLDOMDocument3_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 5120#define IXMLDOMDocument3_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 5121#define IXMLDOMDocument3_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 5122#define IXMLDOMDocument3_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 5123#define IXMLDOMDocument3_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 5124#define IXMLDOMDocument3_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 5125#define IXMLDOMDocument3_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 5126#define IXMLDOMDocument3_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 5127#define IXMLDOMDocument3_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 5128#define IXMLDOMDocument3_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 5129#define IXMLDOMDocument3_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 5130#define IXMLDOMDocument3_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 5131/*** IXMLDOMDocument methods ***/
 5132#define IXMLDOMDocument3_get_doctype(This,docType) (This)->lpVtbl->get_doctype(This,docType)
 5133#define IXMLDOMDocument3_get_implementation(This,impl) (This)->lpVtbl->get_implementation(This,impl)
 5134#define IXMLDOMDocument3_get_documentElement(This,domElement) (This)->lpVtbl->get_documentElement(This,domElement)
 5135#define IXMLDOMDocument3_putref_documentElement(This,domElement) (This)->lpVtbl->putref_documentElement(This,domElement)
 5136#define IXMLDOMDocument3_createElement(This,p,domElement) (This)->lpVtbl->createElement(This,p,domElement)
 5137#define IXMLDOMDocument3_createDocumentFragment(This,docFrag) (This)->lpVtbl->createDocumentFragment(This,docFrag)
 5138#define IXMLDOMDocument3_createTextNode(This,p,text) (This)->lpVtbl->createTextNode(This,p,text)
 5139#define IXMLDOMDocument3_createComment(This,p,comment) (This)->lpVtbl->createComment(This,p,comment)
 5140#define IXMLDOMDocument3_createCDATASection(This,p,cdata) (This)->lpVtbl->createCDATASection(This,p,cdata)
 5141#define IXMLDOMDocument3_createProcessingInstruction(This,target,data,pi) (This)->lpVtbl->createProcessingInstruction(This,target,data,pi)
 5142#define IXMLDOMDocument3_createAttribute(This,p,attribute) (This)->lpVtbl->createAttribute(This,p,attribute)
 5143#define IXMLDOMDocument3_createEntityReference(This,p,entityRef) (This)->lpVtbl->createEntityReference(This,p,entityRef)
 5144#define IXMLDOMDocument3_getElementsByTagName(This,p,resultList) (This)->lpVtbl->getElementsByTagName(This,p,resultList)
 5145#define IXMLDOMDocument3_createNode(This,var,name,uri,node) (This)->lpVtbl->createNode(This,var,name,uri,node)
 5146#define IXMLDOMDocument3_nodeFromID(This,id,node) (This)->lpVtbl->nodeFromID(This,id,node)
 5147#define IXMLDOMDocument3_load(This,var1,pbool) (This)->lpVtbl->load(This,var1,pbool)
 5148#define IXMLDOMDocument3_get_readyState(This,value) (This)->lpVtbl->get_readyState(This,value)
 5149#define IXMLDOMDocument3_get_parseError(This,err) (This)->lpVtbl->get_parseError(This,err)
 5150#define IXMLDOMDocument3_get_url(This,p) (This)->lpVtbl->get_url(This,p)
 5151#define IXMLDOMDocument3_get_async(This,pbool) (This)->lpVtbl->get_async(This,pbool)
 5152#define IXMLDOMDocument3_put_async(This,pbool) (This)->lpVtbl->put_async(This,pbool)
 5153#define IXMLDOMDocument3_abort(This) (This)->lpVtbl->abort(This)
 5154#define IXMLDOMDocument3_loadXML(This,p,pbool) (This)->lpVtbl->loadXML(This,p,pbool)
 5155#define IXMLDOMDocument3_save(This,var1) (This)->lpVtbl->save(This,var1)
 5156#define IXMLDOMDocument3_get_validateOnParse(This,pbool) (This)->lpVtbl->get_validateOnParse(This,pbool)
 5157#define IXMLDOMDocument3_put_validateOnParse(This,pbool) (This)->lpVtbl->put_validateOnParse(This,pbool)
 5158#define IXMLDOMDocument3_get_resolveExternals(This,pbool) (This)->lpVtbl->get_resolveExternals(This,pbool)
 5159#define IXMLDOMDocument3_put_resolveExternals(This,pbool) (This)->lpVtbl->put_resolveExternals(This,pbool)
 5160#define IXMLDOMDocument3_get_preserveWhiteSpace(This,pbool) (This)->lpVtbl->get_preserveWhiteSpace(This,pbool)
 5161#define IXMLDOMDocument3_put_preserveWhiteSpace(This,pbool) (This)->lpVtbl->put_preserveWhiteSpace(This,pbool)
 5162#define IXMLDOMDocument3_put_onreadystatechange(This,var1) (This)->lpVtbl->put_onreadystatechange(This,var1)
 5163#define IXMLDOMDocument3_put_ondataavailable(This,var1) (This)->lpVtbl->put_ondataavailable(This,var1)
 5164#define IXMLDOMDocument3_put_ontransformnode(This,var1) (This)->lpVtbl->put_ontransformnode(This,var1)
 5165/*** IXMLDOMDocument2 methods ***/
 5166#define IXMLDOMDocument3_get_namespaces(This,schemaCollection) (This)->lpVtbl->get_namespaces(This,schemaCollection)
 5167#define IXMLDOMDocument3_get_schemas(This,var1) (This)->lpVtbl->get_schemas(This,var1)
 5168#define IXMLDOMDocument3_putref_schemas(This,var1) (This)->lpVtbl->putref_schemas(This,var1)
 5169#define IXMLDOMDocument3_validate(This,err) (This)->lpVtbl->validate(This,err)
 5170#define IXMLDOMDocument3_setProperty(This,p,var) (This)->lpVtbl->setProperty(This,p,var)
 5171#define IXMLDOMDocument3_getProperty(This,p,var) (This)->lpVtbl->getProperty(This,p,var)
 5172/*** IXMLDOMDocument3 methods ***/
 5173#define IXMLDOMDocument3_validateNode(This,node,error) (This)->lpVtbl->validateNode(This,node,error)
 5174#define IXMLDOMDocument3_importNode(This,node,deep,clone) (This)->lpVtbl->importNode(This,node,deep,clone)
 5175#else
 5176/*** IUnknown methods ***/
 5177static inline HRESULT IXMLDOMDocument3_QueryInterface(IXMLDOMDocument3* This,REFIID riid,void **ppvObject) {
 5178    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5179}
 5180static inline ULONG IXMLDOMDocument3_AddRef(IXMLDOMDocument3* This) {
 5181    return This->lpVtbl->AddRef(This);
 5182}
 5183static inline ULONG IXMLDOMDocument3_Release(IXMLDOMDocument3* This) {
 5184    return This->lpVtbl->Release(This);
 5185}
 5186/*** IDispatch methods ***/
 5187static inline HRESULT IXMLDOMDocument3_GetTypeInfoCount(IXMLDOMDocument3* This,UINT *pctinfo) {
 5188    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5189}
 5190static inline HRESULT IXMLDOMDocument3_GetTypeInfo(IXMLDOMDocument3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5191    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5192}
 5193static inline HRESULT IXMLDOMDocument3_GetIDsOfNames(IXMLDOMDocument3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5194    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5195}
 5196static inline HRESULT IXMLDOMDocument3_Invoke(IXMLDOMDocument3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5197    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5198}
 5199/*** IXMLDOMNode methods ***/
 5200static inline HRESULT IXMLDOMDocument3_get_nodeName(IXMLDOMDocument3* This,BSTR *p) {
 5201    return This->lpVtbl->get_nodeName(This,p);
 5202}
 5203static inline HRESULT IXMLDOMDocument3_get_nodeValue(IXMLDOMDocument3* This,VARIANT *var1) {
 5204    return This->lpVtbl->get_nodeValue(This,var1);
 5205}
 5206static inline HRESULT IXMLDOMDocument3_put_nodeValue(IXMLDOMDocument3* This,VARIANT var1) {
 5207    return This->lpVtbl->put_nodeValue(This,var1);
 5208}
 5209static inline HRESULT IXMLDOMDocument3_get_nodeType(IXMLDOMDocument3* This,DOMNodeType *domNodeType) {
 5210    return This->lpVtbl->get_nodeType(This,domNodeType);
 5211}
 5212static inline HRESULT IXMLDOMDocument3_get_parentNode(IXMLDOMDocument3* This,IXMLDOMNode **parent) {
 5213    return This->lpVtbl->get_parentNode(This,parent);
 5214}
 5215static inline HRESULT IXMLDOMDocument3_get_childNodes(IXMLDOMDocument3* This,IXMLDOMNodeList **outList) {
 5216    return This->lpVtbl->get_childNodes(This,outList);
 5217}
 5218static inline HRESULT IXMLDOMDocument3_get_firstChild(IXMLDOMDocument3* This,IXMLDOMNode **domNode) {
 5219    return This->lpVtbl->get_firstChild(This,domNode);
 5220}
 5221static inline HRESULT IXMLDOMDocument3_get_lastChild(IXMLDOMDocument3* This,IXMLDOMNode **domNode) {
 5222    return This->lpVtbl->get_lastChild(This,domNode);
 5223}
 5224static inline HRESULT IXMLDOMDocument3_get_previousSibling(IXMLDOMDocument3* This,IXMLDOMNode **domNode) {
 5225    return This->lpVtbl->get_previousSibling(This,domNode);
 5226}
 5227static inline HRESULT IXMLDOMDocument3_get_nextSibling(IXMLDOMDocument3* This,IXMLDOMNode **domNode) {
 5228    return This->lpVtbl->get_nextSibling(This,domNode);
 5229}
 5230static inline HRESULT IXMLDOMDocument3_get_attributes(IXMLDOMDocument3* This,IXMLDOMNamedNodeMap **attributeMap) {
 5231    return This->lpVtbl->get_attributes(This,attributeMap);
 5232}
 5233static inline HRESULT IXMLDOMDocument3_insertBefore(IXMLDOMDocument3* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 5234    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 5235}
 5236static inline HRESULT IXMLDOMDocument3_replaceChild(IXMLDOMDocument3* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 5237    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 5238}
 5239static inline HRESULT IXMLDOMDocument3_removeChild(IXMLDOMDocument3* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 5240    return This->lpVtbl->removeChild(This,domNode,oldNode);
 5241}
 5242static inline HRESULT IXMLDOMDocument3_appendChild(IXMLDOMDocument3* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 5243    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 5244}
 5245static inline HRESULT IXMLDOMDocument3_hasChildNodes(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5246    return This->lpVtbl->hasChildNodes(This,pbool);
 5247}
 5248static inline HRESULT IXMLDOMDocument3_get_ownerDocument(IXMLDOMDocument3* This,IXMLDOMDocument **domDocument) {
 5249    return This->lpVtbl->get_ownerDocument(This,domDocument);
 5250}
 5251static inline HRESULT IXMLDOMDocument3_cloneNode(IXMLDOMDocument3* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 5252    return This->lpVtbl->cloneNode(This,pbool,outNode);
 5253}
 5254static inline HRESULT IXMLDOMDocument3_get_nodeTypeString(IXMLDOMDocument3* This,BSTR *p) {
 5255    return This->lpVtbl->get_nodeTypeString(This,p);
 5256}
 5257static inline HRESULT IXMLDOMDocument3_get_text(IXMLDOMDocument3* This,BSTR *p) {
 5258    return This->lpVtbl->get_text(This,p);
 5259}
 5260static inline HRESULT IXMLDOMDocument3_put_text(IXMLDOMDocument3* This,BSTR p) {
 5261    return This->lpVtbl->put_text(This,p);
 5262}
 5263static inline HRESULT IXMLDOMDocument3_get_specified(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5264    return This->lpVtbl->get_specified(This,pbool);
 5265}
 5266static inline HRESULT IXMLDOMDocument3_get_definition(IXMLDOMDocument3* This,IXMLDOMNode **domNode) {
 5267    return This->lpVtbl->get_definition(This,domNode);
 5268}
 5269static inline HRESULT IXMLDOMDocument3_get_nodeTypedValue(IXMLDOMDocument3* This,VARIANT *var1) {
 5270    return This->lpVtbl->get_nodeTypedValue(This,var1);
 5271}
 5272static inline HRESULT IXMLDOMDocument3_put_nodeTypedValue(IXMLDOMDocument3* This,VARIANT var1) {
 5273    return This->lpVtbl->put_nodeTypedValue(This,var1);
 5274}
 5275static inline HRESULT IXMLDOMDocument3_get_dataType(IXMLDOMDocument3* This,VARIANT *var1) {
 5276    return This->lpVtbl->get_dataType(This,var1);
 5277}
 5278static inline HRESULT IXMLDOMDocument3_put_dataType(IXMLDOMDocument3* This,BSTR p) {
 5279    return This->lpVtbl->put_dataType(This,p);
 5280}
 5281static inline HRESULT IXMLDOMDocument3_get_xml(IXMLDOMDocument3* This,BSTR *p) {
 5282    return This->lpVtbl->get_xml(This,p);
 5283}
 5284static inline HRESULT IXMLDOMDocument3_transformNode(IXMLDOMDocument3* This,IXMLDOMNode *domNode,BSTR *p) {
 5285    return This->lpVtbl->transformNode(This,domNode,p);
 5286}
 5287static inline HRESULT IXMLDOMDocument3_selectNodes(IXMLDOMDocument3* This,BSTR p,IXMLDOMNodeList **outList) {
 5288    return This->lpVtbl->selectNodes(This,p,outList);
 5289}
 5290static inline HRESULT IXMLDOMDocument3_selectSingleNode(IXMLDOMDocument3* This,BSTR p,IXMLDOMNode **outNode) {
 5291    return This->lpVtbl->selectSingleNode(This,p,outNode);
 5292}
 5293static inline HRESULT IXMLDOMDocument3_get_parsed(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5294    return This->lpVtbl->get_parsed(This,pbool);
 5295}
 5296static inline HRESULT IXMLDOMDocument3_get_namespaceURI(IXMLDOMDocument3* This,BSTR *p) {
 5297    return This->lpVtbl->get_namespaceURI(This,p);
 5298}
 5299static inline HRESULT IXMLDOMDocument3_get_prefix(IXMLDOMDocument3* This,BSTR *p) {
 5300    return This->lpVtbl->get_prefix(This,p);
 5301}
 5302static inline HRESULT IXMLDOMDocument3_get_baseName(IXMLDOMDocument3* This,BSTR *p) {
 5303    return This->lpVtbl->get_baseName(This,p);
 5304}
 5305static inline HRESULT IXMLDOMDocument3_transformNodeToObject(IXMLDOMDocument3* This,IXMLDOMNode *domNode,VARIANT var1) {
 5306    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 5307}
 5308/*** IXMLDOMDocument methods ***/
 5309static inline HRESULT IXMLDOMDocument3_get_doctype(IXMLDOMDocument3* This,IXMLDOMDocumentType **docType) {
 5310    return This->lpVtbl->get_doctype(This,docType);
 5311}
 5312static inline HRESULT IXMLDOMDocument3_get_implementation(IXMLDOMDocument3* This,IXMLDOMImplementation **impl) {
 5313    return This->lpVtbl->get_implementation(This,impl);
 5314}
 5315static inline HRESULT IXMLDOMDocument3_get_documentElement(IXMLDOMDocument3* This,IXMLDOMElement **domElement) {
 5316    return This->lpVtbl->get_documentElement(This,domElement);
 5317}
 5318static inline HRESULT IXMLDOMDocument3_putref_documentElement(IXMLDOMDocument3* This,IXMLDOMElement *domElement) {
 5319    return This->lpVtbl->putref_documentElement(This,domElement);
 5320}
 5321static inline HRESULT IXMLDOMDocument3_createElement(IXMLDOMDocument3* This,BSTR p,IXMLDOMElement **domElement) {
 5322    return This->lpVtbl->createElement(This,p,domElement);
 5323}
 5324static inline HRESULT IXMLDOMDocument3_createDocumentFragment(IXMLDOMDocument3* This,IXMLDOMDocumentFragment **docFrag) {
 5325    return This->lpVtbl->createDocumentFragment(This,docFrag);
 5326}
 5327static inline HRESULT IXMLDOMDocument3_createTextNode(IXMLDOMDocument3* This,BSTR p,IXMLDOMText **text) {
 5328    return This->lpVtbl->createTextNode(This,p,text);
 5329}
 5330static inline HRESULT IXMLDOMDocument3_createComment(IXMLDOMDocument3* This,BSTR p,IXMLDOMComment **comment) {
 5331    return This->lpVtbl->createComment(This,p,comment);
 5332}
 5333static inline HRESULT IXMLDOMDocument3_createCDATASection(IXMLDOMDocument3* This,BSTR p,IXMLDOMCDATASection **cdata) {
 5334    return This->lpVtbl->createCDATASection(This,p,cdata);
 5335}
 5336static inline HRESULT IXMLDOMDocument3_createProcessingInstruction(IXMLDOMDocument3* This,BSTR target,BSTR data,IXMLDOMProcessingInstruction **pi) {
 5337    return This->lpVtbl->createProcessingInstruction(This,target,data,pi);
 5338}
 5339static inline HRESULT IXMLDOMDocument3_createAttribute(IXMLDOMDocument3* This,BSTR p,IXMLDOMAttribute **attribute) {
 5340    return This->lpVtbl->createAttribute(This,p,attribute);
 5341}
 5342static inline HRESULT IXMLDOMDocument3_createEntityReference(IXMLDOMDocument3* This,BSTR p,IXMLDOMEntityReference **entityRef) {
 5343    return This->lpVtbl->createEntityReference(This,p,entityRef);
 5344}
 5345static inline HRESULT IXMLDOMDocument3_getElementsByTagName(IXMLDOMDocument3* This,BSTR p,IXMLDOMNodeList **resultList) {
 5346    return This->lpVtbl->getElementsByTagName(This,p,resultList);
 5347}
 5348static inline HRESULT IXMLDOMDocument3_createNode(IXMLDOMDocument3* This,VARIANT var,BSTR name,BSTR uri,IXMLDOMNode **node) {
 5349    return This->lpVtbl->createNode(This,var,name,uri,node);
 5350}
 5351static inline HRESULT IXMLDOMDocument3_nodeFromID(IXMLDOMDocument3* This,BSTR id,IXMLDOMNode **node) {
 5352    return This->lpVtbl->nodeFromID(This,id,node);
 5353}
 5354static inline HRESULT IXMLDOMDocument3_load(IXMLDOMDocument3* This,VARIANT var1,VARIANT_BOOL *pbool) {
 5355    return This->lpVtbl->load(This,var1,pbool);
 5356}
 5357static inline HRESULT IXMLDOMDocument3_get_readyState(IXMLDOMDocument3* This,LONG *value) {
 5358    return This->lpVtbl->get_readyState(This,value);
 5359}
 5360static inline HRESULT IXMLDOMDocument3_get_parseError(IXMLDOMDocument3* This,IXMLDOMParseError **err) {
 5361    return This->lpVtbl->get_parseError(This,err);
 5362}
 5363static inline HRESULT IXMLDOMDocument3_get_url(IXMLDOMDocument3* This,BSTR *p) {
 5364    return This->lpVtbl->get_url(This,p);
 5365}
 5366static inline HRESULT IXMLDOMDocument3_get_async(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5367    return This->lpVtbl->get_async(This,pbool);
 5368}
 5369static inline HRESULT IXMLDOMDocument3_put_async(IXMLDOMDocument3* This,VARIANT_BOOL pbool) {
 5370    return This->lpVtbl->put_async(This,pbool);
 5371}
 5372static inline HRESULT IXMLDOMDocument3_abort(IXMLDOMDocument3* This) {
 5373    return This->lpVtbl->abort(This);
 5374}
 5375static inline HRESULT IXMLDOMDocument3_loadXML(IXMLDOMDocument3* This,BSTR p,VARIANT_BOOL *pbool) {
 5376    return This->lpVtbl->loadXML(This,p,pbool);
 5377}
 5378static inline HRESULT IXMLDOMDocument3_save(IXMLDOMDocument3* This,VARIANT var1) {
 5379    return This->lpVtbl->save(This,var1);
 5380}
 5381static inline HRESULT IXMLDOMDocument3_get_validateOnParse(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5382    return This->lpVtbl->get_validateOnParse(This,pbool);
 5383}
 5384static inline HRESULT IXMLDOMDocument3_put_validateOnParse(IXMLDOMDocument3* This,VARIANT_BOOL pbool) {
 5385    return This->lpVtbl->put_validateOnParse(This,pbool);
 5386}
 5387static inline HRESULT IXMLDOMDocument3_get_resolveExternals(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5388    return This->lpVtbl->get_resolveExternals(This,pbool);
 5389}
 5390static inline HRESULT IXMLDOMDocument3_put_resolveExternals(IXMLDOMDocument3* This,VARIANT_BOOL pbool) {
 5391    return This->lpVtbl->put_resolveExternals(This,pbool);
 5392}
 5393static inline HRESULT IXMLDOMDocument3_get_preserveWhiteSpace(IXMLDOMDocument3* This,VARIANT_BOOL *pbool) {
 5394    return This->lpVtbl->get_preserveWhiteSpace(This,pbool);
 5395}
 5396static inline HRESULT IXMLDOMDocument3_put_preserveWhiteSpace(IXMLDOMDocument3* This,VARIANT_BOOL pbool) {
 5397    return This->lpVtbl->put_preserveWhiteSpace(This,pbool);
 5398}
 5399static inline HRESULT IXMLDOMDocument3_put_onreadystatechange(IXMLDOMDocument3* This,VARIANT var1) {
 5400    return This->lpVtbl->put_onreadystatechange(This,var1);
 5401}
 5402static inline HRESULT IXMLDOMDocument3_put_ondataavailable(IXMLDOMDocument3* This,VARIANT var1) {
 5403    return This->lpVtbl->put_ondataavailable(This,var1);
 5404}
 5405static inline HRESULT IXMLDOMDocument3_put_ontransformnode(IXMLDOMDocument3* This,VARIANT var1) {
 5406    return This->lpVtbl->put_ontransformnode(This,var1);
 5407}
 5408/*** IXMLDOMDocument2 methods ***/
 5409static inline HRESULT IXMLDOMDocument3_get_namespaces(IXMLDOMDocument3* This,IXMLDOMSchemaCollection **schemaCollection) {
 5410    return This->lpVtbl->get_namespaces(This,schemaCollection);
 5411}
 5412static inline HRESULT IXMLDOMDocument3_get_schemas(IXMLDOMDocument3* This,VARIANT *var1) {
 5413    return This->lpVtbl->get_schemas(This,var1);
 5414}
 5415static inline HRESULT IXMLDOMDocument3_putref_schemas(IXMLDOMDocument3* This,VARIANT var1) {
 5416    return This->lpVtbl->putref_schemas(This,var1);
 5417}
 5418static inline HRESULT IXMLDOMDocument3_validate(IXMLDOMDocument3* This,IXMLDOMParseError **err) {
 5419    return This->lpVtbl->validate(This,err);
 5420}
 5421static inline HRESULT IXMLDOMDocument3_setProperty(IXMLDOMDocument3* This,BSTR p,VARIANT var) {
 5422    return This->lpVtbl->setProperty(This,p,var);
 5423}
 5424static inline HRESULT IXMLDOMDocument3_getProperty(IXMLDOMDocument3* This,BSTR p,VARIANT *var) {
 5425    return This->lpVtbl->getProperty(This,p,var);
 5426}
 5427/*** IXMLDOMDocument3 methods ***/
 5428static inline HRESULT IXMLDOMDocument3_validateNode(IXMLDOMDocument3* This,IXMLDOMNode *node,IXMLDOMParseError **error) {
 5429    return This->lpVtbl->validateNode(This,node,error);
 5430}
 5431static inline HRESULT IXMLDOMDocument3_importNode(IXMLDOMDocument3* This,IXMLDOMNode *node,VARIANT_BOOL deep,IXMLDOMNode **clone) {
 5432    return This->lpVtbl->importNode(This,node,deep,clone);
 5433}
 5434#endif
 5435#endif
 5436
 5437#endif
 5438
 5439
 5440#endif  /* __IXMLDOMDocument3_INTERFACE_DEFINED__ */
 5441
 5442/*****************************************************************************
 5443 * IXMLDOMNodeList interface
 5444 */
 5445#ifndef __IXMLDOMNodeList_INTERFACE_DEFINED__
 5446#define __IXMLDOMNodeList_INTERFACE_DEFINED__
 5447
 5448DEFINE_GUID(IID_IXMLDOMNodeList, 0x2933bf82, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 5449#if defined(__cplusplus) && !defined(CINTERFACE)
 5450MIDL_INTERFACE("2933bf82-7b36-11d2-b20e-00c04f983e60")
 5451IXMLDOMNodeList : public IDispatch
 5452{
 5453    virtual HRESULT STDMETHODCALLTYPE get_item(
 5454        LONG lIndex,
 5455        IXMLDOMNode **outNode) = 0;
 5456
 5457    virtual HRESULT STDMETHODCALLTYPE get_length(
 5458        LONG *lLength) = 0;
 5459
 5460    virtual HRESULT STDMETHODCALLTYPE nextNode(
 5461        IXMLDOMNode **outNode) = 0;
 5462
 5463    virtual HRESULT STDMETHODCALLTYPE reset(
 5464        ) = 0;
 5465
 5466    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
 5467        IUnknown **ppUnk) = 0;
 5468
 5469};
 5470#ifdef __CRT_UUID_DECL
 5471__CRT_UUID_DECL(IXMLDOMNodeList, 0x2933bf82, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 5472#endif
 5473#else
 5474typedef struct IXMLDOMNodeListVtbl {
 5475    BEGIN_INTERFACE
 5476
 5477    /*** IUnknown methods ***/
 5478    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5479        IXMLDOMNodeList *This,
 5480        REFIID riid,
 5481        void **ppvObject);
 5482
 5483    ULONG (STDMETHODCALLTYPE *AddRef)(
 5484        IXMLDOMNodeList *This);
 5485
 5486    ULONG (STDMETHODCALLTYPE *Release)(
 5487        IXMLDOMNodeList *This);
 5488
 5489    /*** IDispatch methods ***/
 5490    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5491        IXMLDOMNodeList *This,
 5492        UINT *pctinfo);
 5493
 5494    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5495        IXMLDOMNodeList *This,
 5496        UINT iTInfo,
 5497        LCID lcid,
 5498        ITypeInfo **ppTInfo);
 5499
 5500    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5501        IXMLDOMNodeList *This,
 5502        REFIID riid,
 5503        LPOLESTR *rgszNames,
 5504        UINT cNames,
 5505        LCID lcid,
 5506        DISPID *rgDispId);
 5507
 5508    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5509        IXMLDOMNodeList *This,
 5510        DISPID dispIdMember,
 5511        REFIID riid,
 5512        LCID lcid,
 5513        WORD wFlags,
 5514        DISPPARAMS *pDispParams,
 5515        VARIANT *pVarResult,
 5516        EXCEPINFO *pExcepInfo,
 5517        UINT *puArgErr);
 5518
 5519    /*** IXMLDOMNodeList methods ***/
 5520    HRESULT (STDMETHODCALLTYPE *get_item)(
 5521        IXMLDOMNodeList *This,
 5522        LONG lIndex,
 5523        IXMLDOMNode **outNode);
 5524
 5525    HRESULT (STDMETHODCALLTYPE *get_length)(
 5526        IXMLDOMNodeList *This,
 5527        LONG *lLength);
 5528
 5529    HRESULT (STDMETHODCALLTYPE *nextNode)(
 5530        IXMLDOMNodeList *This,
 5531        IXMLDOMNode **outNode);
 5532
 5533    HRESULT (STDMETHODCALLTYPE *reset)(
 5534        IXMLDOMNodeList *This);
 5535
 5536    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 5537        IXMLDOMNodeList *This,
 5538        IUnknown **ppUnk);
 5539
 5540    END_INTERFACE
 5541} IXMLDOMNodeListVtbl;
 5542
 5543interface IXMLDOMNodeList {
 5544    CONST_VTBL IXMLDOMNodeListVtbl* lpVtbl;
 5545};
 5546
 5547#ifdef COBJMACROS
 5548#ifndef WIDL_C_INLINE_WRAPPERS
 5549/*** IUnknown methods ***/
 5550#define IXMLDOMNodeList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5551#define IXMLDOMNodeList_AddRef(This) (This)->lpVtbl->AddRef(This)
 5552#define IXMLDOMNodeList_Release(This) (This)->lpVtbl->Release(This)
 5553/*** IDispatch methods ***/
 5554#define IXMLDOMNodeList_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5555#define IXMLDOMNodeList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5556#define IXMLDOMNodeList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5557#define IXMLDOMNodeList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5558/*** IXMLDOMNodeList methods ***/
 5559#define IXMLDOMNodeList_get_item(This,lIndex,outNode) (This)->lpVtbl->get_item(This,lIndex,outNode)
 5560#define IXMLDOMNodeList_get_length(This,lLength) (This)->lpVtbl->get_length(This,lLength)
 5561#define IXMLDOMNodeList_nextNode(This,outNode) (This)->lpVtbl->nextNode(This,outNode)
 5562#define IXMLDOMNodeList_reset(This) (This)->lpVtbl->reset(This)
 5563#define IXMLDOMNodeList_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 5564#else
 5565/*** IUnknown methods ***/
 5566static inline HRESULT IXMLDOMNodeList_QueryInterface(IXMLDOMNodeList* This,REFIID riid,void **ppvObject) {
 5567    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5568}
 5569static inline ULONG IXMLDOMNodeList_AddRef(IXMLDOMNodeList* This) {
 5570    return This->lpVtbl->AddRef(This);
 5571}
 5572static inline ULONG IXMLDOMNodeList_Release(IXMLDOMNodeList* This) {
 5573    return This->lpVtbl->Release(This);
 5574}
 5575/*** IDispatch methods ***/
 5576static inline HRESULT IXMLDOMNodeList_GetTypeInfoCount(IXMLDOMNodeList* This,UINT *pctinfo) {
 5577    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5578}
 5579static inline HRESULT IXMLDOMNodeList_GetTypeInfo(IXMLDOMNodeList* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5580    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5581}
 5582static inline HRESULT IXMLDOMNodeList_GetIDsOfNames(IXMLDOMNodeList* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5583    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5584}
 5585static inline HRESULT IXMLDOMNodeList_Invoke(IXMLDOMNodeList* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5586    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5587}
 5588/*** IXMLDOMNodeList methods ***/
 5589static inline HRESULT IXMLDOMNodeList_get_item(IXMLDOMNodeList* This,LONG lIndex,IXMLDOMNode **outNode) {
 5590    return This->lpVtbl->get_item(This,lIndex,outNode);
 5591}
 5592static inline HRESULT IXMLDOMNodeList_get_length(IXMLDOMNodeList* This,LONG *lLength) {
 5593    return This->lpVtbl->get_length(This,lLength);
 5594}
 5595static inline HRESULT IXMLDOMNodeList_nextNode(IXMLDOMNodeList* This,IXMLDOMNode **outNode) {
 5596    return This->lpVtbl->nextNode(This,outNode);
 5597}
 5598static inline HRESULT IXMLDOMNodeList_reset(IXMLDOMNodeList* This) {
 5599    return This->lpVtbl->reset(This);
 5600}
 5601static inline HRESULT IXMLDOMNodeList_get__newEnum(IXMLDOMNodeList* This,IUnknown **ppUnk) {
 5602    return This->lpVtbl->get__newEnum(This,ppUnk);
 5603}
 5604#endif
 5605#endif
 5606
 5607#endif
 5608
 5609
 5610#endif  /* __IXMLDOMNodeList_INTERFACE_DEFINED__ */
 5611
 5612/*****************************************************************************
 5613 * IXMLDOMSelection interface
 5614 */
 5615#ifndef __IXMLDOMSelection_INTERFACE_DEFINED__
 5616#define __IXMLDOMSelection_INTERFACE_DEFINED__
 5617
 5618DEFINE_GUID(IID_IXMLDOMSelection, 0xaa634fc7, 0x5888, 0x44a7, 0xa2,0x57, 0x3a,0x47,0x15,0x0d,0x3a,0x0e);
 5619#if defined(__cplusplus) && !defined(CINTERFACE)
 5620MIDL_INTERFACE("aa634fc7-5888-44a7-a257-3a47150d3a0e")
 5621IXMLDOMSelection : public IXMLDOMNodeList
 5622{
 5623    virtual HRESULT STDMETHODCALLTYPE get_expr(
 5624        BSTR *p) = 0;
 5625
 5626    virtual HRESULT STDMETHODCALLTYPE put_expr(
 5627        BSTR p) = 0;
 5628
 5629    virtual HRESULT STDMETHODCALLTYPE get_context(
 5630        IXMLDOMNode **ppNode) = 0;
 5631
 5632    virtual HRESULT STDMETHODCALLTYPE putref_context(
 5633        IXMLDOMNode *pNode) = 0;
 5634
 5635    virtual HRESULT STDMETHODCALLTYPE peekNode(
 5636        IXMLDOMNode **ppNode) = 0;
 5637
 5638    virtual HRESULT STDMETHODCALLTYPE matches(
 5639        IXMLDOMNode *pNode,
 5640        IXMLDOMNode **ppNode) = 0;
 5641
 5642    virtual HRESULT STDMETHODCALLTYPE removeNext(
 5643        IXMLDOMNode **ppNode) = 0;
 5644
 5645    virtual HRESULT STDMETHODCALLTYPE removeAll(
 5646        ) = 0;
 5647
 5648    virtual HRESULT STDMETHODCALLTYPE clone(
 5649        IXMLDOMSelection **ppNode) = 0;
 5650
 5651    virtual HRESULT STDMETHODCALLTYPE getProperty(
 5652        BSTR p,
 5653        VARIANT *var) = 0;
 5654
 5655    virtual HRESULT STDMETHODCALLTYPE setProperty(
 5656        BSTR p,
 5657        VARIANT var) = 0;
 5658
 5659};
 5660#ifdef __CRT_UUID_DECL
 5661__CRT_UUID_DECL(IXMLDOMSelection, 0xaa634fc7, 0x5888, 0x44a7, 0xa2,0x57, 0x3a,0x47,0x15,0x0d,0x3a,0x0e)
 5662#endif
 5663#else
 5664typedef struct IXMLDOMSelectionVtbl {
 5665    BEGIN_INTERFACE
 5666
 5667    /*** IUnknown methods ***/
 5668    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5669        IXMLDOMSelection *This,
 5670        REFIID riid,
 5671        void **ppvObject);
 5672
 5673    ULONG (STDMETHODCALLTYPE *AddRef)(
 5674        IXMLDOMSelection *This);
 5675
 5676    ULONG (STDMETHODCALLTYPE *Release)(
 5677        IXMLDOMSelection *This);
 5678
 5679    /*** IDispatch methods ***/
 5680    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5681        IXMLDOMSelection *This,
 5682        UINT *pctinfo);
 5683
 5684    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5685        IXMLDOMSelection *This,
 5686        UINT iTInfo,
 5687        LCID lcid,
 5688        ITypeInfo **ppTInfo);
 5689
 5690    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5691        IXMLDOMSelection *This,
 5692        REFIID riid,
 5693        LPOLESTR *rgszNames,
 5694        UINT cNames,
 5695        LCID lcid,
 5696        DISPID *rgDispId);
 5697
 5698    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5699        IXMLDOMSelection *This,
 5700        DISPID dispIdMember,
 5701        REFIID riid,
 5702        LCID lcid,
 5703        WORD wFlags,
 5704        DISPPARAMS *pDispParams,
 5705        VARIANT *pVarResult,
 5706        EXCEPINFO *pExcepInfo,
 5707        UINT *puArgErr);
 5708
 5709    /*** IXMLDOMNodeList methods ***/
 5710    HRESULT (STDMETHODCALLTYPE *get_item)(
 5711        IXMLDOMSelection *This,
 5712        LONG lIndex,
 5713        IXMLDOMNode **outNode);
 5714
 5715    HRESULT (STDMETHODCALLTYPE *get_length)(
 5716        IXMLDOMSelection *This,
 5717        LONG *lLength);
 5718
 5719    HRESULT (STDMETHODCALLTYPE *nextNode)(
 5720        IXMLDOMSelection *This,
 5721        IXMLDOMNode **outNode);
 5722
 5723    HRESULT (STDMETHODCALLTYPE *reset)(
 5724        IXMLDOMSelection *This);
 5725
 5726    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 5727        IXMLDOMSelection *This,
 5728        IUnknown **ppUnk);
 5729
 5730    /*** IXMLDOMSelection methods ***/
 5731    HRESULT (STDMETHODCALLTYPE *get_expr)(
 5732        IXMLDOMSelection *This,
 5733        BSTR *p);
 5734
 5735    HRESULT (STDMETHODCALLTYPE *put_expr)(
 5736        IXMLDOMSelection *This,
 5737        BSTR p);
 5738
 5739    HRESULT (STDMETHODCALLTYPE *get_context)(
 5740        IXMLDOMSelection *This,
 5741        IXMLDOMNode **ppNode);
 5742
 5743    HRESULT (STDMETHODCALLTYPE *putref_context)(
 5744        IXMLDOMSelection *This,
 5745        IXMLDOMNode *pNode);
 5746
 5747    HRESULT (STDMETHODCALLTYPE *peekNode)(
 5748        IXMLDOMSelection *This,
 5749        IXMLDOMNode **ppNode);
 5750
 5751    HRESULT (STDMETHODCALLTYPE *matches)(
 5752        IXMLDOMSelection *This,
 5753        IXMLDOMNode *pNode,
 5754        IXMLDOMNode **ppNode);
 5755
 5756    HRESULT (STDMETHODCALLTYPE *removeNext)(
 5757        IXMLDOMSelection *This,
 5758        IXMLDOMNode **ppNode);
 5759
 5760    HRESULT (STDMETHODCALLTYPE *removeAll)(
 5761        IXMLDOMSelection *This);
 5762
 5763    HRESULT (STDMETHODCALLTYPE *clone)(
 5764        IXMLDOMSelection *This,
 5765        IXMLDOMSelection **ppNode);
 5766
 5767    HRESULT (STDMETHODCALLTYPE *getProperty)(
 5768        IXMLDOMSelection *This,
 5769        BSTR p,
 5770        VARIANT *var);
 5771
 5772    HRESULT (STDMETHODCALLTYPE *setProperty)(
 5773        IXMLDOMSelection *This,
 5774        BSTR p,
 5775        VARIANT var);
 5776
 5777    END_INTERFACE
 5778} IXMLDOMSelectionVtbl;
 5779
 5780interface IXMLDOMSelection {
 5781    CONST_VTBL IXMLDOMSelectionVtbl* lpVtbl;
 5782};
 5783
 5784#ifdef COBJMACROS
 5785#ifndef WIDL_C_INLINE_WRAPPERS
 5786/*** IUnknown methods ***/
 5787#define IXMLDOMSelection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5788#define IXMLDOMSelection_AddRef(This) (This)->lpVtbl->AddRef(This)
 5789#define IXMLDOMSelection_Release(This) (This)->lpVtbl->Release(This)
 5790/*** IDispatch methods ***/
 5791#define IXMLDOMSelection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5792#define IXMLDOMSelection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5793#define IXMLDOMSelection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5794#define IXMLDOMSelection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5795/*** IXMLDOMNodeList methods ***/
 5796#define IXMLDOMSelection_get_item(This,lIndex,outNode) (This)->lpVtbl->get_item(This,lIndex,outNode)
 5797#define IXMLDOMSelection_get_length(This,lLength) (This)->lpVtbl->get_length(This,lLength)
 5798#define IXMLDOMSelection_nextNode(This,outNode) (This)->lpVtbl->nextNode(This,outNode)
 5799#define IXMLDOMSelection_reset(This) (This)->lpVtbl->reset(This)
 5800#define IXMLDOMSelection_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 5801/*** IXMLDOMSelection methods ***/
 5802#define IXMLDOMSelection_get_expr(This,p) (This)->lpVtbl->get_expr(This,p)
 5803#define IXMLDOMSelection_put_expr(This,p) (This)->lpVtbl->put_expr(This,p)
 5804#define IXMLDOMSelection_get_context(This,ppNode) (This)->lpVtbl->get_context(This,ppNode)
 5805#define IXMLDOMSelection_putref_context(This,pNode) (This)->lpVtbl->putref_context(This,pNode)
 5806#define IXMLDOMSelection_peekNode(This,ppNode) (This)->lpVtbl->peekNode(This,ppNode)
 5807#define IXMLDOMSelection_matches(This,pNode,ppNode) (This)->lpVtbl->matches(This,pNode,ppNode)
 5808#define IXMLDOMSelection_removeNext(This,ppNode) (This)->lpVtbl->removeNext(This,ppNode)
 5809#define IXMLDOMSelection_removeAll(This) (This)->lpVtbl->removeAll(This)
 5810#define IXMLDOMSelection_clone(This,ppNode) (This)->lpVtbl->clone(This,ppNode)
 5811#define IXMLDOMSelection_getProperty(This,p,var) (This)->lpVtbl->getProperty(This,p,var)
 5812#define IXMLDOMSelection_setProperty(This,p,var) (This)->lpVtbl->setProperty(This,p,var)
 5813#else
 5814/*** IUnknown methods ***/
 5815static inline HRESULT IXMLDOMSelection_QueryInterface(IXMLDOMSelection* This,REFIID riid,void **ppvObject) {
 5816    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5817}
 5818static inline ULONG IXMLDOMSelection_AddRef(IXMLDOMSelection* This) {
 5819    return This->lpVtbl->AddRef(This);
 5820}
 5821static inline ULONG IXMLDOMSelection_Release(IXMLDOMSelection* This) {
 5822    return This->lpVtbl->Release(This);
 5823}
 5824/*** IDispatch methods ***/
 5825static inline HRESULT IXMLDOMSelection_GetTypeInfoCount(IXMLDOMSelection* This,UINT *pctinfo) {
 5826    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5827}
 5828static inline HRESULT IXMLDOMSelection_GetTypeInfo(IXMLDOMSelection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5829    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5830}
 5831static inline HRESULT IXMLDOMSelection_GetIDsOfNames(IXMLDOMSelection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5832    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5833}
 5834static inline HRESULT IXMLDOMSelection_Invoke(IXMLDOMSelection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5835    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5836}
 5837/*** IXMLDOMNodeList methods ***/
 5838static inline HRESULT IXMLDOMSelection_get_item(IXMLDOMSelection* This,LONG lIndex,IXMLDOMNode **outNode) {
 5839    return This->lpVtbl->get_item(This,lIndex,outNode);
 5840}
 5841static inline HRESULT IXMLDOMSelection_get_length(IXMLDOMSelection* This,LONG *lLength) {
 5842    return This->lpVtbl->get_length(This,lLength);
 5843}
 5844static inline HRESULT IXMLDOMSelection_nextNode(IXMLDOMSelection* This,IXMLDOMNode **outNode) {
 5845    return This->lpVtbl->nextNode(This,outNode);
 5846}
 5847static inline HRESULT IXMLDOMSelection_reset(IXMLDOMSelection* This) {
 5848    return This->lpVtbl->reset(This);
 5849}
 5850static inline HRESULT IXMLDOMSelection_get__newEnum(IXMLDOMSelection* This,IUnknown **ppUnk) {
 5851    return This->lpVtbl->get__newEnum(This,ppUnk);
 5852}
 5853/*** IXMLDOMSelection methods ***/
 5854static inline HRESULT IXMLDOMSelection_get_expr(IXMLDOMSelection* This,BSTR *p) {
 5855    return This->lpVtbl->get_expr(This,p);
 5856}
 5857static inline HRESULT IXMLDOMSelection_put_expr(IXMLDOMSelection* This,BSTR p) {
 5858    return This->lpVtbl->put_expr(This,p);
 5859}
 5860static inline HRESULT IXMLDOMSelection_get_context(IXMLDOMSelection* This,IXMLDOMNode **ppNode) {
 5861    return This->lpVtbl->get_context(This,ppNode);
 5862}
 5863static inline HRESULT IXMLDOMSelection_putref_context(IXMLDOMSelection* This,IXMLDOMNode *pNode) {
 5864    return This->lpVtbl->putref_context(This,pNode);
 5865}
 5866static inline HRESULT IXMLDOMSelection_peekNode(IXMLDOMSelection* This,IXMLDOMNode **ppNode) {
 5867    return This->lpVtbl->peekNode(This,ppNode);
 5868}
 5869static inline HRESULT IXMLDOMSelection_matches(IXMLDOMSelection* This,IXMLDOMNode *pNode,IXMLDOMNode **ppNode) {
 5870    return This->lpVtbl->matches(This,pNode,ppNode);
 5871}
 5872static inline HRESULT IXMLDOMSelection_removeNext(IXMLDOMSelection* This,IXMLDOMNode **ppNode) {
 5873    return This->lpVtbl->removeNext(This,ppNode);
 5874}
 5875static inline HRESULT IXMLDOMSelection_removeAll(IXMLDOMSelection* This) {
 5876    return This->lpVtbl->removeAll(This);
 5877}
 5878static inline HRESULT IXMLDOMSelection_clone(IXMLDOMSelection* This,IXMLDOMSelection **ppNode) {
 5879    return This->lpVtbl->clone(This,ppNode);
 5880}
 5881static inline HRESULT IXMLDOMSelection_getProperty(IXMLDOMSelection* This,BSTR p,VARIANT *var) {
 5882    return This->lpVtbl->getProperty(This,p,var);
 5883}
 5884static inline HRESULT IXMLDOMSelection_setProperty(IXMLDOMSelection* This,BSTR p,VARIANT var) {
 5885    return This->lpVtbl->setProperty(This,p,var);
 5886}
 5887#endif
 5888#endif
 5889
 5890#endif
 5891
 5892
 5893#endif  /* __IXMLDOMSelection_INTERFACE_DEFINED__ */
 5894
 5895/*****************************************************************************
 5896 * IXMLDOMNamedNodeMap interface
 5897 */
 5898#ifndef __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__
 5899#define __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__
 5900
 5901DEFINE_GUID(IID_IXMLDOMNamedNodeMap, 0x2933bf83, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 5902#if defined(__cplusplus) && !defined(CINTERFACE)
 5903MIDL_INTERFACE("2933bf83-7b36-11d2-b20e-00c04f983e60")
 5904IXMLDOMNamedNodeMap : public IDispatch
 5905{
 5906    virtual HRESULT STDMETHODCALLTYPE getNamedItem(
 5907        BSTR p,
 5908        IXMLDOMNode **outNode) = 0;
 5909
 5910    virtual HRESULT STDMETHODCALLTYPE setNamedItem(
 5911        IXMLDOMNode *newNode,
 5912        IXMLDOMNode **outNode) = 0;
 5913
 5914    virtual HRESULT STDMETHODCALLTYPE removeNamedItem(
 5915        BSTR p,
 5916        IXMLDOMNode **outNode) = 0;
 5917
 5918    virtual HRESULT STDMETHODCALLTYPE get_item(
 5919        LONG lIndex,
 5920        IXMLDOMNode **outNode) = 0;
 5921
 5922    virtual HRESULT STDMETHODCALLTYPE get_length(
 5923        LONG *lLength) = 0;
 5924
 5925    virtual HRESULT STDMETHODCALLTYPE getQualifiedItem(
 5926        BSTR name,
 5927        BSTR uri,
 5928        IXMLDOMNode **outNode) = 0;
 5929
 5930    virtual HRESULT STDMETHODCALLTYPE removeQualifiedItem(
 5931        BSTR name,
 5932        BSTR uri,
 5933        IXMLDOMNode **outNode) = 0;
 5934
 5935    virtual HRESULT STDMETHODCALLTYPE nextNode(
 5936        IXMLDOMNode **outNode) = 0;
 5937
 5938    virtual HRESULT STDMETHODCALLTYPE reset(
 5939        ) = 0;
 5940
 5941    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
 5942        IUnknown **ppUnk) = 0;
 5943
 5944};
 5945#ifdef __CRT_UUID_DECL
 5946__CRT_UUID_DECL(IXMLDOMNamedNodeMap, 0x2933bf83, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 5947#endif
 5948#else
 5949typedef struct IXMLDOMNamedNodeMapVtbl {
 5950    BEGIN_INTERFACE
 5951
 5952    /*** IUnknown methods ***/
 5953    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5954        IXMLDOMNamedNodeMap *This,
 5955        REFIID riid,
 5956        void **ppvObject);
 5957
 5958    ULONG (STDMETHODCALLTYPE *AddRef)(
 5959        IXMLDOMNamedNodeMap *This);
 5960
 5961    ULONG (STDMETHODCALLTYPE *Release)(
 5962        IXMLDOMNamedNodeMap *This);
 5963
 5964    /*** IDispatch methods ***/
 5965    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5966        IXMLDOMNamedNodeMap *This,
 5967        UINT *pctinfo);
 5968
 5969    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5970        IXMLDOMNamedNodeMap *This,
 5971        UINT iTInfo,
 5972        LCID lcid,
 5973        ITypeInfo **ppTInfo);
 5974
 5975    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5976        IXMLDOMNamedNodeMap *This,
 5977        REFIID riid,
 5978        LPOLESTR *rgszNames,
 5979        UINT cNames,
 5980        LCID lcid,
 5981        DISPID *rgDispId);
 5982
 5983    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5984        IXMLDOMNamedNodeMap *This,
 5985        DISPID dispIdMember,
 5986        REFIID riid,
 5987        LCID lcid,
 5988        WORD wFlags,
 5989        DISPPARAMS *pDispParams,
 5990        VARIANT *pVarResult,
 5991        EXCEPINFO *pExcepInfo,
 5992        UINT *puArgErr);
 5993
 5994    /*** IXMLDOMNamedNodeMap methods ***/
 5995    HRESULT (STDMETHODCALLTYPE *getNamedItem)(
 5996        IXMLDOMNamedNodeMap *This,
 5997        BSTR p,
 5998        IXMLDOMNode **outNode);
 5999
 6000    HRESULT (STDMETHODCALLTYPE *setNamedItem)(
 6001        IXMLDOMNamedNodeMap *This,
 6002        IXMLDOMNode *newNode,
 6003        IXMLDOMNode **outNode);
 6004
 6005    HRESULT (STDMETHODCALLTYPE *removeNamedItem)(
 6006        IXMLDOMNamedNodeMap *This,
 6007        BSTR p,
 6008        IXMLDOMNode **outNode);
 6009
 6010    HRESULT (STDMETHODCALLTYPE *get_item)(
 6011        IXMLDOMNamedNodeMap *This,
 6012        LONG lIndex,
 6013        IXMLDOMNode **outNode);
 6014
 6015    HRESULT (STDMETHODCALLTYPE *get_length)(
 6016        IXMLDOMNamedNodeMap *This,
 6017        LONG *lLength);
 6018
 6019    HRESULT (STDMETHODCALLTYPE *getQualifiedItem)(
 6020        IXMLDOMNamedNodeMap *This,
 6021        BSTR name,
 6022        BSTR uri,
 6023        IXMLDOMNode **outNode);
 6024
 6025    HRESULT (STDMETHODCALLTYPE *removeQualifiedItem)(
 6026        IXMLDOMNamedNodeMap *This,
 6027        BSTR name,
 6028        BSTR uri,
 6029        IXMLDOMNode **outNode);
 6030
 6031    HRESULT (STDMETHODCALLTYPE *nextNode)(
 6032        IXMLDOMNamedNodeMap *This,
 6033        IXMLDOMNode **outNode);
 6034
 6035    HRESULT (STDMETHODCALLTYPE *reset)(
 6036        IXMLDOMNamedNodeMap *This);
 6037
 6038    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
 6039        IXMLDOMNamedNodeMap *This,
 6040        IUnknown **ppUnk);
 6041
 6042    END_INTERFACE
 6043} IXMLDOMNamedNodeMapVtbl;
 6044
 6045interface IXMLDOMNamedNodeMap {
 6046    CONST_VTBL IXMLDOMNamedNodeMapVtbl* lpVtbl;
 6047};
 6048
 6049#ifdef COBJMACROS
 6050#ifndef WIDL_C_INLINE_WRAPPERS
 6051/*** IUnknown methods ***/
 6052#define IXMLDOMNamedNodeMap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6053#define IXMLDOMNamedNodeMap_AddRef(This) (This)->lpVtbl->AddRef(This)
 6054#define IXMLDOMNamedNodeMap_Release(This) (This)->lpVtbl->Release(This)
 6055/*** IDispatch methods ***/
 6056#define IXMLDOMNamedNodeMap_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6057#define IXMLDOMNamedNodeMap_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6058#define IXMLDOMNamedNodeMap_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6059#define IXMLDOMNamedNodeMap_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6060/*** IXMLDOMNamedNodeMap methods ***/
 6061#define IXMLDOMNamedNodeMap_getNamedItem(This,p,outNode) (This)->lpVtbl->getNamedItem(This,p,outNode)
 6062#define IXMLDOMNamedNodeMap_setNamedItem(This,newNode,outNode) (This)->lpVtbl->setNamedItem(This,newNode,outNode)
 6063#define IXMLDOMNamedNodeMap_removeNamedItem(This,p,outNode) (This)->lpVtbl->removeNamedItem(This,p,outNode)
 6064#define IXMLDOMNamedNodeMap_get_item(This,lIndex,outNode) (This)->lpVtbl->get_item(This,lIndex,outNode)
 6065#define IXMLDOMNamedNodeMap_get_length(This,lLength) (This)->lpVtbl->get_length(This,lLength)
 6066#define IXMLDOMNamedNodeMap_getQualifiedItem(This,name,uri,outNode) (This)->lpVtbl->getQualifiedItem(This,name,uri,outNode)
 6067#define IXMLDOMNamedNodeMap_removeQualifiedItem(This,name,uri,outNode) (This)->lpVtbl->removeQualifiedItem(This,name,uri,outNode)
 6068#define IXMLDOMNamedNodeMap_nextNode(This,outNode) (This)->lpVtbl->nextNode(This,outNode)
 6069#define IXMLDOMNamedNodeMap_reset(This) (This)->lpVtbl->reset(This)
 6070#define IXMLDOMNamedNodeMap_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
 6071#else
 6072/*** IUnknown methods ***/
 6073static inline HRESULT IXMLDOMNamedNodeMap_QueryInterface(IXMLDOMNamedNodeMap* This,REFIID riid,void **ppvObject) {
 6074    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6075}
 6076static inline ULONG IXMLDOMNamedNodeMap_AddRef(IXMLDOMNamedNodeMap* This) {
 6077    return This->lpVtbl->AddRef(This);
 6078}
 6079static inline ULONG IXMLDOMNamedNodeMap_Release(IXMLDOMNamedNodeMap* This) {
 6080    return This->lpVtbl->Release(This);
 6081}
 6082/*** IDispatch methods ***/
 6083static inline HRESULT IXMLDOMNamedNodeMap_GetTypeInfoCount(IXMLDOMNamedNodeMap* This,UINT *pctinfo) {
 6084    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6085}
 6086static inline HRESULT IXMLDOMNamedNodeMap_GetTypeInfo(IXMLDOMNamedNodeMap* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6087    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6088}
 6089static inline HRESULT IXMLDOMNamedNodeMap_GetIDsOfNames(IXMLDOMNamedNodeMap* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6090    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6091}
 6092static inline HRESULT IXMLDOMNamedNodeMap_Invoke(IXMLDOMNamedNodeMap* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6093    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6094}
 6095/*** IXMLDOMNamedNodeMap methods ***/
 6096static inline HRESULT IXMLDOMNamedNodeMap_getNamedItem(IXMLDOMNamedNodeMap* This,BSTR p,IXMLDOMNode **outNode) {
 6097    return This->lpVtbl->getNamedItem(This,p,outNode);
 6098}
 6099static inline HRESULT IXMLDOMNamedNodeMap_setNamedItem(IXMLDOMNamedNodeMap* This,IXMLDOMNode *newNode,IXMLDOMNode **outNode) {
 6100    return This->lpVtbl->setNamedItem(This,newNode,outNode);
 6101}
 6102static inline HRESULT IXMLDOMNamedNodeMap_removeNamedItem(IXMLDOMNamedNodeMap* This,BSTR p,IXMLDOMNode **outNode) {
 6103    return This->lpVtbl->removeNamedItem(This,p,outNode);
 6104}
 6105static inline HRESULT IXMLDOMNamedNodeMap_get_item(IXMLDOMNamedNodeMap* This,LONG lIndex,IXMLDOMNode **outNode) {
 6106    return This->lpVtbl->get_item(This,lIndex,outNode);
 6107}
 6108static inline HRESULT IXMLDOMNamedNodeMap_get_length(IXMLDOMNamedNodeMap* This,LONG *lLength) {
 6109    return This->lpVtbl->get_length(This,lLength);
 6110}
 6111static inline HRESULT IXMLDOMNamedNodeMap_getQualifiedItem(IXMLDOMNamedNodeMap* This,BSTR name,BSTR uri,IXMLDOMNode **outNode) {
 6112    return This->lpVtbl->getQualifiedItem(This,name,uri,outNode);
 6113}
 6114static inline HRESULT IXMLDOMNamedNodeMap_removeQualifiedItem(IXMLDOMNamedNodeMap* This,BSTR name,BSTR uri,IXMLDOMNode **outNode) {
 6115    return This->lpVtbl->removeQualifiedItem(This,name,uri,outNode);
 6116}
 6117static inline HRESULT IXMLDOMNamedNodeMap_nextNode(IXMLDOMNamedNodeMap* This,IXMLDOMNode **outNode) {
 6118    return This->lpVtbl->nextNode(This,outNode);
 6119}
 6120static inline HRESULT IXMLDOMNamedNodeMap_reset(IXMLDOMNamedNodeMap* This) {
 6121    return This->lpVtbl->reset(This);
 6122}
 6123static inline HRESULT IXMLDOMNamedNodeMap_get__newEnum(IXMLDOMNamedNodeMap* This,IUnknown **ppUnk) {
 6124    return This->lpVtbl->get__newEnum(This,ppUnk);
 6125}
 6126#endif
 6127#endif
 6128
 6129#endif
 6130
 6131
 6132#endif  /* __IXMLDOMNamedNodeMap_INTERFACE_DEFINED__ */
 6133
 6134/*****************************************************************************
 6135 * IXMLDOMDocumentFragment interface
 6136 */
 6137#ifndef __IXMLDOMDocumentFragment_INTERFACE_DEFINED__
 6138#define __IXMLDOMDocumentFragment_INTERFACE_DEFINED__
 6139
 6140DEFINE_GUID(IID_IXMLDOMDocumentFragment, 0x3efaa413, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
 6141#if defined(__cplusplus) && !defined(CINTERFACE)
 6142MIDL_INTERFACE("3efaa413-272f-11d2-836f-0000f87a7782")
 6143IXMLDOMDocumentFragment : public IXMLDOMNode
 6144{
 6145};
 6146#ifdef __CRT_UUID_DECL
 6147__CRT_UUID_DECL(IXMLDOMDocumentFragment, 0x3efaa413, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
 6148#endif
 6149#else
 6150typedef struct IXMLDOMDocumentFragmentVtbl {
 6151    BEGIN_INTERFACE
 6152
 6153    /*** IUnknown methods ***/
 6154    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6155        IXMLDOMDocumentFragment *This,
 6156        REFIID riid,
 6157        void **ppvObject);
 6158
 6159    ULONG (STDMETHODCALLTYPE *AddRef)(
 6160        IXMLDOMDocumentFragment *This);
 6161
 6162    ULONG (STDMETHODCALLTYPE *Release)(
 6163        IXMLDOMDocumentFragment *This);
 6164
 6165    /*** IDispatch methods ***/
 6166    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6167        IXMLDOMDocumentFragment *This,
 6168        UINT *pctinfo);
 6169
 6170    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6171        IXMLDOMDocumentFragment *This,
 6172        UINT iTInfo,
 6173        LCID lcid,
 6174        ITypeInfo **ppTInfo);
 6175
 6176    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6177        IXMLDOMDocumentFragment *This,
 6178        REFIID riid,
 6179        LPOLESTR *rgszNames,
 6180        UINT cNames,
 6181        LCID lcid,
 6182        DISPID *rgDispId);
 6183
 6184    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6185        IXMLDOMDocumentFragment *This,
 6186        DISPID dispIdMember,
 6187        REFIID riid,
 6188        LCID lcid,
 6189        WORD wFlags,
 6190        DISPPARAMS *pDispParams,
 6191        VARIANT *pVarResult,
 6192        EXCEPINFO *pExcepInfo,
 6193        UINT *puArgErr);
 6194
 6195    /*** IXMLDOMNode methods ***/
 6196    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 6197        IXMLDOMDocumentFragment *This,
 6198        BSTR *p);
 6199
 6200    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 6201        IXMLDOMDocumentFragment *This,
 6202        VARIANT *var1);
 6203
 6204    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 6205        IXMLDOMDocumentFragment *This,
 6206        VARIANT var1);
 6207
 6208    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 6209        IXMLDOMDocumentFragment *This,
 6210        DOMNodeType *domNodeType);
 6211
 6212    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 6213        IXMLDOMDocumentFragment *This,
 6214        IXMLDOMNode **parent);
 6215
 6216    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 6217        IXMLDOMDocumentFragment *This,
 6218        IXMLDOMNodeList **outList);
 6219
 6220    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 6221        IXMLDOMDocumentFragment *This,
 6222        IXMLDOMNode **domNode);
 6223
 6224    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 6225        IXMLDOMDocumentFragment *This,
 6226        IXMLDOMNode **domNode);
 6227
 6228    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 6229        IXMLDOMDocumentFragment *This,
 6230        IXMLDOMNode **domNode);
 6231
 6232    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 6233        IXMLDOMDocumentFragment *This,
 6234        IXMLDOMNode **domNode);
 6235
 6236    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 6237        IXMLDOMDocumentFragment *This,
 6238        IXMLDOMNamedNodeMap **attributeMap);
 6239
 6240    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 6241        IXMLDOMDocumentFragment *This,
 6242        IXMLDOMNode *newNode,
 6243        VARIANT var1,
 6244        IXMLDOMNode **outOldNode);
 6245
 6246    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 6247        IXMLDOMDocumentFragment *This,
 6248        IXMLDOMNode *newNode,
 6249        IXMLDOMNode *oldNode,
 6250        IXMLDOMNode **outOldNode);
 6251
 6252    HRESULT (STDMETHODCALLTYPE *removeChild)(
 6253        IXMLDOMDocumentFragment *This,
 6254        IXMLDOMNode *domNode,
 6255        IXMLDOMNode **oldNode);
 6256
 6257    HRESULT (STDMETHODCALLTYPE *appendChild)(
 6258        IXMLDOMDocumentFragment *This,
 6259        IXMLDOMNode *newNode,
 6260        IXMLDOMNode **outNewNode);
 6261
 6262    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 6263        IXMLDOMDocumentFragment *This,
 6264        VARIANT_BOOL *pbool);
 6265
 6266    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 6267        IXMLDOMDocumentFragment *This,
 6268        IXMLDOMDocument **domDocument);
 6269
 6270    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 6271        IXMLDOMDocumentFragment *This,
 6272        VARIANT_BOOL pbool,
 6273        IXMLDOMNode **outNode);
 6274
 6275    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 6276        IXMLDOMDocumentFragment *This,
 6277        BSTR *p);
 6278
 6279    HRESULT (STDMETHODCALLTYPE *get_text)(
 6280        IXMLDOMDocumentFragment *This,
 6281        BSTR *p);
 6282
 6283    HRESULT (STDMETHODCALLTYPE *put_text)(
 6284        IXMLDOMDocumentFragment *This,
 6285        BSTR p);
 6286
 6287    HRESULT (STDMETHODCALLTYPE *get_specified)(
 6288        IXMLDOMDocumentFragment *This,
 6289        VARIANT_BOOL *pbool);
 6290
 6291    HRESULT (STDMETHODCALLTYPE *get_definition)(
 6292        IXMLDOMDocumentFragment *This,
 6293        IXMLDOMNode **domNode);
 6294
 6295    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 6296        IXMLDOMDocumentFragment *This,
 6297        VARIANT *var1);
 6298
 6299    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 6300        IXMLDOMDocumentFragment *This,
 6301        VARIANT var1);
 6302
 6303    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 6304        IXMLDOMDocumentFragment *This,
 6305        VARIANT *var1);
 6306
 6307    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 6308        IXMLDOMDocumentFragment *This,
 6309        BSTR p);
 6310
 6311    HRESULT (STDMETHODCALLTYPE *get_xml)(
 6312        IXMLDOMDocumentFragment *This,
 6313        BSTR *p);
 6314
 6315    HRESULT (STDMETHODCALLTYPE *transformNode)(
 6316        IXMLDOMDocumentFragment *This,
 6317        IXMLDOMNode *domNode,
 6318        BSTR *p);
 6319
 6320    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 6321        IXMLDOMDocumentFragment *This,
 6322        BSTR p,
 6323        IXMLDOMNodeList **outList);
 6324
 6325    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 6326        IXMLDOMDocumentFragment *This,
 6327        BSTR p,
 6328        IXMLDOMNode **outNode);
 6329
 6330    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 6331        IXMLDOMDocumentFragment *This,
 6332        VARIANT_BOOL *pbool);
 6333
 6334    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 6335        IXMLDOMDocumentFragment *This,
 6336        BSTR *p);
 6337
 6338    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 6339        IXMLDOMDocumentFragment *This,
 6340        BSTR *p);
 6341
 6342    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 6343        IXMLDOMDocumentFragment *This,
 6344        BSTR *p);
 6345
 6346    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 6347        IXMLDOMDocumentFragment *This,
 6348        IXMLDOMNode *domNode,
 6349        VARIANT var1);
 6350
 6351    END_INTERFACE
 6352} IXMLDOMDocumentFragmentVtbl;
 6353
 6354interface IXMLDOMDocumentFragment {
 6355    CONST_VTBL IXMLDOMDocumentFragmentVtbl* lpVtbl;
 6356};
 6357
 6358#ifdef COBJMACROS
 6359#ifndef WIDL_C_INLINE_WRAPPERS
 6360/*** IUnknown methods ***/
 6361#define IXMLDOMDocumentFragment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6362#define IXMLDOMDocumentFragment_AddRef(This) (This)->lpVtbl->AddRef(This)
 6363#define IXMLDOMDocumentFragment_Release(This) (This)->lpVtbl->Release(This)
 6364/*** IDispatch methods ***/
 6365#define IXMLDOMDocumentFragment_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6366#define IXMLDOMDocumentFragment_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6367#define IXMLDOMDocumentFragment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6368#define IXMLDOMDocumentFragment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6369/*** IXMLDOMNode methods ***/
 6370#define IXMLDOMDocumentFragment_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 6371#define IXMLDOMDocumentFragment_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 6372#define IXMLDOMDocumentFragment_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 6373#define IXMLDOMDocumentFragment_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 6374#define IXMLDOMDocumentFragment_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 6375#define IXMLDOMDocumentFragment_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 6376#define IXMLDOMDocumentFragment_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 6377#define IXMLDOMDocumentFragment_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 6378#define IXMLDOMDocumentFragment_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 6379#define IXMLDOMDocumentFragment_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 6380#define IXMLDOMDocumentFragment_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 6381#define IXMLDOMDocumentFragment_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 6382#define IXMLDOMDocumentFragment_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 6383#define IXMLDOMDocumentFragment_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 6384#define IXMLDOMDocumentFragment_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 6385#define IXMLDOMDocumentFragment_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 6386#define IXMLDOMDocumentFragment_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 6387#define IXMLDOMDocumentFragment_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 6388#define IXMLDOMDocumentFragment_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 6389#define IXMLDOMDocumentFragment_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 6390#define IXMLDOMDocumentFragment_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 6391#define IXMLDOMDocumentFragment_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 6392#define IXMLDOMDocumentFragment_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 6393#define IXMLDOMDocumentFragment_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 6394#define IXMLDOMDocumentFragment_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 6395#define IXMLDOMDocumentFragment_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 6396#define IXMLDOMDocumentFragment_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 6397#define IXMLDOMDocumentFragment_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 6398#define IXMLDOMDocumentFragment_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 6399#define IXMLDOMDocumentFragment_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 6400#define IXMLDOMDocumentFragment_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 6401#define IXMLDOMDocumentFragment_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 6402#define IXMLDOMDocumentFragment_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 6403#define IXMLDOMDocumentFragment_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 6404#define IXMLDOMDocumentFragment_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 6405#define IXMLDOMDocumentFragment_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 6406#else
 6407/*** IUnknown methods ***/
 6408static inline HRESULT IXMLDOMDocumentFragment_QueryInterface(IXMLDOMDocumentFragment* This,REFIID riid,void **ppvObject) {
 6409    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6410}
 6411static inline ULONG IXMLDOMDocumentFragment_AddRef(IXMLDOMDocumentFragment* This) {
 6412    return This->lpVtbl->AddRef(This);
 6413}
 6414static inline ULONG IXMLDOMDocumentFragment_Release(IXMLDOMDocumentFragment* This) {
 6415    return This->lpVtbl->Release(This);
 6416}
 6417/*** IDispatch methods ***/
 6418static inline HRESULT IXMLDOMDocumentFragment_GetTypeInfoCount(IXMLDOMDocumentFragment* This,UINT *pctinfo) {
 6419    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6420}
 6421static inline HRESULT IXMLDOMDocumentFragment_GetTypeInfo(IXMLDOMDocumentFragment* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6422    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6423}
 6424static inline HRESULT IXMLDOMDocumentFragment_GetIDsOfNames(IXMLDOMDocumentFragment* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6425    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6426}
 6427static inline HRESULT IXMLDOMDocumentFragment_Invoke(IXMLDOMDocumentFragment* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6428    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6429}
 6430/*** IXMLDOMNode methods ***/
 6431static inline HRESULT IXMLDOMDocumentFragment_get_nodeName(IXMLDOMDocumentFragment* This,BSTR *p) {
 6432    return This->lpVtbl->get_nodeName(This,p);
 6433}
 6434static inline HRESULT IXMLDOMDocumentFragment_get_nodeValue(IXMLDOMDocumentFragment* This,VARIANT *var1) {
 6435    return This->lpVtbl->get_nodeValue(This,var1);
 6436}
 6437static inline HRESULT IXMLDOMDocumentFragment_put_nodeValue(IXMLDOMDocumentFragment* This,VARIANT var1) {
 6438    return This->lpVtbl->put_nodeValue(This,var1);
 6439}
 6440static inline HRESULT IXMLDOMDocumentFragment_get_nodeType(IXMLDOMDocumentFragment* This,DOMNodeType *domNodeType) {
 6441    return This->lpVtbl->get_nodeType(This,domNodeType);
 6442}
 6443static inline HRESULT IXMLDOMDocumentFragment_get_parentNode(IXMLDOMDocumentFragment* This,IXMLDOMNode **parent) {
 6444    return This->lpVtbl->get_parentNode(This,parent);
 6445}
 6446static inline HRESULT IXMLDOMDocumentFragment_get_childNodes(IXMLDOMDocumentFragment* This,IXMLDOMNodeList **outList) {
 6447    return This->lpVtbl->get_childNodes(This,outList);
 6448}
 6449static inline HRESULT IXMLDOMDocumentFragment_get_firstChild(IXMLDOMDocumentFragment* This,IXMLDOMNode **domNode) {
 6450    return This->lpVtbl->get_firstChild(This,domNode);
 6451}
 6452static inline HRESULT IXMLDOMDocumentFragment_get_lastChild(IXMLDOMDocumentFragment* This,IXMLDOMNode **domNode) {
 6453    return This->lpVtbl->get_lastChild(This,domNode);
 6454}
 6455static inline HRESULT IXMLDOMDocumentFragment_get_previousSibling(IXMLDOMDocumentFragment* This,IXMLDOMNode **domNode) {
 6456    return This->lpVtbl->get_previousSibling(This,domNode);
 6457}
 6458static inline HRESULT IXMLDOMDocumentFragment_get_nextSibling(IXMLDOMDocumentFragment* This,IXMLDOMNode **domNode) {
 6459    return This->lpVtbl->get_nextSibling(This,domNode);
 6460}
 6461static inline HRESULT IXMLDOMDocumentFragment_get_attributes(IXMLDOMDocumentFragment* This,IXMLDOMNamedNodeMap **attributeMap) {
 6462    return This->lpVtbl->get_attributes(This,attributeMap);
 6463}
 6464static inline HRESULT IXMLDOMDocumentFragment_insertBefore(IXMLDOMDocumentFragment* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 6465    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 6466}
 6467static inline HRESULT IXMLDOMDocumentFragment_replaceChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 6468    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 6469}
 6470static inline HRESULT IXMLDOMDocumentFragment_removeChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 6471    return This->lpVtbl->removeChild(This,domNode,oldNode);
 6472}
 6473static inline HRESULT IXMLDOMDocumentFragment_appendChild(IXMLDOMDocumentFragment* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 6474    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 6475}
 6476static inline HRESULT IXMLDOMDocumentFragment_hasChildNodes(IXMLDOMDocumentFragment* This,VARIANT_BOOL *pbool) {
 6477    return This->lpVtbl->hasChildNodes(This,pbool);
 6478}
 6479static inline HRESULT IXMLDOMDocumentFragment_get_ownerDocument(IXMLDOMDocumentFragment* This,IXMLDOMDocument **domDocument) {
 6480    return This->lpVtbl->get_ownerDocument(This,domDocument);
 6481}
 6482static inline HRESULT IXMLDOMDocumentFragment_cloneNode(IXMLDOMDocumentFragment* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 6483    return This->lpVtbl->cloneNode(This,pbool,outNode);
 6484}
 6485static inline HRESULT IXMLDOMDocumentFragment_get_nodeTypeString(IXMLDOMDocumentFragment* This,BSTR *p) {
 6486    return This->lpVtbl->get_nodeTypeString(This,p);
 6487}
 6488static inline HRESULT IXMLDOMDocumentFragment_get_text(IXMLDOMDocumentFragment* This,BSTR *p) {
 6489    return This->lpVtbl->get_text(This,p);
 6490}
 6491static inline HRESULT IXMLDOMDocumentFragment_put_text(IXMLDOMDocumentFragment* This,BSTR p) {
 6492    return This->lpVtbl->put_text(This,p);
 6493}
 6494static inline HRESULT IXMLDOMDocumentFragment_get_specified(IXMLDOMDocumentFragment* This,VARIANT_BOOL *pbool) {
 6495    return This->lpVtbl->get_specified(This,pbool);
 6496}
 6497static inline HRESULT IXMLDOMDocumentFragment_get_definition(IXMLDOMDocumentFragment* This,IXMLDOMNode **domNode) {
 6498    return This->lpVtbl->get_definition(This,domNode);
 6499}
 6500static inline HRESULT IXMLDOMDocumentFragment_get_nodeTypedValue(IXMLDOMDocumentFragment* This,VARIANT *var1) {
 6501    return This->lpVtbl->get_nodeTypedValue(This,var1);
 6502}
 6503static inline HRESULT IXMLDOMDocumentFragment_put_nodeTypedValue(IXMLDOMDocumentFragment* This,VARIANT var1) {
 6504    return This->lpVtbl->put_nodeTypedValue(This,var1);
 6505}
 6506static inline HRESULT IXMLDOMDocumentFragment_get_dataType(IXMLDOMDocumentFragment* This,VARIANT *var1) {
 6507    return This->lpVtbl->get_dataType(This,var1);
 6508}
 6509static inline HRESULT IXMLDOMDocumentFragment_put_dataType(IXMLDOMDocumentFragment* This,BSTR p) {
 6510    return This->lpVtbl->put_dataType(This,p);
 6511}
 6512static inline HRESULT IXMLDOMDocumentFragment_get_xml(IXMLDOMDocumentFragment* This,BSTR *p) {
 6513    return This->lpVtbl->get_xml(This,p);
 6514}
 6515static inline HRESULT IXMLDOMDocumentFragment_transformNode(IXMLDOMDocumentFragment* This,IXMLDOMNode *domNode,BSTR *p) {
 6516    return This->lpVtbl->transformNode(This,domNode,p);
 6517}
 6518static inline HRESULT IXMLDOMDocumentFragment_selectNodes(IXMLDOMDocumentFragment* This,BSTR p,IXMLDOMNodeList **outList) {
 6519    return This->lpVtbl->selectNodes(This,p,outList);
 6520}
 6521static inline HRESULT IXMLDOMDocumentFragment_selectSingleNode(IXMLDOMDocumentFragment* This,BSTR p,IXMLDOMNode **outNode) {
 6522    return This->lpVtbl->selectSingleNode(This,p,outNode);
 6523}
 6524static inline HRESULT IXMLDOMDocumentFragment_get_parsed(IXMLDOMDocumentFragment* This,VARIANT_BOOL *pbool) {
 6525    return This->lpVtbl->get_parsed(This,pbool);
 6526}
 6527static inline HRESULT IXMLDOMDocumentFragment_get_namespaceURI(IXMLDOMDocumentFragment* This,BSTR *p) {
 6528    return This->lpVtbl->get_namespaceURI(This,p);
 6529}
 6530static inline HRESULT IXMLDOMDocumentFragment_get_prefix(IXMLDOMDocumentFragment* This,BSTR *p) {
 6531    return This->lpVtbl->get_prefix(This,p);
 6532}
 6533static inline HRESULT IXMLDOMDocumentFragment_get_baseName(IXMLDOMDocumentFragment* This,BSTR *p) {
 6534    return This->lpVtbl->get_baseName(This,p);
 6535}
 6536static inline HRESULT IXMLDOMDocumentFragment_transformNodeToObject(IXMLDOMDocumentFragment* This,IXMLDOMNode *domNode,VARIANT var1) {
 6537    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 6538}
 6539#endif
 6540#endif
 6541
 6542#endif
 6543
 6544
 6545#endif  /* __IXMLDOMDocumentFragment_INTERFACE_DEFINED__ */
 6546
 6547/*****************************************************************************
 6548 * IXMLDOMCharacterData interface
 6549 */
 6550#ifndef __IXMLDOMCharacterData_INTERFACE_DEFINED__
 6551#define __IXMLDOMCharacterData_INTERFACE_DEFINED__
 6552
 6553DEFINE_GUID(IID_IXMLDOMCharacterData, 0x2933bf84, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 6554#if defined(__cplusplus) && !defined(CINTERFACE)
 6555MIDL_INTERFACE("2933bf84-7b36-11d2-b20e-00c04f983e60")
 6556IXMLDOMCharacterData : public IXMLDOMNode
 6557{
 6558    virtual HRESULT STDMETHODCALLTYPE get_data(
 6559        BSTR *p) = 0;
 6560
 6561    virtual HRESULT STDMETHODCALLTYPE put_data(
 6562        BSTR data) = 0;
 6563
 6564    virtual HRESULT STDMETHODCALLTYPE get_length(
 6565        LONG *len) = 0;
 6566
 6567    virtual HRESULT STDMETHODCALLTYPE substringData(
 6568        LONG offset,
 6569        LONG count,
 6570        BSTR *p) = 0;
 6571
 6572    virtual HRESULT STDMETHODCALLTYPE appendData(
 6573        BSTR p) = 0;
 6574
 6575    virtual HRESULT STDMETHODCALLTYPE insertData(
 6576        LONG offset,
 6577        BSTR p) = 0;
 6578
 6579    virtual HRESULT STDMETHODCALLTYPE deleteData(
 6580        LONG offset,
 6581        LONG count) = 0;
 6582
 6583    virtual HRESULT STDMETHODCALLTYPE replaceData(
 6584        LONG offset,
 6585        LONG count,
 6586        BSTR p) = 0;
 6587
 6588};
 6589#ifdef __CRT_UUID_DECL
 6590__CRT_UUID_DECL(IXMLDOMCharacterData, 0x2933bf84, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 6591#endif
 6592#else
 6593typedef struct IXMLDOMCharacterDataVtbl {
 6594    BEGIN_INTERFACE
 6595
 6596    /*** IUnknown methods ***/
 6597    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6598        IXMLDOMCharacterData *This,
 6599        REFIID riid,
 6600        void **ppvObject);
 6601
 6602    ULONG (STDMETHODCALLTYPE *AddRef)(
 6603        IXMLDOMCharacterData *This);
 6604
 6605    ULONG (STDMETHODCALLTYPE *Release)(
 6606        IXMLDOMCharacterData *This);
 6607
 6608    /*** IDispatch methods ***/
 6609    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6610        IXMLDOMCharacterData *This,
 6611        UINT *pctinfo);
 6612
 6613    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6614        IXMLDOMCharacterData *This,
 6615        UINT iTInfo,
 6616        LCID lcid,
 6617        ITypeInfo **ppTInfo);
 6618
 6619    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6620        IXMLDOMCharacterData *This,
 6621        REFIID riid,
 6622        LPOLESTR *rgszNames,
 6623        UINT cNames,
 6624        LCID lcid,
 6625        DISPID *rgDispId);
 6626
 6627    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6628        IXMLDOMCharacterData *This,
 6629        DISPID dispIdMember,
 6630        REFIID riid,
 6631        LCID lcid,
 6632        WORD wFlags,
 6633        DISPPARAMS *pDispParams,
 6634        VARIANT *pVarResult,
 6635        EXCEPINFO *pExcepInfo,
 6636        UINT *puArgErr);
 6637
 6638    /*** IXMLDOMNode methods ***/
 6639    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 6640        IXMLDOMCharacterData *This,
 6641        BSTR *p);
 6642
 6643    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 6644        IXMLDOMCharacterData *This,
 6645        VARIANT *var1);
 6646
 6647    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 6648        IXMLDOMCharacterData *This,
 6649        VARIANT var1);
 6650
 6651    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 6652        IXMLDOMCharacterData *This,
 6653        DOMNodeType *domNodeType);
 6654
 6655    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 6656        IXMLDOMCharacterData *This,
 6657        IXMLDOMNode **parent);
 6658
 6659    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 6660        IXMLDOMCharacterData *This,
 6661        IXMLDOMNodeList **outList);
 6662
 6663    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 6664        IXMLDOMCharacterData *This,
 6665        IXMLDOMNode **domNode);
 6666
 6667    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 6668        IXMLDOMCharacterData *This,
 6669        IXMLDOMNode **domNode);
 6670
 6671    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 6672        IXMLDOMCharacterData *This,
 6673        IXMLDOMNode **domNode);
 6674
 6675    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 6676        IXMLDOMCharacterData *This,
 6677        IXMLDOMNode **domNode);
 6678
 6679    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 6680        IXMLDOMCharacterData *This,
 6681        IXMLDOMNamedNodeMap **attributeMap);
 6682
 6683    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 6684        IXMLDOMCharacterData *This,
 6685        IXMLDOMNode *newNode,
 6686        VARIANT var1,
 6687        IXMLDOMNode **outOldNode);
 6688
 6689    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 6690        IXMLDOMCharacterData *This,
 6691        IXMLDOMNode *newNode,
 6692        IXMLDOMNode *oldNode,
 6693        IXMLDOMNode **outOldNode);
 6694
 6695    HRESULT (STDMETHODCALLTYPE *removeChild)(
 6696        IXMLDOMCharacterData *This,
 6697        IXMLDOMNode *domNode,
 6698        IXMLDOMNode **oldNode);
 6699
 6700    HRESULT (STDMETHODCALLTYPE *appendChild)(
 6701        IXMLDOMCharacterData *This,
 6702        IXMLDOMNode *newNode,
 6703        IXMLDOMNode **outNewNode);
 6704
 6705    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 6706        IXMLDOMCharacterData *This,
 6707        VARIANT_BOOL *pbool);
 6708
 6709    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 6710        IXMLDOMCharacterData *This,
 6711        IXMLDOMDocument **domDocument);
 6712
 6713    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 6714        IXMLDOMCharacterData *This,
 6715        VARIANT_BOOL pbool,
 6716        IXMLDOMNode **outNode);
 6717
 6718    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 6719        IXMLDOMCharacterData *This,
 6720        BSTR *p);
 6721
 6722    HRESULT (STDMETHODCALLTYPE *get_text)(
 6723        IXMLDOMCharacterData *This,
 6724        BSTR *p);
 6725
 6726    HRESULT (STDMETHODCALLTYPE *put_text)(
 6727        IXMLDOMCharacterData *This,
 6728        BSTR p);
 6729
 6730    HRESULT (STDMETHODCALLTYPE *get_specified)(
 6731        IXMLDOMCharacterData *This,
 6732        VARIANT_BOOL *pbool);
 6733
 6734    HRESULT (STDMETHODCALLTYPE *get_definition)(
 6735        IXMLDOMCharacterData *This,
 6736        IXMLDOMNode **domNode);
 6737
 6738    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 6739        IXMLDOMCharacterData *This,
 6740        VARIANT *var1);
 6741
 6742    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 6743        IXMLDOMCharacterData *This,
 6744        VARIANT var1);
 6745
 6746    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 6747        IXMLDOMCharacterData *This,
 6748        VARIANT *var1);
 6749
 6750    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 6751        IXMLDOMCharacterData *This,
 6752        BSTR p);
 6753
 6754    HRESULT (STDMETHODCALLTYPE *get_xml)(
 6755        IXMLDOMCharacterData *This,
 6756        BSTR *p);
 6757
 6758    HRESULT (STDMETHODCALLTYPE *transformNode)(
 6759        IXMLDOMCharacterData *This,
 6760        IXMLDOMNode *domNode,
 6761        BSTR *p);
 6762
 6763    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 6764        IXMLDOMCharacterData *This,
 6765        BSTR p,
 6766        IXMLDOMNodeList **outList);
 6767
 6768    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 6769        IXMLDOMCharacterData *This,
 6770        BSTR p,
 6771        IXMLDOMNode **outNode);
 6772
 6773    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 6774        IXMLDOMCharacterData *This,
 6775        VARIANT_BOOL *pbool);
 6776
 6777    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 6778        IXMLDOMCharacterData *This,
 6779        BSTR *p);
 6780
 6781    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 6782        IXMLDOMCharacterData *This,
 6783        BSTR *p);
 6784
 6785    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 6786        IXMLDOMCharacterData *This,
 6787        BSTR *p);
 6788
 6789    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 6790        IXMLDOMCharacterData *This,
 6791        IXMLDOMNode *domNode,
 6792        VARIANT var1);
 6793
 6794    /*** IXMLDOMCharacterData methods ***/
 6795    HRESULT (STDMETHODCALLTYPE *get_data)(
 6796        IXMLDOMCharacterData *This,
 6797        BSTR *p);
 6798
 6799    HRESULT (STDMETHODCALLTYPE *put_data)(
 6800        IXMLDOMCharacterData *This,
 6801        BSTR data);
 6802
 6803    HRESULT (STDMETHODCALLTYPE *get_length)(
 6804        IXMLDOMCharacterData *This,
 6805        LONG *len);
 6806
 6807    HRESULT (STDMETHODCALLTYPE *substringData)(
 6808        IXMLDOMCharacterData *This,
 6809        LONG offset,
 6810        LONG count,
 6811        BSTR *p);
 6812
 6813    HRESULT (STDMETHODCALLTYPE *appendData)(
 6814        IXMLDOMCharacterData *This,
 6815        BSTR p);
 6816
 6817    HRESULT (STDMETHODCALLTYPE *insertData)(
 6818        IXMLDOMCharacterData *This,
 6819        LONG offset,
 6820        BSTR p);
 6821
 6822    HRESULT (STDMETHODCALLTYPE *deleteData)(
 6823        IXMLDOMCharacterData *This,
 6824        LONG offset,
 6825        LONG count);
 6826
 6827    HRESULT (STDMETHODCALLTYPE *replaceData)(
 6828        IXMLDOMCharacterData *This,
 6829        LONG offset,
 6830        LONG count,
 6831        BSTR p);
 6832
 6833    END_INTERFACE
 6834} IXMLDOMCharacterDataVtbl;
 6835
 6836interface IXMLDOMCharacterData {
 6837    CONST_VTBL IXMLDOMCharacterDataVtbl* lpVtbl;
 6838};
 6839
 6840#ifdef COBJMACROS
 6841#ifndef WIDL_C_INLINE_WRAPPERS
 6842/*** IUnknown methods ***/
 6843#define IXMLDOMCharacterData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6844#define IXMLDOMCharacterData_AddRef(This) (This)->lpVtbl->AddRef(This)
 6845#define IXMLDOMCharacterData_Release(This) (This)->lpVtbl->Release(This)
 6846/*** IDispatch methods ***/
 6847#define IXMLDOMCharacterData_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6848#define IXMLDOMCharacterData_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6849#define IXMLDOMCharacterData_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6850#define IXMLDOMCharacterData_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6851/*** IXMLDOMNode methods ***/
 6852#define IXMLDOMCharacterData_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 6853#define IXMLDOMCharacterData_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 6854#define IXMLDOMCharacterData_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 6855#define IXMLDOMCharacterData_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 6856#define IXMLDOMCharacterData_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 6857#define IXMLDOMCharacterData_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 6858#define IXMLDOMCharacterData_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 6859#define IXMLDOMCharacterData_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 6860#define IXMLDOMCharacterData_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 6861#define IXMLDOMCharacterData_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 6862#define IXMLDOMCharacterData_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 6863#define IXMLDOMCharacterData_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 6864#define IXMLDOMCharacterData_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 6865#define IXMLDOMCharacterData_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 6866#define IXMLDOMCharacterData_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 6867#define IXMLDOMCharacterData_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 6868#define IXMLDOMCharacterData_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 6869#define IXMLDOMCharacterData_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 6870#define IXMLDOMCharacterData_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 6871#define IXMLDOMCharacterData_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 6872#define IXMLDOMCharacterData_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 6873#define IXMLDOMCharacterData_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 6874#define IXMLDOMCharacterData_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 6875#define IXMLDOMCharacterData_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 6876#define IXMLDOMCharacterData_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 6877#define IXMLDOMCharacterData_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 6878#define IXMLDOMCharacterData_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 6879#define IXMLDOMCharacterData_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 6880#define IXMLDOMCharacterData_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 6881#define IXMLDOMCharacterData_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 6882#define IXMLDOMCharacterData_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 6883#define IXMLDOMCharacterData_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 6884#define IXMLDOMCharacterData_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 6885#define IXMLDOMCharacterData_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 6886#define IXMLDOMCharacterData_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 6887#define IXMLDOMCharacterData_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 6888/*** IXMLDOMCharacterData methods ***/
 6889#define IXMLDOMCharacterData_get_data(This,p) (This)->lpVtbl->get_data(This,p)
 6890#define IXMLDOMCharacterData_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 6891#define IXMLDOMCharacterData_get_length(This,len) (This)->lpVtbl->get_length(This,len)
 6892#define IXMLDOMCharacterData_substringData(This,offset,count,p) (This)->lpVtbl->substringData(This,offset,count,p)
 6893#define IXMLDOMCharacterData_appendData(This,p) (This)->lpVtbl->appendData(This,p)
 6894#define IXMLDOMCharacterData_insertData(This,offset,p) (This)->lpVtbl->insertData(This,offset,p)
 6895#define IXMLDOMCharacterData_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 6896#define IXMLDOMCharacterData_replaceData(This,offset,count,p) (This)->lpVtbl->replaceData(This,offset,count,p)
 6897#else
 6898/*** IUnknown methods ***/
 6899static inline HRESULT IXMLDOMCharacterData_QueryInterface(IXMLDOMCharacterData* This,REFIID riid,void **ppvObject) {
 6900    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6901}
 6902static inline ULONG IXMLDOMCharacterData_AddRef(IXMLDOMCharacterData* This) {
 6903    return This->lpVtbl->AddRef(This);
 6904}
 6905static inline ULONG IXMLDOMCharacterData_Release(IXMLDOMCharacterData* This) {
 6906    return This->lpVtbl->Release(This);
 6907}
 6908/*** IDispatch methods ***/
 6909static inline HRESULT IXMLDOMCharacterData_GetTypeInfoCount(IXMLDOMCharacterData* This,UINT *pctinfo) {
 6910    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6911}
 6912static inline HRESULT IXMLDOMCharacterData_GetTypeInfo(IXMLDOMCharacterData* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6913    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6914}
 6915static inline HRESULT IXMLDOMCharacterData_GetIDsOfNames(IXMLDOMCharacterData* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6916    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6917}
 6918static inline HRESULT IXMLDOMCharacterData_Invoke(IXMLDOMCharacterData* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6919    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6920}
 6921/*** IXMLDOMNode methods ***/
 6922static inline HRESULT IXMLDOMCharacterData_get_nodeName(IXMLDOMCharacterData* This,BSTR *p) {
 6923    return This->lpVtbl->get_nodeName(This,p);
 6924}
 6925static inline HRESULT IXMLDOMCharacterData_get_nodeValue(IXMLDOMCharacterData* This,VARIANT *var1) {
 6926    return This->lpVtbl->get_nodeValue(This,var1);
 6927}
 6928static inline HRESULT IXMLDOMCharacterData_put_nodeValue(IXMLDOMCharacterData* This,VARIANT var1) {
 6929    return This->lpVtbl->put_nodeValue(This,var1);
 6930}
 6931static inline HRESULT IXMLDOMCharacterData_get_nodeType(IXMLDOMCharacterData* This,DOMNodeType *domNodeType) {
 6932    return This->lpVtbl->get_nodeType(This,domNodeType);
 6933}
 6934static inline HRESULT IXMLDOMCharacterData_get_parentNode(IXMLDOMCharacterData* This,IXMLDOMNode **parent) {
 6935    return This->lpVtbl->get_parentNode(This,parent);
 6936}
 6937static inline HRESULT IXMLDOMCharacterData_get_childNodes(IXMLDOMCharacterData* This,IXMLDOMNodeList **outList) {
 6938    return This->lpVtbl->get_childNodes(This,outList);
 6939}
 6940static inline HRESULT IXMLDOMCharacterData_get_firstChild(IXMLDOMCharacterData* This,IXMLDOMNode **domNode) {
 6941    return This->lpVtbl->get_firstChild(This,domNode);
 6942}
 6943static inline HRESULT IXMLDOMCharacterData_get_lastChild(IXMLDOMCharacterData* This,IXMLDOMNode **domNode) {
 6944    return This->lpVtbl->get_lastChild(This,domNode);
 6945}
 6946static inline HRESULT IXMLDOMCharacterData_get_previousSibling(IXMLDOMCharacterData* This,IXMLDOMNode **domNode) {
 6947    return This->lpVtbl->get_previousSibling(This,domNode);
 6948}
 6949static inline HRESULT IXMLDOMCharacterData_get_nextSibling(IXMLDOMCharacterData* This,IXMLDOMNode **domNode) {
 6950    return This->lpVtbl->get_nextSibling(This,domNode);
 6951}
 6952static inline HRESULT IXMLDOMCharacterData_get_attributes(IXMLDOMCharacterData* This,IXMLDOMNamedNodeMap **attributeMap) {
 6953    return This->lpVtbl->get_attributes(This,attributeMap);
 6954}
 6955static inline HRESULT IXMLDOMCharacterData_insertBefore(IXMLDOMCharacterData* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 6956    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 6957}
 6958static inline HRESULT IXMLDOMCharacterData_replaceChild(IXMLDOMCharacterData* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 6959    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 6960}
 6961static inline HRESULT IXMLDOMCharacterData_removeChild(IXMLDOMCharacterData* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 6962    return This->lpVtbl->removeChild(This,domNode,oldNode);
 6963}
 6964static inline HRESULT IXMLDOMCharacterData_appendChild(IXMLDOMCharacterData* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 6965    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 6966}
 6967static inline HRESULT IXMLDOMCharacterData_hasChildNodes(IXMLDOMCharacterData* This,VARIANT_BOOL *pbool) {
 6968    return This->lpVtbl->hasChildNodes(This,pbool);
 6969}
 6970static inline HRESULT IXMLDOMCharacterData_get_ownerDocument(IXMLDOMCharacterData* This,IXMLDOMDocument **domDocument) {
 6971    return This->lpVtbl->get_ownerDocument(This,domDocument);
 6972}
 6973static inline HRESULT IXMLDOMCharacterData_cloneNode(IXMLDOMCharacterData* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 6974    return This->lpVtbl->cloneNode(This,pbool,outNode);
 6975}
 6976static inline HRESULT IXMLDOMCharacterData_get_nodeTypeString(IXMLDOMCharacterData* This,BSTR *p) {
 6977    return This->lpVtbl->get_nodeTypeString(This,p);
 6978}
 6979static inline HRESULT IXMLDOMCharacterData_get_text(IXMLDOMCharacterData* This,BSTR *p) {
 6980    return This->lpVtbl->get_text(This,p);
 6981}
 6982static inline HRESULT IXMLDOMCharacterData_put_text(IXMLDOMCharacterData* This,BSTR p) {
 6983    return This->lpVtbl->put_text(This,p);
 6984}
 6985static inline HRESULT IXMLDOMCharacterData_get_specified(IXMLDOMCharacterData* This,VARIANT_BOOL *pbool) {
 6986    return This->lpVtbl->get_specified(This,pbool);
 6987}
 6988static inline HRESULT IXMLDOMCharacterData_get_definition(IXMLDOMCharacterData* This,IXMLDOMNode **domNode) {
 6989    return This->lpVtbl->get_definition(This,domNode);
 6990}
 6991static inline HRESULT IXMLDOMCharacterData_get_nodeTypedValue(IXMLDOMCharacterData* This,VARIANT *var1) {
 6992    return This->lpVtbl->get_nodeTypedValue(This,var1);
 6993}
 6994static inline HRESULT IXMLDOMCharacterData_put_nodeTypedValue(IXMLDOMCharacterData* This,VARIANT var1) {
 6995    return This->lpVtbl->put_nodeTypedValue(This,var1);
 6996}
 6997static inline HRESULT IXMLDOMCharacterData_get_dataType(IXMLDOMCharacterData* This,VARIANT *var1) {
 6998    return This->lpVtbl->get_dataType(This,var1);
 6999}
 7000static inline HRESULT IXMLDOMCharacterData_put_dataType(IXMLDOMCharacterData* This,BSTR p) {
 7001    return This->lpVtbl->put_dataType(This,p);
 7002}
 7003static inline HRESULT IXMLDOMCharacterData_get_xml(IXMLDOMCharacterData* This,BSTR *p) {
 7004    return This->lpVtbl->get_xml(This,p);
 7005}
 7006static inline HRESULT IXMLDOMCharacterData_transformNode(IXMLDOMCharacterData* This,IXMLDOMNode *domNode,BSTR *p) {
 7007    return This->lpVtbl->transformNode(This,domNode,p);
 7008}
 7009static inline HRESULT IXMLDOMCharacterData_selectNodes(IXMLDOMCharacterData* This,BSTR p,IXMLDOMNodeList **outList) {
 7010    return This->lpVtbl->selectNodes(This,p,outList);
 7011}
 7012static inline HRESULT IXMLDOMCharacterData_selectSingleNode(IXMLDOMCharacterData* This,BSTR p,IXMLDOMNode **outNode) {
 7013    return This->lpVtbl->selectSingleNode(This,p,outNode);
 7014}
 7015static inline HRESULT IXMLDOMCharacterData_get_parsed(IXMLDOMCharacterData* This,VARIANT_BOOL *pbool) {
 7016    return This->lpVtbl->get_parsed(This,pbool);
 7017}
 7018static inline HRESULT IXMLDOMCharacterData_get_namespaceURI(IXMLDOMCharacterData* This,BSTR *p) {
 7019    return This->lpVtbl->get_namespaceURI(This,p);
 7020}
 7021static inline HRESULT IXMLDOMCharacterData_get_prefix(IXMLDOMCharacterData* This,BSTR *p) {
 7022    return This->lpVtbl->get_prefix(This,p);
 7023}
 7024static inline HRESULT IXMLDOMCharacterData_get_baseName(IXMLDOMCharacterData* This,BSTR *p) {
 7025    return This->lpVtbl->get_baseName(This,p);
 7026}
 7027static inline HRESULT IXMLDOMCharacterData_transformNodeToObject(IXMLDOMCharacterData* This,IXMLDOMNode *domNode,VARIANT var1) {
 7028    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 7029}
 7030/*** IXMLDOMCharacterData methods ***/
 7031static inline HRESULT IXMLDOMCharacterData_get_data(IXMLDOMCharacterData* This,BSTR *p) {
 7032    return This->lpVtbl->get_data(This,p);
 7033}
 7034static inline HRESULT IXMLDOMCharacterData_put_data(IXMLDOMCharacterData* This,BSTR data) {
 7035    return This->lpVtbl->put_data(This,data);
 7036}
 7037static inline HRESULT IXMLDOMCharacterData_get_length(IXMLDOMCharacterData* This,LONG *len) {
 7038    return This->lpVtbl->get_length(This,len);
 7039}
 7040static inline HRESULT IXMLDOMCharacterData_substringData(IXMLDOMCharacterData* This,LONG offset,LONG count,BSTR *p) {
 7041    return This->lpVtbl->substringData(This,offset,count,p);
 7042}
 7043static inline HRESULT IXMLDOMCharacterData_appendData(IXMLDOMCharacterData* This,BSTR p) {
 7044    return This->lpVtbl->appendData(This,p);
 7045}
 7046static inline HRESULT IXMLDOMCharacterData_insertData(IXMLDOMCharacterData* This,LONG offset,BSTR p) {
 7047    return This->lpVtbl->insertData(This,offset,p);
 7048}
 7049static inline HRESULT IXMLDOMCharacterData_deleteData(IXMLDOMCharacterData* This,LONG offset,LONG count) {
 7050    return This->lpVtbl->deleteData(This,offset,count);
 7051}
 7052static inline HRESULT IXMLDOMCharacterData_replaceData(IXMLDOMCharacterData* This,LONG offset,LONG count,BSTR p) {
 7053    return This->lpVtbl->replaceData(This,offset,count,p);
 7054}
 7055#endif
 7056#endif
 7057
 7058#endif
 7059
 7060
 7061#endif  /* __IXMLDOMCharacterData_INTERFACE_DEFINED__ */
 7062
 7063/*****************************************************************************
 7064 * IXMLDOMAttribute interface
 7065 */
 7066#ifndef __IXMLDOMAttribute_INTERFACE_DEFINED__
 7067#define __IXMLDOMAttribute_INTERFACE_DEFINED__
 7068
 7069DEFINE_GUID(IID_IXMLDOMAttribute, 0x2933bf85, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 7070#if defined(__cplusplus) && !defined(CINTERFACE)
 7071MIDL_INTERFACE("2933bf85-7b36-11d2-b20e-00c04f983e60")
 7072IXMLDOMAttribute : public IXMLDOMNode
 7073{
 7074    virtual HRESULT STDMETHODCALLTYPE get_name(
 7075        BSTR *p) = 0;
 7076
 7077    virtual HRESULT STDMETHODCALLTYPE get_value(
 7078        VARIANT *var1) = 0;
 7079
 7080    virtual HRESULT STDMETHODCALLTYPE put_value(
 7081        VARIANT var1) = 0;
 7082
 7083};
 7084#ifdef __CRT_UUID_DECL
 7085__CRT_UUID_DECL(IXMLDOMAttribute, 0x2933bf85, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 7086#endif
 7087#else
 7088typedef struct IXMLDOMAttributeVtbl {
 7089    BEGIN_INTERFACE
 7090
 7091    /*** IUnknown methods ***/
 7092    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7093        IXMLDOMAttribute *This,
 7094        REFIID riid,
 7095        void **ppvObject);
 7096
 7097    ULONG (STDMETHODCALLTYPE *AddRef)(
 7098        IXMLDOMAttribute *This);
 7099
 7100    ULONG (STDMETHODCALLTYPE *Release)(
 7101        IXMLDOMAttribute *This);
 7102
 7103    /*** IDispatch methods ***/
 7104    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 7105        IXMLDOMAttribute *This,
 7106        UINT *pctinfo);
 7107
 7108    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 7109        IXMLDOMAttribute *This,
 7110        UINT iTInfo,
 7111        LCID lcid,
 7112        ITypeInfo **ppTInfo);
 7113
 7114    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 7115        IXMLDOMAttribute *This,
 7116        REFIID riid,
 7117        LPOLESTR *rgszNames,
 7118        UINT cNames,
 7119        LCID lcid,
 7120        DISPID *rgDispId);
 7121
 7122    HRESULT (STDMETHODCALLTYPE *Invoke)(
 7123        IXMLDOMAttribute *This,
 7124        DISPID dispIdMember,
 7125        REFIID riid,
 7126        LCID lcid,
 7127        WORD wFlags,
 7128        DISPPARAMS *pDispParams,
 7129        VARIANT *pVarResult,
 7130        EXCEPINFO *pExcepInfo,
 7131        UINT *puArgErr);
 7132
 7133    /*** IXMLDOMNode methods ***/
 7134    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 7135        IXMLDOMAttribute *This,
 7136        BSTR *p);
 7137
 7138    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 7139        IXMLDOMAttribute *This,
 7140        VARIANT *var1);
 7141
 7142    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 7143        IXMLDOMAttribute *This,
 7144        VARIANT var1);
 7145
 7146    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 7147        IXMLDOMAttribute *This,
 7148        DOMNodeType *domNodeType);
 7149
 7150    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 7151        IXMLDOMAttribute *This,
 7152        IXMLDOMNode **parent);
 7153
 7154    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 7155        IXMLDOMAttribute *This,
 7156        IXMLDOMNodeList **outList);
 7157
 7158    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 7159        IXMLDOMAttribute *This,
 7160        IXMLDOMNode **domNode);
 7161
 7162    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 7163        IXMLDOMAttribute *This,
 7164        IXMLDOMNode **domNode);
 7165
 7166    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 7167        IXMLDOMAttribute *This,
 7168        IXMLDOMNode **domNode);
 7169
 7170    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 7171        IXMLDOMAttribute *This,
 7172        IXMLDOMNode **domNode);
 7173
 7174    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 7175        IXMLDOMAttribute *This,
 7176        IXMLDOMNamedNodeMap **attributeMap);
 7177
 7178    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 7179        IXMLDOMAttribute *This,
 7180        IXMLDOMNode *newNode,
 7181        VARIANT var1,
 7182        IXMLDOMNode **outOldNode);
 7183
 7184    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 7185        IXMLDOMAttribute *This,
 7186        IXMLDOMNode *newNode,
 7187        IXMLDOMNode *oldNode,
 7188        IXMLDOMNode **outOldNode);
 7189
 7190    HRESULT (STDMETHODCALLTYPE *removeChild)(
 7191        IXMLDOMAttribute *This,
 7192        IXMLDOMNode *domNode,
 7193        IXMLDOMNode **oldNode);
 7194
 7195    HRESULT (STDMETHODCALLTYPE *appendChild)(
 7196        IXMLDOMAttribute *This,
 7197        IXMLDOMNode *newNode,
 7198        IXMLDOMNode **outNewNode);
 7199
 7200    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 7201        IXMLDOMAttribute *This,
 7202        VARIANT_BOOL *pbool);
 7203
 7204    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 7205        IXMLDOMAttribute *This,
 7206        IXMLDOMDocument **domDocument);
 7207
 7208    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 7209        IXMLDOMAttribute *This,
 7210        VARIANT_BOOL pbool,
 7211        IXMLDOMNode **outNode);
 7212
 7213    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 7214        IXMLDOMAttribute *This,
 7215        BSTR *p);
 7216
 7217    HRESULT (STDMETHODCALLTYPE *get_text)(
 7218        IXMLDOMAttribute *This,
 7219        BSTR *p);
 7220
 7221    HRESULT (STDMETHODCALLTYPE *put_text)(
 7222        IXMLDOMAttribute *This,
 7223        BSTR p);
 7224
 7225    HRESULT (STDMETHODCALLTYPE *get_specified)(
 7226        IXMLDOMAttribute *This,
 7227        VARIANT_BOOL *pbool);
 7228
 7229    HRESULT (STDMETHODCALLTYPE *get_definition)(
 7230        IXMLDOMAttribute *This,
 7231        IXMLDOMNode **domNode);
 7232
 7233    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 7234        IXMLDOMAttribute *This,
 7235        VARIANT *var1);
 7236
 7237    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 7238        IXMLDOMAttribute *This,
 7239        VARIANT var1);
 7240
 7241    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 7242        IXMLDOMAttribute *This,
 7243        VARIANT *var1);
 7244
 7245    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 7246        IXMLDOMAttribute *This,
 7247        BSTR p);
 7248
 7249    HRESULT (STDMETHODCALLTYPE *get_xml)(
 7250        IXMLDOMAttribute *This,
 7251        BSTR *p);
 7252
 7253    HRESULT (STDMETHODCALLTYPE *transformNode)(
 7254        IXMLDOMAttribute *This,
 7255        IXMLDOMNode *domNode,
 7256        BSTR *p);
 7257
 7258    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 7259        IXMLDOMAttribute *This,
 7260        BSTR p,
 7261        IXMLDOMNodeList **outList);
 7262
 7263    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 7264        IXMLDOMAttribute *This,
 7265        BSTR p,
 7266        IXMLDOMNode **outNode);
 7267
 7268    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 7269        IXMLDOMAttribute *This,
 7270        VARIANT_BOOL *pbool);
 7271
 7272    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 7273        IXMLDOMAttribute *This,
 7274        BSTR *p);
 7275
 7276    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 7277        IXMLDOMAttribute *This,
 7278        BSTR *p);
 7279
 7280    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 7281        IXMLDOMAttribute *This,
 7282        BSTR *p);
 7283
 7284    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 7285        IXMLDOMAttribute *This,
 7286        IXMLDOMNode *domNode,
 7287        VARIANT var1);
 7288
 7289    /*** IXMLDOMAttribute methods ***/
 7290    HRESULT (STDMETHODCALLTYPE *get_name)(
 7291        IXMLDOMAttribute *This,
 7292        BSTR *p);
 7293
 7294    HRESULT (STDMETHODCALLTYPE *get_value)(
 7295        IXMLDOMAttribute *This,
 7296        VARIANT *var1);
 7297
 7298    HRESULT (STDMETHODCALLTYPE *put_value)(
 7299        IXMLDOMAttribute *This,
 7300        VARIANT var1);
 7301
 7302    END_INTERFACE
 7303} IXMLDOMAttributeVtbl;
 7304
 7305interface IXMLDOMAttribute {
 7306    CONST_VTBL IXMLDOMAttributeVtbl* lpVtbl;
 7307};
 7308
 7309#ifdef COBJMACROS
 7310#ifndef WIDL_C_INLINE_WRAPPERS
 7311/*** IUnknown methods ***/
 7312#define IXMLDOMAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7313#define IXMLDOMAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
 7314#define IXMLDOMAttribute_Release(This) (This)->lpVtbl->Release(This)
 7315/*** IDispatch methods ***/
 7316#define IXMLDOMAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 7317#define IXMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 7318#define IXMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 7319#define IXMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 7320/*** IXMLDOMNode methods ***/
 7321#define IXMLDOMAttribute_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 7322#define IXMLDOMAttribute_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 7323#define IXMLDOMAttribute_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 7324#define IXMLDOMAttribute_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 7325#define IXMLDOMAttribute_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 7326#define IXMLDOMAttribute_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 7327#define IXMLDOMAttribute_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 7328#define IXMLDOMAttribute_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 7329#define IXMLDOMAttribute_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 7330#define IXMLDOMAttribute_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 7331#define IXMLDOMAttribute_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 7332#define IXMLDOMAttribute_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 7333#define IXMLDOMAttribute_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 7334#define IXMLDOMAttribute_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 7335#define IXMLDOMAttribute_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 7336#define IXMLDOMAttribute_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 7337#define IXMLDOMAttribute_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 7338#define IXMLDOMAttribute_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 7339#define IXMLDOMAttribute_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 7340#define IXMLDOMAttribute_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 7341#define IXMLDOMAttribute_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 7342#define IXMLDOMAttribute_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 7343#define IXMLDOMAttribute_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 7344#define IXMLDOMAttribute_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 7345#define IXMLDOMAttribute_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 7346#define IXMLDOMAttribute_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 7347#define IXMLDOMAttribute_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 7348#define IXMLDOMAttribute_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 7349#define IXMLDOMAttribute_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 7350#define IXMLDOMAttribute_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 7351#define IXMLDOMAttribute_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 7352#define IXMLDOMAttribute_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 7353#define IXMLDOMAttribute_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 7354#define IXMLDOMAttribute_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 7355#define IXMLDOMAttribute_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 7356#define IXMLDOMAttribute_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 7357/*** IXMLDOMAttribute methods ***/
 7358#define IXMLDOMAttribute_get_name(This,p) (This)->lpVtbl->get_name(This,p)
 7359#define IXMLDOMAttribute_get_value(This,var1) (This)->lpVtbl->get_value(This,var1)
 7360#define IXMLDOMAttribute_put_value(This,var1) (This)->lpVtbl->put_value(This,var1)
 7361#else
 7362/*** IUnknown methods ***/
 7363static inline HRESULT IXMLDOMAttribute_QueryInterface(IXMLDOMAttribute* This,REFIID riid,void **ppvObject) {
 7364    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7365}
 7366static inline ULONG IXMLDOMAttribute_AddRef(IXMLDOMAttribute* This) {
 7367    return This->lpVtbl->AddRef(This);
 7368}
 7369static inline ULONG IXMLDOMAttribute_Release(IXMLDOMAttribute* This) {
 7370    return This->lpVtbl->Release(This);
 7371}
 7372/*** IDispatch methods ***/
 7373static inline HRESULT IXMLDOMAttribute_GetTypeInfoCount(IXMLDOMAttribute* This,UINT *pctinfo) {
 7374    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 7375}
 7376static inline HRESULT IXMLDOMAttribute_GetTypeInfo(IXMLDOMAttribute* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 7377    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 7378}
 7379static inline HRESULT IXMLDOMAttribute_GetIDsOfNames(IXMLDOMAttribute* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 7380    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 7381}
 7382static inline HRESULT IXMLDOMAttribute_Invoke(IXMLDOMAttribute* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 7383    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 7384}
 7385/*** IXMLDOMNode methods ***/
 7386static inline HRESULT IXMLDOMAttribute_get_nodeName(IXMLDOMAttribute* This,BSTR *p) {
 7387    return This->lpVtbl->get_nodeName(This,p);
 7388}
 7389static inline HRESULT IXMLDOMAttribute_get_nodeValue(IXMLDOMAttribute* This,VARIANT *var1) {
 7390    return This->lpVtbl->get_nodeValue(This,var1);
 7391}
 7392static inline HRESULT IXMLDOMAttribute_put_nodeValue(IXMLDOMAttribute* This,VARIANT var1) {
 7393    return This->lpVtbl->put_nodeValue(This,var1);
 7394}
 7395static inline HRESULT IXMLDOMAttribute_get_nodeType(IXMLDOMAttribute* This,DOMNodeType *domNodeType) {
 7396    return This->lpVtbl->get_nodeType(This,domNodeType);
 7397}
 7398static inline HRESULT IXMLDOMAttribute_get_parentNode(IXMLDOMAttribute* This,IXMLDOMNode **parent) {
 7399    return This->lpVtbl->get_parentNode(This,parent);
 7400}
 7401static inline HRESULT IXMLDOMAttribute_get_childNodes(IXMLDOMAttribute* This,IXMLDOMNodeList **outList) {
 7402    return This->lpVtbl->get_childNodes(This,outList);
 7403}
 7404static inline HRESULT IXMLDOMAttribute_get_firstChild(IXMLDOMAttribute* This,IXMLDOMNode **domNode) {
 7405    return This->lpVtbl->get_firstChild(This,domNode);
 7406}
 7407static inline HRESULT IXMLDOMAttribute_get_lastChild(IXMLDOMAttribute* This,IXMLDOMNode **domNode) {
 7408    return This->lpVtbl->get_lastChild(This,domNode);
 7409}
 7410static inline HRESULT IXMLDOMAttribute_get_previousSibling(IXMLDOMAttribute* This,IXMLDOMNode **domNode) {
 7411    return This->lpVtbl->get_previousSibling(This,domNode);
 7412}
 7413static inline HRESULT IXMLDOMAttribute_get_nextSibling(IXMLDOMAttribute* This,IXMLDOMNode **domNode) {
 7414    return This->lpVtbl->get_nextSibling(This,domNode);
 7415}
 7416static inline HRESULT IXMLDOMAttribute_get_attributes(IXMLDOMAttribute* This,IXMLDOMNamedNodeMap **attributeMap) {
 7417    return This->lpVtbl->get_attributes(This,attributeMap);
 7418}
 7419static inline HRESULT IXMLDOMAttribute_insertBefore(IXMLDOMAttribute* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 7420    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 7421}
 7422static inline HRESULT IXMLDOMAttribute_replaceChild(IXMLDOMAttribute* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 7423    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 7424}
 7425static inline HRESULT IXMLDOMAttribute_removeChild(IXMLDOMAttribute* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 7426    return This->lpVtbl->removeChild(This,domNode,oldNode);
 7427}
 7428static inline HRESULT IXMLDOMAttribute_appendChild(IXMLDOMAttribute* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 7429    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 7430}
 7431static inline HRESULT IXMLDOMAttribute_hasChildNodes(IXMLDOMAttribute* This,VARIANT_BOOL *pbool) {
 7432    return This->lpVtbl->hasChildNodes(This,pbool);
 7433}
 7434static inline HRESULT IXMLDOMAttribute_get_ownerDocument(IXMLDOMAttribute* This,IXMLDOMDocument **domDocument) {
 7435    return This->lpVtbl->get_ownerDocument(This,domDocument);
 7436}
 7437static inline HRESULT IXMLDOMAttribute_cloneNode(IXMLDOMAttribute* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 7438    return This->lpVtbl->cloneNode(This,pbool,outNode);
 7439}
 7440static inline HRESULT IXMLDOMAttribute_get_nodeTypeString(IXMLDOMAttribute* This,BSTR *p) {
 7441    return This->lpVtbl->get_nodeTypeString(This,p);
 7442}
 7443static inline HRESULT IXMLDOMAttribute_get_text(IXMLDOMAttribute* This,BSTR *p) {
 7444    return This->lpVtbl->get_text(This,p);
 7445}
 7446static inline HRESULT IXMLDOMAttribute_put_text(IXMLDOMAttribute* This,BSTR p) {
 7447    return This->lpVtbl->put_text(This,p);
 7448}
 7449static inline HRESULT IXMLDOMAttribute_get_specified(IXMLDOMAttribute* This,VARIANT_BOOL *pbool) {
 7450    return This->lpVtbl->get_specified(This,pbool);
 7451}
 7452static inline HRESULT IXMLDOMAttribute_get_definition(IXMLDOMAttribute* This,IXMLDOMNode **domNode) {
 7453    return This->lpVtbl->get_definition(This,domNode);
 7454}
 7455static inline HRESULT IXMLDOMAttribute_get_nodeTypedValue(IXMLDOMAttribute* This,VARIANT *var1) {
 7456    return This->lpVtbl->get_nodeTypedValue(This,var1);
 7457}
 7458static inline HRESULT IXMLDOMAttribute_put_nodeTypedValue(IXMLDOMAttribute* This,VARIANT var1) {
 7459    return This->lpVtbl->put_nodeTypedValue(This,var1);
 7460}
 7461static inline HRESULT IXMLDOMAttribute_get_dataType(IXMLDOMAttribute* This,VARIANT *var1) {
 7462    return This->lpVtbl->get_dataType(This,var1);
 7463}
 7464static inline HRESULT IXMLDOMAttribute_put_dataType(IXMLDOMAttribute* This,BSTR p) {
 7465    return This->lpVtbl->put_dataType(This,p);
 7466}
 7467static inline HRESULT IXMLDOMAttribute_get_xml(IXMLDOMAttribute* This,BSTR *p) {
 7468    return This->lpVtbl->get_xml(This,p);
 7469}
 7470static inline HRESULT IXMLDOMAttribute_transformNode(IXMLDOMAttribute* This,IXMLDOMNode *domNode,BSTR *p) {
 7471    return This->lpVtbl->transformNode(This,domNode,p);
 7472}
 7473static inline HRESULT IXMLDOMAttribute_selectNodes(IXMLDOMAttribute* This,BSTR p,IXMLDOMNodeList **outList) {
 7474    return This->lpVtbl->selectNodes(This,p,outList);
 7475}
 7476static inline HRESULT IXMLDOMAttribute_selectSingleNode(IXMLDOMAttribute* This,BSTR p,IXMLDOMNode **outNode) {
 7477    return This->lpVtbl->selectSingleNode(This,p,outNode);
 7478}
 7479static inline HRESULT IXMLDOMAttribute_get_parsed(IXMLDOMAttribute* This,VARIANT_BOOL *pbool) {
 7480    return This->lpVtbl->get_parsed(This,pbool);
 7481}
 7482static inline HRESULT IXMLDOMAttribute_get_namespaceURI(IXMLDOMAttribute* This,BSTR *p) {
 7483    return This->lpVtbl->get_namespaceURI(This,p);
 7484}
 7485static inline HRESULT IXMLDOMAttribute_get_prefix(IXMLDOMAttribute* This,BSTR *p) {
 7486    return This->lpVtbl->get_prefix(This,p);
 7487}
 7488static inline HRESULT IXMLDOMAttribute_get_baseName(IXMLDOMAttribute* This,BSTR *p) {
 7489    return This->lpVtbl->get_baseName(This,p);
 7490}
 7491static inline HRESULT IXMLDOMAttribute_transformNodeToObject(IXMLDOMAttribute* This,IXMLDOMNode *domNode,VARIANT var1) {
 7492    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 7493}
 7494/*** IXMLDOMAttribute methods ***/
 7495static inline HRESULT IXMLDOMAttribute_get_name(IXMLDOMAttribute* This,BSTR *p) {
 7496    return This->lpVtbl->get_name(This,p);
 7497}
 7498static inline HRESULT IXMLDOMAttribute_get_value(IXMLDOMAttribute* This,VARIANT *var1) {
 7499    return This->lpVtbl->get_value(This,var1);
 7500}
 7501static inline HRESULT IXMLDOMAttribute_put_value(IXMLDOMAttribute* This,VARIANT var1) {
 7502    return This->lpVtbl->put_value(This,var1);
 7503}
 7504#endif
 7505#endif
 7506
 7507#endif
 7508
 7509
 7510#endif  /* __IXMLDOMAttribute_INTERFACE_DEFINED__ */
 7511
 7512/*****************************************************************************
 7513 * IXMLDOMElement interface
 7514 */
 7515#ifndef __IXMLDOMElement_INTERFACE_DEFINED__
 7516#define __IXMLDOMElement_INTERFACE_DEFINED__
 7517
 7518DEFINE_GUID(IID_IXMLDOMElement, 0x2933bf86, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 7519#if defined(__cplusplus) && !defined(CINTERFACE)
 7520MIDL_INTERFACE("2933bf86-7b36-11d2-b20e-00c04f983e60")
 7521IXMLDOMElement : public IXMLDOMNode
 7522{
 7523    virtual HRESULT STDMETHODCALLTYPE get_tagName(
 7524        BSTR *p) = 0;
 7525
 7526    virtual HRESULT STDMETHODCALLTYPE getAttribute(
 7527        BSTR p,
 7528        VARIANT *var) = 0;
 7529
 7530    virtual HRESULT STDMETHODCALLTYPE setAttribute(
 7531        BSTR p,
 7532        VARIANT var) = 0;
 7533
 7534    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
 7535        BSTR p) = 0;
 7536
 7537    virtual HRESULT STDMETHODCALLTYPE getAttributeNode(
 7538        BSTR p,
 7539        IXMLDOMAttribute **attributeNode) = 0;
 7540
 7541    virtual HRESULT STDMETHODCALLTYPE setAttributeNode(
 7542        IXMLDOMAttribute *domAttribute,
 7543        IXMLDOMAttribute **attributeNode) = 0;
 7544
 7545    virtual HRESULT STDMETHODCALLTYPE removeAttributeNode(
 7546        IXMLDOMAttribute *domAttribute,
 7547        IXMLDOMAttribute **attributeNode) = 0;
 7548
 7549    virtual HRESULT STDMETHODCALLTYPE getElementsByTagName(
 7550        BSTR p,
 7551        IXMLDOMNodeList **resultList) = 0;
 7552
 7553    virtual HRESULT STDMETHODCALLTYPE normalize(
 7554        ) = 0;
 7555
 7556};
 7557#ifdef __CRT_UUID_DECL
 7558__CRT_UUID_DECL(IXMLDOMElement, 0x2933bf86, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 7559#endif
 7560#else
 7561typedef struct IXMLDOMElementVtbl {
 7562    BEGIN_INTERFACE
 7563
 7564    /*** IUnknown methods ***/
 7565    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7566        IXMLDOMElement *This,
 7567        REFIID riid,
 7568        void **ppvObject);
 7569
 7570    ULONG (STDMETHODCALLTYPE *AddRef)(
 7571        IXMLDOMElement *This);
 7572
 7573    ULONG (STDMETHODCALLTYPE *Release)(
 7574        IXMLDOMElement *This);
 7575
 7576    /*** IDispatch methods ***/
 7577    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 7578        IXMLDOMElement *This,
 7579        UINT *pctinfo);
 7580
 7581    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 7582        IXMLDOMElement *This,
 7583        UINT iTInfo,
 7584        LCID lcid,
 7585        ITypeInfo **ppTInfo);
 7586
 7587    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 7588        IXMLDOMElement *This,
 7589        REFIID riid,
 7590        LPOLESTR *rgszNames,
 7591        UINT cNames,
 7592        LCID lcid,
 7593        DISPID *rgDispId);
 7594
 7595    HRESULT (STDMETHODCALLTYPE *Invoke)(
 7596        IXMLDOMElement *This,
 7597        DISPID dispIdMember,
 7598        REFIID riid,
 7599        LCID lcid,
 7600        WORD wFlags,
 7601        DISPPARAMS *pDispParams,
 7602        VARIANT *pVarResult,
 7603        EXCEPINFO *pExcepInfo,
 7604        UINT *puArgErr);
 7605
 7606    /*** IXMLDOMNode methods ***/
 7607    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 7608        IXMLDOMElement *This,
 7609        BSTR *p);
 7610
 7611    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 7612        IXMLDOMElement *This,
 7613        VARIANT *var1);
 7614
 7615    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 7616        IXMLDOMElement *This,
 7617        VARIANT var1);
 7618
 7619    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 7620        IXMLDOMElement *This,
 7621        DOMNodeType *domNodeType);
 7622
 7623    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 7624        IXMLDOMElement *This,
 7625        IXMLDOMNode **parent);
 7626
 7627    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 7628        IXMLDOMElement *This,
 7629        IXMLDOMNodeList **outList);
 7630
 7631    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 7632        IXMLDOMElement *This,
 7633        IXMLDOMNode **domNode);
 7634
 7635    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 7636        IXMLDOMElement *This,
 7637        IXMLDOMNode **domNode);
 7638
 7639    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 7640        IXMLDOMElement *This,
 7641        IXMLDOMNode **domNode);
 7642
 7643    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 7644        IXMLDOMElement *This,
 7645        IXMLDOMNode **domNode);
 7646
 7647    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 7648        IXMLDOMElement *This,
 7649        IXMLDOMNamedNodeMap **attributeMap);
 7650
 7651    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 7652        IXMLDOMElement *This,
 7653        IXMLDOMNode *newNode,
 7654        VARIANT var1,
 7655        IXMLDOMNode **outOldNode);
 7656
 7657    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 7658        IXMLDOMElement *This,
 7659        IXMLDOMNode *newNode,
 7660        IXMLDOMNode *oldNode,
 7661        IXMLDOMNode **outOldNode);
 7662
 7663    HRESULT (STDMETHODCALLTYPE *removeChild)(
 7664        IXMLDOMElement *This,
 7665        IXMLDOMNode *domNode,
 7666        IXMLDOMNode **oldNode);
 7667
 7668    HRESULT (STDMETHODCALLTYPE *appendChild)(
 7669        IXMLDOMElement *This,
 7670        IXMLDOMNode *newNode,
 7671        IXMLDOMNode **outNewNode);
 7672
 7673    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 7674        IXMLDOMElement *This,
 7675        VARIANT_BOOL *pbool);
 7676
 7677    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 7678        IXMLDOMElement *This,
 7679        IXMLDOMDocument **domDocument);
 7680
 7681    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 7682        IXMLDOMElement *This,
 7683        VARIANT_BOOL pbool,
 7684        IXMLDOMNode **outNode);
 7685
 7686    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 7687        IXMLDOMElement *This,
 7688        BSTR *p);
 7689
 7690    HRESULT (STDMETHODCALLTYPE *get_text)(
 7691        IXMLDOMElement *This,
 7692        BSTR *p);
 7693
 7694    HRESULT (STDMETHODCALLTYPE *put_text)(
 7695        IXMLDOMElement *This,
 7696        BSTR p);
 7697
 7698    HRESULT (STDMETHODCALLTYPE *get_specified)(
 7699        IXMLDOMElement *This,
 7700        VARIANT_BOOL *pbool);
 7701
 7702    HRESULT (STDMETHODCALLTYPE *get_definition)(
 7703        IXMLDOMElement *This,
 7704        IXMLDOMNode **domNode);
 7705
 7706    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 7707        IXMLDOMElement *This,
 7708        VARIANT *var1);
 7709
 7710    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 7711        IXMLDOMElement *This,
 7712        VARIANT var1);
 7713
 7714    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 7715        IXMLDOMElement *This,
 7716        VARIANT *var1);
 7717
 7718    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 7719        IXMLDOMElement *This,
 7720        BSTR p);
 7721
 7722    HRESULT (STDMETHODCALLTYPE *get_xml)(
 7723        IXMLDOMElement *This,
 7724        BSTR *p);
 7725
 7726    HRESULT (STDMETHODCALLTYPE *transformNode)(
 7727        IXMLDOMElement *This,
 7728        IXMLDOMNode *domNode,
 7729        BSTR *p);
 7730
 7731    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 7732        IXMLDOMElement *This,
 7733        BSTR p,
 7734        IXMLDOMNodeList **outList);
 7735
 7736    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 7737        IXMLDOMElement *This,
 7738        BSTR p,
 7739        IXMLDOMNode **outNode);
 7740
 7741    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 7742        IXMLDOMElement *This,
 7743        VARIANT_BOOL *pbool);
 7744
 7745    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 7746        IXMLDOMElement *This,
 7747        BSTR *p);
 7748
 7749    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 7750        IXMLDOMElement *This,
 7751        BSTR *p);
 7752
 7753    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 7754        IXMLDOMElement *This,
 7755        BSTR *p);
 7756
 7757    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 7758        IXMLDOMElement *This,
 7759        IXMLDOMNode *domNode,
 7760        VARIANT var1);
 7761
 7762    /*** IXMLDOMElement methods ***/
 7763    HRESULT (STDMETHODCALLTYPE *get_tagName)(
 7764        IXMLDOMElement *This,
 7765        BSTR *p);
 7766
 7767    HRESULT (STDMETHODCALLTYPE *getAttribute)(
 7768        IXMLDOMElement *This,
 7769        BSTR p,
 7770        VARIANT *var);
 7771
 7772    HRESULT (STDMETHODCALLTYPE *setAttribute)(
 7773        IXMLDOMElement *This,
 7774        BSTR p,
 7775        VARIANT var);
 7776
 7777    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
 7778        IXMLDOMElement *This,
 7779        BSTR p);
 7780
 7781    HRESULT (STDMETHODCALLTYPE *getAttributeNode)(
 7782        IXMLDOMElement *This,
 7783        BSTR p,
 7784        IXMLDOMAttribute **attributeNode);
 7785
 7786    HRESULT (STDMETHODCALLTYPE *setAttributeNode)(
 7787        IXMLDOMElement *This,
 7788        IXMLDOMAttribute *domAttribute,
 7789        IXMLDOMAttribute **attributeNode);
 7790
 7791    HRESULT (STDMETHODCALLTYPE *removeAttributeNode)(
 7792        IXMLDOMElement *This,
 7793        IXMLDOMAttribute *domAttribute,
 7794        IXMLDOMAttribute **attributeNode);
 7795
 7796    HRESULT (STDMETHODCALLTYPE *getElementsByTagName)(
 7797        IXMLDOMElement *This,
 7798        BSTR p,
 7799        IXMLDOMNodeList **resultList);
 7800
 7801    HRESULT (STDMETHODCALLTYPE *normalize)(
 7802        IXMLDOMElement *This);
 7803
 7804    END_INTERFACE
 7805} IXMLDOMElementVtbl;
 7806
 7807interface IXMLDOMElement {
 7808    CONST_VTBL IXMLDOMElementVtbl* lpVtbl;
 7809};
 7810
 7811#ifdef COBJMACROS
 7812#ifndef WIDL_C_INLINE_WRAPPERS
 7813/*** IUnknown methods ***/
 7814#define IXMLDOMElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7815#define IXMLDOMElement_AddRef(This) (This)->lpVtbl->AddRef(This)
 7816#define IXMLDOMElement_Release(This) (This)->lpVtbl->Release(This)
 7817/*** IDispatch methods ***/
 7818#define IXMLDOMElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 7819#define IXMLDOMElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 7820#define IXMLDOMElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 7821#define IXMLDOMElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 7822/*** IXMLDOMNode methods ***/
 7823#define IXMLDOMElement_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 7824#define IXMLDOMElement_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 7825#define IXMLDOMElement_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 7826#define IXMLDOMElement_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 7827#define IXMLDOMElement_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 7828#define IXMLDOMElement_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 7829#define IXMLDOMElement_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 7830#define IXMLDOMElement_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 7831#define IXMLDOMElement_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 7832#define IXMLDOMElement_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 7833#define IXMLDOMElement_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 7834#define IXMLDOMElement_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 7835#define IXMLDOMElement_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 7836#define IXMLDOMElement_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 7837#define IXMLDOMElement_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 7838#define IXMLDOMElement_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 7839#define IXMLDOMElement_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 7840#define IXMLDOMElement_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 7841#define IXMLDOMElement_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 7842#define IXMLDOMElement_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 7843#define IXMLDOMElement_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 7844#define IXMLDOMElement_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 7845#define IXMLDOMElement_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 7846#define IXMLDOMElement_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 7847#define IXMLDOMElement_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 7848#define IXMLDOMElement_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 7849#define IXMLDOMElement_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 7850#define IXMLDOMElement_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 7851#define IXMLDOMElement_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 7852#define IXMLDOMElement_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 7853#define IXMLDOMElement_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 7854#define IXMLDOMElement_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 7855#define IXMLDOMElement_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 7856#define IXMLDOMElement_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 7857#define IXMLDOMElement_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 7858#define IXMLDOMElement_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 7859/*** IXMLDOMElement methods ***/
 7860#define IXMLDOMElement_get_tagName(This,p) (This)->lpVtbl->get_tagName(This,p)
 7861#define IXMLDOMElement_getAttribute(This,p,var) (This)->lpVtbl->getAttribute(This,p,var)
 7862#define IXMLDOMElement_setAttribute(This,p,var) (This)->lpVtbl->setAttribute(This,p,var)
 7863#define IXMLDOMElement_removeAttribute(This,p) (This)->lpVtbl->removeAttribute(This,p)
 7864#define IXMLDOMElement_getAttributeNode(This,p,attributeNode) (This)->lpVtbl->getAttributeNode(This,p,attributeNode)
 7865#define IXMLDOMElement_setAttributeNode(This,domAttribute,attributeNode) (This)->lpVtbl->setAttributeNode(This,domAttribute,attributeNode)
 7866#define IXMLDOMElement_removeAttributeNode(This,domAttribute,attributeNode) (This)->lpVtbl->removeAttributeNode(This,domAttribute,attributeNode)
 7867#define IXMLDOMElement_getElementsByTagName(This,p,resultList) (This)->lpVtbl->getElementsByTagName(This,p,resultList)
 7868#define IXMLDOMElement_normalize(This) (This)->lpVtbl->normalize(This)
 7869#else
 7870/*** IUnknown methods ***/
 7871static inline HRESULT IXMLDOMElement_QueryInterface(IXMLDOMElement* This,REFIID riid,void **ppvObject) {
 7872    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7873}
 7874static inline ULONG IXMLDOMElement_AddRef(IXMLDOMElement* This) {
 7875    return This->lpVtbl->AddRef(This);
 7876}
 7877static inline ULONG IXMLDOMElement_Release(IXMLDOMElement* This) {
 7878    return This->lpVtbl->Release(This);
 7879}
 7880/*** IDispatch methods ***/
 7881static inline HRESULT IXMLDOMElement_GetTypeInfoCount(IXMLDOMElement* This,UINT *pctinfo) {
 7882    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 7883}
 7884static inline HRESULT IXMLDOMElement_GetTypeInfo(IXMLDOMElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 7885    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 7886}
 7887static inline HRESULT IXMLDOMElement_GetIDsOfNames(IXMLDOMElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 7888    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 7889}
 7890static inline HRESULT IXMLDOMElement_Invoke(IXMLDOMElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 7891    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 7892}
 7893/*** IXMLDOMNode methods ***/
 7894static inline HRESULT IXMLDOMElement_get_nodeName(IXMLDOMElement* This,BSTR *p) {
 7895    return This->lpVtbl->get_nodeName(This,p);
 7896}
 7897static inline HRESULT IXMLDOMElement_get_nodeValue(IXMLDOMElement* This,VARIANT *var1) {
 7898    return This->lpVtbl->get_nodeValue(This,var1);
 7899}
 7900static inline HRESULT IXMLDOMElement_put_nodeValue(IXMLDOMElement* This,VARIANT var1) {
 7901    return This->lpVtbl->put_nodeValue(This,var1);
 7902}
 7903static inline HRESULT IXMLDOMElement_get_nodeType(IXMLDOMElement* This,DOMNodeType *domNodeType) {
 7904    return This->lpVtbl->get_nodeType(This,domNodeType);
 7905}
 7906static inline HRESULT IXMLDOMElement_get_parentNode(IXMLDOMElement* This,IXMLDOMNode **parent) {
 7907    return This->lpVtbl->get_parentNode(This,parent);
 7908}
 7909static inline HRESULT IXMLDOMElement_get_childNodes(IXMLDOMElement* This,IXMLDOMNodeList **outList) {
 7910    return This->lpVtbl->get_childNodes(This,outList);
 7911}
 7912static inline HRESULT IXMLDOMElement_get_firstChild(IXMLDOMElement* This,IXMLDOMNode **domNode) {
 7913    return This->lpVtbl->get_firstChild(This,domNode);
 7914}
 7915static inline HRESULT IXMLDOMElement_get_lastChild(IXMLDOMElement* This,IXMLDOMNode **domNode) {
 7916    return This->lpVtbl->get_lastChild(This,domNode);
 7917}
 7918static inline HRESULT IXMLDOMElement_get_previousSibling(IXMLDOMElement* This,IXMLDOMNode **domNode) {
 7919    return This->lpVtbl->get_previousSibling(This,domNode);
 7920}
 7921static inline HRESULT IXMLDOMElement_get_nextSibling(IXMLDOMElement* This,IXMLDOMNode **domNode) {
 7922    return This->lpVtbl->get_nextSibling(This,domNode);
 7923}
 7924static inline HRESULT IXMLDOMElement_get_attributes(IXMLDOMElement* This,IXMLDOMNamedNodeMap **attributeMap) {
 7925    return This->lpVtbl->get_attributes(This,attributeMap);
 7926}
 7927static inline HRESULT IXMLDOMElement_insertBefore(IXMLDOMElement* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 7928    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 7929}
 7930static inline HRESULT IXMLDOMElement_replaceChild(IXMLDOMElement* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 7931    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 7932}
 7933static inline HRESULT IXMLDOMElement_removeChild(IXMLDOMElement* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 7934    return This->lpVtbl->removeChild(This,domNode,oldNode);
 7935}
 7936static inline HRESULT IXMLDOMElement_appendChild(IXMLDOMElement* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 7937    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 7938}
 7939static inline HRESULT IXMLDOMElement_hasChildNodes(IXMLDOMElement* This,VARIANT_BOOL *pbool) {
 7940    return This->lpVtbl->hasChildNodes(This,pbool);
 7941}
 7942static inline HRESULT IXMLDOMElement_get_ownerDocument(IXMLDOMElement* This,IXMLDOMDocument **domDocument) {
 7943    return This->lpVtbl->get_ownerDocument(This,domDocument);
 7944}
 7945static inline HRESULT IXMLDOMElement_cloneNode(IXMLDOMElement* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 7946    return This->lpVtbl->cloneNode(This,pbool,outNode);
 7947}
 7948static inline HRESULT IXMLDOMElement_get_nodeTypeString(IXMLDOMElement* This,BSTR *p) {
 7949    return This->lpVtbl->get_nodeTypeString(This,p);
 7950}
 7951static inline HRESULT IXMLDOMElement_get_text(IXMLDOMElement* This,BSTR *p) {
 7952    return This->lpVtbl->get_text(This,p);
 7953}
 7954static inline HRESULT IXMLDOMElement_put_text(IXMLDOMElement* This,BSTR p) {
 7955    return This->lpVtbl->put_text(This,p);
 7956}
 7957static inline HRESULT IXMLDOMElement_get_specified(IXMLDOMElement* This,VARIANT_BOOL *pbool) {
 7958    return This->lpVtbl->get_specified(This,pbool);
 7959}
 7960static inline HRESULT IXMLDOMElement_get_definition(IXMLDOMElement* This,IXMLDOMNode **domNode) {
 7961    return This->lpVtbl->get_definition(This,domNode);
 7962}
 7963static inline HRESULT IXMLDOMElement_get_nodeTypedValue(IXMLDOMElement* This,VARIANT *var1) {
 7964    return This->lpVtbl->get_nodeTypedValue(This,var1);
 7965}
 7966static inline HRESULT IXMLDOMElement_put_nodeTypedValue(IXMLDOMElement* This,VARIANT var1) {
 7967    return This->lpVtbl->put_nodeTypedValue(This,var1);
 7968}
 7969static inline HRESULT IXMLDOMElement_get_dataType(IXMLDOMElement* This,VARIANT *var1) {
 7970    return This->lpVtbl->get_dataType(This,var1);
 7971}
 7972static inline HRESULT IXMLDOMElement_put_dataType(IXMLDOMElement* This,BSTR p) {
 7973    return This->lpVtbl->put_dataType(This,p);
 7974}
 7975static inline HRESULT IXMLDOMElement_get_xml(IXMLDOMElement* This,BSTR *p) {
 7976    return This->lpVtbl->get_xml(This,p);
 7977}
 7978static inline HRESULT IXMLDOMElement_transformNode(IXMLDOMElement* This,IXMLDOMNode *domNode,BSTR *p) {
 7979    return This->lpVtbl->transformNode(This,domNode,p);
 7980}
 7981static inline HRESULT IXMLDOMElement_selectNodes(IXMLDOMElement* This,BSTR p,IXMLDOMNodeList **outList) {
 7982    return This->lpVtbl->selectNodes(This,p,outList);
 7983}
 7984static inline HRESULT IXMLDOMElement_selectSingleNode(IXMLDOMElement* This,BSTR p,IXMLDOMNode **outNode) {
 7985    return This->lpVtbl->selectSingleNode(This,p,outNode);
 7986}
 7987static inline HRESULT IXMLDOMElement_get_parsed(IXMLDOMElement* This,VARIANT_BOOL *pbool) {
 7988    return This->lpVtbl->get_parsed(This,pbool);
 7989}
 7990static inline HRESULT IXMLDOMElement_get_namespaceURI(IXMLDOMElement* This,BSTR *p) {
 7991    return This->lpVtbl->get_namespaceURI(This,p);
 7992}
 7993static inline HRESULT IXMLDOMElement_get_prefix(IXMLDOMElement* This,BSTR *p) {
 7994    return This->lpVtbl->get_prefix(This,p);
 7995}
 7996static inline HRESULT IXMLDOMElement_get_baseName(IXMLDOMElement* This,BSTR *p) {
 7997    return This->lpVtbl->get_baseName(This,p);
 7998}
 7999static inline HRESULT IXMLDOMElement_transformNodeToObject(IXMLDOMElement* This,IXMLDOMNode *domNode,VARIANT var1) {
 8000    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 8001}
 8002/*** IXMLDOMElement methods ***/
 8003static inline HRESULT IXMLDOMElement_get_tagName(IXMLDOMElement* This,BSTR *p) {
 8004    return This->lpVtbl->get_tagName(This,p);
 8005}
 8006static inline HRESULT IXMLDOMElement_getAttribute(IXMLDOMElement* This,BSTR p,VARIANT *var) {
 8007    return This->lpVtbl->getAttribute(This,p,var);
 8008}
 8009static inline HRESULT IXMLDOMElement_setAttribute(IXMLDOMElement* This,BSTR p,VARIANT var) {
 8010    return This->lpVtbl->setAttribute(This,p,var);
 8011}
 8012static inline HRESULT IXMLDOMElement_removeAttribute(IXMLDOMElement* This,BSTR p) {
 8013    return This->lpVtbl->removeAttribute(This,p);
 8014}
 8015static inline HRESULT IXMLDOMElement_getAttributeNode(IXMLDOMElement* This,BSTR p,IXMLDOMAttribute **attributeNode) {
 8016    return This->lpVtbl->getAttributeNode(This,p,attributeNode);
 8017}
 8018static inline HRESULT IXMLDOMElement_setAttributeNode(IXMLDOMElement* This,IXMLDOMAttribute *domAttribute,IXMLDOMAttribute **attributeNode) {
 8019    return This->lpVtbl->setAttributeNode(This,domAttribute,attributeNode);
 8020}
 8021static inline HRESULT IXMLDOMElement_removeAttributeNode(IXMLDOMElement* This,IXMLDOMAttribute *domAttribute,IXMLDOMAttribute **attributeNode) {
 8022    return This->lpVtbl->removeAttributeNode(This,domAttribute,attributeNode);
 8023}
 8024static inline HRESULT IXMLDOMElement_getElementsByTagName(IXMLDOMElement* This,BSTR p,IXMLDOMNodeList **resultList) {
 8025    return This->lpVtbl->getElementsByTagName(This,p,resultList);
 8026}
 8027static inline HRESULT IXMLDOMElement_normalize(IXMLDOMElement* This) {
 8028    return This->lpVtbl->normalize(This);
 8029}
 8030#endif
 8031#endif
 8032
 8033#endif
 8034
 8035
 8036#endif  /* __IXMLDOMElement_INTERFACE_DEFINED__ */
 8037
 8038/*****************************************************************************
 8039 * IXMLDOMText interface
 8040 */
 8041#ifndef __IXMLDOMText_INTERFACE_DEFINED__
 8042#define __IXMLDOMText_INTERFACE_DEFINED__
 8043
 8044DEFINE_GUID(IID_IXMLDOMText, 0x2933bf87, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 8045#if defined(__cplusplus) && !defined(CINTERFACE)
 8046MIDL_INTERFACE("2933bf87-7b36-11d2-b20e-00c04f983e60")
 8047IXMLDOMText : public IXMLDOMCharacterData
 8048{
 8049    virtual HRESULT STDMETHODCALLTYPE splitText(
 8050        LONG offset,
 8051        IXMLDOMText **txtNode) = 0;
 8052
 8053};
 8054#ifdef __CRT_UUID_DECL
 8055__CRT_UUID_DECL(IXMLDOMText, 0x2933bf87, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 8056#endif
 8057#else
 8058typedef struct IXMLDOMTextVtbl {
 8059    BEGIN_INTERFACE
 8060
 8061    /*** IUnknown methods ***/
 8062    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8063        IXMLDOMText *This,
 8064        REFIID riid,
 8065        void **ppvObject);
 8066
 8067    ULONG (STDMETHODCALLTYPE *AddRef)(
 8068        IXMLDOMText *This);
 8069
 8070    ULONG (STDMETHODCALLTYPE *Release)(
 8071        IXMLDOMText *This);
 8072
 8073    /*** IDispatch methods ***/
 8074    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8075        IXMLDOMText *This,
 8076        UINT *pctinfo);
 8077
 8078    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8079        IXMLDOMText *This,
 8080        UINT iTInfo,
 8081        LCID lcid,
 8082        ITypeInfo **ppTInfo);
 8083
 8084    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8085        IXMLDOMText *This,
 8086        REFIID riid,
 8087        LPOLESTR *rgszNames,
 8088        UINT cNames,
 8089        LCID lcid,
 8090        DISPID *rgDispId);
 8091
 8092    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8093        IXMLDOMText *This,
 8094        DISPID dispIdMember,
 8095        REFIID riid,
 8096        LCID lcid,
 8097        WORD wFlags,
 8098        DISPPARAMS *pDispParams,
 8099        VARIANT *pVarResult,
 8100        EXCEPINFO *pExcepInfo,
 8101        UINT *puArgErr);
 8102
 8103    /*** IXMLDOMNode methods ***/
 8104    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 8105        IXMLDOMText *This,
 8106        BSTR *p);
 8107
 8108    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 8109        IXMLDOMText *This,
 8110        VARIANT *var1);
 8111
 8112    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 8113        IXMLDOMText *This,
 8114        VARIANT var1);
 8115
 8116    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 8117        IXMLDOMText *This,
 8118        DOMNodeType *domNodeType);
 8119
 8120    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 8121        IXMLDOMText *This,
 8122        IXMLDOMNode **parent);
 8123
 8124    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 8125        IXMLDOMText *This,
 8126        IXMLDOMNodeList **outList);
 8127
 8128    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 8129        IXMLDOMText *This,
 8130        IXMLDOMNode **domNode);
 8131
 8132    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 8133        IXMLDOMText *This,
 8134        IXMLDOMNode **domNode);
 8135
 8136    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 8137        IXMLDOMText *This,
 8138        IXMLDOMNode **domNode);
 8139
 8140    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 8141        IXMLDOMText *This,
 8142        IXMLDOMNode **domNode);
 8143
 8144    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 8145        IXMLDOMText *This,
 8146        IXMLDOMNamedNodeMap **attributeMap);
 8147
 8148    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 8149        IXMLDOMText *This,
 8150        IXMLDOMNode *newNode,
 8151        VARIANT var1,
 8152        IXMLDOMNode **outOldNode);
 8153
 8154    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 8155        IXMLDOMText *This,
 8156        IXMLDOMNode *newNode,
 8157        IXMLDOMNode *oldNode,
 8158        IXMLDOMNode **outOldNode);
 8159
 8160    HRESULT (STDMETHODCALLTYPE *removeChild)(
 8161        IXMLDOMText *This,
 8162        IXMLDOMNode *domNode,
 8163        IXMLDOMNode **oldNode);
 8164
 8165    HRESULT (STDMETHODCALLTYPE *appendChild)(
 8166        IXMLDOMText *This,
 8167        IXMLDOMNode *newNode,
 8168        IXMLDOMNode **outNewNode);
 8169
 8170    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 8171        IXMLDOMText *This,
 8172        VARIANT_BOOL *pbool);
 8173
 8174    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 8175        IXMLDOMText *This,
 8176        IXMLDOMDocument **domDocument);
 8177
 8178    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 8179        IXMLDOMText *This,
 8180        VARIANT_BOOL pbool,
 8181        IXMLDOMNode **outNode);
 8182
 8183    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 8184        IXMLDOMText *This,
 8185        BSTR *p);
 8186
 8187    HRESULT (STDMETHODCALLTYPE *get_text)(
 8188        IXMLDOMText *This,
 8189        BSTR *p);
 8190
 8191    HRESULT (STDMETHODCALLTYPE *put_text)(
 8192        IXMLDOMText *This,
 8193        BSTR p);
 8194
 8195    HRESULT (STDMETHODCALLTYPE *get_specified)(
 8196        IXMLDOMText *This,
 8197        VARIANT_BOOL *pbool);
 8198
 8199    HRESULT (STDMETHODCALLTYPE *get_definition)(
 8200        IXMLDOMText *This,
 8201        IXMLDOMNode **domNode);
 8202
 8203    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 8204        IXMLDOMText *This,
 8205        VARIANT *var1);
 8206
 8207    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 8208        IXMLDOMText *This,
 8209        VARIANT var1);
 8210
 8211    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 8212        IXMLDOMText *This,
 8213        VARIANT *var1);
 8214
 8215    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 8216        IXMLDOMText *This,
 8217        BSTR p);
 8218
 8219    HRESULT (STDMETHODCALLTYPE *get_xml)(
 8220        IXMLDOMText *This,
 8221        BSTR *p);
 8222
 8223    HRESULT (STDMETHODCALLTYPE *transformNode)(
 8224        IXMLDOMText *This,
 8225        IXMLDOMNode *domNode,
 8226        BSTR *p);
 8227
 8228    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 8229        IXMLDOMText *This,
 8230        BSTR p,
 8231        IXMLDOMNodeList **outList);
 8232
 8233    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 8234        IXMLDOMText *This,
 8235        BSTR p,
 8236        IXMLDOMNode **outNode);
 8237
 8238    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 8239        IXMLDOMText *This,
 8240        VARIANT_BOOL *pbool);
 8241
 8242    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 8243        IXMLDOMText *This,
 8244        BSTR *p);
 8245
 8246    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 8247        IXMLDOMText *This,
 8248        BSTR *p);
 8249
 8250    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 8251        IXMLDOMText *This,
 8252        BSTR *p);
 8253
 8254    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 8255        IXMLDOMText *This,
 8256        IXMLDOMNode *domNode,
 8257        VARIANT var1);
 8258
 8259    /*** IXMLDOMCharacterData methods ***/
 8260    HRESULT (STDMETHODCALLTYPE *get_data)(
 8261        IXMLDOMText *This,
 8262        BSTR *p);
 8263
 8264    HRESULT (STDMETHODCALLTYPE *put_data)(
 8265        IXMLDOMText *This,
 8266        BSTR data);
 8267
 8268    HRESULT (STDMETHODCALLTYPE *get_length)(
 8269        IXMLDOMText *This,
 8270        LONG *len);
 8271
 8272    HRESULT (STDMETHODCALLTYPE *substringData)(
 8273        IXMLDOMText *This,
 8274        LONG offset,
 8275        LONG count,
 8276        BSTR *p);
 8277
 8278    HRESULT (STDMETHODCALLTYPE *appendData)(
 8279        IXMLDOMText *This,
 8280        BSTR p);
 8281
 8282    HRESULT (STDMETHODCALLTYPE *insertData)(
 8283        IXMLDOMText *This,
 8284        LONG offset,
 8285        BSTR p);
 8286
 8287    HRESULT (STDMETHODCALLTYPE *deleteData)(
 8288        IXMLDOMText *This,
 8289        LONG offset,
 8290        LONG count);
 8291
 8292    HRESULT (STDMETHODCALLTYPE *replaceData)(
 8293        IXMLDOMText *This,
 8294        LONG offset,
 8295        LONG count,
 8296        BSTR p);
 8297
 8298    /*** IXMLDOMText methods ***/
 8299    HRESULT (STDMETHODCALLTYPE *splitText)(
 8300        IXMLDOMText *This,
 8301        LONG offset,
 8302        IXMLDOMText **txtNode);
 8303
 8304    END_INTERFACE
 8305} IXMLDOMTextVtbl;
 8306
 8307interface IXMLDOMText {
 8308    CONST_VTBL IXMLDOMTextVtbl* lpVtbl;
 8309};
 8310
 8311#ifdef COBJMACROS
 8312#ifndef WIDL_C_INLINE_WRAPPERS
 8313/*** IUnknown methods ***/
 8314#define IXMLDOMText_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8315#define IXMLDOMText_AddRef(This) (This)->lpVtbl->AddRef(This)
 8316#define IXMLDOMText_Release(This) (This)->lpVtbl->Release(This)
 8317/*** IDispatch methods ***/
 8318#define IXMLDOMText_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8319#define IXMLDOMText_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8320#define IXMLDOMText_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8321#define IXMLDOMText_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8322/*** IXMLDOMNode methods ***/
 8323#define IXMLDOMText_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 8324#define IXMLDOMText_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 8325#define IXMLDOMText_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 8326#define IXMLDOMText_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 8327#define IXMLDOMText_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 8328#define IXMLDOMText_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 8329#define IXMLDOMText_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 8330#define IXMLDOMText_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 8331#define IXMLDOMText_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 8332#define IXMLDOMText_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 8333#define IXMLDOMText_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 8334#define IXMLDOMText_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 8335#define IXMLDOMText_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 8336#define IXMLDOMText_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 8337#define IXMLDOMText_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 8338#define IXMLDOMText_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 8339#define IXMLDOMText_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 8340#define IXMLDOMText_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 8341#define IXMLDOMText_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 8342#define IXMLDOMText_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 8343#define IXMLDOMText_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 8344#define IXMLDOMText_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 8345#define IXMLDOMText_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 8346#define IXMLDOMText_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 8347#define IXMLDOMText_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 8348#define IXMLDOMText_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 8349#define IXMLDOMText_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 8350#define IXMLDOMText_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 8351#define IXMLDOMText_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 8352#define IXMLDOMText_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 8353#define IXMLDOMText_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 8354#define IXMLDOMText_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 8355#define IXMLDOMText_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 8356#define IXMLDOMText_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 8357#define IXMLDOMText_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 8358#define IXMLDOMText_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 8359/*** IXMLDOMCharacterData methods ***/
 8360#define IXMLDOMText_get_data(This,p) (This)->lpVtbl->get_data(This,p)
 8361#define IXMLDOMText_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 8362#define IXMLDOMText_get_length(This,len) (This)->lpVtbl->get_length(This,len)
 8363#define IXMLDOMText_substringData(This,offset,count,p) (This)->lpVtbl->substringData(This,offset,count,p)
 8364#define IXMLDOMText_appendData(This,p) (This)->lpVtbl->appendData(This,p)
 8365#define IXMLDOMText_insertData(This,offset,p) (This)->lpVtbl->insertData(This,offset,p)
 8366#define IXMLDOMText_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 8367#define IXMLDOMText_replaceData(This,offset,count,p) (This)->lpVtbl->replaceData(This,offset,count,p)
 8368/*** IXMLDOMText methods ***/
 8369#define IXMLDOMText_splitText(This,offset,txtNode) (This)->lpVtbl->splitText(This,offset,txtNode)
 8370#else
 8371/*** IUnknown methods ***/
 8372static inline HRESULT IXMLDOMText_QueryInterface(IXMLDOMText* This,REFIID riid,void **ppvObject) {
 8373    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8374}
 8375static inline ULONG IXMLDOMText_AddRef(IXMLDOMText* This) {
 8376    return This->lpVtbl->AddRef(This);
 8377}
 8378static inline ULONG IXMLDOMText_Release(IXMLDOMText* This) {
 8379    return This->lpVtbl->Release(This);
 8380}
 8381/*** IDispatch methods ***/
 8382static inline HRESULT IXMLDOMText_GetTypeInfoCount(IXMLDOMText* This,UINT *pctinfo) {
 8383    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8384}
 8385static inline HRESULT IXMLDOMText_GetTypeInfo(IXMLDOMText* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8386    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8387}
 8388static inline HRESULT IXMLDOMText_GetIDsOfNames(IXMLDOMText* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8389    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8390}
 8391static inline HRESULT IXMLDOMText_Invoke(IXMLDOMText* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8392    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8393}
 8394/*** IXMLDOMNode methods ***/
 8395static inline HRESULT IXMLDOMText_get_nodeName(IXMLDOMText* This,BSTR *p) {
 8396    return This->lpVtbl->get_nodeName(This,p);
 8397}
 8398static inline HRESULT IXMLDOMText_get_nodeValue(IXMLDOMText* This,VARIANT *var1) {
 8399    return This->lpVtbl->get_nodeValue(This,var1);
 8400}
 8401static inline HRESULT IXMLDOMText_put_nodeValue(IXMLDOMText* This,VARIANT var1) {
 8402    return This->lpVtbl->put_nodeValue(This,var1);
 8403}
 8404static inline HRESULT IXMLDOMText_get_nodeType(IXMLDOMText* This,DOMNodeType *domNodeType) {
 8405    return This->lpVtbl->get_nodeType(This,domNodeType);
 8406}
 8407static inline HRESULT IXMLDOMText_get_parentNode(IXMLDOMText* This,IXMLDOMNode **parent) {
 8408    return This->lpVtbl->get_parentNode(This,parent);
 8409}
 8410static inline HRESULT IXMLDOMText_get_childNodes(IXMLDOMText* This,IXMLDOMNodeList **outList) {
 8411    return This->lpVtbl->get_childNodes(This,outList);
 8412}
 8413static inline HRESULT IXMLDOMText_get_firstChild(IXMLDOMText* This,IXMLDOMNode **domNode) {
 8414    return This->lpVtbl->get_firstChild(This,domNode);
 8415}
 8416static inline HRESULT IXMLDOMText_get_lastChild(IXMLDOMText* This,IXMLDOMNode **domNode) {
 8417    return This->lpVtbl->get_lastChild(This,domNode);
 8418}
 8419static inline HRESULT IXMLDOMText_get_previousSibling(IXMLDOMText* This,IXMLDOMNode **domNode) {
 8420    return This->lpVtbl->get_previousSibling(This,domNode);
 8421}
 8422static inline HRESULT IXMLDOMText_get_nextSibling(IXMLDOMText* This,IXMLDOMNode **domNode) {
 8423    return This->lpVtbl->get_nextSibling(This,domNode);
 8424}
 8425static inline HRESULT IXMLDOMText_get_attributes(IXMLDOMText* This,IXMLDOMNamedNodeMap **attributeMap) {
 8426    return This->lpVtbl->get_attributes(This,attributeMap);
 8427}
 8428static inline HRESULT IXMLDOMText_insertBefore(IXMLDOMText* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 8429    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 8430}
 8431static inline HRESULT IXMLDOMText_replaceChild(IXMLDOMText* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 8432    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 8433}
 8434static inline HRESULT IXMLDOMText_removeChild(IXMLDOMText* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 8435    return This->lpVtbl->removeChild(This,domNode,oldNode);
 8436}
 8437static inline HRESULT IXMLDOMText_appendChild(IXMLDOMText* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 8438    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 8439}
 8440static inline HRESULT IXMLDOMText_hasChildNodes(IXMLDOMText* This,VARIANT_BOOL *pbool) {
 8441    return This->lpVtbl->hasChildNodes(This,pbool);
 8442}
 8443static inline HRESULT IXMLDOMText_get_ownerDocument(IXMLDOMText* This,IXMLDOMDocument **domDocument) {
 8444    return This->lpVtbl->get_ownerDocument(This,domDocument);
 8445}
 8446static inline HRESULT IXMLDOMText_cloneNode(IXMLDOMText* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 8447    return This->lpVtbl->cloneNode(This,pbool,outNode);
 8448}
 8449static inline HRESULT IXMLDOMText_get_nodeTypeString(IXMLDOMText* This,BSTR *p) {
 8450    return This->lpVtbl->get_nodeTypeString(This,p);
 8451}
 8452static inline HRESULT IXMLDOMText_get_text(IXMLDOMText* This,BSTR *p) {
 8453    return This->lpVtbl->get_text(This,p);
 8454}
 8455static inline HRESULT IXMLDOMText_put_text(IXMLDOMText* This,BSTR p) {
 8456    return This->lpVtbl->put_text(This,p);
 8457}
 8458static inline HRESULT IXMLDOMText_get_specified(IXMLDOMText* This,VARIANT_BOOL *pbool) {
 8459    return This->lpVtbl->get_specified(This,pbool);
 8460}
 8461static inline HRESULT IXMLDOMText_get_definition(IXMLDOMText* This,IXMLDOMNode **domNode) {
 8462    return This->lpVtbl->get_definition(This,domNode);
 8463}
 8464static inline HRESULT IXMLDOMText_get_nodeTypedValue(IXMLDOMText* This,VARIANT *var1) {
 8465    return This->lpVtbl->get_nodeTypedValue(This,var1);
 8466}
 8467static inline HRESULT IXMLDOMText_put_nodeTypedValue(IXMLDOMText* This,VARIANT var1) {
 8468    return This->lpVtbl->put_nodeTypedValue(This,var1);
 8469}
 8470static inline HRESULT IXMLDOMText_get_dataType(IXMLDOMText* This,VARIANT *var1) {
 8471    return This->lpVtbl->get_dataType(This,var1);
 8472}
 8473static inline HRESULT IXMLDOMText_put_dataType(IXMLDOMText* This,BSTR p) {
 8474    return This->lpVtbl->put_dataType(This,p);
 8475}
 8476static inline HRESULT IXMLDOMText_get_xml(IXMLDOMText* This,BSTR *p) {
 8477    return This->lpVtbl->get_xml(This,p);
 8478}
 8479static inline HRESULT IXMLDOMText_transformNode(IXMLDOMText* This,IXMLDOMNode *domNode,BSTR *p) {
 8480    return This->lpVtbl->transformNode(This,domNode,p);
 8481}
 8482static inline HRESULT IXMLDOMText_selectNodes(IXMLDOMText* This,BSTR p,IXMLDOMNodeList **outList) {
 8483    return This->lpVtbl->selectNodes(This,p,outList);
 8484}
 8485static inline HRESULT IXMLDOMText_selectSingleNode(IXMLDOMText* This,BSTR p,IXMLDOMNode **outNode) {
 8486    return This->lpVtbl->selectSingleNode(This,p,outNode);
 8487}
 8488static inline HRESULT IXMLDOMText_get_parsed(IXMLDOMText* This,VARIANT_BOOL *pbool) {
 8489    return This->lpVtbl->get_parsed(This,pbool);
 8490}
 8491static inline HRESULT IXMLDOMText_get_namespaceURI(IXMLDOMText* This,BSTR *p) {
 8492    return This->lpVtbl->get_namespaceURI(This,p);
 8493}
 8494static inline HRESULT IXMLDOMText_get_prefix(IXMLDOMText* This,BSTR *p) {
 8495    return This->lpVtbl->get_prefix(This,p);
 8496}
 8497static inline HRESULT IXMLDOMText_get_baseName(IXMLDOMText* This,BSTR *p) {
 8498    return This->lpVtbl->get_baseName(This,p);
 8499}
 8500static inline HRESULT IXMLDOMText_transformNodeToObject(IXMLDOMText* This,IXMLDOMNode *domNode,VARIANT var1) {
 8501    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 8502}
 8503/*** IXMLDOMCharacterData methods ***/
 8504static inline HRESULT IXMLDOMText_get_data(IXMLDOMText* This,BSTR *p) {
 8505    return This->lpVtbl->get_data(This,p);
 8506}
 8507static inline HRESULT IXMLDOMText_put_data(IXMLDOMText* This,BSTR data) {
 8508    return This->lpVtbl->put_data(This,data);
 8509}
 8510static inline HRESULT IXMLDOMText_get_length(IXMLDOMText* This,LONG *len) {
 8511    return This->lpVtbl->get_length(This,len);
 8512}
 8513static inline HRESULT IXMLDOMText_substringData(IXMLDOMText* This,LONG offset,LONG count,BSTR *p) {
 8514    return This->lpVtbl->substringData(This,offset,count,p);
 8515}
 8516static inline HRESULT IXMLDOMText_appendData(IXMLDOMText* This,BSTR p) {
 8517    return This->lpVtbl->appendData(This,p);
 8518}
 8519static inline HRESULT IXMLDOMText_insertData(IXMLDOMText* This,LONG offset,BSTR p) {
 8520    return This->lpVtbl->insertData(This,offset,p);
 8521}
 8522static inline HRESULT IXMLDOMText_deleteData(IXMLDOMText* This,LONG offset,LONG count) {
 8523    return This->lpVtbl->deleteData(This,offset,count);
 8524}
 8525static inline HRESULT IXMLDOMText_replaceData(IXMLDOMText* This,LONG offset,LONG count,BSTR p) {
 8526    return This->lpVtbl->replaceData(This,offset,count,p);
 8527}
 8528/*** IXMLDOMText methods ***/
 8529static inline HRESULT IXMLDOMText_splitText(IXMLDOMText* This,LONG offset,IXMLDOMText **txtNode) {
 8530    return This->lpVtbl->splitText(This,offset,txtNode);
 8531}
 8532#endif
 8533#endif
 8534
 8535#endif
 8536
 8537
 8538#endif  /* __IXMLDOMText_INTERFACE_DEFINED__ */
 8539
 8540/*****************************************************************************
 8541 * IXMLDOMComment interface
 8542 */
 8543#ifndef __IXMLDOMComment_INTERFACE_DEFINED__
 8544#define __IXMLDOMComment_INTERFACE_DEFINED__
 8545
 8546DEFINE_GUID(IID_IXMLDOMComment, 0x2933bf88, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 8547#if defined(__cplusplus) && !defined(CINTERFACE)
 8548MIDL_INTERFACE("2933bf88-7b36-11d2-b20e-00c04f983e60")
 8549IXMLDOMComment : public IXMLDOMCharacterData
 8550{
 8551};
 8552#ifdef __CRT_UUID_DECL
 8553__CRT_UUID_DECL(IXMLDOMComment, 0x2933bf88, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 8554#endif
 8555#else
 8556typedef struct IXMLDOMCommentVtbl {
 8557    BEGIN_INTERFACE
 8558
 8559    /*** IUnknown methods ***/
 8560    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8561        IXMLDOMComment *This,
 8562        REFIID riid,
 8563        void **ppvObject);
 8564
 8565    ULONG (STDMETHODCALLTYPE *AddRef)(
 8566        IXMLDOMComment *This);
 8567
 8568    ULONG (STDMETHODCALLTYPE *Release)(
 8569        IXMLDOMComment *This);
 8570
 8571    /*** IDispatch methods ***/
 8572    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 8573        IXMLDOMComment *This,
 8574        UINT *pctinfo);
 8575
 8576    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 8577        IXMLDOMComment *This,
 8578        UINT iTInfo,
 8579        LCID lcid,
 8580        ITypeInfo **ppTInfo);
 8581
 8582    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 8583        IXMLDOMComment *This,
 8584        REFIID riid,
 8585        LPOLESTR *rgszNames,
 8586        UINT cNames,
 8587        LCID lcid,
 8588        DISPID *rgDispId);
 8589
 8590    HRESULT (STDMETHODCALLTYPE *Invoke)(
 8591        IXMLDOMComment *This,
 8592        DISPID dispIdMember,
 8593        REFIID riid,
 8594        LCID lcid,
 8595        WORD wFlags,
 8596        DISPPARAMS *pDispParams,
 8597        VARIANT *pVarResult,
 8598        EXCEPINFO *pExcepInfo,
 8599        UINT *puArgErr);
 8600
 8601    /*** IXMLDOMNode methods ***/
 8602    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 8603        IXMLDOMComment *This,
 8604        BSTR *p);
 8605
 8606    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 8607        IXMLDOMComment *This,
 8608        VARIANT *var1);
 8609
 8610    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 8611        IXMLDOMComment *This,
 8612        VARIANT var1);
 8613
 8614    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 8615        IXMLDOMComment *This,
 8616        DOMNodeType *domNodeType);
 8617
 8618    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 8619        IXMLDOMComment *This,
 8620        IXMLDOMNode **parent);
 8621
 8622    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 8623        IXMLDOMComment *This,
 8624        IXMLDOMNodeList **outList);
 8625
 8626    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 8627        IXMLDOMComment *This,
 8628        IXMLDOMNode **domNode);
 8629
 8630    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 8631        IXMLDOMComment *This,
 8632        IXMLDOMNode **domNode);
 8633
 8634    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 8635        IXMLDOMComment *This,
 8636        IXMLDOMNode **domNode);
 8637
 8638    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 8639        IXMLDOMComment *This,
 8640        IXMLDOMNode **domNode);
 8641
 8642    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 8643        IXMLDOMComment *This,
 8644        IXMLDOMNamedNodeMap **attributeMap);
 8645
 8646    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 8647        IXMLDOMComment *This,
 8648        IXMLDOMNode *newNode,
 8649        VARIANT var1,
 8650        IXMLDOMNode **outOldNode);
 8651
 8652    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 8653        IXMLDOMComment *This,
 8654        IXMLDOMNode *newNode,
 8655        IXMLDOMNode *oldNode,
 8656        IXMLDOMNode **outOldNode);
 8657
 8658    HRESULT (STDMETHODCALLTYPE *removeChild)(
 8659        IXMLDOMComment *This,
 8660        IXMLDOMNode *domNode,
 8661        IXMLDOMNode **oldNode);
 8662
 8663    HRESULT (STDMETHODCALLTYPE *appendChild)(
 8664        IXMLDOMComment *This,
 8665        IXMLDOMNode *newNode,
 8666        IXMLDOMNode **outNewNode);
 8667
 8668    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 8669        IXMLDOMComment *This,
 8670        VARIANT_BOOL *pbool);
 8671
 8672    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 8673        IXMLDOMComment *This,
 8674        IXMLDOMDocument **domDocument);
 8675
 8676    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 8677        IXMLDOMComment *This,
 8678        VARIANT_BOOL pbool,
 8679        IXMLDOMNode **outNode);
 8680
 8681    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 8682        IXMLDOMComment *This,
 8683        BSTR *p);
 8684
 8685    HRESULT (STDMETHODCALLTYPE *get_text)(
 8686        IXMLDOMComment *This,
 8687        BSTR *p);
 8688
 8689    HRESULT (STDMETHODCALLTYPE *put_text)(
 8690        IXMLDOMComment *This,
 8691        BSTR p);
 8692
 8693    HRESULT (STDMETHODCALLTYPE *get_specified)(
 8694        IXMLDOMComment *This,
 8695        VARIANT_BOOL *pbool);
 8696
 8697    HRESULT (STDMETHODCALLTYPE *get_definition)(
 8698        IXMLDOMComment *This,
 8699        IXMLDOMNode **domNode);
 8700
 8701    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 8702        IXMLDOMComment *This,
 8703        VARIANT *var1);
 8704
 8705    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 8706        IXMLDOMComment *This,
 8707        VARIANT var1);
 8708
 8709    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 8710        IXMLDOMComment *This,
 8711        VARIANT *var1);
 8712
 8713    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 8714        IXMLDOMComment *This,
 8715        BSTR p);
 8716
 8717    HRESULT (STDMETHODCALLTYPE *get_xml)(
 8718        IXMLDOMComment *This,
 8719        BSTR *p);
 8720
 8721    HRESULT (STDMETHODCALLTYPE *transformNode)(
 8722        IXMLDOMComment *This,
 8723        IXMLDOMNode *domNode,
 8724        BSTR *p);
 8725
 8726    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 8727        IXMLDOMComment *This,
 8728        BSTR p,
 8729        IXMLDOMNodeList **outList);
 8730
 8731    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 8732        IXMLDOMComment *This,
 8733        BSTR p,
 8734        IXMLDOMNode **outNode);
 8735
 8736    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 8737        IXMLDOMComment *This,
 8738        VARIANT_BOOL *pbool);
 8739
 8740    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 8741        IXMLDOMComment *This,
 8742        BSTR *p);
 8743
 8744    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 8745        IXMLDOMComment *This,
 8746        BSTR *p);
 8747
 8748    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 8749        IXMLDOMComment *This,
 8750        BSTR *p);
 8751
 8752    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 8753        IXMLDOMComment *This,
 8754        IXMLDOMNode *domNode,
 8755        VARIANT var1);
 8756
 8757    /*** IXMLDOMCharacterData methods ***/
 8758    HRESULT (STDMETHODCALLTYPE *get_data)(
 8759        IXMLDOMComment *This,
 8760        BSTR *p);
 8761
 8762    HRESULT (STDMETHODCALLTYPE *put_data)(
 8763        IXMLDOMComment *This,
 8764        BSTR data);
 8765
 8766    HRESULT (STDMETHODCALLTYPE *get_length)(
 8767        IXMLDOMComment *This,
 8768        LONG *len);
 8769
 8770    HRESULT (STDMETHODCALLTYPE *substringData)(
 8771        IXMLDOMComment *This,
 8772        LONG offset,
 8773        LONG count,
 8774        BSTR *p);
 8775
 8776    HRESULT (STDMETHODCALLTYPE *appendData)(
 8777        IXMLDOMComment *This,
 8778        BSTR p);
 8779
 8780    HRESULT (STDMETHODCALLTYPE *insertData)(
 8781        IXMLDOMComment *This,
 8782        LONG offset,
 8783        BSTR p);
 8784
 8785    HRESULT (STDMETHODCALLTYPE *deleteData)(
 8786        IXMLDOMComment *This,
 8787        LONG offset,
 8788        LONG count);
 8789
 8790    HRESULT (STDMETHODCALLTYPE *replaceData)(
 8791        IXMLDOMComment *This,
 8792        LONG offset,
 8793        LONG count,
 8794        BSTR p);
 8795
 8796    END_INTERFACE
 8797} IXMLDOMCommentVtbl;
 8798
 8799interface IXMLDOMComment {
 8800    CONST_VTBL IXMLDOMCommentVtbl* lpVtbl;
 8801};
 8802
 8803#ifdef COBJMACROS
 8804#ifndef WIDL_C_INLINE_WRAPPERS
 8805/*** IUnknown methods ***/
 8806#define IXMLDOMComment_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8807#define IXMLDOMComment_AddRef(This) (This)->lpVtbl->AddRef(This)
 8808#define IXMLDOMComment_Release(This) (This)->lpVtbl->Release(This)
 8809/*** IDispatch methods ***/
 8810#define IXMLDOMComment_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 8811#define IXMLDOMComment_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 8812#define IXMLDOMComment_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 8813#define IXMLDOMComment_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 8814/*** IXMLDOMNode methods ***/
 8815#define IXMLDOMComment_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 8816#define IXMLDOMComment_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 8817#define IXMLDOMComment_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 8818#define IXMLDOMComment_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 8819#define IXMLDOMComment_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 8820#define IXMLDOMComment_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 8821#define IXMLDOMComment_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 8822#define IXMLDOMComment_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 8823#define IXMLDOMComment_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 8824#define IXMLDOMComment_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 8825#define IXMLDOMComment_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 8826#define IXMLDOMComment_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 8827#define IXMLDOMComment_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 8828#define IXMLDOMComment_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 8829#define IXMLDOMComment_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 8830#define IXMLDOMComment_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 8831#define IXMLDOMComment_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 8832#define IXMLDOMComment_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 8833#define IXMLDOMComment_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 8834#define IXMLDOMComment_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 8835#define IXMLDOMComment_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 8836#define IXMLDOMComment_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 8837#define IXMLDOMComment_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 8838#define IXMLDOMComment_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 8839#define IXMLDOMComment_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 8840#define IXMLDOMComment_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 8841#define IXMLDOMComment_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 8842#define IXMLDOMComment_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 8843#define IXMLDOMComment_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 8844#define IXMLDOMComment_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 8845#define IXMLDOMComment_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 8846#define IXMLDOMComment_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 8847#define IXMLDOMComment_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 8848#define IXMLDOMComment_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 8849#define IXMLDOMComment_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 8850#define IXMLDOMComment_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 8851/*** IXMLDOMCharacterData methods ***/
 8852#define IXMLDOMComment_get_data(This,p) (This)->lpVtbl->get_data(This,p)
 8853#define IXMLDOMComment_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 8854#define IXMLDOMComment_get_length(This,len) (This)->lpVtbl->get_length(This,len)
 8855#define IXMLDOMComment_substringData(This,offset,count,p) (This)->lpVtbl->substringData(This,offset,count,p)
 8856#define IXMLDOMComment_appendData(This,p) (This)->lpVtbl->appendData(This,p)
 8857#define IXMLDOMComment_insertData(This,offset,p) (This)->lpVtbl->insertData(This,offset,p)
 8858#define IXMLDOMComment_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 8859#define IXMLDOMComment_replaceData(This,offset,count,p) (This)->lpVtbl->replaceData(This,offset,count,p)
 8860#else
 8861/*** IUnknown methods ***/
 8862static inline HRESULT IXMLDOMComment_QueryInterface(IXMLDOMComment* This,REFIID riid,void **ppvObject) {
 8863    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8864}
 8865static inline ULONG IXMLDOMComment_AddRef(IXMLDOMComment* This) {
 8866    return This->lpVtbl->AddRef(This);
 8867}
 8868static inline ULONG IXMLDOMComment_Release(IXMLDOMComment* This) {
 8869    return This->lpVtbl->Release(This);
 8870}
 8871/*** IDispatch methods ***/
 8872static inline HRESULT IXMLDOMComment_GetTypeInfoCount(IXMLDOMComment* This,UINT *pctinfo) {
 8873    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 8874}
 8875static inline HRESULT IXMLDOMComment_GetTypeInfo(IXMLDOMComment* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 8876    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 8877}
 8878static inline HRESULT IXMLDOMComment_GetIDsOfNames(IXMLDOMComment* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 8879    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 8880}
 8881static inline HRESULT IXMLDOMComment_Invoke(IXMLDOMComment* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 8882    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 8883}
 8884/*** IXMLDOMNode methods ***/
 8885static inline HRESULT IXMLDOMComment_get_nodeName(IXMLDOMComment* This,BSTR *p) {
 8886    return This->lpVtbl->get_nodeName(This,p);
 8887}
 8888static inline HRESULT IXMLDOMComment_get_nodeValue(IXMLDOMComment* This,VARIANT *var1) {
 8889    return This->lpVtbl->get_nodeValue(This,var1);
 8890}
 8891static inline HRESULT IXMLDOMComment_put_nodeValue(IXMLDOMComment* This,VARIANT var1) {
 8892    return This->lpVtbl->put_nodeValue(This,var1);
 8893}
 8894static inline HRESULT IXMLDOMComment_get_nodeType(IXMLDOMComment* This,DOMNodeType *domNodeType) {
 8895    return This->lpVtbl->get_nodeType(This,domNodeType);
 8896}
 8897static inline HRESULT IXMLDOMComment_get_parentNode(IXMLDOMComment* This,IXMLDOMNode **parent) {
 8898    return This->lpVtbl->get_parentNode(This,parent);
 8899}
 8900static inline HRESULT IXMLDOMComment_get_childNodes(IXMLDOMComment* This,IXMLDOMNodeList **outList) {
 8901    return This->lpVtbl->get_childNodes(This,outList);
 8902}
 8903static inline HRESULT IXMLDOMComment_get_firstChild(IXMLDOMComment* This,IXMLDOMNode **domNode) {
 8904    return This->lpVtbl->get_firstChild(This,domNode);
 8905}
 8906static inline HRESULT IXMLDOMComment_get_lastChild(IXMLDOMComment* This,IXMLDOMNode **domNode) {
 8907    return This->lpVtbl->get_lastChild(This,domNode);
 8908}
 8909static inline HRESULT IXMLDOMComment_get_previousSibling(IXMLDOMComment* This,IXMLDOMNode **domNode) {
 8910    return This->lpVtbl->get_previousSibling(This,domNode);
 8911}
 8912static inline HRESULT IXMLDOMComment_get_nextSibling(IXMLDOMComment* This,IXMLDOMNode **domNode) {
 8913    return This->lpVtbl->get_nextSibling(This,domNode);
 8914}
 8915static inline HRESULT IXMLDOMComment_get_attributes(IXMLDOMComment* This,IXMLDOMNamedNodeMap **attributeMap) {
 8916    return This->lpVtbl->get_attributes(This,attributeMap);
 8917}
 8918static inline HRESULT IXMLDOMComment_insertBefore(IXMLDOMComment* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 8919    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 8920}
 8921static inline HRESULT IXMLDOMComment_replaceChild(IXMLDOMComment* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 8922    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 8923}
 8924static inline HRESULT IXMLDOMComment_removeChild(IXMLDOMComment* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 8925    return This->lpVtbl->removeChild(This,domNode,oldNode);
 8926}
 8927static inline HRESULT IXMLDOMComment_appendChild(IXMLDOMComment* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 8928    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 8929}
 8930static inline HRESULT IXMLDOMComment_hasChildNodes(IXMLDOMComment* This,VARIANT_BOOL *pbool) {
 8931    return This->lpVtbl->hasChildNodes(This,pbool);
 8932}
 8933static inline HRESULT IXMLDOMComment_get_ownerDocument(IXMLDOMComment* This,IXMLDOMDocument **domDocument) {
 8934    return This->lpVtbl->get_ownerDocument(This,domDocument);
 8935}
 8936static inline HRESULT IXMLDOMComment_cloneNode(IXMLDOMComment* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 8937    return This->lpVtbl->cloneNode(This,pbool,outNode);
 8938}
 8939static inline HRESULT IXMLDOMComment_get_nodeTypeString(IXMLDOMComment* This,BSTR *p) {
 8940    return This->lpVtbl->get_nodeTypeString(This,p);
 8941}
 8942static inline HRESULT IXMLDOMComment_get_text(IXMLDOMComment* This,BSTR *p) {
 8943    return This->lpVtbl->get_text(This,p);
 8944}
 8945static inline HRESULT IXMLDOMComment_put_text(IXMLDOMComment* This,BSTR p) {
 8946    return This->lpVtbl->put_text(This,p);
 8947}
 8948static inline HRESULT IXMLDOMComment_get_specified(IXMLDOMComment* This,VARIANT_BOOL *pbool) {
 8949    return This->lpVtbl->get_specified(This,pbool);
 8950}
 8951static inline HRESULT IXMLDOMComment_get_definition(IXMLDOMComment* This,IXMLDOMNode **domNode) {
 8952    return This->lpVtbl->get_definition(This,domNode);
 8953}
 8954static inline HRESULT IXMLDOMComment_get_nodeTypedValue(IXMLDOMComment* This,VARIANT *var1) {
 8955    return This->lpVtbl->get_nodeTypedValue(This,var1);
 8956}
 8957static inline HRESULT IXMLDOMComment_put_nodeTypedValue(IXMLDOMComment* This,VARIANT var1) {
 8958    return This->lpVtbl->put_nodeTypedValue(This,var1);
 8959}
 8960static inline HRESULT IXMLDOMComment_get_dataType(IXMLDOMComment* This,VARIANT *var1) {
 8961    return This->lpVtbl->get_dataType(This,var1);
 8962}
 8963static inline HRESULT IXMLDOMComment_put_dataType(IXMLDOMComment* This,BSTR p) {
 8964    return This->lpVtbl->put_dataType(This,p);
 8965}
 8966static inline HRESULT IXMLDOMComment_get_xml(IXMLDOMComment* This,BSTR *p) {
 8967    return This->lpVtbl->get_xml(This,p);
 8968}
 8969static inline HRESULT IXMLDOMComment_transformNode(IXMLDOMComment* This,IXMLDOMNode *domNode,BSTR *p) {
 8970    return This->lpVtbl->transformNode(This,domNode,p);
 8971}
 8972static inline HRESULT IXMLDOMComment_selectNodes(IXMLDOMComment* This,BSTR p,IXMLDOMNodeList **outList) {
 8973    return This->lpVtbl->selectNodes(This,p,outList);
 8974}
 8975static inline HRESULT IXMLDOMComment_selectSingleNode(IXMLDOMComment* This,BSTR p,IXMLDOMNode **outNode) {
 8976    return This->lpVtbl->selectSingleNode(This,p,outNode);
 8977}
 8978static inline HRESULT IXMLDOMComment_get_parsed(IXMLDOMComment* This,VARIANT_BOOL *pbool) {
 8979    return This->lpVtbl->get_parsed(This,pbool);
 8980}
 8981static inline HRESULT IXMLDOMComment_get_namespaceURI(IXMLDOMComment* This,BSTR *p) {
 8982    return This->lpVtbl->get_namespaceURI(This,p);
 8983}
 8984static inline HRESULT IXMLDOMComment_get_prefix(IXMLDOMComment* This,BSTR *p) {
 8985    return This->lpVtbl->get_prefix(This,p);
 8986}
 8987static inline HRESULT IXMLDOMComment_get_baseName(IXMLDOMComment* This,BSTR *p) {
 8988    return This->lpVtbl->get_baseName(This,p);
 8989}
 8990static inline HRESULT IXMLDOMComment_transformNodeToObject(IXMLDOMComment* This,IXMLDOMNode *domNode,VARIANT var1) {
 8991    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 8992}
 8993/*** IXMLDOMCharacterData methods ***/
 8994static inline HRESULT IXMLDOMComment_get_data(IXMLDOMComment* This,BSTR *p) {
 8995    return This->lpVtbl->get_data(This,p);
 8996}
 8997static inline HRESULT IXMLDOMComment_put_data(IXMLDOMComment* This,BSTR data) {
 8998    return This->lpVtbl->put_data(This,data);
 8999}
 9000static inline HRESULT IXMLDOMComment_get_length(IXMLDOMComment* This,LONG *len) {
 9001    return This->lpVtbl->get_length(This,len);
 9002}
 9003static inline HRESULT IXMLDOMComment_substringData(IXMLDOMComment* This,LONG offset,LONG count,BSTR *p) {
 9004    return This->lpVtbl->substringData(This,offset,count,p);
 9005}
 9006static inline HRESULT IXMLDOMComment_appendData(IXMLDOMComment* This,BSTR p) {
 9007    return This->lpVtbl->appendData(This,p);
 9008}
 9009static inline HRESULT IXMLDOMComment_insertData(IXMLDOMComment* This,LONG offset,BSTR p) {
 9010    return This->lpVtbl->insertData(This,offset,p);
 9011}
 9012static inline HRESULT IXMLDOMComment_deleteData(IXMLDOMComment* This,LONG offset,LONG count) {
 9013    return This->lpVtbl->deleteData(This,offset,count);
 9014}
 9015static inline HRESULT IXMLDOMComment_replaceData(IXMLDOMComment* This,LONG offset,LONG count,BSTR p) {
 9016    return This->lpVtbl->replaceData(This,offset,count,p);
 9017}
 9018#endif
 9019#endif
 9020
 9021#endif
 9022
 9023
 9024#endif  /* __IXMLDOMComment_INTERFACE_DEFINED__ */
 9025
 9026/*****************************************************************************
 9027 * IXMLDOMProcessingInstruction interface
 9028 */
 9029#ifndef __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__
 9030#define __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__
 9031
 9032DEFINE_GUID(IID_IXMLDOMProcessingInstruction, 0x2933bf89, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 9033#if defined(__cplusplus) && !defined(CINTERFACE)
 9034MIDL_INTERFACE("2933bf89-7b36-11d2-b20e-00c04f983e60")
 9035IXMLDOMProcessingInstruction : public IXMLDOMNode
 9036{
 9037    virtual HRESULT STDMETHODCALLTYPE get_target(
 9038        BSTR *p) = 0;
 9039
 9040    virtual HRESULT STDMETHODCALLTYPE get_data(
 9041        BSTR *p) = 0;
 9042
 9043    virtual HRESULT STDMETHODCALLTYPE put_data(
 9044        BSTR p) = 0;
 9045
 9046};
 9047#ifdef __CRT_UUID_DECL
 9048__CRT_UUID_DECL(IXMLDOMProcessingInstruction, 0x2933bf89, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 9049#endif
 9050#else
 9051typedef struct IXMLDOMProcessingInstructionVtbl {
 9052    BEGIN_INTERFACE
 9053
 9054    /*** IUnknown methods ***/
 9055    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9056        IXMLDOMProcessingInstruction *This,
 9057        REFIID riid,
 9058        void **ppvObject);
 9059
 9060    ULONG (STDMETHODCALLTYPE *AddRef)(
 9061        IXMLDOMProcessingInstruction *This);
 9062
 9063    ULONG (STDMETHODCALLTYPE *Release)(
 9064        IXMLDOMProcessingInstruction *This);
 9065
 9066    /*** IDispatch methods ***/
 9067    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 9068        IXMLDOMProcessingInstruction *This,
 9069        UINT *pctinfo);
 9070
 9071    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 9072        IXMLDOMProcessingInstruction *This,
 9073        UINT iTInfo,
 9074        LCID lcid,
 9075        ITypeInfo **ppTInfo);
 9076
 9077    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 9078        IXMLDOMProcessingInstruction *This,
 9079        REFIID riid,
 9080        LPOLESTR *rgszNames,
 9081        UINT cNames,
 9082        LCID lcid,
 9083        DISPID *rgDispId);
 9084
 9085    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9086        IXMLDOMProcessingInstruction *This,
 9087        DISPID dispIdMember,
 9088        REFIID riid,
 9089        LCID lcid,
 9090        WORD wFlags,
 9091        DISPPARAMS *pDispParams,
 9092        VARIANT *pVarResult,
 9093        EXCEPINFO *pExcepInfo,
 9094        UINT *puArgErr);
 9095
 9096    /*** IXMLDOMNode methods ***/
 9097    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 9098        IXMLDOMProcessingInstruction *This,
 9099        BSTR *p);
 9100
 9101    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 9102        IXMLDOMProcessingInstruction *This,
 9103        VARIANT *var1);
 9104
 9105    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 9106        IXMLDOMProcessingInstruction *This,
 9107        VARIANT var1);
 9108
 9109    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 9110        IXMLDOMProcessingInstruction *This,
 9111        DOMNodeType *domNodeType);
 9112
 9113    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 9114        IXMLDOMProcessingInstruction *This,
 9115        IXMLDOMNode **parent);
 9116
 9117    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 9118        IXMLDOMProcessingInstruction *This,
 9119        IXMLDOMNodeList **outList);
 9120
 9121    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 9122        IXMLDOMProcessingInstruction *This,
 9123        IXMLDOMNode **domNode);
 9124
 9125    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 9126        IXMLDOMProcessingInstruction *This,
 9127        IXMLDOMNode **domNode);
 9128
 9129    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 9130        IXMLDOMProcessingInstruction *This,
 9131        IXMLDOMNode **domNode);
 9132
 9133    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 9134        IXMLDOMProcessingInstruction *This,
 9135        IXMLDOMNode **domNode);
 9136
 9137    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 9138        IXMLDOMProcessingInstruction *This,
 9139        IXMLDOMNamedNodeMap **attributeMap);
 9140
 9141    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 9142        IXMLDOMProcessingInstruction *This,
 9143        IXMLDOMNode *newNode,
 9144        VARIANT var1,
 9145        IXMLDOMNode **outOldNode);
 9146
 9147    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 9148        IXMLDOMProcessingInstruction *This,
 9149        IXMLDOMNode *newNode,
 9150        IXMLDOMNode *oldNode,
 9151        IXMLDOMNode **outOldNode);
 9152
 9153    HRESULT (STDMETHODCALLTYPE *removeChild)(
 9154        IXMLDOMProcessingInstruction *This,
 9155        IXMLDOMNode *domNode,
 9156        IXMLDOMNode **oldNode);
 9157
 9158    HRESULT (STDMETHODCALLTYPE *appendChild)(
 9159        IXMLDOMProcessingInstruction *This,
 9160        IXMLDOMNode *newNode,
 9161        IXMLDOMNode **outNewNode);
 9162
 9163    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 9164        IXMLDOMProcessingInstruction *This,
 9165        VARIANT_BOOL *pbool);
 9166
 9167    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 9168        IXMLDOMProcessingInstruction *This,
 9169        IXMLDOMDocument **domDocument);
 9170
 9171    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 9172        IXMLDOMProcessingInstruction *This,
 9173        VARIANT_BOOL pbool,
 9174        IXMLDOMNode **outNode);
 9175
 9176    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 9177        IXMLDOMProcessingInstruction *This,
 9178        BSTR *p);
 9179
 9180    HRESULT (STDMETHODCALLTYPE *get_text)(
 9181        IXMLDOMProcessingInstruction *This,
 9182        BSTR *p);
 9183
 9184    HRESULT (STDMETHODCALLTYPE *put_text)(
 9185        IXMLDOMProcessingInstruction *This,
 9186        BSTR p);
 9187
 9188    HRESULT (STDMETHODCALLTYPE *get_specified)(
 9189        IXMLDOMProcessingInstruction *This,
 9190        VARIANT_BOOL *pbool);
 9191
 9192    HRESULT (STDMETHODCALLTYPE *get_definition)(
 9193        IXMLDOMProcessingInstruction *This,
 9194        IXMLDOMNode **domNode);
 9195
 9196    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 9197        IXMLDOMProcessingInstruction *This,
 9198        VARIANT *var1);
 9199
 9200    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 9201        IXMLDOMProcessingInstruction *This,
 9202        VARIANT var1);
 9203
 9204    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 9205        IXMLDOMProcessingInstruction *This,
 9206        VARIANT *var1);
 9207
 9208    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 9209        IXMLDOMProcessingInstruction *This,
 9210        BSTR p);
 9211
 9212    HRESULT (STDMETHODCALLTYPE *get_xml)(
 9213        IXMLDOMProcessingInstruction *This,
 9214        BSTR *p);
 9215
 9216    HRESULT (STDMETHODCALLTYPE *transformNode)(
 9217        IXMLDOMProcessingInstruction *This,
 9218        IXMLDOMNode *domNode,
 9219        BSTR *p);
 9220
 9221    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 9222        IXMLDOMProcessingInstruction *This,
 9223        BSTR p,
 9224        IXMLDOMNodeList **outList);
 9225
 9226    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 9227        IXMLDOMProcessingInstruction *This,
 9228        BSTR p,
 9229        IXMLDOMNode **outNode);
 9230
 9231    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 9232        IXMLDOMProcessingInstruction *This,
 9233        VARIANT_BOOL *pbool);
 9234
 9235    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 9236        IXMLDOMProcessingInstruction *This,
 9237        BSTR *p);
 9238
 9239    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 9240        IXMLDOMProcessingInstruction *This,
 9241        BSTR *p);
 9242
 9243    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 9244        IXMLDOMProcessingInstruction *This,
 9245        BSTR *p);
 9246
 9247    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 9248        IXMLDOMProcessingInstruction *This,
 9249        IXMLDOMNode *domNode,
 9250        VARIANT var1);
 9251
 9252    /*** IXMLDOMProcessingInstruction methods ***/
 9253    HRESULT (STDMETHODCALLTYPE *get_target)(
 9254        IXMLDOMProcessingInstruction *This,
 9255        BSTR *p);
 9256
 9257    HRESULT (STDMETHODCALLTYPE *get_data)(
 9258        IXMLDOMProcessingInstruction *This,
 9259        BSTR *p);
 9260
 9261    HRESULT (STDMETHODCALLTYPE *put_data)(
 9262        IXMLDOMProcessingInstruction *This,
 9263        BSTR p);
 9264
 9265    END_INTERFACE
 9266} IXMLDOMProcessingInstructionVtbl;
 9267
 9268interface IXMLDOMProcessingInstruction {
 9269    CONST_VTBL IXMLDOMProcessingInstructionVtbl* lpVtbl;
 9270};
 9271
 9272#ifdef COBJMACROS
 9273#ifndef WIDL_C_INLINE_WRAPPERS
 9274/*** IUnknown methods ***/
 9275#define IXMLDOMProcessingInstruction_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9276#define IXMLDOMProcessingInstruction_AddRef(This) (This)->lpVtbl->AddRef(This)
 9277#define IXMLDOMProcessingInstruction_Release(This) (This)->lpVtbl->Release(This)
 9278/*** IDispatch methods ***/
 9279#define IXMLDOMProcessingInstruction_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9280#define IXMLDOMProcessingInstruction_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9281#define IXMLDOMProcessingInstruction_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9282#define IXMLDOMProcessingInstruction_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9283/*** IXMLDOMNode methods ***/
 9284#define IXMLDOMProcessingInstruction_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 9285#define IXMLDOMProcessingInstruction_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 9286#define IXMLDOMProcessingInstruction_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 9287#define IXMLDOMProcessingInstruction_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 9288#define IXMLDOMProcessingInstruction_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 9289#define IXMLDOMProcessingInstruction_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 9290#define IXMLDOMProcessingInstruction_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 9291#define IXMLDOMProcessingInstruction_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 9292#define IXMLDOMProcessingInstruction_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 9293#define IXMLDOMProcessingInstruction_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 9294#define IXMLDOMProcessingInstruction_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 9295#define IXMLDOMProcessingInstruction_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 9296#define IXMLDOMProcessingInstruction_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 9297#define IXMLDOMProcessingInstruction_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 9298#define IXMLDOMProcessingInstruction_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 9299#define IXMLDOMProcessingInstruction_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 9300#define IXMLDOMProcessingInstruction_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 9301#define IXMLDOMProcessingInstruction_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 9302#define IXMLDOMProcessingInstruction_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 9303#define IXMLDOMProcessingInstruction_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 9304#define IXMLDOMProcessingInstruction_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 9305#define IXMLDOMProcessingInstruction_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 9306#define IXMLDOMProcessingInstruction_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 9307#define IXMLDOMProcessingInstruction_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 9308#define IXMLDOMProcessingInstruction_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 9309#define IXMLDOMProcessingInstruction_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 9310#define IXMLDOMProcessingInstruction_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 9311#define IXMLDOMProcessingInstruction_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 9312#define IXMLDOMProcessingInstruction_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 9313#define IXMLDOMProcessingInstruction_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 9314#define IXMLDOMProcessingInstruction_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 9315#define IXMLDOMProcessingInstruction_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 9316#define IXMLDOMProcessingInstruction_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 9317#define IXMLDOMProcessingInstruction_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 9318#define IXMLDOMProcessingInstruction_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 9319#define IXMLDOMProcessingInstruction_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 9320/*** IXMLDOMProcessingInstruction methods ***/
 9321#define IXMLDOMProcessingInstruction_get_target(This,p) (This)->lpVtbl->get_target(This,p)
 9322#define IXMLDOMProcessingInstruction_get_data(This,p) (This)->lpVtbl->get_data(This,p)
 9323#define IXMLDOMProcessingInstruction_put_data(This,p) (This)->lpVtbl->put_data(This,p)
 9324#else
 9325/*** IUnknown methods ***/
 9326static inline HRESULT IXMLDOMProcessingInstruction_QueryInterface(IXMLDOMProcessingInstruction* This,REFIID riid,void **ppvObject) {
 9327    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9328}
 9329static inline ULONG IXMLDOMProcessingInstruction_AddRef(IXMLDOMProcessingInstruction* This) {
 9330    return This->lpVtbl->AddRef(This);
 9331}
 9332static inline ULONG IXMLDOMProcessingInstruction_Release(IXMLDOMProcessingInstruction* This) {
 9333    return This->lpVtbl->Release(This);
 9334}
 9335/*** IDispatch methods ***/
 9336static inline HRESULT IXMLDOMProcessingInstruction_GetTypeInfoCount(IXMLDOMProcessingInstruction* This,UINT *pctinfo) {
 9337    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9338}
 9339static inline HRESULT IXMLDOMProcessingInstruction_GetTypeInfo(IXMLDOMProcessingInstruction* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9340    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9341}
 9342static inline HRESULT IXMLDOMProcessingInstruction_GetIDsOfNames(IXMLDOMProcessingInstruction* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9343    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9344}
 9345static inline HRESULT IXMLDOMProcessingInstruction_Invoke(IXMLDOMProcessingInstruction* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9346    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9347}
 9348/*** IXMLDOMNode methods ***/
 9349static inline HRESULT IXMLDOMProcessingInstruction_get_nodeName(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9350    return This->lpVtbl->get_nodeName(This,p);
 9351}
 9352static inline HRESULT IXMLDOMProcessingInstruction_get_nodeValue(IXMLDOMProcessingInstruction* This,VARIANT *var1) {
 9353    return This->lpVtbl->get_nodeValue(This,var1);
 9354}
 9355static inline HRESULT IXMLDOMProcessingInstruction_put_nodeValue(IXMLDOMProcessingInstruction* This,VARIANT var1) {
 9356    return This->lpVtbl->put_nodeValue(This,var1);
 9357}
 9358static inline HRESULT IXMLDOMProcessingInstruction_get_nodeType(IXMLDOMProcessingInstruction* This,DOMNodeType *domNodeType) {
 9359    return This->lpVtbl->get_nodeType(This,domNodeType);
 9360}
 9361static inline HRESULT IXMLDOMProcessingInstruction_get_parentNode(IXMLDOMProcessingInstruction* This,IXMLDOMNode **parent) {
 9362    return This->lpVtbl->get_parentNode(This,parent);
 9363}
 9364static inline HRESULT IXMLDOMProcessingInstruction_get_childNodes(IXMLDOMProcessingInstruction* This,IXMLDOMNodeList **outList) {
 9365    return This->lpVtbl->get_childNodes(This,outList);
 9366}
 9367static inline HRESULT IXMLDOMProcessingInstruction_get_firstChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode **domNode) {
 9368    return This->lpVtbl->get_firstChild(This,domNode);
 9369}
 9370static inline HRESULT IXMLDOMProcessingInstruction_get_lastChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode **domNode) {
 9371    return This->lpVtbl->get_lastChild(This,domNode);
 9372}
 9373static inline HRESULT IXMLDOMProcessingInstruction_get_previousSibling(IXMLDOMProcessingInstruction* This,IXMLDOMNode **domNode) {
 9374    return This->lpVtbl->get_previousSibling(This,domNode);
 9375}
 9376static inline HRESULT IXMLDOMProcessingInstruction_get_nextSibling(IXMLDOMProcessingInstruction* This,IXMLDOMNode **domNode) {
 9377    return This->lpVtbl->get_nextSibling(This,domNode);
 9378}
 9379static inline HRESULT IXMLDOMProcessingInstruction_get_attributes(IXMLDOMProcessingInstruction* This,IXMLDOMNamedNodeMap **attributeMap) {
 9380    return This->lpVtbl->get_attributes(This,attributeMap);
 9381}
 9382static inline HRESULT IXMLDOMProcessingInstruction_insertBefore(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 9383    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 9384}
 9385static inline HRESULT IXMLDOMProcessingInstruction_replaceChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 9386    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 9387}
 9388static inline HRESULT IXMLDOMProcessingInstruction_removeChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 9389    return This->lpVtbl->removeChild(This,domNode,oldNode);
 9390}
 9391static inline HRESULT IXMLDOMProcessingInstruction_appendChild(IXMLDOMProcessingInstruction* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 9392    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 9393}
 9394static inline HRESULT IXMLDOMProcessingInstruction_hasChildNodes(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *pbool) {
 9395    return This->lpVtbl->hasChildNodes(This,pbool);
 9396}
 9397static inline HRESULT IXMLDOMProcessingInstruction_get_ownerDocument(IXMLDOMProcessingInstruction* This,IXMLDOMDocument **domDocument) {
 9398    return This->lpVtbl->get_ownerDocument(This,domDocument);
 9399}
 9400static inline HRESULT IXMLDOMProcessingInstruction_cloneNode(IXMLDOMProcessingInstruction* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 9401    return This->lpVtbl->cloneNode(This,pbool,outNode);
 9402}
 9403static inline HRESULT IXMLDOMProcessingInstruction_get_nodeTypeString(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9404    return This->lpVtbl->get_nodeTypeString(This,p);
 9405}
 9406static inline HRESULT IXMLDOMProcessingInstruction_get_text(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9407    return This->lpVtbl->get_text(This,p);
 9408}
 9409static inline HRESULT IXMLDOMProcessingInstruction_put_text(IXMLDOMProcessingInstruction* This,BSTR p) {
 9410    return This->lpVtbl->put_text(This,p);
 9411}
 9412static inline HRESULT IXMLDOMProcessingInstruction_get_specified(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *pbool) {
 9413    return This->lpVtbl->get_specified(This,pbool);
 9414}
 9415static inline HRESULT IXMLDOMProcessingInstruction_get_definition(IXMLDOMProcessingInstruction* This,IXMLDOMNode **domNode) {
 9416    return This->lpVtbl->get_definition(This,domNode);
 9417}
 9418static inline HRESULT IXMLDOMProcessingInstruction_get_nodeTypedValue(IXMLDOMProcessingInstruction* This,VARIANT *var1) {
 9419    return This->lpVtbl->get_nodeTypedValue(This,var1);
 9420}
 9421static inline HRESULT IXMLDOMProcessingInstruction_put_nodeTypedValue(IXMLDOMProcessingInstruction* This,VARIANT var1) {
 9422    return This->lpVtbl->put_nodeTypedValue(This,var1);
 9423}
 9424static inline HRESULT IXMLDOMProcessingInstruction_get_dataType(IXMLDOMProcessingInstruction* This,VARIANT *var1) {
 9425    return This->lpVtbl->get_dataType(This,var1);
 9426}
 9427static inline HRESULT IXMLDOMProcessingInstruction_put_dataType(IXMLDOMProcessingInstruction* This,BSTR p) {
 9428    return This->lpVtbl->put_dataType(This,p);
 9429}
 9430static inline HRESULT IXMLDOMProcessingInstruction_get_xml(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9431    return This->lpVtbl->get_xml(This,p);
 9432}
 9433static inline HRESULT IXMLDOMProcessingInstruction_transformNode(IXMLDOMProcessingInstruction* This,IXMLDOMNode *domNode,BSTR *p) {
 9434    return This->lpVtbl->transformNode(This,domNode,p);
 9435}
 9436static inline HRESULT IXMLDOMProcessingInstruction_selectNodes(IXMLDOMProcessingInstruction* This,BSTR p,IXMLDOMNodeList **outList) {
 9437    return This->lpVtbl->selectNodes(This,p,outList);
 9438}
 9439static inline HRESULT IXMLDOMProcessingInstruction_selectSingleNode(IXMLDOMProcessingInstruction* This,BSTR p,IXMLDOMNode **outNode) {
 9440    return This->lpVtbl->selectSingleNode(This,p,outNode);
 9441}
 9442static inline HRESULT IXMLDOMProcessingInstruction_get_parsed(IXMLDOMProcessingInstruction* This,VARIANT_BOOL *pbool) {
 9443    return This->lpVtbl->get_parsed(This,pbool);
 9444}
 9445static inline HRESULT IXMLDOMProcessingInstruction_get_namespaceURI(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9446    return This->lpVtbl->get_namespaceURI(This,p);
 9447}
 9448static inline HRESULT IXMLDOMProcessingInstruction_get_prefix(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9449    return This->lpVtbl->get_prefix(This,p);
 9450}
 9451static inline HRESULT IXMLDOMProcessingInstruction_get_baseName(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9452    return This->lpVtbl->get_baseName(This,p);
 9453}
 9454static inline HRESULT IXMLDOMProcessingInstruction_transformNodeToObject(IXMLDOMProcessingInstruction* This,IXMLDOMNode *domNode,VARIANT var1) {
 9455    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 9456}
 9457/*** IXMLDOMProcessingInstruction methods ***/
 9458static inline HRESULT IXMLDOMProcessingInstruction_get_target(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9459    return This->lpVtbl->get_target(This,p);
 9460}
 9461static inline HRESULT IXMLDOMProcessingInstruction_get_data(IXMLDOMProcessingInstruction* This,BSTR *p) {
 9462    return This->lpVtbl->get_data(This,p);
 9463}
 9464static inline HRESULT IXMLDOMProcessingInstruction_put_data(IXMLDOMProcessingInstruction* This,BSTR p) {
 9465    return This->lpVtbl->put_data(This,p);
 9466}
 9467#endif
 9468#endif
 9469
 9470#endif
 9471
 9472
 9473#endif  /* __IXMLDOMProcessingInstruction_INTERFACE_DEFINED__ */
 9474
 9475/*****************************************************************************
 9476 * IXMLDOMCDATASection interface
 9477 */
 9478#ifndef __IXMLDOMCDATASection_INTERFACE_DEFINED__
 9479#define __IXMLDOMCDATASection_INTERFACE_DEFINED__
 9480
 9481DEFINE_GUID(IID_IXMLDOMCDATASection, 0x2933bf8a, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 9482#if defined(__cplusplus) && !defined(CINTERFACE)
 9483MIDL_INTERFACE("2933bf8a-7b36-11d2-b20e-00c04f983e60")
 9484IXMLDOMCDATASection : public IXMLDOMText
 9485{
 9486};
 9487#ifdef __CRT_UUID_DECL
 9488__CRT_UUID_DECL(IXMLDOMCDATASection, 0x2933bf8a, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 9489#endif
 9490#else
 9491typedef struct IXMLDOMCDATASectionVtbl {
 9492    BEGIN_INTERFACE
 9493
 9494    /*** IUnknown methods ***/
 9495    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9496        IXMLDOMCDATASection *This,
 9497        REFIID riid,
 9498        void **ppvObject);
 9499
 9500    ULONG (STDMETHODCALLTYPE *AddRef)(
 9501        IXMLDOMCDATASection *This);
 9502
 9503    ULONG (STDMETHODCALLTYPE *Release)(
 9504        IXMLDOMCDATASection *This);
 9505
 9506    /*** IDispatch methods ***/
 9507    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 9508        IXMLDOMCDATASection *This,
 9509        UINT *pctinfo);
 9510
 9511    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 9512        IXMLDOMCDATASection *This,
 9513        UINT iTInfo,
 9514        LCID lcid,
 9515        ITypeInfo **ppTInfo);
 9516
 9517    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 9518        IXMLDOMCDATASection *This,
 9519        REFIID riid,
 9520        LPOLESTR *rgszNames,
 9521        UINT cNames,
 9522        LCID lcid,
 9523        DISPID *rgDispId);
 9524
 9525    HRESULT (STDMETHODCALLTYPE *Invoke)(
 9526        IXMLDOMCDATASection *This,
 9527        DISPID dispIdMember,
 9528        REFIID riid,
 9529        LCID lcid,
 9530        WORD wFlags,
 9531        DISPPARAMS *pDispParams,
 9532        VARIANT *pVarResult,
 9533        EXCEPINFO *pExcepInfo,
 9534        UINT *puArgErr);
 9535
 9536    /*** IXMLDOMNode methods ***/
 9537    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
 9538        IXMLDOMCDATASection *This,
 9539        BSTR *p);
 9540
 9541    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
 9542        IXMLDOMCDATASection *This,
 9543        VARIANT *var1);
 9544
 9545    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
 9546        IXMLDOMCDATASection *This,
 9547        VARIANT var1);
 9548
 9549    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
 9550        IXMLDOMCDATASection *This,
 9551        DOMNodeType *domNodeType);
 9552
 9553    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
 9554        IXMLDOMCDATASection *This,
 9555        IXMLDOMNode **parent);
 9556
 9557    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
 9558        IXMLDOMCDATASection *This,
 9559        IXMLDOMNodeList **outList);
 9560
 9561    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
 9562        IXMLDOMCDATASection *This,
 9563        IXMLDOMNode **domNode);
 9564
 9565    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
 9566        IXMLDOMCDATASection *This,
 9567        IXMLDOMNode **domNode);
 9568
 9569    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
 9570        IXMLDOMCDATASection *This,
 9571        IXMLDOMNode **domNode);
 9572
 9573    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
 9574        IXMLDOMCDATASection *This,
 9575        IXMLDOMNode **domNode);
 9576
 9577    HRESULT (STDMETHODCALLTYPE *get_attributes)(
 9578        IXMLDOMCDATASection *This,
 9579        IXMLDOMNamedNodeMap **attributeMap);
 9580
 9581    HRESULT (STDMETHODCALLTYPE *insertBefore)(
 9582        IXMLDOMCDATASection *This,
 9583        IXMLDOMNode *newNode,
 9584        VARIANT var1,
 9585        IXMLDOMNode **outOldNode);
 9586
 9587    HRESULT (STDMETHODCALLTYPE *replaceChild)(
 9588        IXMLDOMCDATASection *This,
 9589        IXMLDOMNode *newNode,
 9590        IXMLDOMNode *oldNode,
 9591        IXMLDOMNode **outOldNode);
 9592
 9593    HRESULT (STDMETHODCALLTYPE *removeChild)(
 9594        IXMLDOMCDATASection *This,
 9595        IXMLDOMNode *domNode,
 9596        IXMLDOMNode **oldNode);
 9597
 9598    HRESULT (STDMETHODCALLTYPE *appendChild)(
 9599        IXMLDOMCDATASection *This,
 9600        IXMLDOMNode *newNode,
 9601        IXMLDOMNode **outNewNode);
 9602
 9603    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
 9604        IXMLDOMCDATASection *This,
 9605        VARIANT_BOOL *pbool);
 9606
 9607    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
 9608        IXMLDOMCDATASection *This,
 9609        IXMLDOMDocument **domDocument);
 9610
 9611    HRESULT (STDMETHODCALLTYPE *cloneNode)(
 9612        IXMLDOMCDATASection *This,
 9613        VARIANT_BOOL pbool,
 9614        IXMLDOMNode **outNode);
 9615
 9616    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
 9617        IXMLDOMCDATASection *This,
 9618        BSTR *p);
 9619
 9620    HRESULT (STDMETHODCALLTYPE *get_text)(
 9621        IXMLDOMCDATASection *This,
 9622        BSTR *p);
 9623
 9624    HRESULT (STDMETHODCALLTYPE *put_text)(
 9625        IXMLDOMCDATASection *This,
 9626        BSTR p);
 9627
 9628    HRESULT (STDMETHODCALLTYPE *get_specified)(
 9629        IXMLDOMCDATASection *This,
 9630        VARIANT_BOOL *pbool);
 9631
 9632    HRESULT (STDMETHODCALLTYPE *get_definition)(
 9633        IXMLDOMCDATASection *This,
 9634        IXMLDOMNode **domNode);
 9635
 9636    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
 9637        IXMLDOMCDATASection *This,
 9638        VARIANT *var1);
 9639
 9640    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
 9641        IXMLDOMCDATASection *This,
 9642        VARIANT var1);
 9643
 9644    HRESULT (STDMETHODCALLTYPE *get_dataType)(
 9645        IXMLDOMCDATASection *This,
 9646        VARIANT *var1);
 9647
 9648    HRESULT (STDMETHODCALLTYPE *put_dataType)(
 9649        IXMLDOMCDATASection *This,
 9650        BSTR p);
 9651
 9652    HRESULT (STDMETHODCALLTYPE *get_xml)(
 9653        IXMLDOMCDATASection *This,
 9654        BSTR *p);
 9655
 9656    HRESULT (STDMETHODCALLTYPE *transformNode)(
 9657        IXMLDOMCDATASection *This,
 9658        IXMLDOMNode *domNode,
 9659        BSTR *p);
 9660
 9661    HRESULT (STDMETHODCALLTYPE *selectNodes)(
 9662        IXMLDOMCDATASection *This,
 9663        BSTR p,
 9664        IXMLDOMNodeList **outList);
 9665
 9666    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
 9667        IXMLDOMCDATASection *This,
 9668        BSTR p,
 9669        IXMLDOMNode **outNode);
 9670
 9671    HRESULT (STDMETHODCALLTYPE *get_parsed)(
 9672        IXMLDOMCDATASection *This,
 9673        VARIANT_BOOL *pbool);
 9674
 9675    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
 9676        IXMLDOMCDATASection *This,
 9677        BSTR *p);
 9678
 9679    HRESULT (STDMETHODCALLTYPE *get_prefix)(
 9680        IXMLDOMCDATASection *This,
 9681        BSTR *p);
 9682
 9683    HRESULT (STDMETHODCALLTYPE *get_baseName)(
 9684        IXMLDOMCDATASection *This,
 9685        BSTR *p);
 9686
 9687    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
 9688        IXMLDOMCDATASection *This,
 9689        IXMLDOMNode *domNode,
 9690        VARIANT var1);
 9691
 9692    /*** IXMLDOMCharacterData methods ***/
 9693    HRESULT (STDMETHODCALLTYPE *get_data)(
 9694        IXMLDOMCDATASection *This,
 9695        BSTR *p);
 9696
 9697    HRESULT (STDMETHODCALLTYPE *put_data)(
 9698        IXMLDOMCDATASection *This,
 9699        BSTR data);
 9700
 9701    HRESULT (STDMETHODCALLTYPE *get_length)(
 9702        IXMLDOMCDATASection *This,
 9703        LONG *len);
 9704
 9705    HRESULT (STDMETHODCALLTYPE *substringData)(
 9706        IXMLDOMCDATASection *This,
 9707        LONG offset,
 9708        LONG count,
 9709        BSTR *p);
 9710
 9711    HRESULT (STDMETHODCALLTYPE *appendData)(
 9712        IXMLDOMCDATASection *This,
 9713        BSTR p);
 9714
 9715    HRESULT (STDMETHODCALLTYPE *insertData)(
 9716        IXMLDOMCDATASection *This,
 9717        LONG offset,
 9718        BSTR p);
 9719
 9720    HRESULT (STDMETHODCALLTYPE *deleteData)(
 9721        IXMLDOMCDATASection *This,
 9722        LONG offset,
 9723        LONG count);
 9724
 9725    HRESULT (STDMETHODCALLTYPE *replaceData)(
 9726        IXMLDOMCDATASection *This,
 9727        LONG offset,
 9728        LONG count,
 9729        BSTR p);
 9730
 9731    /*** IXMLDOMText methods ***/
 9732    HRESULT (STDMETHODCALLTYPE *splitText)(
 9733        IXMLDOMCDATASection *This,
 9734        LONG offset,
 9735        IXMLDOMText **txtNode);
 9736
 9737    END_INTERFACE
 9738} IXMLDOMCDATASectionVtbl;
 9739
 9740interface IXMLDOMCDATASection {
 9741    CONST_VTBL IXMLDOMCDATASectionVtbl* lpVtbl;
 9742};
 9743
 9744#ifdef COBJMACROS
 9745#ifndef WIDL_C_INLINE_WRAPPERS
 9746/*** IUnknown methods ***/
 9747#define IXMLDOMCDATASection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9748#define IXMLDOMCDATASection_AddRef(This) (This)->lpVtbl->AddRef(This)
 9749#define IXMLDOMCDATASection_Release(This) (This)->lpVtbl->Release(This)
 9750/*** IDispatch methods ***/
 9751#define IXMLDOMCDATASection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 9752#define IXMLDOMCDATASection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 9753#define IXMLDOMCDATASection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 9754#define IXMLDOMCDATASection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 9755/*** IXMLDOMNode methods ***/
 9756#define IXMLDOMCDATASection_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
 9757#define IXMLDOMCDATASection_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
 9758#define IXMLDOMCDATASection_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
 9759#define IXMLDOMCDATASection_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
 9760#define IXMLDOMCDATASection_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
 9761#define IXMLDOMCDATASection_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
 9762#define IXMLDOMCDATASection_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
 9763#define IXMLDOMCDATASection_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
 9764#define IXMLDOMCDATASection_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
 9765#define IXMLDOMCDATASection_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
 9766#define IXMLDOMCDATASection_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
 9767#define IXMLDOMCDATASection_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
 9768#define IXMLDOMCDATASection_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
 9769#define IXMLDOMCDATASection_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
 9770#define IXMLDOMCDATASection_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
 9771#define IXMLDOMCDATASection_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
 9772#define IXMLDOMCDATASection_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
 9773#define IXMLDOMCDATASection_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
 9774#define IXMLDOMCDATASection_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
 9775#define IXMLDOMCDATASection_get_text(This,p) (This)->lpVtbl->get_text(This,p)
 9776#define IXMLDOMCDATASection_put_text(This,p) (This)->lpVtbl->put_text(This,p)
 9777#define IXMLDOMCDATASection_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
 9778#define IXMLDOMCDATASection_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
 9779#define IXMLDOMCDATASection_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
 9780#define IXMLDOMCDATASection_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
 9781#define IXMLDOMCDATASection_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
 9782#define IXMLDOMCDATASection_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
 9783#define IXMLDOMCDATASection_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
 9784#define IXMLDOMCDATASection_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
 9785#define IXMLDOMCDATASection_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
 9786#define IXMLDOMCDATASection_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
 9787#define IXMLDOMCDATASection_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
 9788#define IXMLDOMCDATASection_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
 9789#define IXMLDOMCDATASection_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
 9790#define IXMLDOMCDATASection_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
 9791#define IXMLDOMCDATASection_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
 9792/*** IXMLDOMCharacterData methods ***/
 9793#define IXMLDOMCDATASection_get_data(This,p) (This)->lpVtbl->get_data(This,p)
 9794#define IXMLDOMCDATASection_put_data(This,data) (This)->lpVtbl->put_data(This,data)
 9795#define IXMLDOMCDATASection_get_length(This,len) (This)->lpVtbl->get_length(This,len)
 9796#define IXMLDOMCDATASection_substringData(This,offset,count,p) (This)->lpVtbl->substringData(This,offset,count,p)
 9797#define IXMLDOMCDATASection_appendData(This,p) (This)->lpVtbl->appendData(This,p)
 9798#define IXMLDOMCDATASection_insertData(This,offset,p) (This)->lpVtbl->insertData(This,offset,p)
 9799#define IXMLDOMCDATASection_deleteData(This,offset,count) (This)->lpVtbl->deleteData(This,offset,count)
 9800#define IXMLDOMCDATASection_replaceData(This,offset,count,p) (This)->lpVtbl->replaceData(This,offset,count,p)
 9801/*** IXMLDOMText methods ***/
 9802#define IXMLDOMCDATASection_splitText(This,offset,txtNode) (This)->lpVtbl->splitText(This,offset,txtNode)
 9803#else
 9804/*** IUnknown methods ***/
 9805static inline HRESULT IXMLDOMCDATASection_QueryInterface(IXMLDOMCDATASection* This,REFIID riid,void **ppvObject) {
 9806    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9807}
 9808static inline ULONG IXMLDOMCDATASection_AddRef(IXMLDOMCDATASection* This) {
 9809    return This->lpVtbl->AddRef(This);
 9810}
 9811static inline ULONG IXMLDOMCDATASection_Release(IXMLDOMCDATASection* This) {
 9812    return This->lpVtbl->Release(This);
 9813}
 9814/*** IDispatch methods ***/
 9815static inline HRESULT IXMLDOMCDATASection_GetTypeInfoCount(IXMLDOMCDATASection* This,UINT *pctinfo) {
 9816    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 9817}
 9818static inline HRESULT IXMLDOMCDATASection_GetTypeInfo(IXMLDOMCDATASection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 9819    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 9820}
 9821static inline HRESULT IXMLDOMCDATASection_GetIDsOfNames(IXMLDOMCDATASection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 9822    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 9823}
 9824static inline HRESULT IXMLDOMCDATASection_Invoke(IXMLDOMCDATASection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 9825    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 9826}
 9827/*** IXMLDOMNode methods ***/
 9828static inline HRESULT IXMLDOMCDATASection_get_nodeName(IXMLDOMCDATASection* This,BSTR *p) {
 9829    return This->lpVtbl->get_nodeName(This,p);
 9830}
 9831static inline HRESULT IXMLDOMCDATASection_get_nodeValue(IXMLDOMCDATASection* This,VARIANT *var1) {
 9832    return This->lpVtbl->get_nodeValue(This,var1);
 9833}
 9834static inline HRESULT IXMLDOMCDATASection_put_nodeValue(IXMLDOMCDATASection* This,VARIANT var1) {
 9835    return This->lpVtbl->put_nodeValue(This,var1);
 9836}
 9837static inline HRESULT IXMLDOMCDATASection_get_nodeType(IXMLDOMCDATASection* This,DOMNodeType *domNodeType) {
 9838    return This->lpVtbl->get_nodeType(This,domNodeType);
 9839}
 9840static inline HRESULT IXMLDOMCDATASection_get_parentNode(IXMLDOMCDATASection* This,IXMLDOMNode **parent) {
 9841    return This->lpVtbl->get_parentNode(This,parent);
 9842}
 9843static inline HRESULT IXMLDOMCDATASection_get_childNodes(IXMLDOMCDATASection* This,IXMLDOMNodeList **outList) {
 9844    return This->lpVtbl->get_childNodes(This,outList);
 9845}
 9846static inline HRESULT IXMLDOMCDATASection_get_firstChild(IXMLDOMCDATASection* This,IXMLDOMNode **domNode) {
 9847    return This->lpVtbl->get_firstChild(This,domNode);
 9848}
 9849static inline HRESULT IXMLDOMCDATASection_get_lastChild(IXMLDOMCDATASection* This,IXMLDOMNode **domNode) {
 9850    return This->lpVtbl->get_lastChild(This,domNode);
 9851}
 9852static inline HRESULT IXMLDOMCDATASection_get_previousSibling(IXMLDOMCDATASection* This,IXMLDOMNode **domNode) {
 9853    return This->lpVtbl->get_previousSibling(This,domNode);
 9854}
 9855static inline HRESULT IXMLDOMCDATASection_get_nextSibling(IXMLDOMCDATASection* This,IXMLDOMNode **domNode) {
 9856    return This->lpVtbl->get_nextSibling(This,domNode);
 9857}
 9858static inline HRESULT IXMLDOMCDATASection_get_attributes(IXMLDOMCDATASection* This,IXMLDOMNamedNodeMap **attributeMap) {
 9859    return This->lpVtbl->get_attributes(This,attributeMap);
 9860}
 9861static inline HRESULT IXMLDOMCDATASection_insertBefore(IXMLDOMCDATASection* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
 9862    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
 9863}
 9864static inline HRESULT IXMLDOMCDATASection_replaceChild(IXMLDOMCDATASection* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
 9865    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
 9866}
 9867static inline HRESULT IXMLDOMCDATASection_removeChild(IXMLDOMCDATASection* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
 9868    return This->lpVtbl->removeChild(This,domNode,oldNode);
 9869}
 9870static inline HRESULT IXMLDOMCDATASection_appendChild(IXMLDOMCDATASection* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
 9871    return This->lpVtbl->appendChild(This,newNode,outNewNode);
 9872}
 9873static inline HRESULT IXMLDOMCDATASection_hasChildNodes(IXMLDOMCDATASection* This,VARIANT_BOOL *pbool) {
 9874    return This->lpVtbl->hasChildNodes(This,pbool);
 9875}
 9876static inline HRESULT IXMLDOMCDATASection_get_ownerDocument(IXMLDOMCDATASection* This,IXMLDOMDocument **domDocument) {
 9877    return This->lpVtbl->get_ownerDocument(This,domDocument);
 9878}
 9879static inline HRESULT IXMLDOMCDATASection_cloneNode(IXMLDOMCDATASection* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
 9880    return This->lpVtbl->cloneNode(This,pbool,outNode);
 9881}
 9882static inline HRESULT IXMLDOMCDATASection_get_nodeTypeString(IXMLDOMCDATASection* This,BSTR *p) {
 9883    return This->lpVtbl->get_nodeTypeString(This,p);
 9884}
 9885static inline HRESULT IXMLDOMCDATASection_get_text(IXMLDOMCDATASection* This,BSTR *p) {
 9886    return This->lpVtbl->get_text(This,p);
 9887}
 9888static inline HRESULT IXMLDOMCDATASection_put_text(IXMLDOMCDATASection* This,BSTR p) {
 9889    return This->lpVtbl->put_text(This,p);
 9890}
 9891static inline HRESULT IXMLDOMCDATASection_get_specified(IXMLDOMCDATASection* This,VARIANT_BOOL *pbool) {
 9892    return This->lpVtbl->get_specified(This,pbool);
 9893}
 9894static inline HRESULT IXMLDOMCDATASection_get_definition(IXMLDOMCDATASection* This,IXMLDOMNode **domNode) {
 9895    return This->lpVtbl->get_definition(This,domNode);
 9896}
 9897static inline HRESULT IXMLDOMCDATASection_get_nodeTypedValue(IXMLDOMCDATASection* This,VARIANT *var1) {
 9898    return This->lpVtbl->get_nodeTypedValue(This,var1);
 9899}
 9900static inline HRESULT IXMLDOMCDATASection_put_nodeTypedValue(IXMLDOMCDATASection* This,VARIANT var1) {
 9901    return This->lpVtbl->put_nodeTypedValue(This,var1);
 9902}
 9903static inline HRESULT IXMLDOMCDATASection_get_dataType(IXMLDOMCDATASection* This,VARIANT *var1) {
 9904    return This->lpVtbl->get_dataType(This,var1);
 9905}
 9906static inline HRESULT IXMLDOMCDATASection_put_dataType(IXMLDOMCDATASection* This,BSTR p) {
 9907    return This->lpVtbl->put_dataType(This,p);
 9908}
 9909static inline HRESULT IXMLDOMCDATASection_get_xml(IXMLDOMCDATASection* This,BSTR *p) {
 9910    return This->lpVtbl->get_xml(This,p);
 9911}
 9912static inline HRESULT IXMLDOMCDATASection_transformNode(IXMLDOMCDATASection* This,IXMLDOMNode *domNode,BSTR *p) {
 9913    return This->lpVtbl->transformNode(This,domNode,p);
 9914}
 9915static inline HRESULT IXMLDOMCDATASection_selectNodes(IXMLDOMCDATASection* This,BSTR p,IXMLDOMNodeList **outList) {
 9916    return This->lpVtbl->selectNodes(This,p,outList);
 9917}
 9918static inline HRESULT IXMLDOMCDATASection_selectSingleNode(IXMLDOMCDATASection* This,BSTR p,IXMLDOMNode **outNode) {
 9919    return This->lpVtbl->selectSingleNode(This,p,outNode);
 9920}
 9921static inline HRESULT IXMLDOMCDATASection_get_parsed(IXMLDOMCDATASection* This,VARIANT_BOOL *pbool) {
 9922    return This->lpVtbl->get_parsed(This,pbool);
 9923}
 9924static inline HRESULT IXMLDOMCDATASection_get_namespaceURI(IXMLDOMCDATASection* This,BSTR *p) {
 9925    return This->lpVtbl->get_namespaceURI(This,p);
 9926}
 9927static inline HRESULT IXMLDOMCDATASection_get_prefix(IXMLDOMCDATASection* This,BSTR *p) {
 9928    return This->lpVtbl->get_prefix(This,p);
 9929}
 9930static inline HRESULT IXMLDOMCDATASection_get_baseName(IXMLDOMCDATASection* This,BSTR *p) {
 9931    return This->lpVtbl->get_baseName(This,p);
 9932}
 9933static inline HRESULT IXMLDOMCDATASection_transformNodeToObject(IXMLDOMCDATASection* This,IXMLDOMNode *domNode,VARIANT var1) {
 9934    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
 9935}
 9936/*** IXMLDOMCharacterData methods ***/
 9937static inline HRESULT IXMLDOMCDATASection_get_data(IXMLDOMCDATASection* This,BSTR *p) {
 9938    return This->lpVtbl->get_data(This,p);
 9939}
 9940static inline HRESULT IXMLDOMCDATASection_put_data(IXMLDOMCDATASection* This,BSTR data) {
 9941    return This->lpVtbl->put_data(This,data);
 9942}
 9943static inline HRESULT IXMLDOMCDATASection_get_length(IXMLDOMCDATASection* This,LONG *len) {
 9944    return This->lpVtbl->get_length(This,len);
 9945}
 9946static inline HRESULT IXMLDOMCDATASection_substringData(IXMLDOMCDATASection* This,LONG offset,LONG count,BSTR *p) {
 9947    return This->lpVtbl->substringData(This,offset,count,p);
 9948}
 9949static inline HRESULT IXMLDOMCDATASection_appendData(IXMLDOMCDATASection* This,BSTR p) {
 9950    return This->lpVtbl->appendData(This,p);
 9951}
 9952static inline HRESULT IXMLDOMCDATASection_insertData(IXMLDOMCDATASection* This,LONG offset,BSTR p) {
 9953    return This->lpVtbl->insertData(This,offset,p);
 9954}
 9955static inline HRESULT IXMLDOMCDATASection_deleteData(IXMLDOMCDATASection* This,LONG offset,LONG count) {
 9956    return This->lpVtbl->deleteData(This,offset,count);
 9957}
 9958static inline HRESULT IXMLDOMCDATASection_replaceData(IXMLDOMCDATASection* This,LONG offset,LONG count,BSTR p) {
 9959    return This->lpVtbl->replaceData(This,offset,count,p);
 9960}
 9961/*** IXMLDOMText methods ***/
 9962static inline HRESULT IXMLDOMCDATASection_splitText(IXMLDOMCDATASection* This,LONG offset,IXMLDOMText **txtNode) {
 9963    return This->lpVtbl->splitText(This,offset,txtNode);
 9964}
 9965#endif
 9966#endif
 9967
 9968#endif
 9969
 9970
 9971#endif  /* __IXMLDOMCDATASection_INTERFACE_DEFINED__ */
 9972
 9973/*****************************************************************************
 9974 * IXMLDOMDocumentType interface
 9975 */
 9976#ifndef __IXMLDOMDocumentType_INTERFACE_DEFINED__
 9977#define __IXMLDOMDocumentType_INTERFACE_DEFINED__
 9978
 9979DEFINE_GUID(IID_IXMLDOMDocumentType, 0x2933bf8b, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
 9980#if defined(__cplusplus) && !defined(CINTERFACE)
 9981MIDL_INTERFACE("2933bf8b-7b36-11d2-b20e-00c04f983e60")
 9982IXMLDOMDocumentType : public IXMLDOMNode
 9983{
 9984    virtual HRESULT STDMETHODCALLTYPE get_name(
 9985        BSTR *p) = 0;
 9986
 9987    virtual HRESULT STDMETHODCALLTYPE get_entities(
 9988        IXMLDOMNamedNodeMap **entityMap) = 0;
 9989
 9990    virtual HRESULT STDMETHODCALLTYPE get_notations(
 9991        IXMLDOMNamedNodeMap **notationMap) = 0;
 9992
 9993};
 9994#ifdef __CRT_UUID_DECL
 9995__CRT_UUID_DECL(IXMLDOMDocumentType, 0x2933bf8b, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
 9996#endif
 9997#else
 9998typedef struct IXMLDOMDocumentTypeVtbl {
 9999    BEGIN_INTERFACE
10000
10001    /*** IUnknown methods ***/
10002    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10003        IXMLDOMDocumentType *This,
10004        REFIID riid,
10005        void **ppvObject);
10006
10007    ULONG (STDMETHODCALLTYPE *AddRef)(
10008        IXMLDOMDocumentType *This);
10009
10010    ULONG (STDMETHODCALLTYPE *Release)(
10011        IXMLDOMDocumentType *This);
10012
10013    /*** IDispatch methods ***/
10014    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10015        IXMLDOMDocumentType *This,
10016        UINT *pctinfo);
10017
10018    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10019        IXMLDOMDocumentType *This,
10020        UINT iTInfo,
10021        LCID lcid,
10022        ITypeInfo **ppTInfo);
10023
10024    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10025        IXMLDOMDocumentType *This,
10026        REFIID riid,
10027        LPOLESTR *rgszNames,
10028        UINT cNames,
10029        LCID lcid,
10030        DISPID *rgDispId);
10031
10032    HRESULT (STDMETHODCALLTYPE *Invoke)(
10033        IXMLDOMDocumentType *This,
10034        DISPID dispIdMember,
10035        REFIID riid,
10036        LCID lcid,
10037        WORD wFlags,
10038        DISPPARAMS *pDispParams,
10039        VARIANT *pVarResult,
10040        EXCEPINFO *pExcepInfo,
10041        UINT *puArgErr);
10042
10043    /*** IXMLDOMNode methods ***/
10044    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
10045        IXMLDOMDocumentType *This,
10046        BSTR *p);
10047
10048    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
10049        IXMLDOMDocumentType *This,
10050        VARIANT *var1);
10051
10052    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
10053        IXMLDOMDocumentType *This,
10054        VARIANT var1);
10055
10056    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
10057        IXMLDOMDocumentType *This,
10058        DOMNodeType *domNodeType);
10059
10060    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
10061        IXMLDOMDocumentType *This,
10062        IXMLDOMNode **parent);
10063
10064    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
10065        IXMLDOMDocumentType *This,
10066        IXMLDOMNodeList **outList);
10067
10068    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
10069        IXMLDOMDocumentType *This,
10070        IXMLDOMNode **domNode);
10071
10072    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
10073        IXMLDOMDocumentType *This,
10074        IXMLDOMNode **domNode);
10075
10076    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
10077        IXMLDOMDocumentType *This,
10078        IXMLDOMNode **domNode);
10079
10080    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
10081        IXMLDOMDocumentType *This,
10082        IXMLDOMNode **domNode);
10083
10084    HRESULT (STDMETHODCALLTYPE *get_attributes)(
10085        IXMLDOMDocumentType *This,
10086        IXMLDOMNamedNodeMap **attributeMap);
10087
10088    HRESULT (STDMETHODCALLTYPE *insertBefore)(
10089        IXMLDOMDocumentType *This,
10090        IXMLDOMNode *newNode,
10091        VARIANT var1,
10092        IXMLDOMNode **outOldNode);
10093
10094    HRESULT (STDMETHODCALLTYPE *replaceChild)(
10095        IXMLDOMDocumentType *This,
10096        IXMLDOMNode *newNode,
10097        IXMLDOMNode *oldNode,
10098        IXMLDOMNode **outOldNode);
10099
10100    HRESULT (STDMETHODCALLTYPE *removeChild)(
10101        IXMLDOMDocumentType *This,
10102        IXMLDOMNode *domNode,
10103        IXMLDOMNode **oldNode);
10104
10105    HRESULT (STDMETHODCALLTYPE *appendChild)(
10106        IXMLDOMDocumentType *This,
10107        IXMLDOMNode *newNode,
10108        IXMLDOMNode **outNewNode);
10109
10110    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
10111        IXMLDOMDocumentType *This,
10112        VARIANT_BOOL *pbool);
10113
10114    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
10115        IXMLDOMDocumentType *This,
10116        IXMLDOMDocument **domDocument);
10117
10118    HRESULT (STDMETHODCALLTYPE *cloneNode)(
10119        IXMLDOMDocumentType *This,
10120        VARIANT_BOOL pbool,
10121        IXMLDOMNode **outNode);
10122
10123    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
10124        IXMLDOMDocumentType *This,
10125        BSTR *p);
10126
10127    HRESULT (STDMETHODCALLTYPE *get_text)(
10128        IXMLDOMDocumentType *This,
10129        BSTR *p);
10130
10131    HRESULT (STDMETHODCALLTYPE *put_text)(
10132        IXMLDOMDocumentType *This,
10133        BSTR p);
10134
10135    HRESULT (STDMETHODCALLTYPE *get_specified)(
10136        IXMLDOMDocumentType *This,
10137        VARIANT_BOOL *pbool);
10138
10139    HRESULT (STDMETHODCALLTYPE *get_definition)(
10140        IXMLDOMDocumentType *This,
10141        IXMLDOMNode **domNode);
10142
10143    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
10144        IXMLDOMDocumentType *This,
10145        VARIANT *var1);
10146
10147    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
10148        IXMLDOMDocumentType *This,
10149        VARIANT var1);
10150
10151    HRESULT (STDMETHODCALLTYPE *get_dataType)(
10152        IXMLDOMDocumentType *This,
10153        VARIANT *var1);
10154
10155    HRESULT (STDMETHODCALLTYPE *put_dataType)(
10156        IXMLDOMDocumentType *This,
10157        BSTR p);
10158
10159    HRESULT (STDMETHODCALLTYPE *get_xml)(
10160        IXMLDOMDocumentType *This,
10161        BSTR *p);
10162
10163    HRESULT (STDMETHODCALLTYPE *transformNode)(
10164        IXMLDOMDocumentType *This,
10165        IXMLDOMNode *domNode,
10166        BSTR *p);
10167
10168    HRESULT (STDMETHODCALLTYPE *selectNodes)(
10169        IXMLDOMDocumentType *This,
10170        BSTR p,
10171        IXMLDOMNodeList **outList);
10172
10173    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
10174        IXMLDOMDocumentType *This,
10175        BSTR p,
10176        IXMLDOMNode **outNode);
10177
10178    HRESULT (STDMETHODCALLTYPE *get_parsed)(
10179        IXMLDOMDocumentType *This,
10180        VARIANT_BOOL *pbool);
10181
10182    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
10183        IXMLDOMDocumentType *This,
10184        BSTR *p);
10185
10186    HRESULT (STDMETHODCALLTYPE *get_prefix)(
10187        IXMLDOMDocumentType *This,
10188        BSTR *p);
10189
10190    HRESULT (STDMETHODCALLTYPE *get_baseName)(
10191        IXMLDOMDocumentType *This,
10192        BSTR *p);
10193
10194    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
10195        IXMLDOMDocumentType *This,
10196        IXMLDOMNode *domNode,
10197        VARIANT var1);
10198
10199    /*** IXMLDOMDocumentType methods ***/
10200    HRESULT (STDMETHODCALLTYPE *get_name)(
10201        IXMLDOMDocumentType *This,
10202        BSTR *p);
10203
10204    HRESULT (STDMETHODCALLTYPE *get_entities)(
10205        IXMLDOMDocumentType *This,
10206        IXMLDOMNamedNodeMap **entityMap);
10207
10208    HRESULT (STDMETHODCALLTYPE *get_notations)(
10209        IXMLDOMDocumentType *This,
10210        IXMLDOMNamedNodeMap **notationMap);
10211
10212    END_INTERFACE
10213} IXMLDOMDocumentTypeVtbl;
10214
10215interface IXMLDOMDocumentType {
10216    CONST_VTBL IXMLDOMDocumentTypeVtbl* lpVtbl;
10217};
10218
10219#ifdef COBJMACROS
10220#ifndef WIDL_C_INLINE_WRAPPERS
10221/*** IUnknown methods ***/
10222#define IXMLDOMDocumentType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10223#define IXMLDOMDocumentType_AddRef(This) (This)->lpVtbl->AddRef(This)
10224#define IXMLDOMDocumentType_Release(This) (This)->lpVtbl->Release(This)
10225/*** IDispatch methods ***/
10226#define IXMLDOMDocumentType_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10227#define IXMLDOMDocumentType_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10228#define IXMLDOMDocumentType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10229#define IXMLDOMDocumentType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10230/*** IXMLDOMNode methods ***/
10231#define IXMLDOMDocumentType_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
10232#define IXMLDOMDocumentType_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
10233#define IXMLDOMDocumentType_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
10234#define IXMLDOMDocumentType_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
10235#define IXMLDOMDocumentType_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
10236#define IXMLDOMDocumentType_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
10237#define IXMLDOMDocumentType_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
10238#define IXMLDOMDocumentType_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
10239#define IXMLDOMDocumentType_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
10240#define IXMLDOMDocumentType_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
10241#define IXMLDOMDocumentType_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
10242#define IXMLDOMDocumentType_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
10243#define IXMLDOMDocumentType_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
10244#define IXMLDOMDocumentType_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
10245#define IXMLDOMDocumentType_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
10246#define IXMLDOMDocumentType_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
10247#define IXMLDOMDocumentType_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
10248#define IXMLDOMDocumentType_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
10249#define IXMLDOMDocumentType_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
10250#define IXMLDOMDocumentType_get_text(This,p) (This)->lpVtbl->get_text(This,p)
10251#define IXMLDOMDocumentType_put_text(This,p) (This)->lpVtbl->put_text(This,p)
10252#define IXMLDOMDocumentType_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
10253#define IXMLDOMDocumentType_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
10254#define IXMLDOMDocumentType_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
10255#define IXMLDOMDocumentType_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
10256#define IXMLDOMDocumentType_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
10257#define IXMLDOMDocumentType_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
10258#define IXMLDOMDocumentType_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
10259#define IXMLDOMDocumentType_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
10260#define IXMLDOMDocumentType_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
10261#define IXMLDOMDocumentType_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
10262#define IXMLDOMDocumentType_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
10263#define IXMLDOMDocumentType_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
10264#define IXMLDOMDocumentType_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
10265#define IXMLDOMDocumentType_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
10266#define IXMLDOMDocumentType_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
10267/*** IXMLDOMDocumentType methods ***/
10268#define IXMLDOMDocumentType_get_name(This,p) (This)->lpVtbl->get_name(This,p)
10269#define IXMLDOMDocumentType_get_entities(This,entityMap) (This)->lpVtbl->get_entities(This,entityMap)
10270#define IXMLDOMDocumentType_get_notations(This,notationMap) (This)->lpVtbl->get_notations(This,notationMap)
10271#else
10272/*** IUnknown methods ***/
10273static inline HRESULT IXMLDOMDocumentType_QueryInterface(IXMLDOMDocumentType* This,REFIID riid,void **ppvObject) {
10274    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10275}
10276static inline ULONG IXMLDOMDocumentType_AddRef(IXMLDOMDocumentType* This) {
10277    return This->lpVtbl->AddRef(This);
10278}
10279static inline ULONG IXMLDOMDocumentType_Release(IXMLDOMDocumentType* This) {
10280    return This->lpVtbl->Release(This);
10281}
10282/*** IDispatch methods ***/
10283static inline HRESULT IXMLDOMDocumentType_GetTypeInfoCount(IXMLDOMDocumentType* This,UINT *pctinfo) {
10284    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10285}
10286static inline HRESULT IXMLDOMDocumentType_GetTypeInfo(IXMLDOMDocumentType* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10287    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10288}
10289static inline HRESULT IXMLDOMDocumentType_GetIDsOfNames(IXMLDOMDocumentType* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10290    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10291}
10292static inline HRESULT IXMLDOMDocumentType_Invoke(IXMLDOMDocumentType* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10293    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10294}
10295/*** IXMLDOMNode methods ***/
10296static inline HRESULT IXMLDOMDocumentType_get_nodeName(IXMLDOMDocumentType* This,BSTR *p) {
10297    return This->lpVtbl->get_nodeName(This,p);
10298}
10299static inline HRESULT IXMLDOMDocumentType_get_nodeValue(IXMLDOMDocumentType* This,VARIANT *var1) {
10300    return This->lpVtbl->get_nodeValue(This,var1);
10301}
10302static inline HRESULT IXMLDOMDocumentType_put_nodeValue(IXMLDOMDocumentType* This,VARIANT var1) {
10303    return This->lpVtbl->put_nodeValue(This,var1);
10304}
10305static inline HRESULT IXMLDOMDocumentType_get_nodeType(IXMLDOMDocumentType* This,DOMNodeType *domNodeType) {
10306    return This->lpVtbl->get_nodeType(This,domNodeType);
10307}
10308static inline HRESULT IXMLDOMDocumentType_get_parentNode(IXMLDOMDocumentType* This,IXMLDOMNode **parent) {
10309    return This->lpVtbl->get_parentNode(This,parent);
10310}
10311static inline HRESULT IXMLDOMDocumentType_get_childNodes(IXMLDOMDocumentType* This,IXMLDOMNodeList **outList) {
10312    return This->lpVtbl->get_childNodes(This,outList);
10313}
10314static inline HRESULT IXMLDOMDocumentType_get_firstChild(IXMLDOMDocumentType* This,IXMLDOMNode **domNode) {
10315    return This->lpVtbl->get_firstChild(This,domNode);
10316}
10317static inline HRESULT IXMLDOMDocumentType_get_lastChild(IXMLDOMDocumentType* This,IXMLDOMNode **domNode) {
10318    return This->lpVtbl->get_lastChild(This,domNode);
10319}
10320static inline HRESULT IXMLDOMDocumentType_get_previousSibling(IXMLDOMDocumentType* This,IXMLDOMNode **domNode) {
10321    return This->lpVtbl->get_previousSibling(This,domNode);
10322}
10323static inline HRESULT IXMLDOMDocumentType_get_nextSibling(IXMLDOMDocumentType* This,IXMLDOMNode **domNode) {
10324    return This->lpVtbl->get_nextSibling(This,domNode);
10325}
10326static inline HRESULT IXMLDOMDocumentType_get_attributes(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **attributeMap) {
10327    return This->lpVtbl->get_attributes(This,attributeMap);
10328}
10329static inline HRESULT IXMLDOMDocumentType_insertBefore(IXMLDOMDocumentType* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
10330    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
10331}
10332static inline HRESULT IXMLDOMDocumentType_replaceChild(IXMLDOMDocumentType* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
10333    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
10334}
10335static inline HRESULT IXMLDOMDocumentType_removeChild(IXMLDOMDocumentType* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
10336    return This->lpVtbl->removeChild(This,domNode,oldNode);
10337}
10338static inline HRESULT IXMLDOMDocumentType_appendChild(IXMLDOMDocumentType* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
10339    return This->lpVtbl->appendChild(This,newNode,outNewNode);
10340}
10341static inline HRESULT IXMLDOMDocumentType_hasChildNodes(IXMLDOMDocumentType* This,VARIANT_BOOL *pbool) {
10342    return This->lpVtbl->hasChildNodes(This,pbool);
10343}
10344static inline HRESULT IXMLDOMDocumentType_get_ownerDocument(IXMLDOMDocumentType* This,IXMLDOMDocument **domDocument) {
10345    return This->lpVtbl->get_ownerDocument(This,domDocument);
10346}
10347static inline HRESULT IXMLDOMDocumentType_cloneNode(IXMLDOMDocumentType* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
10348    return This->lpVtbl->cloneNode(This,pbool,outNode);
10349}
10350static inline HRESULT IXMLDOMDocumentType_get_nodeTypeString(IXMLDOMDocumentType* This,BSTR *p) {
10351    return This->lpVtbl->get_nodeTypeString(This,p);
10352}
10353static inline HRESULT IXMLDOMDocumentType_get_text(IXMLDOMDocumentType* This,BSTR *p) {
10354    return This->lpVtbl->get_text(This,p);
10355}
10356static inline HRESULT IXMLDOMDocumentType_put_text(IXMLDOMDocumentType* This,BSTR p) {
10357    return This->lpVtbl->put_text(This,p);
10358}
10359static inline HRESULT IXMLDOMDocumentType_get_specified(IXMLDOMDocumentType* This,VARIANT_BOOL *pbool) {
10360    return This->lpVtbl->get_specified(This,pbool);
10361}
10362static inline HRESULT IXMLDOMDocumentType_get_definition(IXMLDOMDocumentType* This,IXMLDOMNode **domNode) {
10363    return This->lpVtbl->get_definition(This,domNode);
10364}
10365static inline HRESULT IXMLDOMDocumentType_get_nodeTypedValue(IXMLDOMDocumentType* This,VARIANT *var1) {
10366    return This->lpVtbl->get_nodeTypedValue(This,var1);
10367}
10368static inline HRESULT IXMLDOMDocumentType_put_nodeTypedValue(IXMLDOMDocumentType* This,VARIANT var1) {
10369    return This->lpVtbl->put_nodeTypedValue(This,var1);
10370}
10371static inline HRESULT IXMLDOMDocumentType_get_dataType(IXMLDOMDocumentType* This,VARIANT *var1) {
10372    return This->lpVtbl->get_dataType(This,var1);
10373}
10374static inline HRESULT IXMLDOMDocumentType_put_dataType(IXMLDOMDocumentType* This,BSTR p) {
10375    return This->lpVtbl->put_dataType(This,p);
10376}
10377static inline HRESULT IXMLDOMDocumentType_get_xml(IXMLDOMDocumentType* This,BSTR *p) {
10378    return This->lpVtbl->get_xml(This,p);
10379}
10380static inline HRESULT IXMLDOMDocumentType_transformNode(IXMLDOMDocumentType* This,IXMLDOMNode *domNode,BSTR *p) {
10381    return This->lpVtbl->transformNode(This,domNode,p);
10382}
10383static inline HRESULT IXMLDOMDocumentType_selectNodes(IXMLDOMDocumentType* This,BSTR p,IXMLDOMNodeList **outList) {
10384    return This->lpVtbl->selectNodes(This,p,outList);
10385}
10386static inline HRESULT IXMLDOMDocumentType_selectSingleNode(IXMLDOMDocumentType* This,BSTR p,IXMLDOMNode **outNode) {
10387    return This->lpVtbl->selectSingleNode(This,p,outNode);
10388}
10389static inline HRESULT IXMLDOMDocumentType_get_parsed(IXMLDOMDocumentType* This,VARIANT_BOOL *pbool) {
10390    return This->lpVtbl->get_parsed(This,pbool);
10391}
10392static inline HRESULT IXMLDOMDocumentType_get_namespaceURI(IXMLDOMDocumentType* This,BSTR *p) {
10393    return This->lpVtbl->get_namespaceURI(This,p);
10394}
10395static inline HRESULT IXMLDOMDocumentType_get_prefix(IXMLDOMDocumentType* This,BSTR *p) {
10396    return This->lpVtbl->get_prefix(This,p);
10397}
10398static inline HRESULT IXMLDOMDocumentType_get_baseName(IXMLDOMDocumentType* This,BSTR *p) {
10399    return This->lpVtbl->get_baseName(This,p);
10400}
10401static inline HRESULT IXMLDOMDocumentType_transformNodeToObject(IXMLDOMDocumentType* This,IXMLDOMNode *domNode,VARIANT var1) {
10402    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
10403}
10404/*** IXMLDOMDocumentType methods ***/
10405static inline HRESULT IXMLDOMDocumentType_get_name(IXMLDOMDocumentType* This,BSTR *p) {
10406    return This->lpVtbl->get_name(This,p);
10407}
10408static inline HRESULT IXMLDOMDocumentType_get_entities(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **entityMap) {
10409    return This->lpVtbl->get_entities(This,entityMap);
10410}
10411static inline HRESULT IXMLDOMDocumentType_get_notations(IXMLDOMDocumentType* This,IXMLDOMNamedNodeMap **notationMap) {
10412    return This->lpVtbl->get_notations(This,notationMap);
10413}
10414#endif
10415#endif
10416
10417#endif
10418
10419
10420#endif  /* __IXMLDOMDocumentType_INTERFACE_DEFINED__ */
10421
10422/*****************************************************************************
10423 * IXMLDOMNotation interface
10424 */
10425#ifndef __IXMLDOMNotation_INTERFACE_DEFINED__
10426#define __IXMLDOMNotation_INTERFACE_DEFINED__
10427
10428DEFINE_GUID(IID_IXMLDOMNotation, 0x2933bf8c, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
10429#if defined(__cplusplus) && !defined(CINTERFACE)
10430MIDL_INTERFACE("2933bf8c-7b36-11d2-b20e-00c04f983e60")
10431IXMLDOMNotation : public IXMLDOMNode
10432{
10433    virtual HRESULT STDMETHODCALLTYPE get_publicId(
10434        VARIANT *id) = 0;
10435
10436    virtual HRESULT STDMETHODCALLTYPE get_systemId(
10437        VARIANT *id) = 0;
10438
10439};
10440#ifdef __CRT_UUID_DECL
10441__CRT_UUID_DECL(IXMLDOMNotation, 0x2933bf8c, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
10442#endif
10443#else
10444typedef struct IXMLDOMNotationVtbl {
10445    BEGIN_INTERFACE
10446
10447    /*** IUnknown methods ***/
10448    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10449        IXMLDOMNotation *This,
10450        REFIID riid,
10451        void **ppvObject);
10452
10453    ULONG (STDMETHODCALLTYPE *AddRef)(
10454        IXMLDOMNotation *This);
10455
10456    ULONG (STDMETHODCALLTYPE *Release)(
10457        IXMLDOMNotation *This);
10458
10459    /*** IDispatch methods ***/
10460    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10461        IXMLDOMNotation *This,
10462        UINT *pctinfo);
10463
10464    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10465        IXMLDOMNotation *This,
10466        UINT iTInfo,
10467        LCID lcid,
10468        ITypeInfo **ppTInfo);
10469
10470    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10471        IXMLDOMNotation *This,
10472        REFIID riid,
10473        LPOLESTR *rgszNames,
10474        UINT cNames,
10475        LCID lcid,
10476        DISPID *rgDispId);
10477
10478    HRESULT (STDMETHODCALLTYPE *Invoke)(
10479        IXMLDOMNotation *This,
10480        DISPID dispIdMember,
10481        REFIID riid,
10482        LCID lcid,
10483        WORD wFlags,
10484        DISPPARAMS *pDispParams,
10485        VARIANT *pVarResult,
10486        EXCEPINFO *pExcepInfo,
10487        UINT *puArgErr);
10488
10489    /*** IXMLDOMNode methods ***/
10490    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
10491        IXMLDOMNotation *This,
10492        BSTR *p);
10493
10494    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
10495        IXMLDOMNotation *This,
10496        VARIANT *var1);
10497
10498    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
10499        IXMLDOMNotation *This,
10500        VARIANT var1);
10501
10502    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
10503        IXMLDOMNotation *This,
10504        DOMNodeType *domNodeType);
10505
10506    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
10507        IXMLDOMNotation *This,
10508        IXMLDOMNode **parent);
10509
10510    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
10511        IXMLDOMNotation *This,
10512        IXMLDOMNodeList **outList);
10513
10514    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
10515        IXMLDOMNotation *This,
10516        IXMLDOMNode **domNode);
10517
10518    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
10519        IXMLDOMNotation *This,
10520        IXMLDOMNode **domNode);
10521
10522    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
10523        IXMLDOMNotation *This,
10524        IXMLDOMNode **domNode);
10525
10526    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
10527        IXMLDOMNotation *This,
10528        IXMLDOMNode **domNode);
10529
10530    HRESULT (STDMETHODCALLTYPE *get_attributes)(
10531        IXMLDOMNotation *This,
10532        IXMLDOMNamedNodeMap **attributeMap);
10533
10534    HRESULT (STDMETHODCALLTYPE *insertBefore)(
10535        IXMLDOMNotation *This,
10536        IXMLDOMNode *newNode,
10537        VARIANT var1,
10538        IXMLDOMNode **outOldNode);
10539
10540    HRESULT (STDMETHODCALLTYPE *replaceChild)(
10541        IXMLDOMNotation *This,
10542        IXMLDOMNode *newNode,
10543        IXMLDOMNode *oldNode,
10544        IXMLDOMNode **outOldNode);
10545
10546    HRESULT (STDMETHODCALLTYPE *removeChild)(
10547        IXMLDOMNotation *This,
10548        IXMLDOMNode *domNode,
10549        IXMLDOMNode **oldNode);
10550
10551    HRESULT (STDMETHODCALLTYPE *appendChild)(
10552        IXMLDOMNotation *This,
10553        IXMLDOMNode *newNode,
10554        IXMLDOMNode **outNewNode);
10555
10556    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
10557        IXMLDOMNotation *This,
10558        VARIANT_BOOL *pbool);
10559
10560    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
10561        IXMLDOMNotation *This,
10562        IXMLDOMDocument **domDocument);
10563
10564    HRESULT (STDMETHODCALLTYPE *cloneNode)(
10565        IXMLDOMNotation *This,
10566        VARIANT_BOOL pbool,
10567        IXMLDOMNode **outNode);
10568
10569    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
10570        IXMLDOMNotation *This,
10571        BSTR *p);
10572
10573    HRESULT (STDMETHODCALLTYPE *get_text)(
10574        IXMLDOMNotation *This,
10575        BSTR *p);
10576
10577    HRESULT (STDMETHODCALLTYPE *put_text)(
10578        IXMLDOMNotation *This,
10579        BSTR p);
10580
10581    HRESULT (STDMETHODCALLTYPE *get_specified)(
10582        IXMLDOMNotation *This,
10583        VARIANT_BOOL *pbool);
10584
10585    HRESULT (STDMETHODCALLTYPE *get_definition)(
10586        IXMLDOMNotation *This,
10587        IXMLDOMNode **domNode);
10588
10589    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
10590        IXMLDOMNotation *This,
10591        VARIANT *var1);
10592
10593    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
10594        IXMLDOMNotation *This,
10595        VARIANT var1);
10596
10597    HRESULT (STDMETHODCALLTYPE *get_dataType)(
10598        IXMLDOMNotation *This,
10599        VARIANT *var1);
10600
10601    HRESULT (STDMETHODCALLTYPE *put_dataType)(
10602        IXMLDOMNotation *This,
10603        BSTR p);
10604
10605    HRESULT (STDMETHODCALLTYPE *get_xml)(
10606        IXMLDOMNotation *This,
10607        BSTR *p);
10608
10609    HRESULT (STDMETHODCALLTYPE *transformNode)(
10610        IXMLDOMNotation *This,
10611        IXMLDOMNode *domNode,
10612        BSTR *p);
10613
10614    HRESULT (STDMETHODCALLTYPE *selectNodes)(
10615        IXMLDOMNotation *This,
10616        BSTR p,
10617        IXMLDOMNodeList **outList);
10618
10619    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
10620        IXMLDOMNotation *This,
10621        BSTR p,
10622        IXMLDOMNode **outNode);
10623
10624    HRESULT (STDMETHODCALLTYPE *get_parsed)(
10625        IXMLDOMNotation *This,
10626        VARIANT_BOOL *pbool);
10627
10628    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
10629        IXMLDOMNotation *This,
10630        BSTR *p);
10631
10632    HRESULT (STDMETHODCALLTYPE *get_prefix)(
10633        IXMLDOMNotation *This,
10634        BSTR *p);
10635
10636    HRESULT (STDMETHODCALLTYPE *get_baseName)(
10637        IXMLDOMNotation *This,
10638        BSTR *p);
10639
10640    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
10641        IXMLDOMNotation *This,
10642        IXMLDOMNode *domNode,
10643        VARIANT var1);
10644
10645    /*** IXMLDOMNotation methods ***/
10646    HRESULT (STDMETHODCALLTYPE *get_publicId)(
10647        IXMLDOMNotation *This,
10648        VARIANT *id);
10649
10650    HRESULT (STDMETHODCALLTYPE *get_systemId)(
10651        IXMLDOMNotation *This,
10652        VARIANT *id);
10653
10654    END_INTERFACE
10655} IXMLDOMNotationVtbl;
10656
10657interface IXMLDOMNotation {
10658    CONST_VTBL IXMLDOMNotationVtbl* lpVtbl;
10659};
10660
10661#ifdef COBJMACROS
10662#ifndef WIDL_C_INLINE_WRAPPERS
10663/*** IUnknown methods ***/
10664#define IXMLDOMNotation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10665#define IXMLDOMNotation_AddRef(This) (This)->lpVtbl->AddRef(This)
10666#define IXMLDOMNotation_Release(This) (This)->lpVtbl->Release(This)
10667/*** IDispatch methods ***/
10668#define IXMLDOMNotation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10669#define IXMLDOMNotation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10670#define IXMLDOMNotation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10671#define IXMLDOMNotation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10672/*** IXMLDOMNode methods ***/
10673#define IXMLDOMNotation_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
10674#define IXMLDOMNotation_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
10675#define IXMLDOMNotation_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
10676#define IXMLDOMNotation_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
10677#define IXMLDOMNotation_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
10678#define IXMLDOMNotation_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
10679#define IXMLDOMNotation_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
10680#define IXMLDOMNotation_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
10681#define IXMLDOMNotation_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
10682#define IXMLDOMNotation_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
10683#define IXMLDOMNotation_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
10684#define IXMLDOMNotation_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
10685#define IXMLDOMNotation_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
10686#define IXMLDOMNotation_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
10687#define IXMLDOMNotation_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
10688#define IXMLDOMNotation_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
10689#define IXMLDOMNotation_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
10690#define IXMLDOMNotation_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
10691#define IXMLDOMNotation_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
10692#define IXMLDOMNotation_get_text(This,p) (This)->lpVtbl->get_text(This,p)
10693#define IXMLDOMNotation_put_text(This,p) (This)->lpVtbl->put_text(This,p)
10694#define IXMLDOMNotation_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
10695#define IXMLDOMNotation_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
10696#define IXMLDOMNotation_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
10697#define IXMLDOMNotation_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
10698#define IXMLDOMNotation_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
10699#define IXMLDOMNotation_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
10700#define IXMLDOMNotation_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
10701#define IXMLDOMNotation_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
10702#define IXMLDOMNotation_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
10703#define IXMLDOMNotation_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
10704#define IXMLDOMNotation_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
10705#define IXMLDOMNotation_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
10706#define IXMLDOMNotation_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
10707#define IXMLDOMNotation_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
10708#define IXMLDOMNotation_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
10709/*** IXMLDOMNotation methods ***/
10710#define IXMLDOMNotation_get_publicId(This,id) (This)->lpVtbl->get_publicId(This,id)
10711#define IXMLDOMNotation_get_systemId(This,id) (This)->lpVtbl->get_systemId(This,id)
10712#else
10713/*** IUnknown methods ***/
10714static inline HRESULT IXMLDOMNotation_QueryInterface(IXMLDOMNotation* This,REFIID riid,void **ppvObject) {
10715    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10716}
10717static inline ULONG IXMLDOMNotation_AddRef(IXMLDOMNotation* This) {
10718    return This->lpVtbl->AddRef(This);
10719}
10720static inline ULONG IXMLDOMNotation_Release(IXMLDOMNotation* This) {
10721    return This->lpVtbl->Release(This);
10722}
10723/*** IDispatch methods ***/
10724static inline HRESULT IXMLDOMNotation_GetTypeInfoCount(IXMLDOMNotation* This,UINT *pctinfo) {
10725    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10726}
10727static inline HRESULT IXMLDOMNotation_GetTypeInfo(IXMLDOMNotation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10728    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10729}
10730static inline HRESULT IXMLDOMNotation_GetIDsOfNames(IXMLDOMNotation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10731    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10732}
10733static inline HRESULT IXMLDOMNotation_Invoke(IXMLDOMNotation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10734    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10735}
10736/*** IXMLDOMNode methods ***/
10737static inline HRESULT IXMLDOMNotation_get_nodeName(IXMLDOMNotation* This,BSTR *p) {
10738    return This->lpVtbl->get_nodeName(This,p);
10739}
10740static inline HRESULT IXMLDOMNotation_get_nodeValue(IXMLDOMNotation* This,VARIANT *var1) {
10741    return This->lpVtbl->get_nodeValue(This,var1);
10742}
10743static inline HRESULT IXMLDOMNotation_put_nodeValue(IXMLDOMNotation* This,VARIANT var1) {
10744    return This->lpVtbl->put_nodeValue(This,var1);
10745}
10746static inline HRESULT IXMLDOMNotation_get_nodeType(IXMLDOMNotation* This,DOMNodeType *domNodeType) {
10747    return This->lpVtbl->get_nodeType(This,domNodeType);
10748}
10749static inline HRESULT IXMLDOMNotation_get_parentNode(IXMLDOMNotation* This,IXMLDOMNode **parent) {
10750    return This->lpVtbl->get_parentNode(This,parent);
10751}
10752static inline HRESULT IXMLDOMNotation_get_childNodes(IXMLDOMNotation* This,IXMLDOMNodeList **outList) {
10753    return This->lpVtbl->get_childNodes(This,outList);
10754}
10755static inline HRESULT IXMLDOMNotation_get_firstChild(IXMLDOMNotation* This,IXMLDOMNode **domNode) {
10756    return This->lpVtbl->get_firstChild(This,domNode);
10757}
10758static inline HRESULT IXMLDOMNotation_get_lastChild(IXMLDOMNotation* This,IXMLDOMNode **domNode) {
10759    return This->lpVtbl->get_lastChild(This,domNode);
10760}
10761static inline HRESULT IXMLDOMNotation_get_previousSibling(IXMLDOMNotation* This,IXMLDOMNode **domNode) {
10762    return This->lpVtbl->get_previousSibling(This,domNode);
10763}
10764static inline HRESULT IXMLDOMNotation_get_nextSibling(IXMLDOMNotation* This,IXMLDOMNode **domNode) {
10765    return This->lpVtbl->get_nextSibling(This,domNode);
10766}
10767static inline HRESULT IXMLDOMNotation_get_attributes(IXMLDOMNotation* This,IXMLDOMNamedNodeMap **attributeMap) {
10768    return This->lpVtbl->get_attributes(This,attributeMap);
10769}
10770static inline HRESULT IXMLDOMNotation_insertBefore(IXMLDOMNotation* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
10771    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
10772}
10773static inline HRESULT IXMLDOMNotation_replaceChild(IXMLDOMNotation* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
10774    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
10775}
10776static inline HRESULT IXMLDOMNotation_removeChild(IXMLDOMNotation* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
10777    return This->lpVtbl->removeChild(This,domNode,oldNode);
10778}
10779static inline HRESULT IXMLDOMNotation_appendChild(IXMLDOMNotation* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
10780    return This->lpVtbl->appendChild(This,newNode,outNewNode);
10781}
10782static inline HRESULT IXMLDOMNotation_hasChildNodes(IXMLDOMNotation* This,VARIANT_BOOL *pbool) {
10783    return This->lpVtbl->hasChildNodes(This,pbool);
10784}
10785static inline HRESULT IXMLDOMNotation_get_ownerDocument(IXMLDOMNotation* This,IXMLDOMDocument **domDocument) {
10786    return This->lpVtbl->get_ownerDocument(This,domDocument);
10787}
10788static inline HRESULT IXMLDOMNotation_cloneNode(IXMLDOMNotation* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
10789    return This->lpVtbl->cloneNode(This,pbool,outNode);
10790}
10791static inline HRESULT IXMLDOMNotation_get_nodeTypeString(IXMLDOMNotation* This,BSTR *p) {
10792    return This->lpVtbl->get_nodeTypeString(This,p);
10793}
10794static inline HRESULT IXMLDOMNotation_get_text(IXMLDOMNotation* This,BSTR *p) {
10795    return This->lpVtbl->get_text(This,p);
10796}
10797static inline HRESULT IXMLDOMNotation_put_text(IXMLDOMNotation* This,BSTR p) {
10798    return This->lpVtbl->put_text(This,p);
10799}
10800static inline HRESULT IXMLDOMNotation_get_specified(IXMLDOMNotation* This,VARIANT_BOOL *pbool) {
10801    return This->lpVtbl->get_specified(This,pbool);
10802}
10803static inline HRESULT IXMLDOMNotation_get_definition(IXMLDOMNotation* This,IXMLDOMNode **domNode) {
10804    return This->lpVtbl->get_definition(This,domNode);
10805}
10806static inline HRESULT IXMLDOMNotation_get_nodeTypedValue(IXMLDOMNotation* This,VARIANT *var1) {
10807    return This->lpVtbl->get_nodeTypedValue(This,var1);
10808}
10809static inline HRESULT IXMLDOMNotation_put_nodeTypedValue(IXMLDOMNotation* This,VARIANT var1) {
10810    return This->lpVtbl->put_nodeTypedValue(This,var1);
10811}
10812static inline HRESULT IXMLDOMNotation_get_dataType(IXMLDOMNotation* This,VARIANT *var1) {
10813    return This->lpVtbl->get_dataType(This,var1);
10814}
10815static inline HRESULT IXMLDOMNotation_put_dataType(IXMLDOMNotation* This,BSTR p) {
10816    return This->lpVtbl->put_dataType(This,p);
10817}
10818static inline HRESULT IXMLDOMNotation_get_xml(IXMLDOMNotation* This,BSTR *p) {
10819    return This->lpVtbl->get_xml(This,p);
10820}
10821static inline HRESULT IXMLDOMNotation_transformNode(IXMLDOMNotation* This,IXMLDOMNode *domNode,BSTR *p) {
10822    return This->lpVtbl->transformNode(This,domNode,p);
10823}
10824static inline HRESULT IXMLDOMNotation_selectNodes(IXMLDOMNotation* This,BSTR p,IXMLDOMNodeList **outList) {
10825    return This->lpVtbl->selectNodes(This,p,outList);
10826}
10827static inline HRESULT IXMLDOMNotation_selectSingleNode(IXMLDOMNotation* This,BSTR p,IXMLDOMNode **outNode) {
10828    return This->lpVtbl->selectSingleNode(This,p,outNode);
10829}
10830static inline HRESULT IXMLDOMNotation_get_parsed(IXMLDOMNotation* This,VARIANT_BOOL *pbool) {
10831    return This->lpVtbl->get_parsed(This,pbool);
10832}
10833static inline HRESULT IXMLDOMNotation_get_namespaceURI(IXMLDOMNotation* This,BSTR *p) {
10834    return This->lpVtbl->get_namespaceURI(This,p);
10835}
10836static inline HRESULT IXMLDOMNotation_get_prefix(IXMLDOMNotation* This,BSTR *p) {
10837    return This->lpVtbl->get_prefix(This,p);
10838}
10839static inline HRESULT IXMLDOMNotation_get_baseName(IXMLDOMNotation* This,BSTR *p) {
10840    return This->lpVtbl->get_baseName(This,p);
10841}
10842static inline HRESULT IXMLDOMNotation_transformNodeToObject(IXMLDOMNotation* This,IXMLDOMNode *domNode,VARIANT var1) {
10843    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
10844}
10845/*** IXMLDOMNotation methods ***/
10846static inline HRESULT IXMLDOMNotation_get_publicId(IXMLDOMNotation* This,VARIANT *id) {
10847    return This->lpVtbl->get_publicId(This,id);
10848}
10849static inline HRESULT IXMLDOMNotation_get_systemId(IXMLDOMNotation* This,VARIANT *id) {
10850    return This->lpVtbl->get_systemId(This,id);
10851}
10852#endif
10853#endif
10854
10855#endif
10856
10857
10858#endif  /* __IXMLDOMNotation_INTERFACE_DEFINED__ */
10859
10860/*****************************************************************************
10861 * IXMLDOMEntity interface
10862 */
10863#ifndef __IXMLDOMEntity_INTERFACE_DEFINED__
10864#define __IXMLDOMEntity_INTERFACE_DEFINED__
10865
10866DEFINE_GUID(IID_IXMLDOMEntity, 0x2933bf8d, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
10867#if defined(__cplusplus) && !defined(CINTERFACE)
10868MIDL_INTERFACE("2933bf8d-7b36-11d2-b20e-00c04f983e60")
10869IXMLDOMEntity : public IXMLDOMNode
10870{
10871    virtual HRESULT STDMETHODCALLTYPE get_publicId(
10872        VARIANT *id1) = 0;
10873
10874    virtual HRESULT STDMETHODCALLTYPE get_systemId(
10875        VARIANT *id1) = 0;
10876
10877    virtual HRESULT STDMETHODCALLTYPE get_notationName(
10878        BSTR *p) = 0;
10879
10880};
10881#ifdef __CRT_UUID_DECL
10882__CRT_UUID_DECL(IXMLDOMEntity, 0x2933bf8d, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
10883#endif
10884#else
10885typedef struct IXMLDOMEntityVtbl {
10886    BEGIN_INTERFACE
10887
10888    /*** IUnknown methods ***/
10889    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10890        IXMLDOMEntity *This,
10891        REFIID riid,
10892        void **ppvObject);
10893
10894    ULONG (STDMETHODCALLTYPE *AddRef)(
10895        IXMLDOMEntity *This);
10896
10897    ULONG (STDMETHODCALLTYPE *Release)(
10898        IXMLDOMEntity *This);
10899
10900    /*** IDispatch methods ***/
10901    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10902        IXMLDOMEntity *This,
10903        UINT *pctinfo);
10904
10905    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10906        IXMLDOMEntity *This,
10907        UINT iTInfo,
10908        LCID lcid,
10909        ITypeInfo **ppTInfo);
10910
10911    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10912        IXMLDOMEntity *This,
10913        REFIID riid,
10914        LPOLESTR *rgszNames,
10915        UINT cNames,
10916        LCID lcid,
10917        DISPID *rgDispId);
10918
10919    HRESULT (STDMETHODCALLTYPE *Invoke)(
10920        IXMLDOMEntity *This,
10921        DISPID dispIdMember,
10922        REFIID riid,
10923        LCID lcid,
10924        WORD wFlags,
10925        DISPPARAMS *pDispParams,
10926        VARIANT *pVarResult,
10927        EXCEPINFO *pExcepInfo,
10928        UINT *puArgErr);
10929
10930    /*** IXMLDOMNode methods ***/
10931    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
10932        IXMLDOMEntity *This,
10933        BSTR *p);
10934
10935    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
10936        IXMLDOMEntity *This,
10937        VARIANT *var1);
10938
10939    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
10940        IXMLDOMEntity *This,
10941        VARIANT var1);
10942
10943    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
10944        IXMLDOMEntity *This,
10945        DOMNodeType *domNodeType);
10946
10947    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
10948        IXMLDOMEntity *This,
10949        IXMLDOMNode **parent);
10950
10951    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
10952        IXMLDOMEntity *This,
10953        IXMLDOMNodeList **outList);
10954
10955    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
10956        IXMLDOMEntity *This,
10957        IXMLDOMNode **domNode);
10958
10959    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
10960        IXMLDOMEntity *This,
10961        IXMLDOMNode **domNode);
10962
10963    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
10964        IXMLDOMEntity *This,
10965        IXMLDOMNode **domNode);
10966
10967    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
10968        IXMLDOMEntity *This,
10969        IXMLDOMNode **domNode);
10970
10971    HRESULT (STDMETHODCALLTYPE *get_attributes)(
10972        IXMLDOMEntity *This,
10973        IXMLDOMNamedNodeMap **attributeMap);
10974
10975    HRESULT (STDMETHODCALLTYPE *insertBefore)(
10976        IXMLDOMEntity *This,
10977        IXMLDOMNode *newNode,
10978        VARIANT var1,
10979        IXMLDOMNode **outOldNode);
10980
10981    HRESULT (STDMETHODCALLTYPE *replaceChild)(
10982        IXMLDOMEntity *This,
10983        IXMLDOMNode *newNode,
10984        IXMLDOMNode *oldNode,
10985        IXMLDOMNode **outOldNode);
10986
10987    HRESULT (STDMETHODCALLTYPE *removeChild)(
10988        IXMLDOMEntity *This,
10989        IXMLDOMNode *domNode,
10990        IXMLDOMNode **oldNode);
10991
10992    HRESULT (STDMETHODCALLTYPE *appendChild)(
10993        IXMLDOMEntity *This,
10994        IXMLDOMNode *newNode,
10995        IXMLDOMNode **outNewNode);
10996
10997    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
10998        IXMLDOMEntity *This,
10999        VARIANT_BOOL *pbool);
11000
11001    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
11002        IXMLDOMEntity *This,
11003        IXMLDOMDocument **domDocument);
11004
11005    HRESULT (STDMETHODCALLTYPE *cloneNode)(
11006        IXMLDOMEntity *This,
11007        VARIANT_BOOL pbool,
11008        IXMLDOMNode **outNode);
11009
11010    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
11011        IXMLDOMEntity *This,
11012        BSTR *p);
11013
11014    HRESULT (STDMETHODCALLTYPE *get_text)(
11015        IXMLDOMEntity *This,
11016        BSTR *p);
11017
11018    HRESULT (STDMETHODCALLTYPE *put_text)(
11019        IXMLDOMEntity *This,
11020        BSTR p);
11021
11022    HRESULT (STDMETHODCALLTYPE *get_specified)(
11023        IXMLDOMEntity *This,
11024        VARIANT_BOOL *pbool);
11025
11026    HRESULT (STDMETHODCALLTYPE *get_definition)(
11027        IXMLDOMEntity *This,
11028        IXMLDOMNode **domNode);
11029
11030    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
11031        IXMLDOMEntity *This,
11032        VARIANT *var1);
11033
11034    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
11035        IXMLDOMEntity *This,
11036        VARIANT var1);
11037
11038    HRESULT (STDMETHODCALLTYPE *get_dataType)(
11039        IXMLDOMEntity *This,
11040        VARIANT *var1);
11041
11042    HRESULT (STDMETHODCALLTYPE *put_dataType)(
11043        IXMLDOMEntity *This,
11044        BSTR p);
11045
11046    HRESULT (STDMETHODCALLTYPE *get_xml)(
11047        IXMLDOMEntity *This,
11048        BSTR *p);
11049
11050    HRESULT (STDMETHODCALLTYPE *transformNode)(
11051        IXMLDOMEntity *This,
11052        IXMLDOMNode *domNode,
11053        BSTR *p);
11054
11055    HRESULT (STDMETHODCALLTYPE *selectNodes)(
11056        IXMLDOMEntity *This,
11057        BSTR p,
11058        IXMLDOMNodeList **outList);
11059
11060    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
11061        IXMLDOMEntity *This,
11062        BSTR p,
11063        IXMLDOMNode **outNode);
11064
11065    HRESULT (STDMETHODCALLTYPE *get_parsed)(
11066        IXMLDOMEntity *This,
11067        VARIANT_BOOL *pbool);
11068
11069    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
11070        IXMLDOMEntity *This,
11071        BSTR *p);
11072
11073    HRESULT (STDMETHODCALLTYPE *get_prefix)(
11074        IXMLDOMEntity *This,
11075        BSTR *p);
11076
11077    HRESULT (STDMETHODCALLTYPE *get_baseName)(
11078        IXMLDOMEntity *This,
11079        BSTR *p);
11080
11081    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
11082        IXMLDOMEntity *This,
11083        IXMLDOMNode *domNode,
11084        VARIANT var1);
11085
11086    /*** IXMLDOMEntity methods ***/
11087    HRESULT (STDMETHODCALLTYPE *get_publicId)(
11088        IXMLDOMEntity *This,
11089        VARIANT *id1);
11090
11091    HRESULT (STDMETHODCALLTYPE *get_systemId)(
11092        IXMLDOMEntity *This,
11093        VARIANT *id1);
11094
11095    HRESULT (STDMETHODCALLTYPE *get_notationName)(
11096        IXMLDOMEntity *This,
11097        BSTR *p);
11098
11099    END_INTERFACE
11100} IXMLDOMEntityVtbl;
11101
11102interface IXMLDOMEntity {
11103    CONST_VTBL IXMLDOMEntityVtbl* lpVtbl;
11104};
11105
11106#ifdef COBJMACROS
11107#ifndef WIDL_C_INLINE_WRAPPERS
11108/*** IUnknown methods ***/
11109#define IXMLDOMEntity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11110#define IXMLDOMEntity_AddRef(This) (This)->lpVtbl->AddRef(This)
11111#define IXMLDOMEntity_Release(This) (This)->lpVtbl->Release(This)
11112/*** IDispatch methods ***/
11113#define IXMLDOMEntity_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11114#define IXMLDOMEntity_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11115#define IXMLDOMEntity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11116#define IXMLDOMEntity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11117/*** IXMLDOMNode methods ***/
11118#define IXMLDOMEntity_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
11119#define IXMLDOMEntity_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
11120#define IXMLDOMEntity_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
11121#define IXMLDOMEntity_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
11122#define IXMLDOMEntity_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
11123#define IXMLDOMEntity_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
11124#define IXMLDOMEntity_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
11125#define IXMLDOMEntity_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
11126#define IXMLDOMEntity_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
11127#define IXMLDOMEntity_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
11128#define IXMLDOMEntity_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
11129#define IXMLDOMEntity_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
11130#define IXMLDOMEntity_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
11131#define IXMLDOMEntity_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
11132#define IXMLDOMEntity_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
11133#define IXMLDOMEntity_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
11134#define IXMLDOMEntity_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
11135#define IXMLDOMEntity_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
11136#define IXMLDOMEntity_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
11137#define IXMLDOMEntity_get_text(This,p) (This)->lpVtbl->get_text(This,p)
11138#define IXMLDOMEntity_put_text(This,p) (This)->lpVtbl->put_text(This,p)
11139#define IXMLDOMEntity_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
11140#define IXMLDOMEntity_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
11141#define IXMLDOMEntity_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
11142#define IXMLDOMEntity_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
11143#define IXMLDOMEntity_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
11144#define IXMLDOMEntity_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
11145#define IXMLDOMEntity_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
11146#define IXMLDOMEntity_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
11147#define IXMLDOMEntity_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
11148#define IXMLDOMEntity_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
11149#define IXMLDOMEntity_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
11150#define IXMLDOMEntity_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
11151#define IXMLDOMEntity_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
11152#define IXMLDOMEntity_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
11153#define IXMLDOMEntity_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
11154/*** IXMLDOMEntity methods ***/
11155#define IXMLDOMEntity_get_publicId(This,id1) (This)->lpVtbl->get_publicId(This,id1)
11156#define IXMLDOMEntity_get_systemId(This,id1) (This)->lpVtbl->get_systemId(This,id1)
11157#define IXMLDOMEntity_get_notationName(This,p) (This)->lpVtbl->get_notationName(This,p)
11158#else
11159/*** IUnknown methods ***/
11160static inline HRESULT IXMLDOMEntity_QueryInterface(IXMLDOMEntity* This,REFIID riid,void **ppvObject) {
11161    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11162}
11163static inline ULONG IXMLDOMEntity_AddRef(IXMLDOMEntity* This) {
11164    return This->lpVtbl->AddRef(This);
11165}
11166static inline ULONG IXMLDOMEntity_Release(IXMLDOMEntity* This) {
11167    return This->lpVtbl->Release(This);
11168}
11169/*** IDispatch methods ***/
11170static inline HRESULT IXMLDOMEntity_GetTypeInfoCount(IXMLDOMEntity* This,UINT *pctinfo) {
11171    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11172}
11173static inline HRESULT IXMLDOMEntity_GetTypeInfo(IXMLDOMEntity* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11174    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11175}
11176static inline HRESULT IXMLDOMEntity_GetIDsOfNames(IXMLDOMEntity* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11177    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11178}
11179static inline HRESULT IXMLDOMEntity_Invoke(IXMLDOMEntity* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11180    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11181}
11182/*** IXMLDOMNode methods ***/
11183static inline HRESULT IXMLDOMEntity_get_nodeName(IXMLDOMEntity* This,BSTR *p) {
11184    return This->lpVtbl->get_nodeName(This,p);
11185}
11186static inline HRESULT IXMLDOMEntity_get_nodeValue(IXMLDOMEntity* This,VARIANT *var1) {
11187    return This->lpVtbl->get_nodeValue(This,var1);
11188}
11189static inline HRESULT IXMLDOMEntity_put_nodeValue(IXMLDOMEntity* This,VARIANT var1) {
11190    return This->lpVtbl->put_nodeValue(This,var1);
11191}
11192static inline HRESULT IXMLDOMEntity_get_nodeType(IXMLDOMEntity* This,DOMNodeType *domNodeType) {
11193    return This->lpVtbl->get_nodeType(This,domNodeType);
11194}
11195static inline HRESULT IXMLDOMEntity_get_parentNode(IXMLDOMEntity* This,IXMLDOMNode **parent) {
11196    return This->lpVtbl->get_parentNode(This,parent);
11197}
11198static inline HRESULT IXMLDOMEntity_get_childNodes(IXMLDOMEntity* This,IXMLDOMNodeList **outList) {
11199    return This->lpVtbl->get_childNodes(This,outList);
11200}
11201static inline HRESULT IXMLDOMEntity_get_firstChild(IXMLDOMEntity* This,IXMLDOMNode **domNode) {
11202    return This->lpVtbl->get_firstChild(This,domNode);
11203}
11204static inline HRESULT IXMLDOMEntity_get_lastChild(IXMLDOMEntity* This,IXMLDOMNode **domNode) {
11205    return This->lpVtbl->get_lastChild(This,domNode);
11206}
11207static inline HRESULT IXMLDOMEntity_get_previousSibling(IXMLDOMEntity* This,IXMLDOMNode **domNode) {
11208    return This->lpVtbl->get_previousSibling(This,domNode);
11209}
11210static inline HRESULT IXMLDOMEntity_get_nextSibling(IXMLDOMEntity* This,IXMLDOMNode **domNode) {
11211    return This->lpVtbl->get_nextSibling(This,domNode);
11212}
11213static inline HRESULT IXMLDOMEntity_get_attributes(IXMLDOMEntity* This,IXMLDOMNamedNodeMap **attributeMap) {
11214    return This->lpVtbl->get_attributes(This,attributeMap);
11215}
11216static inline HRESULT IXMLDOMEntity_insertBefore(IXMLDOMEntity* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
11217    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
11218}
11219static inline HRESULT IXMLDOMEntity_replaceChild(IXMLDOMEntity* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
11220    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
11221}
11222static inline HRESULT IXMLDOMEntity_removeChild(IXMLDOMEntity* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
11223    return This->lpVtbl->removeChild(This,domNode,oldNode);
11224}
11225static inline HRESULT IXMLDOMEntity_appendChild(IXMLDOMEntity* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
11226    return This->lpVtbl->appendChild(This,newNode,outNewNode);
11227}
11228static inline HRESULT IXMLDOMEntity_hasChildNodes(IXMLDOMEntity* This,VARIANT_BOOL *pbool) {
11229    return This->lpVtbl->hasChildNodes(This,pbool);
11230}
11231static inline HRESULT IXMLDOMEntity_get_ownerDocument(IXMLDOMEntity* This,IXMLDOMDocument **domDocument) {
11232    return This->lpVtbl->get_ownerDocument(This,domDocument);
11233}
11234static inline HRESULT IXMLDOMEntity_cloneNode(IXMLDOMEntity* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
11235    return This->lpVtbl->cloneNode(This,pbool,outNode);
11236}
11237static inline HRESULT IXMLDOMEntity_get_nodeTypeString(IXMLDOMEntity* This,BSTR *p) {
11238    return This->lpVtbl->get_nodeTypeString(This,p);
11239}
11240static inline HRESULT IXMLDOMEntity_get_text(IXMLDOMEntity* This,BSTR *p) {
11241    return This->lpVtbl->get_text(This,p);
11242}
11243static inline HRESULT IXMLDOMEntity_put_text(IXMLDOMEntity* This,BSTR p) {
11244    return This->lpVtbl->put_text(This,p);
11245}
11246static inline HRESULT IXMLDOMEntity_get_specified(IXMLDOMEntity* This,VARIANT_BOOL *pbool) {
11247    return This->lpVtbl->get_specified(This,pbool);
11248}
11249static inline HRESULT IXMLDOMEntity_get_definition(IXMLDOMEntity* This,IXMLDOMNode **domNode) {
11250    return This->lpVtbl->get_definition(This,domNode);
11251}
11252static inline HRESULT IXMLDOMEntity_get_nodeTypedValue(IXMLDOMEntity* This,VARIANT *var1) {
11253    return This->lpVtbl->get_nodeTypedValue(This,var1);
11254}
11255static inline HRESULT IXMLDOMEntity_put_nodeTypedValue(IXMLDOMEntity* This,VARIANT var1) {
11256    return This->lpVtbl->put_nodeTypedValue(This,var1);
11257}
11258static inline HRESULT IXMLDOMEntity_get_dataType(IXMLDOMEntity* This,VARIANT *var1) {
11259    return This->lpVtbl->get_dataType(This,var1);
11260}
11261static inline HRESULT IXMLDOMEntity_put_dataType(IXMLDOMEntity* This,BSTR p) {
11262    return This->lpVtbl->put_dataType(This,p);
11263}
11264static inline HRESULT IXMLDOMEntity_get_xml(IXMLDOMEntity* This,BSTR *p) {
11265    return This->lpVtbl->get_xml(This,p);
11266}
11267static inline HRESULT IXMLDOMEntity_transformNode(IXMLDOMEntity* This,IXMLDOMNode *domNode,BSTR *p) {
11268    return This->lpVtbl->transformNode(This,domNode,p);
11269}
11270static inline HRESULT IXMLDOMEntity_selectNodes(IXMLDOMEntity* This,BSTR p,IXMLDOMNodeList **outList) {
11271    return This->lpVtbl->selectNodes(This,p,outList);
11272}
11273static inline HRESULT IXMLDOMEntity_selectSingleNode(IXMLDOMEntity* This,BSTR p,IXMLDOMNode **outNode) {
11274    return This->lpVtbl->selectSingleNode(This,p,outNode);
11275}
11276static inline HRESULT IXMLDOMEntity_get_parsed(IXMLDOMEntity* This,VARIANT_BOOL *pbool) {
11277    return This->lpVtbl->get_parsed(This,pbool);
11278}
11279static inline HRESULT IXMLDOMEntity_get_namespaceURI(IXMLDOMEntity* This,BSTR *p) {
11280    return This->lpVtbl->get_namespaceURI(This,p);
11281}
11282static inline HRESULT IXMLDOMEntity_get_prefix(IXMLDOMEntity* This,BSTR *p) {
11283    return This->lpVtbl->get_prefix(This,p);
11284}
11285static inline HRESULT IXMLDOMEntity_get_baseName(IXMLDOMEntity* This,BSTR *p) {
11286    return This->lpVtbl->get_baseName(This,p);
11287}
11288static inline HRESULT IXMLDOMEntity_transformNodeToObject(IXMLDOMEntity* This,IXMLDOMNode *domNode,VARIANT var1) {
11289    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
11290}
11291/*** IXMLDOMEntity methods ***/
11292static inline HRESULT IXMLDOMEntity_get_publicId(IXMLDOMEntity* This,VARIANT *id1) {
11293    return This->lpVtbl->get_publicId(This,id1);
11294}
11295static inline HRESULT IXMLDOMEntity_get_systemId(IXMLDOMEntity* This,VARIANT *id1) {
11296    return This->lpVtbl->get_systemId(This,id1);
11297}
11298static inline HRESULT IXMLDOMEntity_get_notationName(IXMLDOMEntity* This,BSTR *p) {
11299    return This->lpVtbl->get_notationName(This,p);
11300}
11301#endif
11302#endif
11303
11304#endif
11305
11306
11307#endif  /* __IXMLDOMEntity_INTERFACE_DEFINED__ */
11308
11309/*****************************************************************************
11310 * IXMLDOMEntityReference interface
11311 */
11312#ifndef __IXMLDOMEntityReference_INTERFACE_DEFINED__
11313#define __IXMLDOMEntityReference_INTERFACE_DEFINED__
11314
11315DEFINE_GUID(IID_IXMLDOMEntityReference, 0x2933bf8e, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
11316#if defined(__cplusplus) && !defined(CINTERFACE)
11317MIDL_INTERFACE("2933bf8e-7b36-11d2-b20e-00c04f983e60")
11318IXMLDOMEntityReference : public IXMLDOMNode
11319{
11320};
11321#ifdef __CRT_UUID_DECL
11322__CRT_UUID_DECL(IXMLDOMEntityReference, 0x2933bf8e, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
11323#endif
11324#else
11325typedef struct IXMLDOMEntityReferenceVtbl {
11326    BEGIN_INTERFACE
11327
11328    /*** IUnknown methods ***/
11329    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11330        IXMLDOMEntityReference *This,
11331        REFIID riid,
11332        void **ppvObject);
11333
11334    ULONG (STDMETHODCALLTYPE *AddRef)(
11335        IXMLDOMEntityReference *This);
11336
11337    ULONG (STDMETHODCALLTYPE *Release)(
11338        IXMLDOMEntityReference *This);
11339
11340    /*** IDispatch methods ***/
11341    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11342        IXMLDOMEntityReference *This,
11343        UINT *pctinfo);
11344
11345    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11346        IXMLDOMEntityReference *This,
11347        UINT iTInfo,
11348        LCID lcid,
11349        ITypeInfo **ppTInfo);
11350
11351    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11352        IXMLDOMEntityReference *This,
11353        REFIID riid,
11354        LPOLESTR *rgszNames,
11355        UINT cNames,
11356        LCID lcid,
11357        DISPID *rgDispId);
11358
11359    HRESULT (STDMETHODCALLTYPE *Invoke)(
11360        IXMLDOMEntityReference *This,
11361        DISPID dispIdMember,
11362        REFIID riid,
11363        LCID lcid,
11364        WORD wFlags,
11365        DISPPARAMS *pDispParams,
11366        VARIANT *pVarResult,
11367        EXCEPINFO *pExcepInfo,
11368        UINT *puArgErr);
11369
11370    /*** IXMLDOMNode methods ***/
11371    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
11372        IXMLDOMEntityReference *This,
11373        BSTR *p);
11374
11375    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
11376        IXMLDOMEntityReference *This,
11377        VARIANT *var1);
11378
11379    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
11380        IXMLDOMEntityReference *This,
11381        VARIANT var1);
11382
11383    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
11384        IXMLDOMEntityReference *This,
11385        DOMNodeType *domNodeType);
11386
11387    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
11388        IXMLDOMEntityReference *This,
11389        IXMLDOMNode **parent);
11390
11391    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
11392        IXMLDOMEntityReference *This,
11393        IXMLDOMNodeList **outList);
11394
11395    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
11396        IXMLDOMEntityReference *This,
11397        IXMLDOMNode **domNode);
11398
11399    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
11400        IXMLDOMEntityReference *This,
11401        IXMLDOMNode **domNode);
11402
11403    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
11404        IXMLDOMEntityReference *This,
11405        IXMLDOMNode **domNode);
11406
11407    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
11408        IXMLDOMEntityReference *This,
11409        IXMLDOMNode **domNode);
11410
11411    HRESULT (STDMETHODCALLTYPE *get_attributes)(
11412        IXMLDOMEntityReference *This,
11413        IXMLDOMNamedNodeMap **attributeMap);
11414
11415    HRESULT (STDMETHODCALLTYPE *insertBefore)(
11416        IXMLDOMEntityReference *This,
11417        IXMLDOMNode *newNode,
11418        VARIANT var1,
11419        IXMLDOMNode **outOldNode);
11420
11421    HRESULT (STDMETHODCALLTYPE *replaceChild)(
11422        IXMLDOMEntityReference *This,
11423        IXMLDOMNode *newNode,
11424        IXMLDOMNode *oldNode,
11425        IXMLDOMNode **outOldNode);
11426
11427    HRESULT (STDMETHODCALLTYPE *removeChild)(
11428        IXMLDOMEntityReference *This,
11429        IXMLDOMNode *domNode,
11430        IXMLDOMNode **oldNode);
11431
11432    HRESULT (STDMETHODCALLTYPE *appendChild)(
11433        IXMLDOMEntityReference *This,
11434        IXMLDOMNode *newNode,
11435        IXMLDOMNode **outNewNode);
11436
11437    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
11438        IXMLDOMEntityReference *This,
11439        VARIANT_BOOL *pbool);
11440
11441    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
11442        IXMLDOMEntityReference *This,
11443        IXMLDOMDocument **domDocument);
11444
11445    HRESULT (STDMETHODCALLTYPE *cloneNode)(
11446        IXMLDOMEntityReference *This,
11447        VARIANT_BOOL pbool,
11448        IXMLDOMNode **outNode);
11449
11450    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
11451        IXMLDOMEntityReference *This,
11452        BSTR *p);
11453
11454    HRESULT (STDMETHODCALLTYPE *get_text)(
11455        IXMLDOMEntityReference *This,
11456        BSTR *p);
11457
11458    HRESULT (STDMETHODCALLTYPE *put_text)(
11459        IXMLDOMEntityReference *This,
11460        BSTR p);
11461
11462    HRESULT (STDMETHODCALLTYPE *get_specified)(
11463        IXMLDOMEntityReference *This,
11464        VARIANT_BOOL *pbool);
11465
11466    HRESULT (STDMETHODCALLTYPE *get_definition)(
11467        IXMLDOMEntityReference *This,
11468        IXMLDOMNode **domNode);
11469
11470    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
11471        IXMLDOMEntityReference *This,
11472        VARIANT *var1);
11473
11474    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
11475        IXMLDOMEntityReference *This,
11476        VARIANT var1);
11477
11478    HRESULT (STDMETHODCALLTYPE *get_dataType)(
11479        IXMLDOMEntityReference *This,
11480        VARIANT *var1);
11481
11482    HRESULT (STDMETHODCALLTYPE *put_dataType)(
11483        IXMLDOMEntityReference *This,
11484        BSTR p);
11485
11486    HRESULT (STDMETHODCALLTYPE *get_xml)(
11487        IXMLDOMEntityReference *This,
11488        BSTR *p);
11489
11490    HRESULT (STDMETHODCALLTYPE *transformNode)(
11491        IXMLDOMEntityReference *This,
11492        IXMLDOMNode *domNode,
11493        BSTR *p);
11494
11495    HRESULT (STDMETHODCALLTYPE *selectNodes)(
11496        IXMLDOMEntityReference *This,
11497        BSTR p,
11498        IXMLDOMNodeList **outList);
11499
11500    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
11501        IXMLDOMEntityReference *This,
11502        BSTR p,
11503        IXMLDOMNode **outNode);
11504
11505    HRESULT (STDMETHODCALLTYPE *get_parsed)(
11506        IXMLDOMEntityReference *This,
11507        VARIANT_BOOL *pbool);
11508
11509    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
11510        IXMLDOMEntityReference *This,
11511        BSTR *p);
11512
11513    HRESULT (STDMETHODCALLTYPE *get_prefix)(
11514        IXMLDOMEntityReference *This,
11515        BSTR *p);
11516
11517    HRESULT (STDMETHODCALLTYPE *get_baseName)(
11518        IXMLDOMEntityReference *This,
11519        BSTR *p);
11520
11521    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
11522        IXMLDOMEntityReference *This,
11523        IXMLDOMNode *domNode,
11524        VARIANT var1);
11525
11526    END_INTERFACE
11527} IXMLDOMEntityReferenceVtbl;
11528
11529interface IXMLDOMEntityReference {
11530    CONST_VTBL IXMLDOMEntityReferenceVtbl* lpVtbl;
11531};
11532
11533#ifdef COBJMACROS
11534#ifndef WIDL_C_INLINE_WRAPPERS
11535/*** IUnknown methods ***/
11536#define IXMLDOMEntityReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11537#define IXMLDOMEntityReference_AddRef(This) (This)->lpVtbl->AddRef(This)
11538#define IXMLDOMEntityReference_Release(This) (This)->lpVtbl->Release(This)
11539/*** IDispatch methods ***/
11540#define IXMLDOMEntityReference_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11541#define IXMLDOMEntityReference_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11542#define IXMLDOMEntityReference_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11543#define IXMLDOMEntityReference_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11544/*** IXMLDOMNode methods ***/
11545#define IXMLDOMEntityReference_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
11546#define IXMLDOMEntityReference_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
11547#define IXMLDOMEntityReference_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
11548#define IXMLDOMEntityReference_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
11549#define IXMLDOMEntityReference_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
11550#define IXMLDOMEntityReference_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
11551#define IXMLDOMEntityReference_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
11552#define IXMLDOMEntityReference_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
11553#define IXMLDOMEntityReference_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
11554#define IXMLDOMEntityReference_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
11555#define IXMLDOMEntityReference_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
11556#define IXMLDOMEntityReference_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
11557#define IXMLDOMEntityReference_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
11558#define IXMLDOMEntityReference_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
11559#define IXMLDOMEntityReference_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
11560#define IXMLDOMEntityReference_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
11561#define IXMLDOMEntityReference_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
11562#define IXMLDOMEntityReference_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
11563#define IXMLDOMEntityReference_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
11564#define IXMLDOMEntityReference_get_text(This,p) (This)->lpVtbl->get_text(This,p)
11565#define IXMLDOMEntityReference_put_text(This,p) (This)->lpVtbl->put_text(This,p)
11566#define IXMLDOMEntityReference_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
11567#define IXMLDOMEntityReference_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
11568#define IXMLDOMEntityReference_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
11569#define IXMLDOMEntityReference_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
11570#define IXMLDOMEntityReference_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
11571#define IXMLDOMEntityReference_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
11572#define IXMLDOMEntityReference_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
11573#define IXMLDOMEntityReference_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
11574#define IXMLDOMEntityReference_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
11575#define IXMLDOMEntityReference_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
11576#define IXMLDOMEntityReference_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
11577#define IXMLDOMEntityReference_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
11578#define IXMLDOMEntityReference_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
11579#define IXMLDOMEntityReference_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
11580#define IXMLDOMEntityReference_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
11581#else
11582/*** IUnknown methods ***/
11583static inline HRESULT IXMLDOMEntityReference_QueryInterface(IXMLDOMEntityReference* This,REFIID riid,void **ppvObject) {
11584    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11585}
11586static inline ULONG IXMLDOMEntityReference_AddRef(IXMLDOMEntityReference* This) {
11587    return This->lpVtbl->AddRef(This);
11588}
11589static inline ULONG IXMLDOMEntityReference_Release(IXMLDOMEntityReference* This) {
11590    return This->lpVtbl->Release(This);
11591}
11592/*** IDispatch methods ***/
11593static inline HRESULT IXMLDOMEntityReference_GetTypeInfoCount(IXMLDOMEntityReference* This,UINT *pctinfo) {
11594    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11595}
11596static inline HRESULT IXMLDOMEntityReference_GetTypeInfo(IXMLDOMEntityReference* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11597    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11598}
11599static inline HRESULT IXMLDOMEntityReference_GetIDsOfNames(IXMLDOMEntityReference* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11600    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11601}
11602static inline HRESULT IXMLDOMEntityReference_Invoke(IXMLDOMEntityReference* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11603    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11604}
11605/*** IXMLDOMNode methods ***/
11606static inline HRESULT IXMLDOMEntityReference_get_nodeName(IXMLDOMEntityReference* This,BSTR *p) {
11607    return This->lpVtbl->get_nodeName(This,p);
11608}
11609static inline HRESULT IXMLDOMEntityReference_get_nodeValue(IXMLDOMEntityReference* This,VARIANT *var1) {
11610    return This->lpVtbl->get_nodeValue(This,var1);
11611}
11612static inline HRESULT IXMLDOMEntityReference_put_nodeValue(IXMLDOMEntityReference* This,VARIANT var1) {
11613    return This->lpVtbl->put_nodeValue(This,var1);
11614}
11615static inline HRESULT IXMLDOMEntityReference_get_nodeType(IXMLDOMEntityReference* This,DOMNodeType *domNodeType) {
11616    return This->lpVtbl->get_nodeType(This,domNodeType);
11617}
11618static inline HRESULT IXMLDOMEntityReference_get_parentNode(IXMLDOMEntityReference* This,IXMLDOMNode **parent) {
11619    return This->lpVtbl->get_parentNode(This,parent);
11620}
11621static inline HRESULT IXMLDOMEntityReference_get_childNodes(IXMLDOMEntityReference* This,IXMLDOMNodeList **outList) {
11622    return This->lpVtbl->get_childNodes(This,outList);
11623}
11624static inline HRESULT IXMLDOMEntityReference_get_firstChild(IXMLDOMEntityReference* This,IXMLDOMNode **domNode) {
11625    return This->lpVtbl->get_firstChild(This,domNode);
11626}
11627static inline HRESULT IXMLDOMEntityReference_get_lastChild(IXMLDOMEntityReference* This,IXMLDOMNode **domNode) {
11628    return This->lpVtbl->get_lastChild(This,domNode);
11629}
11630static inline HRESULT IXMLDOMEntityReference_get_previousSibling(IXMLDOMEntityReference* This,IXMLDOMNode **domNode) {
11631    return This->lpVtbl->get_previousSibling(This,domNode);
11632}
11633static inline HRESULT IXMLDOMEntityReference_get_nextSibling(IXMLDOMEntityReference* This,IXMLDOMNode **domNode) {
11634    return This->lpVtbl->get_nextSibling(This,domNode);
11635}
11636static inline HRESULT IXMLDOMEntityReference_get_attributes(IXMLDOMEntityReference* This,IXMLDOMNamedNodeMap **attributeMap) {
11637    return This->lpVtbl->get_attributes(This,attributeMap);
11638}
11639static inline HRESULT IXMLDOMEntityReference_insertBefore(IXMLDOMEntityReference* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
11640    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
11641}
11642static inline HRESULT IXMLDOMEntityReference_replaceChild(IXMLDOMEntityReference* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
11643    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
11644}
11645static inline HRESULT IXMLDOMEntityReference_removeChild(IXMLDOMEntityReference* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
11646    return This->lpVtbl->removeChild(This,domNode,oldNode);
11647}
11648static inline HRESULT IXMLDOMEntityReference_appendChild(IXMLDOMEntityReference* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
11649    return This->lpVtbl->appendChild(This,newNode,outNewNode);
11650}
11651static inline HRESULT IXMLDOMEntityReference_hasChildNodes(IXMLDOMEntityReference* This,VARIANT_BOOL *pbool) {
11652    return This->lpVtbl->hasChildNodes(This,pbool);
11653}
11654static inline HRESULT IXMLDOMEntityReference_get_ownerDocument(IXMLDOMEntityReference* This,IXMLDOMDocument **domDocument) {
11655    return This->lpVtbl->get_ownerDocument(This,domDocument);
11656}
11657static inline HRESULT IXMLDOMEntityReference_cloneNode(IXMLDOMEntityReference* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
11658    return This->lpVtbl->cloneNode(This,pbool,outNode);
11659}
11660static inline HRESULT IXMLDOMEntityReference_get_nodeTypeString(IXMLDOMEntityReference* This,BSTR *p) {
11661    return This->lpVtbl->get_nodeTypeString(This,p);
11662}
11663static inline HRESULT IXMLDOMEntityReference_get_text(IXMLDOMEntityReference* This,BSTR *p) {
11664    return This->lpVtbl->get_text(This,p);
11665}
11666static inline HRESULT IXMLDOMEntityReference_put_text(IXMLDOMEntityReference* This,BSTR p) {
11667    return This->lpVtbl->put_text(This,p);
11668}
11669static inline HRESULT IXMLDOMEntityReference_get_specified(IXMLDOMEntityReference* This,VARIANT_BOOL *pbool) {
11670    return This->lpVtbl->get_specified(This,pbool);
11671}
11672static inline HRESULT IXMLDOMEntityReference_get_definition(IXMLDOMEntityReference* This,IXMLDOMNode **domNode) {
11673    return This->lpVtbl->get_definition(This,domNode);
11674}
11675static inline HRESULT IXMLDOMEntityReference_get_nodeTypedValue(IXMLDOMEntityReference* This,VARIANT *var1) {
11676    return This->lpVtbl->get_nodeTypedValue(This,var1);
11677}
11678static inline HRESULT IXMLDOMEntityReference_put_nodeTypedValue(IXMLDOMEntityReference* This,VARIANT var1) {
11679    return This->lpVtbl->put_nodeTypedValue(This,var1);
11680}
11681static inline HRESULT IXMLDOMEntityReference_get_dataType(IXMLDOMEntityReference* This,VARIANT *var1) {
11682    return This->lpVtbl->get_dataType(This,var1);
11683}
11684static inline HRESULT IXMLDOMEntityReference_put_dataType(IXMLDOMEntityReference* This,BSTR p) {
11685    return This->lpVtbl->put_dataType(This,p);
11686}
11687static inline HRESULT IXMLDOMEntityReference_get_xml(IXMLDOMEntityReference* This,BSTR *p) {
11688    return This->lpVtbl->get_xml(This,p);
11689}
11690static inline HRESULT IXMLDOMEntityReference_transformNode(IXMLDOMEntityReference* This,IXMLDOMNode *domNode,BSTR *p) {
11691    return This->lpVtbl->transformNode(This,domNode,p);
11692}
11693static inline HRESULT IXMLDOMEntityReference_selectNodes(IXMLDOMEntityReference* This,BSTR p,IXMLDOMNodeList **outList) {
11694    return This->lpVtbl->selectNodes(This,p,outList);
11695}
11696static inline HRESULT IXMLDOMEntityReference_selectSingleNode(IXMLDOMEntityReference* This,BSTR p,IXMLDOMNode **outNode) {
11697    return This->lpVtbl->selectSingleNode(This,p,outNode);
11698}
11699static inline HRESULT IXMLDOMEntityReference_get_parsed(IXMLDOMEntityReference* This,VARIANT_BOOL *pbool) {
11700    return This->lpVtbl->get_parsed(This,pbool);
11701}
11702static inline HRESULT IXMLDOMEntityReference_get_namespaceURI(IXMLDOMEntityReference* This,BSTR *p) {
11703    return This->lpVtbl->get_namespaceURI(This,p);
11704}
11705static inline HRESULT IXMLDOMEntityReference_get_prefix(IXMLDOMEntityReference* This,BSTR *p) {
11706    return This->lpVtbl->get_prefix(This,p);
11707}
11708static inline HRESULT IXMLDOMEntityReference_get_baseName(IXMLDOMEntityReference* This,BSTR *p) {
11709    return This->lpVtbl->get_baseName(This,p);
11710}
11711static inline HRESULT IXMLDOMEntityReference_transformNodeToObject(IXMLDOMEntityReference* This,IXMLDOMNode *domNode,VARIANT var1) {
11712    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
11713}
11714#endif
11715#endif
11716
11717#endif
11718
11719
11720#endif  /* __IXMLDOMEntityReference_INTERFACE_DEFINED__ */
11721
11722/*****************************************************************************
11723 * IXMLDOMImplementation interface
11724 */
11725#ifndef __IXMLDOMImplementation_INTERFACE_DEFINED__
11726#define __IXMLDOMImplementation_INTERFACE_DEFINED__
11727
11728DEFINE_GUID(IID_IXMLDOMImplementation, 0x2933bf8f, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
11729#if defined(__cplusplus) && !defined(CINTERFACE)
11730MIDL_INTERFACE("2933bf8f-7b36-11d2-b20e-00c04f983e60")
11731IXMLDOMImplementation : public IDispatch
11732{
11733    virtual HRESULT STDMETHODCALLTYPE hasFeature(
11734        BSTR feature,
11735        BSTR version,
11736        VARIANT_BOOL *pbool) = 0;
11737
11738};
11739#ifdef __CRT_UUID_DECL
11740__CRT_UUID_DECL(IXMLDOMImplementation, 0x2933bf8f, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
11741#endif
11742#else
11743typedef struct IXMLDOMImplementationVtbl {
11744    BEGIN_INTERFACE
11745
11746    /*** IUnknown methods ***/
11747    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11748        IXMLDOMImplementation *This,
11749        REFIID riid,
11750        void **ppvObject);
11751
11752    ULONG (STDMETHODCALLTYPE *AddRef)(
11753        IXMLDOMImplementation *This);
11754
11755    ULONG (STDMETHODCALLTYPE *Release)(
11756        IXMLDOMImplementation *This);
11757
11758    /*** IDispatch methods ***/
11759    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11760        IXMLDOMImplementation *This,
11761        UINT *pctinfo);
11762
11763    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11764        IXMLDOMImplementation *This,
11765        UINT iTInfo,
11766        LCID lcid,
11767        ITypeInfo **ppTInfo);
11768
11769    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11770        IXMLDOMImplementation *This,
11771        REFIID riid,
11772        LPOLESTR *rgszNames,
11773        UINT cNames,
11774        LCID lcid,
11775        DISPID *rgDispId);
11776
11777    HRESULT (STDMETHODCALLTYPE *Invoke)(
11778        IXMLDOMImplementation *This,
11779        DISPID dispIdMember,
11780        REFIID riid,
11781        LCID lcid,
11782        WORD wFlags,
11783        DISPPARAMS *pDispParams,
11784        VARIANT *pVarResult,
11785        EXCEPINFO *pExcepInfo,
11786        UINT *puArgErr);
11787
11788    /*** IXMLDOMImplementation methods ***/
11789    HRESULT (STDMETHODCALLTYPE *hasFeature)(
11790        IXMLDOMImplementation *This,
11791        BSTR feature,
11792        BSTR version,
11793        VARIANT_BOOL *pbool);
11794
11795    END_INTERFACE
11796} IXMLDOMImplementationVtbl;
11797
11798interface IXMLDOMImplementation {
11799    CONST_VTBL IXMLDOMImplementationVtbl* lpVtbl;
11800};
11801
11802#ifdef COBJMACROS
11803#ifndef WIDL_C_INLINE_WRAPPERS
11804/*** IUnknown methods ***/
11805#define IXMLDOMImplementation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
11806#define IXMLDOMImplementation_AddRef(This) (This)->lpVtbl->AddRef(This)
11807#define IXMLDOMImplementation_Release(This) (This)->lpVtbl->Release(This)
11808/*** IDispatch methods ***/
11809#define IXMLDOMImplementation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
11810#define IXMLDOMImplementation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
11811#define IXMLDOMImplementation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
11812#define IXMLDOMImplementation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
11813/*** IXMLDOMImplementation methods ***/
11814#define IXMLDOMImplementation_hasFeature(This,feature,version,pbool) (This)->lpVtbl->hasFeature(This,feature,version,pbool)
11815#else
11816/*** IUnknown methods ***/
11817static inline HRESULT IXMLDOMImplementation_QueryInterface(IXMLDOMImplementation* This,REFIID riid,void **ppvObject) {
11818    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
11819}
11820static inline ULONG IXMLDOMImplementation_AddRef(IXMLDOMImplementation* This) {
11821    return This->lpVtbl->AddRef(This);
11822}
11823static inline ULONG IXMLDOMImplementation_Release(IXMLDOMImplementation* This) {
11824    return This->lpVtbl->Release(This);
11825}
11826/*** IDispatch methods ***/
11827static inline HRESULT IXMLDOMImplementation_GetTypeInfoCount(IXMLDOMImplementation* This,UINT *pctinfo) {
11828    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
11829}
11830static inline HRESULT IXMLDOMImplementation_GetTypeInfo(IXMLDOMImplementation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
11831    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
11832}
11833static inline HRESULT IXMLDOMImplementation_GetIDsOfNames(IXMLDOMImplementation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
11834    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
11835}
11836static inline HRESULT IXMLDOMImplementation_Invoke(IXMLDOMImplementation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
11837    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
11838}
11839/*** IXMLDOMImplementation methods ***/
11840static inline HRESULT IXMLDOMImplementation_hasFeature(IXMLDOMImplementation* This,BSTR feature,BSTR version,VARIANT_BOOL *pbool) {
11841    return This->lpVtbl->hasFeature(This,feature,version,pbool);
11842}
11843#endif
11844#endif
11845
11846#endif
11847
11848
11849#endif  /* __IXMLDOMImplementation_INTERFACE_DEFINED__ */
11850
11851/*****************************************************************************
11852 * IXTLRuntime interface
11853 */
11854#ifndef __IXTLRuntime_INTERFACE_DEFINED__
11855#define __IXTLRuntime_INTERFACE_DEFINED__
11856
11857DEFINE_GUID(IID_IXTLRuntime, 0x3efaa425, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
11858#if defined(__cplusplus) && !defined(CINTERFACE)
11859MIDL_INTERFACE("3efaa425-272f-11d2-836f-0000f87a7782")
11860IXTLRuntime : public IXMLDOMNode
11861{
11862    virtual HRESULT STDMETHODCALLTYPE uniqueID(
11863        IXMLDOMNode *pNode,
11864        LONG *pID) = 0;
11865
11866    virtual HRESULT STDMETHODCALLTYPE depth(
11867        IXMLDOMNode *pNode,
11868        LONG *pDepth) = 0;
11869
11870    virtual HRESULT STDMETHODCALLTYPE childNumber(
11871        IXMLDOMNode *pNode,
11872        LONG *pNumber) = 0;
11873
11874    virtual HRESULT STDMETHODCALLTYPE ancestorChildNumber(
11875        BSTR bstr,
11876        IXMLDOMNode *pNode,
11877        LONG *pNumber) = 0;
11878
11879    virtual HRESULT STDMETHODCALLTYPE absoluteChildNumber(
11880        IXMLDOMNode *pNode,
11881        LONG *pNumber) = 0;
11882
11883    virtual HRESULT STDMETHODCALLTYPE formatIndex(
11884        LONG lIndex,
11885        BSTR bstr,
11886        BSTR *pbstr) = 0;
11887
11888    virtual HRESULT STDMETHODCALLTYPE formatNumber(
11889        double dblNumber,
11890        BSTR bstr,
11891        BSTR *pbstr) = 0;
11892
11893    virtual HRESULT STDMETHODCALLTYPE formatDate(
11894        VARIANT var1,
11895        BSTR bstr,
11896        VARIANT var2,
11897        BSTR *pbstr) = 0;
11898
11899    virtual HRESULT STDMETHODCALLTYPE formatTime(
11900        VARIANT var1,
11901        BSTR bstr,
11902        VARIANT var2,
11903        BSTR *pbstr) = 0;
11904
11905};
11906#ifdef __CRT_UUID_DECL
11907__CRT_UUID_DECL(IXTLRuntime, 0x3efaa425, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
11908#endif
11909#else
11910typedef struct IXTLRuntimeVtbl {
11911    BEGIN_INTERFACE
11912
11913    /*** IUnknown methods ***/
11914    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
11915        IXTLRuntime *This,
11916        REFIID riid,
11917        void **ppvObject);
11918
11919    ULONG (STDMETHODCALLTYPE *AddRef)(
11920        IXTLRuntime *This);
11921
11922    ULONG (STDMETHODCALLTYPE *Release)(
11923        IXTLRuntime *This);
11924
11925    /*** IDispatch methods ***/
11926    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
11927        IXTLRuntime *This,
11928        UINT *pctinfo);
11929
11930    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
11931        IXTLRuntime *This,
11932        UINT iTInfo,
11933        LCID lcid,
11934        ITypeInfo **ppTInfo);
11935
11936    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
11937        IXTLRuntime *This,
11938        REFIID riid,
11939        LPOLESTR *rgszNames,
11940        UINT cNames,
11941        LCID lcid,
11942        DISPID *rgDispId);
11943
11944    HRESULT (STDMETHODCALLTYPE *Invoke)(
11945        IXTLRuntime *This,
11946        DISPID dispIdMember,
11947        REFIID riid,
11948        LCID lcid,
11949        WORD wFlags,
11950        DISPPARAMS *pDispParams,
11951        VARIANT *pVarResult,
11952        EXCEPINFO *pExcepInfo,
11953        UINT *puArgErr);
11954
11955    /*** IXMLDOMNode methods ***/
11956    HRESULT (STDMETHODCALLTYPE *get_nodeName)(
11957        IXTLRuntime *This,
11958        BSTR *p);
11959
11960    HRESULT (STDMETHODCALLTYPE *get_nodeValue)(
11961        IXTLRuntime *This,
11962        VARIANT *var1);
11963
11964    HRESULT (STDMETHODCALLTYPE *put_nodeValue)(
11965        IXTLRuntime *This,
11966        VARIANT var1);
11967
11968    HRESULT (STDMETHODCALLTYPE *get_nodeType)(
11969        IXTLRuntime *This,
11970        DOMNodeType *domNodeType);
11971
11972    HRESULT (STDMETHODCALLTYPE *get_parentNode)(
11973        IXTLRuntime *This,
11974        IXMLDOMNode **parent);
11975
11976    HRESULT (STDMETHODCALLTYPE *get_childNodes)(
11977        IXTLRuntime *This,
11978        IXMLDOMNodeList **outList);
11979
11980    HRESULT (STDMETHODCALLTYPE *get_firstChild)(
11981        IXTLRuntime *This,
11982        IXMLDOMNode **domNode);
11983
11984    HRESULT (STDMETHODCALLTYPE *get_lastChild)(
11985        IXTLRuntime *This,
11986        IXMLDOMNode **domNode);
11987
11988    HRESULT (STDMETHODCALLTYPE *get_previousSibling)(
11989        IXTLRuntime *This,
11990        IXMLDOMNode **domNode);
11991
11992    HRESULT (STDMETHODCALLTYPE *get_nextSibling)(
11993        IXTLRuntime *This,
11994        IXMLDOMNode **domNode);
11995
11996    HRESULT (STDMETHODCALLTYPE *get_attributes)(
11997        IXTLRuntime *This,
11998        IXMLDOMNamedNodeMap **attributeMap);
11999
12000    HRESULT (STDMETHODCALLTYPE *insertBefore)(
12001        IXTLRuntime *This,
12002        IXMLDOMNode *newNode,
12003        VARIANT var1,
12004        IXMLDOMNode **outOldNode);
12005
12006    HRESULT (STDMETHODCALLTYPE *replaceChild)(
12007        IXTLRuntime *This,
12008        IXMLDOMNode *newNode,
12009        IXMLDOMNode *oldNode,
12010        IXMLDOMNode **outOldNode);
12011
12012    HRESULT (STDMETHODCALLTYPE *removeChild)(
12013        IXTLRuntime *This,
12014        IXMLDOMNode *domNode,
12015        IXMLDOMNode **oldNode);
12016
12017    HRESULT (STDMETHODCALLTYPE *appendChild)(
12018        IXTLRuntime *This,
12019        IXMLDOMNode *newNode,
12020        IXMLDOMNode **outNewNode);
12021
12022    HRESULT (STDMETHODCALLTYPE *hasChildNodes)(
12023        IXTLRuntime *This,
12024        VARIANT_BOOL *pbool);
12025
12026    HRESULT (STDMETHODCALLTYPE *get_ownerDocument)(
12027        IXTLRuntime *This,
12028        IXMLDOMDocument **domDocument);
12029
12030    HRESULT (STDMETHODCALLTYPE *cloneNode)(
12031        IXTLRuntime *This,
12032        VARIANT_BOOL pbool,
12033        IXMLDOMNode **outNode);
12034
12035    HRESULT (STDMETHODCALLTYPE *get_nodeTypeString)(
12036        IXTLRuntime *This,
12037        BSTR *p);
12038
12039    HRESULT (STDMETHODCALLTYPE *get_text)(
12040        IXTLRuntime *This,
12041        BSTR *p);
12042
12043    HRESULT (STDMETHODCALLTYPE *put_text)(
12044        IXTLRuntime *This,
12045        BSTR p);
12046
12047    HRESULT (STDMETHODCALLTYPE *get_specified)(
12048        IXTLRuntime *This,
12049        VARIANT_BOOL *pbool);
12050
12051    HRESULT (STDMETHODCALLTYPE *get_definition)(
12052        IXTLRuntime *This,
12053        IXMLDOMNode **domNode);
12054
12055    HRESULT (STDMETHODCALLTYPE *get_nodeTypedValue)(
12056        IXTLRuntime *This,
12057        VARIANT *var1);
12058
12059    HRESULT (STDMETHODCALLTYPE *put_nodeTypedValue)(
12060        IXTLRuntime *This,
12061        VARIANT var1);
12062
12063    HRESULT (STDMETHODCALLTYPE *get_dataType)(
12064        IXTLRuntime *This,
12065        VARIANT *var1);
12066
12067    HRESULT (STDMETHODCALLTYPE *put_dataType)(
12068        IXTLRuntime *This,
12069        BSTR p);
12070
12071    HRESULT (STDMETHODCALLTYPE *get_xml)(
12072        IXTLRuntime *This,
12073        BSTR *p);
12074
12075    HRESULT (STDMETHODCALLTYPE *transformNode)(
12076        IXTLRuntime *This,
12077        IXMLDOMNode *domNode,
12078        BSTR *p);
12079
12080    HRESULT (STDMETHODCALLTYPE *selectNodes)(
12081        IXTLRuntime *This,
12082        BSTR p,
12083        IXMLDOMNodeList **outList);
12084
12085    HRESULT (STDMETHODCALLTYPE *selectSingleNode)(
12086        IXTLRuntime *This,
12087        BSTR p,
12088        IXMLDOMNode **outNode);
12089
12090    HRESULT (STDMETHODCALLTYPE *get_parsed)(
12091        IXTLRuntime *This,
12092        VARIANT_BOOL *pbool);
12093
12094    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
12095        IXTLRuntime *This,
12096        BSTR *p);
12097
12098    HRESULT (STDMETHODCALLTYPE *get_prefix)(
12099        IXTLRuntime *This,
12100        BSTR *p);
12101
12102    HRESULT (STDMETHODCALLTYPE *get_baseName)(
12103        IXTLRuntime *This,
12104        BSTR *p);
12105
12106    HRESULT (STDMETHODCALLTYPE *transformNodeToObject)(
12107        IXTLRuntime *This,
12108        IXMLDOMNode *domNode,
12109        VARIANT var1);
12110
12111    /*** IXTLRuntime methods ***/
12112    HRESULT (STDMETHODCALLTYPE *uniqueID)(
12113        IXTLRuntime *This,
12114        IXMLDOMNode *pNode,
12115        LONG *pID);
12116
12117    HRESULT (STDMETHODCALLTYPE *depth)(
12118        IXTLRuntime *This,
12119        IXMLDOMNode *pNode,
12120        LONG *pDepth);
12121
12122    HRESULT (STDMETHODCALLTYPE *childNumber)(
12123        IXTLRuntime *This,
12124        IXMLDOMNode *pNode,
12125        LONG *pNumber);
12126
12127    HRESULT (STDMETHODCALLTYPE *ancestorChildNumber)(
12128        IXTLRuntime *This,
12129        BSTR bstr,
12130        IXMLDOMNode *pNode,
12131        LONG *pNumber);
12132
12133    HRESULT (STDMETHODCALLTYPE *absoluteChildNumber)(
12134        IXTLRuntime *This,
12135        IXMLDOMNode *pNode,
12136        LONG *pNumber);
12137
12138    HRESULT (STDMETHODCALLTYPE *formatIndex)(
12139        IXTLRuntime *This,
12140        LONG lIndex,
12141        BSTR bstr,
12142        BSTR *pbstr);
12143
12144    HRESULT (STDMETHODCALLTYPE *formatNumber)(
12145        IXTLRuntime *This,
12146        double dblNumber,
12147        BSTR bstr,
12148        BSTR *pbstr);
12149
12150    HRESULT (STDMETHODCALLTYPE *formatDate)(
12151        IXTLRuntime *This,
12152        VARIANT var1,
12153        BSTR bstr,
12154        VARIANT var2,
12155        BSTR *pbstr);
12156
12157    HRESULT (STDMETHODCALLTYPE *formatTime)(
12158        IXTLRuntime *This,
12159        VARIANT var1,
12160        BSTR bstr,
12161        VARIANT var2,
12162        BSTR *pbstr);
12163
12164    END_INTERFACE
12165} IXTLRuntimeVtbl;
12166
12167interface IXTLRuntime {
12168    CONST_VTBL IXTLRuntimeVtbl* lpVtbl;
12169};
12170
12171#ifdef COBJMACROS
12172#ifndef WIDL_C_INLINE_WRAPPERS
12173/*** IUnknown methods ***/
12174#define IXTLRuntime_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12175#define IXTLRuntime_AddRef(This) (This)->lpVtbl->AddRef(This)
12176#define IXTLRuntime_Release(This) (This)->lpVtbl->Release(This)
12177/*** IDispatch methods ***/
12178#define IXTLRuntime_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12179#define IXTLRuntime_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12180#define IXTLRuntime_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12181#define IXTLRuntime_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12182/*** IXMLDOMNode methods ***/
12183#define IXTLRuntime_get_nodeName(This,p) (This)->lpVtbl->get_nodeName(This,p)
12184#define IXTLRuntime_get_nodeValue(This,var1) (This)->lpVtbl->get_nodeValue(This,var1)
12185#define IXTLRuntime_put_nodeValue(This,var1) (This)->lpVtbl->put_nodeValue(This,var1)
12186#define IXTLRuntime_get_nodeType(This,domNodeType) (This)->lpVtbl->get_nodeType(This,domNodeType)
12187#define IXTLRuntime_get_parentNode(This,parent) (This)->lpVtbl->get_parentNode(This,parent)
12188#define IXTLRuntime_get_childNodes(This,outList) (This)->lpVtbl->get_childNodes(This,outList)
12189#define IXTLRuntime_get_firstChild(This,domNode) (This)->lpVtbl->get_firstChild(This,domNode)
12190#define IXTLRuntime_get_lastChild(This,domNode) (This)->lpVtbl->get_lastChild(This,domNode)
12191#define IXTLRuntime_get_previousSibling(This,domNode) (This)->lpVtbl->get_previousSibling(This,domNode)
12192#define IXTLRuntime_get_nextSibling(This,domNode) (This)->lpVtbl->get_nextSibling(This,domNode)
12193#define IXTLRuntime_get_attributes(This,attributeMap) (This)->lpVtbl->get_attributes(This,attributeMap)
12194#define IXTLRuntime_insertBefore(This,newNode,var1,outOldNode) (This)->lpVtbl->insertBefore(This,newNode,var1,outOldNode)
12195#define IXTLRuntime_replaceChild(This,newNode,oldNode,outOldNode) (This)->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode)
12196#define IXTLRuntime_removeChild(This,domNode,oldNode) (This)->lpVtbl->removeChild(This,domNode,oldNode)
12197#define IXTLRuntime_appendChild(This,newNode,outNewNode) (This)->lpVtbl->appendChild(This,newNode,outNewNode)
12198#define IXTLRuntime_hasChildNodes(This,pbool) (This)->lpVtbl->hasChildNodes(This,pbool)
12199#define IXTLRuntime_get_ownerDocument(This,domDocument) (This)->lpVtbl->get_ownerDocument(This,domDocument)
12200#define IXTLRuntime_cloneNode(This,pbool,outNode) (This)->lpVtbl->cloneNode(This,pbool,outNode)
12201#define IXTLRuntime_get_nodeTypeString(This,p) (This)->lpVtbl->get_nodeTypeString(This,p)
12202#define IXTLRuntime_get_text(This,p) (This)->lpVtbl->get_text(This,p)
12203#define IXTLRuntime_put_text(This,p) (This)->lpVtbl->put_text(This,p)
12204#define IXTLRuntime_get_specified(This,pbool) (This)->lpVtbl->get_specified(This,pbool)
12205#define IXTLRuntime_get_definition(This,domNode) (This)->lpVtbl->get_definition(This,domNode)
12206#define IXTLRuntime_get_nodeTypedValue(This,var1) (This)->lpVtbl->get_nodeTypedValue(This,var1)
12207#define IXTLRuntime_put_nodeTypedValue(This,var1) (This)->lpVtbl->put_nodeTypedValue(This,var1)
12208#define IXTLRuntime_get_dataType(This,var1) (This)->lpVtbl->get_dataType(This,var1)
12209#define IXTLRuntime_put_dataType(This,p) (This)->lpVtbl->put_dataType(This,p)
12210#define IXTLRuntime_get_xml(This,p) (This)->lpVtbl->get_xml(This,p)
12211#define IXTLRuntime_transformNode(This,domNode,p) (This)->lpVtbl->transformNode(This,domNode,p)
12212#define IXTLRuntime_selectNodes(This,p,outList) (This)->lpVtbl->selectNodes(This,p,outList)
12213#define IXTLRuntime_selectSingleNode(This,p,outNode) (This)->lpVtbl->selectSingleNode(This,p,outNode)
12214#define IXTLRuntime_get_parsed(This,pbool) (This)->lpVtbl->get_parsed(This,pbool)
12215#define IXTLRuntime_get_namespaceURI(This,p) (This)->lpVtbl->get_namespaceURI(This,p)
12216#define IXTLRuntime_get_prefix(This,p) (This)->lpVtbl->get_prefix(This,p)
12217#define IXTLRuntime_get_baseName(This,p) (This)->lpVtbl->get_baseName(This,p)
12218#define IXTLRuntime_transformNodeToObject(This,domNode,var1) (This)->lpVtbl->transformNodeToObject(This,domNode,var1)
12219/*** IXTLRuntime methods ***/
12220#define IXTLRuntime_uniqueID(This,pNode,pID) (This)->lpVtbl->uniqueID(This,pNode,pID)
12221#define IXTLRuntime_depth(This,pNode,pDepth) (This)->lpVtbl->depth(This,pNode,pDepth)
12222#define IXTLRuntime_childNumber(This,pNode,pNumber) (This)->lpVtbl->childNumber(This,pNode,pNumber)
12223#define IXTLRuntime_ancestorChildNumber(This,bstr,pNode,pNumber) (This)->lpVtbl->ancestorChildNumber(This,bstr,pNode,pNumber)
12224#define IXTLRuntime_absoluteChildNumber(This,pNode,pNumber) (This)->lpVtbl->absoluteChildNumber(This,pNode,pNumber)
12225#define IXTLRuntime_formatIndex(This,lIndex,bstr,pbstr) (This)->lpVtbl->formatIndex(This,lIndex,bstr,pbstr)
12226#define IXTLRuntime_formatNumber(This,dblNumber,bstr,pbstr) (This)->lpVtbl->formatNumber(This,dblNumber,bstr,pbstr)
12227#define IXTLRuntime_formatDate(This,var1,bstr,var2,pbstr) (This)->lpVtbl->formatDate(This,var1,bstr,var2,pbstr)
12228#define IXTLRuntime_formatTime(This,var1,bstr,var2,pbstr) (This)->lpVtbl->formatTime(This,var1,bstr,var2,pbstr)
12229#else
12230/*** IUnknown methods ***/
12231static inline HRESULT IXTLRuntime_QueryInterface(IXTLRuntime* This,REFIID riid,void **ppvObject) {
12232    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12233}
12234static inline ULONG IXTLRuntime_AddRef(IXTLRuntime* This) {
12235    return This->lpVtbl->AddRef(This);
12236}
12237static inline ULONG IXTLRuntime_Release(IXTLRuntime* This) {
12238    return This->lpVtbl->Release(This);
12239}
12240/*** IDispatch methods ***/
12241static inline HRESULT IXTLRuntime_GetTypeInfoCount(IXTLRuntime* This,UINT *pctinfo) {
12242    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12243}
12244static inline HRESULT IXTLRuntime_GetTypeInfo(IXTLRuntime* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12245    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12246}
12247static inline HRESULT IXTLRuntime_GetIDsOfNames(IXTLRuntime* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12248    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12249}
12250static inline HRESULT IXTLRuntime_Invoke(IXTLRuntime* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12251    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12252}
12253/*** IXMLDOMNode methods ***/
12254static inline HRESULT IXTLRuntime_get_nodeName(IXTLRuntime* This,BSTR *p) {
12255    return This->lpVtbl->get_nodeName(This,p);
12256}
12257static inline HRESULT IXTLRuntime_get_nodeValue(IXTLRuntime* This,VARIANT *var1) {
12258    return This->lpVtbl->get_nodeValue(This,var1);
12259}
12260static inline HRESULT IXTLRuntime_put_nodeValue(IXTLRuntime* This,VARIANT var1) {
12261    return This->lpVtbl->put_nodeValue(This,var1);
12262}
12263static inline HRESULT IXTLRuntime_get_nodeType(IXTLRuntime* This,DOMNodeType *domNodeType) {
12264    return This->lpVtbl->get_nodeType(This,domNodeType);
12265}
12266static inline HRESULT IXTLRuntime_get_parentNode(IXTLRuntime* This,IXMLDOMNode **parent) {
12267    return This->lpVtbl->get_parentNode(This,parent);
12268}
12269static inline HRESULT IXTLRuntime_get_childNodes(IXTLRuntime* This,IXMLDOMNodeList **outList) {
12270    return This->lpVtbl->get_childNodes(This,outList);
12271}
12272static inline HRESULT IXTLRuntime_get_firstChild(IXTLRuntime* This,IXMLDOMNode **domNode) {
12273    return This->lpVtbl->get_firstChild(This,domNode);
12274}
12275static inline HRESULT IXTLRuntime_get_lastChild(IXTLRuntime* This,IXMLDOMNode **domNode) {
12276    return This->lpVtbl->get_lastChild(This,domNode);
12277}
12278static inline HRESULT IXTLRuntime_get_previousSibling(IXTLRuntime* This,IXMLDOMNode **domNode) {
12279    return This->lpVtbl->get_previousSibling(This,domNode);
12280}
12281static inline HRESULT IXTLRuntime_get_nextSibling(IXTLRuntime* This,IXMLDOMNode **domNode) {
12282    return This->lpVtbl->get_nextSibling(This,domNode);
12283}
12284static inline HRESULT IXTLRuntime_get_attributes(IXTLRuntime* This,IXMLDOMNamedNodeMap **attributeMap) {
12285    return This->lpVtbl->get_attributes(This,attributeMap);
12286}
12287static inline HRESULT IXTLRuntime_insertBefore(IXTLRuntime* This,IXMLDOMNode *newNode,VARIANT var1,IXMLDOMNode **outOldNode) {
12288    return This->lpVtbl->insertBefore(This,newNode,var1,outOldNode);
12289}
12290static inline HRESULT IXTLRuntime_replaceChild(IXTLRuntime* This,IXMLDOMNode *newNode,IXMLDOMNode *oldNode,IXMLDOMNode **outOldNode) {
12291    return This->lpVtbl->replaceChild(This,newNode,oldNode,outOldNode);
12292}
12293static inline HRESULT IXTLRuntime_removeChild(IXTLRuntime* This,IXMLDOMNode *domNode,IXMLDOMNode **oldNode) {
12294    return This->lpVtbl->removeChild(This,domNode,oldNode);
12295}
12296static inline HRESULT IXTLRuntime_appendChild(IXTLRuntime* This,IXMLDOMNode *newNode,IXMLDOMNode **outNewNode) {
12297    return This->lpVtbl->appendChild(This,newNode,outNewNode);
12298}
12299static inline HRESULT IXTLRuntime_hasChildNodes(IXTLRuntime* This,VARIANT_BOOL *pbool) {
12300    return This->lpVtbl->hasChildNodes(This,pbool);
12301}
12302static inline HRESULT IXTLRuntime_get_ownerDocument(IXTLRuntime* This,IXMLDOMDocument **domDocument) {
12303    return This->lpVtbl->get_ownerDocument(This,domDocument);
12304}
12305static inline HRESULT IXTLRuntime_cloneNode(IXTLRuntime* This,VARIANT_BOOL pbool,IXMLDOMNode **outNode) {
12306    return This->lpVtbl->cloneNode(This,pbool,outNode);
12307}
12308static inline HRESULT IXTLRuntime_get_nodeTypeString(IXTLRuntime* This,BSTR *p) {
12309    return This->lpVtbl->get_nodeTypeString(This,p);
12310}
12311static inline HRESULT IXTLRuntime_get_text(IXTLRuntime* This,BSTR *p) {
12312    return This->lpVtbl->get_text(This,p);
12313}
12314static inline HRESULT IXTLRuntime_put_text(IXTLRuntime* This,BSTR p) {
12315    return This->lpVtbl->put_text(This,p);
12316}
12317static inline HRESULT IXTLRuntime_get_specified(IXTLRuntime* This,VARIANT_BOOL *pbool) {
12318    return This->lpVtbl->get_specified(This,pbool);
12319}
12320static inline HRESULT IXTLRuntime_get_definition(IXTLRuntime* This,IXMLDOMNode **domNode) {
12321    return This->lpVtbl->get_definition(This,domNode);
12322}
12323static inline HRESULT IXTLRuntime_get_nodeTypedValue(IXTLRuntime* This,VARIANT *var1) {
12324    return This->lpVtbl->get_nodeTypedValue(This,var1);
12325}
12326static inline HRESULT IXTLRuntime_put_nodeTypedValue(IXTLRuntime* This,VARIANT var1) {
12327    return This->lpVtbl->put_nodeTypedValue(This,var1);
12328}
12329static inline HRESULT IXTLRuntime_get_dataType(IXTLRuntime* This,VARIANT *var1) {
12330    return This->lpVtbl->get_dataType(This,var1);
12331}
12332static inline HRESULT IXTLRuntime_put_dataType(IXTLRuntime* This,BSTR p) {
12333    return This->lpVtbl->put_dataType(This,p);
12334}
12335static inline HRESULT IXTLRuntime_get_xml(IXTLRuntime* This,BSTR *p) {
12336    return This->lpVtbl->get_xml(This,p);
12337}
12338static inline HRESULT IXTLRuntime_transformNode(IXTLRuntime* This,IXMLDOMNode *domNode,BSTR *p) {
12339    return This->lpVtbl->transformNode(This,domNode,p);
12340}
12341static inline HRESULT IXTLRuntime_selectNodes(IXTLRuntime* This,BSTR p,IXMLDOMNodeList **outList) {
12342    return This->lpVtbl->selectNodes(This,p,outList);
12343}
12344static inline HRESULT IXTLRuntime_selectSingleNode(IXTLRuntime* This,BSTR p,IXMLDOMNode **outNode) {
12345    return This->lpVtbl->selectSingleNode(This,p,outNode);
12346}
12347static inline HRESULT IXTLRuntime_get_parsed(IXTLRuntime* This,VARIANT_BOOL *pbool) {
12348    return This->lpVtbl->get_parsed(This,pbool);
12349}
12350static inline HRESULT IXTLRuntime_get_namespaceURI(IXTLRuntime* This,BSTR *p) {
12351    return This->lpVtbl->get_namespaceURI(This,p);
12352}
12353static inline HRESULT IXTLRuntime_get_prefix(IXTLRuntime* This,BSTR *p) {
12354    return This->lpVtbl->get_prefix(This,p);
12355}
12356static inline HRESULT IXTLRuntime_get_baseName(IXTLRuntime* This,BSTR *p) {
12357    return This->lpVtbl->get_baseName(This,p);
12358}
12359static inline HRESULT IXTLRuntime_transformNodeToObject(IXTLRuntime* This,IXMLDOMNode *domNode,VARIANT var1) {
12360    return This->lpVtbl->transformNodeToObject(This,domNode,var1);
12361}
12362/*** IXTLRuntime methods ***/
12363static inline HRESULT IXTLRuntime_uniqueID(IXTLRuntime* This,IXMLDOMNode *pNode,LONG *pID) {
12364    return This->lpVtbl->uniqueID(This,pNode,pID);
12365}
12366static inline HRESULT IXTLRuntime_depth(IXTLRuntime* This,IXMLDOMNode *pNode,LONG *pDepth) {
12367    return This->lpVtbl->depth(This,pNode,pDepth);
12368}
12369static inline HRESULT IXTLRuntime_childNumber(IXTLRuntime* This,IXMLDOMNode *pNode,LONG *pNumber) {
12370    return This->lpVtbl->childNumber(This,pNode,pNumber);
12371}
12372static inline HRESULT IXTLRuntime_ancestorChildNumber(IXTLRuntime* This,BSTR bstr,IXMLDOMNode *pNode,LONG *pNumber) {
12373    return This->lpVtbl->ancestorChildNumber(This,bstr,pNode,pNumber);
12374}
12375static inline HRESULT IXTLRuntime_absoluteChildNumber(IXTLRuntime* This,IXMLDOMNode *pNode,LONG *pNumber) {
12376    return This->lpVtbl->absoluteChildNumber(This,pNode,pNumber);
12377}
12378static inline HRESULT IXTLRuntime_formatIndex(IXTLRuntime* This,LONG lIndex,BSTR bstr,BSTR *pbstr) {
12379    return This->lpVtbl->formatIndex(This,lIndex,bstr,pbstr);
12380}
12381static inline HRESULT IXTLRuntime_formatNumber(IXTLRuntime* This,double dblNumber,BSTR bstr,BSTR *pbstr) {
12382    return This->lpVtbl->formatNumber(This,dblNumber,bstr,pbstr);
12383}
12384static inline HRESULT IXTLRuntime_formatDate(IXTLRuntime* This,VARIANT var1,BSTR bstr,VARIANT var2,BSTR *pbstr) {
12385    return This->lpVtbl->formatDate(This,var1,bstr,var2,pbstr);
12386}
12387static inline HRESULT IXTLRuntime_formatTime(IXTLRuntime* This,VARIANT var1,BSTR bstr,VARIANT var2,BSTR *pbstr) {
12388    return This->lpVtbl->formatTime(This,var1,bstr,var2,pbstr);
12389}
12390#endif
12391#endif
12392
12393#endif
12394
12395
12396#endif  /* __IXTLRuntime_INTERFACE_DEFINED__ */
12397
12398/*****************************************************************************
12399 * IDSOControl interface
12400 */
12401#ifndef __IDSOControl_INTERFACE_DEFINED__
12402#define __IDSOControl_INTERFACE_DEFINED__
12403
12404DEFINE_GUID(IID_IDSOControl, 0x310afa62, 0x0575, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39);
12405#if defined(__cplusplus) && !defined(CINTERFACE)
12406MIDL_INTERFACE("310afa62-0575-11d2-9ca9-0060b0ec3d39")
12407IDSOControl : public IDispatch
12408{
12409    virtual HRESULT STDMETHODCALLTYPE get_XMLDocument(
12410        IXMLDOMDocument **ppDoc) = 0;
12411
12412    virtual HRESULT STDMETHODCALLTYPE put_XMLDocument(
12413        IXMLDOMDocument *ppDoc) = 0;
12414
12415    virtual HRESULT STDMETHODCALLTYPE get_JavaDSOCompatible(
12416        WINBOOL *fJavaDSOCompatible) = 0;
12417
12418    virtual HRESULT STDMETHODCALLTYPE put_JavaDSOCompatible(
12419        WINBOOL fJavaDSOCompatible) = 0;
12420
12421    virtual HRESULT STDMETHODCALLTYPE get_readyState(
12422        LONG *state) = 0;
12423
12424};
12425#ifdef __CRT_UUID_DECL
12426__CRT_UUID_DECL(IDSOControl, 0x310afa62, 0x0575, 0x11d2, 0x9c,0xa9, 0x00,0x60,0xb0,0xec,0x3d,0x39)
12427#endif
12428#else
12429typedef struct IDSOControlVtbl {
12430    BEGIN_INTERFACE
12431
12432    /*** IUnknown methods ***/
12433    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12434        IDSOControl *This,
12435        REFIID riid,
12436        void **ppvObject);
12437
12438    ULONG (STDMETHODCALLTYPE *AddRef)(
12439        IDSOControl *This);
12440
12441    ULONG (STDMETHODCALLTYPE *Release)(
12442        IDSOControl *This);
12443
12444    /*** IDispatch methods ***/
12445    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12446        IDSOControl *This,
12447        UINT *pctinfo);
12448
12449    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12450        IDSOControl *This,
12451        UINT iTInfo,
12452        LCID lcid,
12453        ITypeInfo **ppTInfo);
12454
12455    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12456        IDSOControl *This,
12457        REFIID riid,
12458        LPOLESTR *rgszNames,
12459        UINT cNames,
12460        LCID lcid,
12461        DISPID *rgDispId);
12462
12463    HRESULT (STDMETHODCALLTYPE *Invoke)(
12464        IDSOControl *This,
12465        DISPID dispIdMember,
12466        REFIID riid,
12467        LCID lcid,
12468        WORD wFlags,
12469        DISPPARAMS *pDispParams,
12470        VARIANT *pVarResult,
12471        EXCEPINFO *pExcepInfo,
12472        UINT *puArgErr);
12473
12474    /*** IDSOControl methods ***/
12475    HRESULT (STDMETHODCALLTYPE *get_XMLDocument)(
12476        IDSOControl *This,
12477        IXMLDOMDocument **ppDoc);
12478
12479    HRESULT (STDMETHODCALLTYPE *put_XMLDocument)(
12480        IDSOControl *This,
12481        IXMLDOMDocument *ppDoc);
12482
12483    HRESULT (STDMETHODCALLTYPE *get_JavaDSOCompatible)(
12484        IDSOControl *This,
12485        WINBOOL *fJavaDSOCompatible);
12486
12487    HRESULT (STDMETHODCALLTYPE *put_JavaDSOCompatible)(
12488        IDSOControl *This,
12489        WINBOOL fJavaDSOCompatible);
12490
12491    HRESULT (STDMETHODCALLTYPE *get_readyState)(
12492        IDSOControl *This,
12493        LONG *state);
12494
12495    END_INTERFACE
12496} IDSOControlVtbl;
12497
12498interface IDSOControl {
12499    CONST_VTBL IDSOControlVtbl* lpVtbl;
12500};
12501
12502#ifdef COBJMACROS
12503#ifndef WIDL_C_INLINE_WRAPPERS
12504/*** IUnknown methods ***/
12505#define IDSOControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12506#define IDSOControl_AddRef(This) (This)->lpVtbl->AddRef(This)
12507#define IDSOControl_Release(This) (This)->lpVtbl->Release(This)
12508/*** IDispatch methods ***/
12509#define IDSOControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12510#define IDSOControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12511#define IDSOControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12512#define IDSOControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12513/*** IDSOControl methods ***/
12514#define IDSOControl_get_XMLDocument(This,ppDoc) (This)->lpVtbl->get_XMLDocument(This,ppDoc)
12515#define IDSOControl_put_XMLDocument(This,ppDoc) (This)->lpVtbl->put_XMLDocument(This,ppDoc)
12516#define IDSOControl_get_JavaDSOCompatible(This,fJavaDSOCompatible) (This)->lpVtbl->get_JavaDSOCompatible(This,fJavaDSOCompatible)
12517#define IDSOControl_put_JavaDSOCompatible(This,fJavaDSOCompatible) (This)->lpVtbl->put_JavaDSOCompatible(This,fJavaDSOCompatible)
12518#define IDSOControl_get_readyState(This,state) (This)->lpVtbl->get_readyState(This,state)
12519#else
12520/*** IUnknown methods ***/
12521static inline HRESULT IDSOControl_QueryInterface(IDSOControl* This,REFIID riid,void **ppvObject) {
12522    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12523}
12524static inline ULONG IDSOControl_AddRef(IDSOControl* This) {
12525    return This->lpVtbl->AddRef(This);
12526}
12527static inline ULONG IDSOControl_Release(IDSOControl* This) {
12528    return This->lpVtbl->Release(This);
12529}
12530/*** IDispatch methods ***/
12531static inline HRESULT IDSOControl_GetTypeInfoCount(IDSOControl* This,UINT *pctinfo) {
12532    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12533}
12534static inline HRESULT IDSOControl_GetTypeInfo(IDSOControl* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12535    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12536}
12537static inline HRESULT IDSOControl_GetIDsOfNames(IDSOControl* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12538    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12539}
12540static inline HRESULT IDSOControl_Invoke(IDSOControl* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12541    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12542}
12543/*** IDSOControl methods ***/
12544static inline HRESULT IDSOControl_get_XMLDocument(IDSOControl* This,IXMLDOMDocument **ppDoc) {
12545    return This->lpVtbl->get_XMLDocument(This,ppDoc);
12546}
12547static inline HRESULT IDSOControl_put_XMLDocument(IDSOControl* This,IXMLDOMDocument *ppDoc) {
12548    return This->lpVtbl->put_XMLDocument(This,ppDoc);
12549}
12550static inline HRESULT IDSOControl_get_JavaDSOCompatible(IDSOControl* This,WINBOOL *fJavaDSOCompatible) {
12551    return This->lpVtbl->get_JavaDSOCompatible(This,fJavaDSOCompatible);
12552}
12553static inline HRESULT IDSOControl_put_JavaDSOCompatible(IDSOControl* This,WINBOOL fJavaDSOCompatible) {
12554    return This->lpVtbl->put_JavaDSOCompatible(This,fJavaDSOCompatible);
12555}
12556static inline HRESULT IDSOControl_get_readyState(IDSOControl* This,LONG *state) {
12557    return This->lpVtbl->get_readyState(This,state);
12558}
12559#endif
12560#endif
12561
12562#endif
12563
12564
12565#endif  /* __IDSOControl_INTERFACE_DEFINED__ */
12566
12567/*****************************************************************************
12568 * XMLDOMDocumentEvents dispinterface
12569 */
12570#ifndef __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
12571#define __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
12572
12573DEFINE_GUID(DIID_XMLDOMDocumentEvents, 0x3efaa427, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
12574#if defined(__cplusplus) && !defined(CINTERFACE)
12575MIDL_INTERFACE("3efaa427-272f-11d2-836f-0000f87a7782")
12576XMLDOMDocumentEvents : public IDispatch
12577{
12578};
12579#ifdef __CRT_UUID_DECL
12580__CRT_UUID_DECL(XMLDOMDocumentEvents, 0x3efaa427, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
12581#endif
12582#else
12583typedef struct XMLDOMDocumentEventsVtbl {
12584    BEGIN_INTERFACE
12585
12586    /*** IUnknown methods ***/
12587    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12588        XMLDOMDocumentEvents *This,
12589        REFIID riid,
12590        void **ppvObject);
12591
12592    ULONG (STDMETHODCALLTYPE *AddRef)(
12593        XMLDOMDocumentEvents *This);
12594
12595    ULONG (STDMETHODCALLTYPE *Release)(
12596        XMLDOMDocumentEvents *This);
12597
12598    /*** IDispatch methods ***/
12599    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12600        XMLDOMDocumentEvents *This,
12601        UINT *pctinfo);
12602
12603    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12604        XMLDOMDocumentEvents *This,
12605        UINT iTInfo,
12606        LCID lcid,
12607        ITypeInfo **ppTInfo);
12608
12609    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12610        XMLDOMDocumentEvents *This,
12611        REFIID riid,
12612        LPOLESTR *rgszNames,
12613        UINT cNames,
12614        LCID lcid,
12615        DISPID *rgDispId);
12616
12617    HRESULT (STDMETHODCALLTYPE *Invoke)(
12618        XMLDOMDocumentEvents *This,
12619        DISPID dispIdMember,
12620        REFIID riid,
12621        LCID lcid,
12622        WORD wFlags,
12623        DISPPARAMS *pDispParams,
12624        VARIANT *pVarResult,
12625        EXCEPINFO *pExcepInfo,
12626        UINT *puArgErr);
12627
12628    END_INTERFACE
12629} XMLDOMDocumentEventsVtbl;
12630
12631interface XMLDOMDocumentEvents {
12632    CONST_VTBL XMLDOMDocumentEventsVtbl* lpVtbl;
12633};
12634
12635#ifdef COBJMACROS
12636#ifndef WIDL_C_INLINE_WRAPPERS
12637/*** IUnknown methods ***/
12638#define XMLDOMDocumentEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12639#define XMLDOMDocumentEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
12640#define XMLDOMDocumentEvents_Release(This) (This)->lpVtbl->Release(This)
12641/*** IDispatch methods ***/
12642#define XMLDOMDocumentEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12643#define XMLDOMDocumentEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12644#define XMLDOMDocumentEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12645#define XMLDOMDocumentEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12646#else
12647/*** IUnknown methods ***/
12648static inline HRESULT XMLDOMDocumentEvents_QueryInterface(XMLDOMDocumentEvents* This,REFIID riid,void **ppvObject) {
12649    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12650}
12651static inline ULONG XMLDOMDocumentEvents_AddRef(XMLDOMDocumentEvents* This) {
12652    return This->lpVtbl->AddRef(This);
12653}
12654static inline ULONG XMLDOMDocumentEvents_Release(XMLDOMDocumentEvents* This) {
12655    return This->lpVtbl->Release(This);
12656}
12657/*** IDispatch methods ***/
12658static inline HRESULT XMLDOMDocumentEvents_GetTypeInfoCount(XMLDOMDocumentEvents* This,UINT *pctinfo) {
12659    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12660}
12661static inline HRESULT XMLDOMDocumentEvents_GetTypeInfo(XMLDOMDocumentEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12662    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12663}
12664static inline HRESULT XMLDOMDocumentEvents_GetIDsOfNames(XMLDOMDocumentEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12665    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12666}
12667static inline HRESULT XMLDOMDocumentEvents_Invoke(XMLDOMDocumentEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12668    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12669}
12670#endif
12671#endif
12672
12673#endif
12674
12675#endif  /* __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__ */
12676
12677/*****************************************************************************
12678 * IXSLProcessor interface
12679 */
12680#ifndef __IXSLProcessor_INTERFACE_DEFINED__
12681#define __IXSLProcessor_INTERFACE_DEFINED__
12682
12683DEFINE_GUID(IID_IXSLProcessor, 0x2933bf92, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
12684#if defined(__cplusplus) && !defined(CINTERFACE)
12685MIDL_INTERFACE("2933bf92-7b36-11d2-b20e-00c04f983e60")
12686IXSLProcessor : public IDispatch
12687{
12688    virtual HRESULT STDMETHODCALLTYPE put_input(
12689        VARIANT var) = 0;
12690
12691    virtual HRESULT STDMETHODCALLTYPE get_input(
12692        VARIANT *var) = 0;
12693
12694    virtual HRESULT STDMETHODCALLTYPE get_ownerTemplate(
12695        IXSLTemplate **ppTemplate) = 0;
12696
12697    virtual HRESULT STDMETHODCALLTYPE setStartMode(
12698        BSTR p,
12699        BSTR uri = L"") = 0;
12700
12701    virtual HRESULT STDMETHODCALLTYPE get_startMode(
12702        BSTR *p) = 0;
12703
12704    virtual HRESULT STDMETHODCALLTYPE get_startModeURI(
12705        BSTR *uri) = 0;
12706
12707    virtual HRESULT STDMETHODCALLTYPE put_output(
12708        VARIANT var) = 0;
12709
12710    virtual HRESULT STDMETHODCALLTYPE get_output(
12711        VARIANT *var) = 0;
12712
12713    virtual HRESULT STDMETHODCALLTYPE transform(
12714        VARIANT_BOOL *pbool) = 0;
12715
12716    virtual HRESULT STDMETHODCALLTYPE reset(
12717        ) = 0;
12718
12719    virtual HRESULT STDMETHODCALLTYPE get_readyState(
12720        LONG *pstate) = 0;
12721
12722    virtual HRESULT STDMETHODCALLTYPE addParameter(
12723        BSTR p,
12724        VARIANT var,
12725        BSTR uri = L"") = 0;
12726
12727    virtual HRESULT STDMETHODCALLTYPE addObject(
12728        IDispatch *obj,
12729        BSTR uri) = 0;
12730
12731    virtual HRESULT STDMETHODCALLTYPE get_stylesheet(
12732        IXMLDOMNode **node) = 0;
12733
12734};
12735#ifdef __CRT_UUID_DECL
12736__CRT_UUID_DECL(IXSLProcessor, 0x2933bf92, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
12737#endif
12738#else
12739typedef struct IXSLProcessorVtbl {
12740    BEGIN_INTERFACE
12741
12742    /*** IUnknown methods ***/
12743    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12744        IXSLProcessor *This,
12745        REFIID riid,
12746        void **ppvObject);
12747
12748    ULONG (STDMETHODCALLTYPE *AddRef)(
12749        IXSLProcessor *This);
12750
12751    ULONG (STDMETHODCALLTYPE *Release)(
12752        IXSLProcessor *This);
12753
12754    /*** IDispatch methods ***/
12755    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12756        IXSLProcessor *This,
12757        UINT *pctinfo);
12758
12759    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12760        IXSLProcessor *This,
12761        UINT iTInfo,
12762        LCID lcid,
12763        ITypeInfo **ppTInfo);
12764
12765    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
12766        IXSLProcessor *This,
12767        REFIID riid,
12768        LPOLESTR *rgszNames,
12769        UINT cNames,
12770        LCID lcid,
12771        DISPID *rgDispId);
12772
12773    HRESULT (STDMETHODCALLTYPE *Invoke)(
12774        IXSLProcessor *This,
12775        DISPID dispIdMember,
12776        REFIID riid,
12777        LCID lcid,
12778        WORD wFlags,
12779        DISPPARAMS *pDispParams,
12780        VARIANT *pVarResult,
12781        EXCEPINFO *pExcepInfo,
12782        UINT *puArgErr);
12783
12784    /*** IXSLProcessor methods ***/
12785    HRESULT (STDMETHODCALLTYPE *put_input)(
12786        IXSLProcessor *This,
12787        VARIANT var);
12788
12789    HRESULT (STDMETHODCALLTYPE *get_input)(
12790        IXSLProcessor *This,
12791        VARIANT *var);
12792
12793    HRESULT (STDMETHODCALLTYPE *get_ownerTemplate)(
12794        IXSLProcessor *This,
12795        IXSLTemplate **ppTemplate);
12796
12797    HRESULT (STDMETHODCALLTYPE *setStartMode)(
12798        IXSLProcessor *This,
12799        BSTR p,
12800        BSTR uri);
12801
12802    HRESULT (STDMETHODCALLTYPE *get_startMode)(
12803        IXSLProcessor *This,
12804        BSTR *p);
12805
12806    HRESULT (STDMETHODCALLTYPE *get_startModeURI)(
12807        IXSLProcessor *This,
12808        BSTR *uri);
12809
12810    HRESULT (STDMETHODCALLTYPE *put_output)(
12811        IXSLProcessor *This,
12812        VARIANT var);
12813
12814    HRESULT (STDMETHODCALLTYPE *get_output)(
12815        IXSLProcessor *This,
12816        VARIANT *var);
12817
12818    HRESULT (STDMETHODCALLTYPE *transform)(
12819        IXSLProcessor *This,
12820        VARIANT_BOOL *pbool);
12821
12822    HRESULT (STDMETHODCALLTYPE *reset)(
12823        IXSLProcessor *This);
12824
12825    HRESULT (STDMETHODCALLTYPE *get_readyState)(
12826        IXSLProcessor *This,
12827        LONG *pstate);
12828
12829    HRESULT (STDMETHODCALLTYPE *addParameter)(
12830        IXSLProcessor *This,
12831        BSTR p,
12832        VARIANT var,
12833        BSTR uri);
12834
12835    HRESULT (STDMETHODCALLTYPE *addObject)(
12836        IXSLProcessor *This,
12837        IDispatch *obj,
12838        BSTR uri);
12839
12840    HRESULT (STDMETHODCALLTYPE *get_stylesheet)(
12841        IXSLProcessor *This,
12842        IXMLDOMNode **node);
12843
12844    END_INTERFACE
12845} IXSLProcessorVtbl;
12846
12847interface IXSLProcessor {
12848    CONST_VTBL IXSLProcessorVtbl* lpVtbl;
12849};
12850
12851#ifdef COBJMACROS
12852#ifndef WIDL_C_INLINE_WRAPPERS
12853/*** IUnknown methods ***/
12854#define IXSLProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
12855#define IXSLProcessor_AddRef(This) (This)->lpVtbl->AddRef(This)
12856#define IXSLProcessor_Release(This) (This)->lpVtbl->Release(This)
12857/*** IDispatch methods ***/
12858#define IXSLProcessor_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
12859#define IXSLProcessor_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
12860#define IXSLProcessor_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
12861#define IXSLProcessor_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
12862/*** IXSLProcessor methods ***/
12863#define IXSLProcessor_put_input(This,var) (This)->lpVtbl->put_input(This,var)
12864#define IXSLProcessor_get_input(This,var) (This)->lpVtbl->get_input(This,var)
12865#define IXSLProcessor_get_ownerTemplate(This,ppTemplate) (This)->lpVtbl->get_ownerTemplate(This,ppTemplate)
12866#define IXSLProcessor_setStartMode(This,p,uri) (This)->lpVtbl->setStartMode(This,p,uri)
12867#define IXSLProcessor_get_startMode(This,p) (This)->lpVtbl->get_startMode(This,p)
12868#define IXSLProcessor_get_startModeURI(This,uri) (This)->lpVtbl->get_startModeURI(This,uri)
12869#define IXSLProcessor_put_output(This,var) (This)->lpVtbl->put_output(This,var)
12870#define IXSLProcessor_get_output(This,var) (This)->lpVtbl->get_output(This,var)
12871#define IXSLProcessor_transform(This,pbool) (This)->lpVtbl->transform(This,pbool)
12872#define IXSLProcessor_reset(This) (This)->lpVtbl->reset(This)
12873#define IXSLProcessor_get_readyState(This,pstate) (This)->lpVtbl->get_readyState(This,pstate)
12874#define IXSLProcessor_addParameter(This,p,var,uri) (This)->lpVtbl->addParameter(This,p,var,uri)
12875#define IXSLProcessor_addObject(This,obj,uri) (This)->lpVtbl->addObject(This,obj,uri)
12876#define IXSLProcessor_get_stylesheet(This,node) (This)->lpVtbl->get_stylesheet(This,node)
12877#else
12878/*** IUnknown methods ***/
12879static inline HRESULT IXSLProcessor_QueryInterface(IXSLProcessor* This,REFIID riid,void **ppvObject) {
12880    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
12881}
12882static inline ULONG IXSLProcessor_AddRef(IXSLProcessor* This) {
12883    return This->lpVtbl->AddRef(This);
12884}
12885static inline ULONG IXSLProcessor_Release(IXSLProcessor* This) {
12886    return This->lpVtbl->Release(This);
12887}
12888/*** IDispatch methods ***/
12889static inline HRESULT IXSLProcessor_GetTypeInfoCount(IXSLProcessor* This,UINT *pctinfo) {
12890    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
12891}
12892static inline HRESULT IXSLProcessor_GetTypeInfo(IXSLProcessor* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
12893    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
12894}
12895static inline HRESULT IXSLProcessor_GetIDsOfNames(IXSLProcessor* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
12896    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
12897}
12898static inline HRESULT IXSLProcessor_Invoke(IXSLProcessor* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
12899    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
12900}
12901/*** IXSLProcessor methods ***/
12902static inline HRESULT IXSLProcessor_put_input(IXSLProcessor* This,VARIANT var) {
12903    return This->lpVtbl->put_input(This,var);
12904}
12905static inline HRESULT IXSLProcessor_get_input(IXSLProcessor* This,VARIANT *var) {
12906    return This->lpVtbl->get_input(This,var);
12907}
12908static inline HRESULT IXSLProcessor_get_ownerTemplate(IXSLProcessor* This,IXSLTemplate **ppTemplate) {
12909    return This->lpVtbl->get_ownerTemplate(This,ppTemplate);
12910}
12911static inline HRESULT IXSLProcessor_setStartMode(IXSLProcessor* This,BSTR p,BSTR uri) {
12912    return This->lpVtbl->setStartMode(This,p,uri);
12913}
12914static inline HRESULT IXSLProcessor_get_startMode(IXSLProcessor* This,BSTR *p) {
12915    return This->lpVtbl->get_startMode(This,p);
12916}
12917static inline HRESULT IXSLProcessor_get_startModeURI(IXSLProcessor* This,BSTR *uri) {
12918    return This->lpVtbl->get_startModeURI(This,uri);
12919}
12920static inline HRESULT IXSLProcessor_put_output(IXSLProcessor* This,VARIANT var) {
12921    return This->lpVtbl->put_output(This,var);
12922}
12923static inline HRESULT IXSLProcessor_get_output(IXSLProcessor* This,VARIANT *var) {
12924    return This->lpVtbl->get_output(This,var);
12925}
12926static inline HRESULT IXSLProcessor_transform(IXSLProcessor* This,VARIANT_BOOL *pbool) {
12927    return This->lpVtbl->transform(This,pbool);
12928}
12929static inline HRESULT IXSLProcessor_reset(IXSLProcessor* This) {
12930    return This->lpVtbl->reset(This);
12931}
12932static inline HRESULT IXSLProcessor_get_readyState(IXSLProcessor* This,LONG *pstate) {
12933    return This->lpVtbl->get_readyState(This,pstate);
12934}
12935static inline HRESULT IXSLProcessor_addParameter(IXSLProcessor* This,BSTR p,VARIANT var,BSTR uri) {
12936    return This->lpVtbl->addParameter(This,p,var,uri);
12937}
12938static inline HRESULT IXSLProcessor_addObject(IXSLProcessor* This,IDispatch *obj,BSTR uri) {
12939    return This->lpVtbl->addObject(This,obj,uri);
12940}
12941static inline HRESULT IXSLProcessor_get_stylesheet(IXSLProcessor* This,IXMLDOMNode **node) {
12942    return This->lpVtbl->get_stylesheet(This,node);
12943}
12944#endif
12945#endif
12946
12947#endif
12948
12949
12950#endif  /* __IXSLProcessor_INTERFACE_DEFINED__ */
12951
12952/*****************************************************************************
12953 * IXSLTemplate interface
12954 */
12955#ifndef __IXSLTemplate_INTERFACE_DEFINED__
12956#define __IXSLTemplate_INTERFACE_DEFINED__
12957
12958DEFINE_GUID(IID_IXSLTemplate, 0x2933bf93, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
12959#if defined(__cplusplus) && !defined(CINTERFACE)
12960MIDL_INTERFACE("2933bf93-7b36-11d2-b20e-00c04f983e60")
12961IXSLTemplate : public IDispatch
12962{
12963    virtual HRESULT STDMETHODCALLTYPE putref_stylesheet(
12964        IXMLDOMNode *node) = 0;
12965
12966    virtual HRESULT STDMETHODCALLTYPE get_stylesheet(
12967        IXMLDOMNode **node) = 0;
12968
12969    virtual HRESULT STDMETHODCALLTYPE createProcessor(
12970        IXSLProcessor **ppProcessor) = 0;
12971
12972};
12973#ifdef __CRT_UUID_DECL
12974__CRT_UUID_DECL(IXSLTemplate, 0x2933bf93, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
12975#endif
12976#else
12977typedef struct IXSLTemplateVtbl {
12978    BEGIN_INTERFACE
12979
12980    /*** IUnknown methods ***/
12981    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
12982        IXSLTemplate *This,
12983        REFIID riid,
12984        void **ppvObject);
12985
12986    ULONG (STDMETHODCALLTYPE *AddRef)(
12987        IXSLTemplate *This);
12988
12989    ULONG (STDMETHODCALLTYPE *Release)(
12990        IXSLTemplate *This);
12991
12992    /*** IDispatch methods ***/
12993    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
12994        IXSLTemplate *This,
12995        UINT *pctinfo);
12996
12997    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
12998        IXSLTemplate *This,
12999        UINT iTInfo,
13000        LCID lcid,
13001        ITypeInfo **ppTInfo);
13002
13003    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13004        IXSLTemplate *This,
13005        REFIID riid,
13006        LPOLESTR *rgszNames,
13007        UINT cNames,
13008        LCID lcid,
13009        DISPID *rgDispId);
13010
13011    HRESULT (STDMETHODCALLTYPE *Invoke)(
13012        IXSLTemplate *This,
13013        DISPID dispIdMember,
13014        REFIID riid,
13015        LCID lcid,
13016        WORD wFlags,
13017        DISPPARAMS *pDispParams,
13018        VARIANT *pVarResult,
13019        EXCEPINFO *pExcepInfo,
13020        UINT *puArgErr);
13021
13022    /*** IXSLTemplate methods ***/
13023    HRESULT (STDMETHODCALLTYPE *putref_stylesheet)(
13024        IXSLTemplate *This,
13025        IXMLDOMNode *node);
13026
13027    HRESULT (STDMETHODCALLTYPE *get_stylesheet)(
13028        IXSLTemplate *This,
13029        IXMLDOMNode **node);
13030
13031    HRESULT (STDMETHODCALLTYPE *createProcessor)(
13032        IXSLTemplate *This,
13033        IXSLProcessor **ppProcessor);
13034
13035    END_INTERFACE
13036} IXSLTemplateVtbl;
13037
13038interface IXSLTemplate {
13039    CONST_VTBL IXSLTemplateVtbl* lpVtbl;
13040};
13041
13042#ifdef COBJMACROS
13043#ifndef WIDL_C_INLINE_WRAPPERS
13044/*** IUnknown methods ***/
13045#define IXSLTemplate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13046#define IXSLTemplate_AddRef(This) (This)->lpVtbl->AddRef(This)
13047#define IXSLTemplate_Release(This) (This)->lpVtbl->Release(This)
13048/*** IDispatch methods ***/
13049#define IXSLTemplate_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13050#define IXSLTemplate_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13051#define IXSLTemplate_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13052#define IXSLTemplate_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13053/*** IXSLTemplate methods ***/
13054#define IXSLTemplate_putref_stylesheet(This,node) (This)->lpVtbl->putref_stylesheet(This,node)
13055#define IXSLTemplate_get_stylesheet(This,node) (This)->lpVtbl->get_stylesheet(This,node)
13056#define IXSLTemplate_createProcessor(This,ppProcessor) (This)->lpVtbl->createProcessor(This,ppProcessor)
13057#else
13058/*** IUnknown methods ***/
13059static inline HRESULT IXSLTemplate_QueryInterface(IXSLTemplate* This,REFIID riid,void **ppvObject) {
13060    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13061}
13062static inline ULONG IXSLTemplate_AddRef(IXSLTemplate* This) {
13063    return This->lpVtbl->AddRef(This);
13064}
13065static inline ULONG IXSLTemplate_Release(IXSLTemplate* This) {
13066    return This->lpVtbl->Release(This);
13067}
13068/*** IDispatch methods ***/
13069static inline HRESULT IXSLTemplate_GetTypeInfoCount(IXSLTemplate* This,UINT *pctinfo) {
13070    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13071}
13072static inline HRESULT IXSLTemplate_GetTypeInfo(IXSLTemplate* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13073    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13074}
13075static inline HRESULT IXSLTemplate_GetIDsOfNames(IXSLTemplate* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13076    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13077}
13078static inline HRESULT IXSLTemplate_Invoke(IXSLTemplate* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13079    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13080}
13081/*** IXSLTemplate methods ***/
13082static inline HRESULT IXSLTemplate_putref_stylesheet(IXSLTemplate* This,IXMLDOMNode *node) {
13083    return This->lpVtbl->putref_stylesheet(This,node);
13084}
13085static inline HRESULT IXSLTemplate_get_stylesheet(IXSLTemplate* This,IXMLDOMNode **node) {
13086    return This->lpVtbl->get_stylesheet(This,node);
13087}
13088static inline HRESULT IXSLTemplate_createProcessor(IXSLTemplate* This,IXSLProcessor **ppProcessor) {
13089    return This->lpVtbl->createProcessor(This,ppProcessor);
13090}
13091#endif
13092#endif
13093
13094#endif
13095
13096
13097#endif  /* __IXSLTemplate_INTERFACE_DEFINED__ */
13098
13099/*****************************************************************************
13100 * IXMLHTTPRequest interface
13101 */
13102#ifndef __IXMLHTTPRequest_INTERFACE_DEFINED__
13103#define __IXMLHTTPRequest_INTERFACE_DEFINED__
13104
13105DEFINE_GUID(IID_IXMLHTTPRequest, 0xed8c108d, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8);
13106#if defined(__cplusplus) && !defined(CINTERFACE)
13107MIDL_INTERFACE("ed8c108d-4349-11d2-91a4-00c04f7969e8")
13108IXMLHTTPRequest : public IDispatch
13109{
13110    virtual HRESULT STDMETHODCALLTYPE open(
13111        BSTR bstrMethod,
13112        BSTR bstrUrl,
13113        VARIANT varAsync,
13114        VARIANT username,
13115        VARIANT password) = 0;
13116
13117    virtual HRESULT STDMETHODCALLTYPE setRequestHeader(
13118        BSTR bstrHeader,
13119        BSTR bstrValue) = 0;
13120
13121    virtual HRESULT STDMETHODCALLTYPE getResponseHeader(
13122        BSTR bstrHeader,
13123        BSTR *value) = 0;
13124
13125    virtual HRESULT STDMETHODCALLTYPE getAllResponseHeaders(
13126        BSTR *pbstrHeaders) = 0;
13127
13128    virtual HRESULT STDMETHODCALLTYPE send(
13129        VARIANT body) = 0;
13130
13131    virtual HRESULT STDMETHODCALLTYPE abort(
13132        ) = 0;
13133
13134    virtual HRESULT STDMETHODCALLTYPE get_status(
13135        LONG *pStatus) = 0;
13136
13137    virtual HRESULT STDMETHODCALLTYPE get_statusText(
13138        BSTR *pStatus) = 0;
13139
13140    virtual HRESULT STDMETHODCALLTYPE get_responseXML(
13141        IDispatch **pBody) = 0;
13142
13143    virtual HRESULT STDMETHODCALLTYPE get_responseText(
13144        BSTR *pBody) = 0;
13145
13146    virtual HRESULT STDMETHODCALLTYPE get_responseBody(
13147        VARIANT *pBody) = 0;
13148
13149    virtual HRESULT STDMETHODCALLTYPE get_responseStream(
13150        VARIANT *pBody) = 0;
13151
13152    virtual HRESULT STDMETHODCALLTYPE get_readyState(
13153        LONG *pState) = 0;
13154
13155    virtual HRESULT STDMETHODCALLTYPE put_onreadystatechange(
13156        IDispatch *pReadyStateSink) = 0;
13157
13158};
13159#ifdef __CRT_UUID_DECL
13160__CRT_UUID_DECL(IXMLHTTPRequest, 0xed8c108d, 0x4349, 0x11d2, 0x91,0xa4, 0x00,0xc0,0x4f,0x79,0x69,0xe8)
13161#endif
13162#else
13163typedef struct IXMLHTTPRequestVtbl {
13164    BEGIN_INTERFACE
13165
13166    /*** IUnknown methods ***/
13167    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13168        IXMLHTTPRequest *This,
13169        REFIID riid,
13170        void **ppvObject);
13171
13172    ULONG (STDMETHODCALLTYPE *AddRef)(
13173        IXMLHTTPRequest *This);
13174
13175    ULONG (STDMETHODCALLTYPE *Release)(
13176        IXMLHTTPRequest *This);
13177
13178    /*** IDispatch methods ***/
13179    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13180        IXMLHTTPRequest *This,
13181        UINT *pctinfo);
13182
13183    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13184        IXMLHTTPRequest *This,
13185        UINT iTInfo,
13186        LCID lcid,
13187        ITypeInfo **ppTInfo);
13188
13189    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13190        IXMLHTTPRequest *This,
13191        REFIID riid,
13192        LPOLESTR *rgszNames,
13193        UINT cNames,
13194        LCID lcid,
13195        DISPID *rgDispId);
13196
13197    HRESULT (STDMETHODCALLTYPE *Invoke)(
13198        IXMLHTTPRequest *This,
13199        DISPID dispIdMember,
13200        REFIID riid,
13201        LCID lcid,
13202        WORD wFlags,
13203        DISPPARAMS *pDispParams,
13204        VARIANT *pVarResult,
13205        EXCEPINFO *pExcepInfo,
13206        UINT *puArgErr);
13207
13208    /*** IXMLHTTPRequest methods ***/
13209    HRESULT (STDMETHODCALLTYPE *open)(
13210        IXMLHTTPRequest *This,
13211        BSTR bstrMethod,
13212        BSTR bstrUrl,
13213        VARIANT varAsync,
13214        VARIANT username,
13215        VARIANT password);
13216
13217    HRESULT (STDMETHODCALLTYPE *setRequestHeader)(
13218        IXMLHTTPRequest *This,
13219        BSTR bstrHeader,
13220        BSTR bstrValue);
13221
13222    HRESULT (STDMETHODCALLTYPE *getResponseHeader)(
13223        IXMLHTTPRequest *This,
13224        BSTR bstrHeader,
13225        BSTR *value);
13226
13227    HRESULT (STDMETHODCALLTYPE *getAllResponseHeaders)(
13228        IXMLHTTPRequest *This,
13229        BSTR *pbstrHeaders);
13230
13231    HRESULT (STDMETHODCALLTYPE *send)(
13232        IXMLHTTPRequest *This,
13233        VARIANT body);
13234
13235    HRESULT (STDMETHODCALLTYPE *abort)(
13236        IXMLHTTPRequest *This);
13237
13238    HRESULT (STDMETHODCALLTYPE *get_status)(
13239        IXMLHTTPRequest *This,
13240        LONG *pStatus);
13241
13242    HRESULT (STDMETHODCALLTYPE *get_statusText)(
13243        IXMLHTTPRequest *This,
13244        BSTR *pStatus);
13245
13246    HRESULT (STDMETHODCALLTYPE *get_responseXML)(
13247        IXMLHTTPRequest *This,
13248        IDispatch **pBody);
13249
13250    HRESULT (STDMETHODCALLTYPE *get_responseText)(
13251        IXMLHTTPRequest *This,
13252        BSTR *pBody);
13253
13254    HRESULT (STDMETHODCALLTYPE *get_responseBody)(
13255        IXMLHTTPRequest *This,
13256        VARIANT *pBody);
13257
13258    HRESULT (STDMETHODCALLTYPE *get_responseStream)(
13259        IXMLHTTPRequest *This,
13260        VARIANT *pBody);
13261
13262    HRESULT (STDMETHODCALLTYPE *get_readyState)(
13263        IXMLHTTPRequest *This,
13264        LONG *pState);
13265
13266    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
13267        IXMLHTTPRequest *This,
13268        IDispatch *pReadyStateSink);
13269
13270    END_INTERFACE
13271} IXMLHTTPRequestVtbl;
13272
13273interface IXMLHTTPRequest {
13274    CONST_VTBL IXMLHTTPRequestVtbl* lpVtbl;
13275};
13276
13277#ifdef COBJMACROS
13278#ifndef WIDL_C_INLINE_WRAPPERS
13279/*** IUnknown methods ***/
13280#define IXMLHTTPRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13281#define IXMLHTTPRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
13282#define IXMLHTTPRequest_Release(This) (This)->lpVtbl->Release(This)
13283/*** IDispatch methods ***/
13284#define IXMLHTTPRequest_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13285#define IXMLHTTPRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13286#define IXMLHTTPRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13287#define IXMLHTTPRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13288/*** IXMLHTTPRequest methods ***/
13289#define IXMLHTTPRequest_open(This,bstrMethod,bstrUrl,varAsync,username,password) (This)->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password)
13290#define IXMLHTTPRequest_setRequestHeader(This,bstrHeader,bstrValue) (This)->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue)
13291#define IXMLHTTPRequest_getResponseHeader(This,bstrHeader,value) (This)->lpVtbl->getResponseHeader(This,bstrHeader,value)
13292#define IXMLHTTPRequest_getAllResponseHeaders(This,pbstrHeaders) (This)->lpVtbl->getAllResponseHeaders(This,pbstrHeaders)
13293#define IXMLHTTPRequest_send(This,body) (This)->lpVtbl->send(This,body)
13294#define IXMLHTTPRequest_abort(This) (This)->lpVtbl->abort(This)
13295#define IXMLHTTPRequest_get_status(This,pStatus) (This)->lpVtbl->get_status(This,pStatus)
13296#define IXMLHTTPRequest_get_statusText(This,pStatus) (This)->lpVtbl->get_statusText(This,pStatus)
13297#define IXMLHTTPRequest_get_responseXML(This,pBody) (This)->lpVtbl->get_responseXML(This,pBody)
13298#define IXMLHTTPRequest_get_responseText(This,pBody) (This)->lpVtbl->get_responseText(This,pBody)
13299#define IXMLHTTPRequest_get_responseBody(This,pBody) (This)->lpVtbl->get_responseBody(This,pBody)
13300#define IXMLHTTPRequest_get_responseStream(This,pBody) (This)->lpVtbl->get_responseStream(This,pBody)
13301#define IXMLHTTPRequest_get_readyState(This,pState) (This)->lpVtbl->get_readyState(This,pState)
13302#define IXMLHTTPRequest_put_onreadystatechange(This,pReadyStateSink) (This)->lpVtbl->put_onreadystatechange(This,pReadyStateSink)
13303#else
13304/*** IUnknown methods ***/
13305static inline HRESULT IXMLHTTPRequest_QueryInterface(IXMLHTTPRequest* This,REFIID riid,void **ppvObject) {
13306    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13307}
13308static inline ULONG IXMLHTTPRequest_AddRef(IXMLHTTPRequest* This) {
13309    return This->lpVtbl->AddRef(This);
13310}
13311static inline ULONG IXMLHTTPRequest_Release(IXMLHTTPRequest* This) {
13312    return This->lpVtbl->Release(This);
13313}
13314/*** IDispatch methods ***/
13315static inline HRESULT IXMLHTTPRequest_GetTypeInfoCount(IXMLHTTPRequest* This,UINT *pctinfo) {
13316    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13317}
13318static inline HRESULT IXMLHTTPRequest_GetTypeInfo(IXMLHTTPRequest* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13319    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13320}
13321static inline HRESULT IXMLHTTPRequest_GetIDsOfNames(IXMLHTTPRequest* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13322    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13323}
13324static inline HRESULT IXMLHTTPRequest_Invoke(IXMLHTTPRequest* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13325    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13326}
13327/*** IXMLHTTPRequest methods ***/
13328static inline HRESULT IXMLHTTPRequest_open(IXMLHTTPRequest* This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT username,VARIANT password) {
13329    return This->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password);
13330}
13331static inline HRESULT IXMLHTTPRequest_setRequestHeader(IXMLHTTPRequest* This,BSTR bstrHeader,BSTR bstrValue) {
13332    return This->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue);
13333}
13334static inline HRESULT IXMLHTTPRequest_getResponseHeader(IXMLHTTPRequest* This,BSTR bstrHeader,BSTR *value) {
13335    return This->lpVtbl->getResponseHeader(This,bstrHeader,value);
13336}
13337static inline HRESULT IXMLHTTPRequest_getAllResponseHeaders(IXMLHTTPRequest* This,BSTR *pbstrHeaders) {
13338    return This->lpVtbl->getAllResponseHeaders(This,pbstrHeaders);
13339}
13340static inline HRESULT IXMLHTTPRequest_send(IXMLHTTPRequest* This,VARIANT body) {
13341    return This->lpVtbl->send(This,body);
13342}
13343static inline HRESULT IXMLHTTPRequest_abort(IXMLHTTPRequest* This) {
13344    return This->lpVtbl->abort(This);
13345}
13346static inline HRESULT IXMLHTTPRequest_get_status(IXMLHTTPRequest* This,LONG *pStatus) {
13347    return This->lpVtbl->get_status(This,pStatus);
13348}
13349static inline HRESULT IXMLHTTPRequest_get_statusText(IXMLHTTPRequest* This,BSTR *pStatus) {
13350    return This->lpVtbl->get_statusText(This,pStatus);
13351}
13352static inline HRESULT IXMLHTTPRequest_get_responseXML(IXMLHTTPRequest* This,IDispatch **pBody) {
13353    return This->lpVtbl->get_responseXML(This,pBody);
13354}
13355static inline HRESULT IXMLHTTPRequest_get_responseText(IXMLHTTPRequest* This,BSTR *pBody) {
13356    return This->lpVtbl->get_responseText(This,pBody);
13357}
13358static inline HRESULT IXMLHTTPRequest_get_responseBody(IXMLHTTPRequest* This,VARIANT *pBody) {
13359    return This->lpVtbl->get_responseBody(This,pBody);
13360}
13361static inline HRESULT IXMLHTTPRequest_get_responseStream(IXMLHTTPRequest* This,VARIANT *pBody) {
13362    return This->lpVtbl->get_responseStream(This,pBody);
13363}
13364static inline HRESULT IXMLHTTPRequest_get_readyState(IXMLHTTPRequest* This,LONG *pState) {
13365    return This->lpVtbl->get_readyState(This,pState);
13366}
13367static inline HRESULT IXMLHTTPRequest_put_onreadystatechange(IXMLHTTPRequest* This,IDispatch *pReadyStateSink) {
13368    return This->lpVtbl->put_onreadystatechange(This,pReadyStateSink);
13369}
13370#endif
13371#endif
13372
13373#endif
13374
13375
13376#endif  /* __IXMLHTTPRequest_INTERFACE_DEFINED__ */
13377
13378/*****************************************************************************
13379 * IServerXMLHTTPRequest interface
13380 */
13381#ifndef __IServerXMLHTTPRequest_INTERFACE_DEFINED__
13382#define __IServerXMLHTTPRequest_INTERFACE_DEFINED__
13383
13384typedef enum _SERVERXMLHTTP_OPTION {
13385    SXH_OPTION_URL = -1,
13386    SXH_OPTION_URL_CODEPAGE = 0,
13387    SXH_OPTION_ESCAPE_PERCENT_IN_URL = 1,
13388    SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS = 2,
13389    SXH_OPTION_SELECT_CLIENT_SSL_CERT = 3
13390} SERVERXMLHTTP_OPTION;
13391DEFINE_GUID(IID_IServerXMLHTTPRequest, 0x2e9196bf, 0x13ba, 0x4dd4, 0x91,0xca, 0x6c,0x57,0x1f,0x28,0x14,0x95);
13392#if defined(__cplusplus) && !defined(CINTERFACE)
13393MIDL_INTERFACE("2e9196bf-13ba-4dd4-91ca-6c571f281495")
13394IServerXMLHTTPRequest : public IXMLHTTPRequest
13395{
13396    virtual HRESULT STDMETHODCALLTYPE setTimeouts(
13397        LONG resolveTimeout,
13398        LONG connectTimeout,
13399        LONG sendTimeout,
13400        LONG receiveTimeout) = 0;
13401
13402    virtual HRESULT STDMETHODCALLTYPE waitForResponse(
13403        VARIANT timeoutInSeconds,
13404        VARIANT_BOOL *isSuccessful) = 0;
13405
13406    virtual HRESULT STDMETHODCALLTYPE getOption(
13407        SERVERXMLHTTP_OPTION option,
13408        VARIANT *value) = 0;
13409
13410    virtual HRESULT STDMETHODCALLTYPE setOption(
13411        SERVERXMLHTTP_OPTION option,
13412        VARIANT value) = 0;
13413
13414};
13415#ifdef __CRT_UUID_DECL
13416__CRT_UUID_DECL(IServerXMLHTTPRequest, 0x2e9196bf, 0x13ba, 0x4dd4, 0x91,0xca, 0x6c,0x57,0x1f,0x28,0x14,0x95)
13417#endif
13418#else
13419typedef struct IServerXMLHTTPRequestVtbl {
13420    BEGIN_INTERFACE
13421
13422    /*** IUnknown methods ***/
13423    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13424        IServerXMLHTTPRequest *This,
13425        REFIID riid,
13426        void **ppvObject);
13427
13428    ULONG (STDMETHODCALLTYPE *AddRef)(
13429        IServerXMLHTTPRequest *This);
13430
13431    ULONG (STDMETHODCALLTYPE *Release)(
13432        IServerXMLHTTPRequest *This);
13433
13434    /*** IDispatch methods ***/
13435    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13436        IServerXMLHTTPRequest *This,
13437        UINT *pctinfo);
13438
13439    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13440        IServerXMLHTTPRequest *This,
13441        UINT iTInfo,
13442        LCID lcid,
13443        ITypeInfo **ppTInfo);
13444
13445    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13446        IServerXMLHTTPRequest *This,
13447        REFIID riid,
13448        LPOLESTR *rgszNames,
13449        UINT cNames,
13450        LCID lcid,
13451        DISPID *rgDispId);
13452
13453    HRESULT (STDMETHODCALLTYPE *Invoke)(
13454        IServerXMLHTTPRequest *This,
13455        DISPID dispIdMember,
13456        REFIID riid,
13457        LCID lcid,
13458        WORD wFlags,
13459        DISPPARAMS *pDispParams,
13460        VARIANT *pVarResult,
13461        EXCEPINFO *pExcepInfo,
13462        UINT *puArgErr);
13463
13464    /*** IXMLHTTPRequest methods ***/
13465    HRESULT (STDMETHODCALLTYPE *open)(
13466        IServerXMLHTTPRequest *This,
13467        BSTR bstrMethod,
13468        BSTR bstrUrl,
13469        VARIANT varAsync,
13470        VARIANT username,
13471        VARIANT password);
13472
13473    HRESULT (STDMETHODCALLTYPE *setRequestHeader)(
13474        IServerXMLHTTPRequest *This,
13475        BSTR bstrHeader,
13476        BSTR bstrValue);
13477
13478    HRESULT (STDMETHODCALLTYPE *getResponseHeader)(
13479        IServerXMLHTTPRequest *This,
13480        BSTR bstrHeader,
13481        BSTR *value);
13482
13483    HRESULT (STDMETHODCALLTYPE *getAllResponseHeaders)(
13484        IServerXMLHTTPRequest *This,
13485        BSTR *pbstrHeaders);
13486
13487    HRESULT (STDMETHODCALLTYPE *send)(
13488        IServerXMLHTTPRequest *This,
13489        VARIANT body);
13490
13491    HRESULT (STDMETHODCALLTYPE *abort)(
13492        IServerXMLHTTPRequest *This);
13493
13494    HRESULT (STDMETHODCALLTYPE *get_status)(
13495        IServerXMLHTTPRequest *This,
13496        LONG *pStatus);
13497
13498    HRESULT (STDMETHODCALLTYPE *get_statusText)(
13499        IServerXMLHTTPRequest *This,
13500        BSTR *pStatus);
13501
13502    HRESULT (STDMETHODCALLTYPE *get_responseXML)(
13503        IServerXMLHTTPRequest *This,
13504        IDispatch **pBody);
13505
13506    HRESULT (STDMETHODCALLTYPE *get_responseText)(
13507        IServerXMLHTTPRequest *This,
13508        BSTR *pBody);
13509
13510    HRESULT (STDMETHODCALLTYPE *get_responseBody)(
13511        IServerXMLHTTPRequest *This,
13512        VARIANT *pBody);
13513
13514    HRESULT (STDMETHODCALLTYPE *get_responseStream)(
13515        IServerXMLHTTPRequest *This,
13516        VARIANT *pBody);
13517
13518    HRESULT (STDMETHODCALLTYPE *get_readyState)(
13519        IServerXMLHTTPRequest *This,
13520        LONG *pState);
13521
13522    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
13523        IServerXMLHTTPRequest *This,
13524        IDispatch *pReadyStateSink);
13525
13526    /*** IServerXMLHTTPRequest methods ***/
13527    HRESULT (STDMETHODCALLTYPE *setTimeouts)(
13528        IServerXMLHTTPRequest *This,
13529        LONG resolveTimeout,
13530        LONG connectTimeout,
13531        LONG sendTimeout,
13532        LONG receiveTimeout);
13533
13534    HRESULT (STDMETHODCALLTYPE *waitForResponse)(
13535        IServerXMLHTTPRequest *This,
13536        VARIANT timeoutInSeconds,
13537        VARIANT_BOOL *isSuccessful);
13538
13539    HRESULT (STDMETHODCALLTYPE *getOption)(
13540        IServerXMLHTTPRequest *This,
13541        SERVERXMLHTTP_OPTION option,
13542        VARIANT *value);
13543
13544    HRESULT (STDMETHODCALLTYPE *setOption)(
13545        IServerXMLHTTPRequest *This,
13546        SERVERXMLHTTP_OPTION option,
13547        VARIANT value);
13548
13549    END_INTERFACE
13550} IServerXMLHTTPRequestVtbl;
13551
13552interface IServerXMLHTTPRequest {
13553    CONST_VTBL IServerXMLHTTPRequestVtbl* lpVtbl;
13554};
13555
13556#ifdef COBJMACROS
13557#ifndef WIDL_C_INLINE_WRAPPERS
13558/*** IUnknown methods ***/
13559#define IServerXMLHTTPRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13560#define IServerXMLHTTPRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
13561#define IServerXMLHTTPRequest_Release(This) (This)->lpVtbl->Release(This)
13562/*** IDispatch methods ***/
13563#define IServerXMLHTTPRequest_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13564#define IServerXMLHTTPRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13565#define IServerXMLHTTPRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13566#define IServerXMLHTTPRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13567/*** IXMLHTTPRequest methods ***/
13568#define IServerXMLHTTPRequest_open(This,bstrMethod,bstrUrl,varAsync,username,password) (This)->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password)
13569#define IServerXMLHTTPRequest_setRequestHeader(This,bstrHeader,bstrValue) (This)->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue)
13570#define IServerXMLHTTPRequest_getResponseHeader(This,bstrHeader,value) (This)->lpVtbl->getResponseHeader(This,bstrHeader,value)
13571#define IServerXMLHTTPRequest_getAllResponseHeaders(This,pbstrHeaders) (This)->lpVtbl->getAllResponseHeaders(This,pbstrHeaders)
13572#define IServerXMLHTTPRequest_send(This,body) (This)->lpVtbl->send(This,body)
13573#define IServerXMLHTTPRequest_abort(This) (This)->lpVtbl->abort(This)
13574#define IServerXMLHTTPRequest_get_status(This,pStatus) (This)->lpVtbl->get_status(This,pStatus)
13575#define IServerXMLHTTPRequest_get_statusText(This,pStatus) (This)->lpVtbl->get_statusText(This,pStatus)
13576#define IServerXMLHTTPRequest_get_responseXML(This,pBody) (This)->lpVtbl->get_responseXML(This,pBody)
13577#define IServerXMLHTTPRequest_get_responseText(This,pBody) (This)->lpVtbl->get_responseText(This,pBody)
13578#define IServerXMLHTTPRequest_get_responseBody(This,pBody) (This)->lpVtbl->get_responseBody(This,pBody)
13579#define IServerXMLHTTPRequest_get_responseStream(This,pBody) (This)->lpVtbl->get_responseStream(This,pBody)
13580#define IServerXMLHTTPRequest_get_readyState(This,pState) (This)->lpVtbl->get_readyState(This,pState)
13581#define IServerXMLHTTPRequest_put_onreadystatechange(This,pReadyStateSink) (This)->lpVtbl->put_onreadystatechange(This,pReadyStateSink)
13582/*** IServerXMLHTTPRequest methods ***/
13583#define IServerXMLHTTPRequest_setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout) (This)->lpVtbl->setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout)
13584#define IServerXMLHTTPRequest_waitForResponse(This,timeoutInSeconds,isSuccessful) (This)->lpVtbl->waitForResponse(This,timeoutInSeconds,isSuccessful)
13585#define IServerXMLHTTPRequest_getOption(This,option,value) (This)->lpVtbl->getOption(This,option,value)
13586#define IServerXMLHTTPRequest_setOption(This,option,value) (This)->lpVtbl->setOption(This,option,value)
13587#else
13588/*** IUnknown methods ***/
13589static inline HRESULT IServerXMLHTTPRequest_QueryInterface(IServerXMLHTTPRequest* This,REFIID riid,void **ppvObject) {
13590    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13591}
13592static inline ULONG IServerXMLHTTPRequest_AddRef(IServerXMLHTTPRequest* This) {
13593    return This->lpVtbl->AddRef(This);
13594}
13595static inline ULONG IServerXMLHTTPRequest_Release(IServerXMLHTTPRequest* This) {
13596    return This->lpVtbl->Release(This);
13597}
13598/*** IDispatch methods ***/
13599static inline HRESULT IServerXMLHTTPRequest_GetTypeInfoCount(IServerXMLHTTPRequest* This,UINT *pctinfo) {
13600    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13601}
13602static inline HRESULT IServerXMLHTTPRequest_GetTypeInfo(IServerXMLHTTPRequest* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13603    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13604}
13605static inline HRESULT IServerXMLHTTPRequest_GetIDsOfNames(IServerXMLHTTPRequest* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13606    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13607}
13608static inline HRESULT IServerXMLHTTPRequest_Invoke(IServerXMLHTTPRequest* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13609    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13610}
13611/*** IXMLHTTPRequest methods ***/
13612static inline HRESULT IServerXMLHTTPRequest_open(IServerXMLHTTPRequest* This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT username,VARIANT password) {
13613    return This->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password);
13614}
13615static inline HRESULT IServerXMLHTTPRequest_setRequestHeader(IServerXMLHTTPRequest* This,BSTR bstrHeader,BSTR bstrValue) {
13616    return This->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue);
13617}
13618static inline HRESULT IServerXMLHTTPRequest_getResponseHeader(IServerXMLHTTPRequest* This,BSTR bstrHeader,BSTR *value) {
13619    return This->lpVtbl->getResponseHeader(This,bstrHeader,value);
13620}
13621static inline HRESULT IServerXMLHTTPRequest_getAllResponseHeaders(IServerXMLHTTPRequest* This,BSTR *pbstrHeaders) {
13622    return This->lpVtbl->getAllResponseHeaders(This,pbstrHeaders);
13623}
13624static inline HRESULT IServerXMLHTTPRequest_send(IServerXMLHTTPRequest* This,VARIANT body) {
13625    return This->lpVtbl->send(This,body);
13626}
13627static inline HRESULT IServerXMLHTTPRequest_abort(IServerXMLHTTPRequest* This) {
13628    return This->lpVtbl->abort(This);
13629}
13630static inline HRESULT IServerXMLHTTPRequest_get_status(IServerXMLHTTPRequest* This,LONG *pStatus) {
13631    return This->lpVtbl->get_status(This,pStatus);
13632}
13633static inline HRESULT IServerXMLHTTPRequest_get_statusText(IServerXMLHTTPRequest* This,BSTR *pStatus) {
13634    return This->lpVtbl->get_statusText(This,pStatus);
13635}
13636static inline HRESULT IServerXMLHTTPRequest_get_responseXML(IServerXMLHTTPRequest* This,IDispatch **pBody) {
13637    return This->lpVtbl->get_responseXML(This,pBody);
13638}
13639static inline HRESULT IServerXMLHTTPRequest_get_responseText(IServerXMLHTTPRequest* This,BSTR *pBody) {
13640    return This->lpVtbl->get_responseText(This,pBody);
13641}
13642static inline HRESULT IServerXMLHTTPRequest_get_responseBody(IServerXMLHTTPRequest* This,VARIANT *pBody) {
13643    return This->lpVtbl->get_responseBody(This,pBody);
13644}
13645static inline HRESULT IServerXMLHTTPRequest_get_responseStream(IServerXMLHTTPRequest* This,VARIANT *pBody) {
13646    return This->lpVtbl->get_responseStream(This,pBody);
13647}
13648static inline HRESULT IServerXMLHTTPRequest_get_readyState(IServerXMLHTTPRequest* This,LONG *pState) {
13649    return This->lpVtbl->get_readyState(This,pState);
13650}
13651static inline HRESULT IServerXMLHTTPRequest_put_onreadystatechange(IServerXMLHTTPRequest* This,IDispatch *pReadyStateSink) {
13652    return This->lpVtbl->put_onreadystatechange(This,pReadyStateSink);
13653}
13654/*** IServerXMLHTTPRequest methods ***/
13655static inline HRESULT IServerXMLHTTPRequest_setTimeouts(IServerXMLHTTPRequest* This,LONG resolveTimeout,LONG connectTimeout,LONG sendTimeout,LONG receiveTimeout) {
13656    return This->lpVtbl->setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout);
13657}
13658static inline HRESULT IServerXMLHTTPRequest_waitForResponse(IServerXMLHTTPRequest* This,VARIANT timeoutInSeconds,VARIANT_BOOL *isSuccessful) {
13659    return This->lpVtbl->waitForResponse(This,timeoutInSeconds,isSuccessful);
13660}
13661static inline HRESULT IServerXMLHTTPRequest_getOption(IServerXMLHTTPRequest* This,SERVERXMLHTTP_OPTION option,VARIANT *value) {
13662    return This->lpVtbl->getOption(This,option,value);
13663}
13664static inline HRESULT IServerXMLHTTPRequest_setOption(IServerXMLHTTPRequest* This,SERVERXMLHTTP_OPTION option,VARIANT value) {
13665    return This->lpVtbl->setOption(This,option,value);
13666}
13667#endif
13668#endif
13669
13670#endif
13671
13672
13673#endif  /* __IServerXMLHTTPRequest_INTERFACE_DEFINED__ */
13674
13675/*****************************************************************************
13676 * IServerXMLHTTPRequest2 interface
13677 */
13678#ifndef __IServerXMLHTTPRequest2_INTERFACE_DEFINED__
13679#define __IServerXMLHTTPRequest2_INTERFACE_DEFINED__
13680
13681typedef enum _SXH_PROXY_SETTING {
13682    SXH_PROXY_SET_DEFAULT = 0,
13683    SXH_PROXY_SET_PRECONFIG = 0,
13684    SXH_PROXY_SET_DIRECT = 1,
13685    SXH_PROXY_SET_PROXY = 2
13686} SXH_PROXY_SETTING;
13687DEFINE_GUID(IID_IServerXMLHTTPRequest2, 0x2e01311b, 0xc322, 0x4b0a, 0xbd,0x77, 0xb9,0x0c,0xfd,0xc8,0xdc,0xe7);
13688#if defined(__cplusplus) && !defined(CINTERFACE)
13689MIDL_INTERFACE("2e01311b-c322-4b0a-bd77-b90cfdc8dce7")
13690IServerXMLHTTPRequest2 : public IServerXMLHTTPRequest
13691{
13692    virtual HRESULT STDMETHODCALLTYPE setProxy(
13693        SXH_PROXY_SETTING proxySetting,
13694        VARIANT varProxyServer,
13695        VARIANT varBypassList) = 0;
13696
13697    virtual HRESULT STDMETHODCALLTYPE setProxyCredentials(
13698        BSTR bstrUserName,
13699        BSTR bstrPassword) = 0;
13700
13701};
13702#ifdef __CRT_UUID_DECL
13703__CRT_UUID_DECL(IServerXMLHTTPRequest2, 0x2e01311b, 0xc322, 0x4b0a, 0xbd,0x77, 0xb9,0x0c,0xfd,0xc8,0xdc,0xe7)
13704#endif
13705#else
13706typedef struct IServerXMLHTTPRequest2Vtbl {
13707    BEGIN_INTERFACE
13708
13709    /*** IUnknown methods ***/
13710    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
13711        IServerXMLHTTPRequest2 *This,
13712        REFIID riid,
13713        void **ppvObject);
13714
13715    ULONG (STDMETHODCALLTYPE *AddRef)(
13716        IServerXMLHTTPRequest2 *This);
13717
13718    ULONG (STDMETHODCALLTYPE *Release)(
13719        IServerXMLHTTPRequest2 *This);
13720
13721    /*** IDispatch methods ***/
13722    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
13723        IServerXMLHTTPRequest2 *This,
13724        UINT *pctinfo);
13725
13726    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
13727        IServerXMLHTTPRequest2 *This,
13728        UINT iTInfo,
13729        LCID lcid,
13730        ITypeInfo **ppTInfo);
13731
13732    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
13733        IServerXMLHTTPRequest2 *This,
13734        REFIID riid,
13735        LPOLESTR *rgszNames,
13736        UINT cNames,
13737        LCID lcid,
13738        DISPID *rgDispId);
13739
13740    HRESULT (STDMETHODCALLTYPE *Invoke)(
13741        IServerXMLHTTPRequest2 *This,
13742        DISPID dispIdMember,
13743        REFIID riid,
13744        LCID lcid,
13745        WORD wFlags,
13746        DISPPARAMS *pDispParams,
13747        VARIANT *pVarResult,
13748        EXCEPINFO *pExcepInfo,
13749        UINT *puArgErr);
13750
13751    /*** IXMLHTTPRequest methods ***/
13752    HRESULT (STDMETHODCALLTYPE *open)(
13753        IServerXMLHTTPRequest2 *This,
13754        BSTR bstrMethod,
13755        BSTR bstrUrl,
13756        VARIANT varAsync,
13757        VARIANT username,
13758        VARIANT password);
13759
13760    HRESULT (STDMETHODCALLTYPE *setRequestHeader)(
13761        IServerXMLHTTPRequest2 *This,
13762        BSTR bstrHeader,
13763        BSTR bstrValue);
13764
13765    HRESULT (STDMETHODCALLTYPE *getResponseHeader)(
13766        IServerXMLHTTPRequest2 *This,
13767        BSTR bstrHeader,
13768        BSTR *value);
13769
13770    HRESULT (STDMETHODCALLTYPE *getAllResponseHeaders)(
13771        IServerXMLHTTPRequest2 *This,
13772        BSTR *pbstrHeaders);
13773
13774    HRESULT (STDMETHODCALLTYPE *send)(
13775        IServerXMLHTTPRequest2 *This,
13776        VARIANT body);
13777
13778    HRESULT (STDMETHODCALLTYPE *abort)(
13779        IServerXMLHTTPRequest2 *This);
13780
13781    HRESULT (STDMETHODCALLTYPE *get_status)(
13782        IServerXMLHTTPRequest2 *This,
13783        LONG *pStatus);
13784
13785    HRESULT (STDMETHODCALLTYPE *get_statusText)(
13786        IServerXMLHTTPRequest2 *This,
13787        BSTR *pStatus);
13788
13789    HRESULT (STDMETHODCALLTYPE *get_responseXML)(
13790        IServerXMLHTTPRequest2 *This,
13791        IDispatch **pBody);
13792
13793    HRESULT (STDMETHODCALLTYPE *get_responseText)(
13794        IServerXMLHTTPRequest2 *This,
13795        BSTR *pBody);
13796
13797    HRESULT (STDMETHODCALLTYPE *get_responseBody)(
13798        IServerXMLHTTPRequest2 *This,
13799        VARIANT *pBody);
13800
13801    HRESULT (STDMETHODCALLTYPE *get_responseStream)(
13802        IServerXMLHTTPRequest2 *This,
13803        VARIANT *pBody);
13804
13805    HRESULT (STDMETHODCALLTYPE *get_readyState)(
13806        IServerXMLHTTPRequest2 *This,
13807        LONG *pState);
13808
13809    HRESULT (STDMETHODCALLTYPE *put_onreadystatechange)(
13810        IServerXMLHTTPRequest2 *This,
13811        IDispatch *pReadyStateSink);
13812
13813    /*** IServerXMLHTTPRequest methods ***/
13814    HRESULT (STDMETHODCALLTYPE *setTimeouts)(
13815        IServerXMLHTTPRequest2 *This,
13816        LONG resolveTimeout,
13817        LONG connectTimeout,
13818        LONG sendTimeout,
13819        LONG receiveTimeout);
13820
13821    HRESULT (STDMETHODCALLTYPE *waitForResponse)(
13822        IServerXMLHTTPRequest2 *This,
13823        VARIANT timeoutInSeconds,
13824        VARIANT_BOOL *isSuccessful);
13825
13826    HRESULT (STDMETHODCALLTYPE *getOption)(
13827        IServerXMLHTTPRequest2 *This,
13828        SERVERXMLHTTP_OPTION option,
13829        VARIANT *value);
13830
13831    HRESULT (STDMETHODCALLTYPE *setOption)(
13832        IServerXMLHTTPRequest2 *This,
13833        SERVERXMLHTTP_OPTION option,
13834        VARIANT value);
13835
13836    /*** IServerXMLHTTPRequest2 methods ***/
13837    HRESULT (STDMETHODCALLTYPE *setProxy)(
13838        IServerXMLHTTPRequest2 *This,
13839        SXH_PROXY_SETTING proxySetting,
13840        VARIANT varProxyServer,
13841        VARIANT varBypassList);
13842
13843    HRESULT (STDMETHODCALLTYPE *setProxyCredentials)(
13844        IServerXMLHTTPRequest2 *This,
13845        BSTR bstrUserName,
13846        BSTR bstrPassword);
13847
13848    END_INTERFACE
13849} IServerXMLHTTPRequest2Vtbl;
13850
13851interface IServerXMLHTTPRequest2 {
13852    CONST_VTBL IServerXMLHTTPRequest2Vtbl* lpVtbl;
13853};
13854
13855#ifdef COBJMACROS
13856#ifndef WIDL_C_INLINE_WRAPPERS
13857/*** IUnknown methods ***/
13858#define IServerXMLHTTPRequest2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
13859#define IServerXMLHTTPRequest2_AddRef(This) (This)->lpVtbl->AddRef(This)
13860#define IServerXMLHTTPRequest2_Release(This) (This)->lpVtbl->Release(This)
13861/*** IDispatch methods ***/
13862#define IServerXMLHTTPRequest2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
13863#define IServerXMLHTTPRequest2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
13864#define IServerXMLHTTPRequest2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
13865#define IServerXMLHTTPRequest2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
13866/*** IXMLHTTPRequest methods ***/
13867#define IServerXMLHTTPRequest2_open(This,bstrMethod,bstrUrl,varAsync,username,password) (This)->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password)
13868#define IServerXMLHTTPRequest2_setRequestHeader(This,bstrHeader,bstrValue) (This)->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue)
13869#define IServerXMLHTTPRequest2_getResponseHeader(This,bstrHeader,value) (This)->lpVtbl->getResponseHeader(This,bstrHeader,value)
13870#define IServerXMLHTTPRequest2_getAllResponseHeaders(This,pbstrHeaders) (This)->lpVtbl->getAllResponseHeaders(This,pbstrHeaders)
13871#define IServerXMLHTTPRequest2_send(This,body) (This)->lpVtbl->send(This,body)
13872#define IServerXMLHTTPRequest2_abort(This) (This)->lpVtbl->abort(This)
13873#define IServerXMLHTTPRequest2_get_status(This,pStatus) (This)->lpVtbl->get_status(This,pStatus)
13874#define IServerXMLHTTPRequest2_get_statusText(This,pStatus) (This)->lpVtbl->get_statusText(This,pStatus)
13875#define IServerXMLHTTPRequest2_get_responseXML(This,pBody) (This)->lpVtbl->get_responseXML(This,pBody)
13876#define IServerXMLHTTPRequest2_get_responseText(This,pBody) (This)->lpVtbl->get_responseText(This,pBody)
13877#define IServerXMLHTTPRequest2_get_responseBody(This,pBody) (This)->lpVtbl->get_responseBody(This,pBody)
13878#define IServerXMLHTTPRequest2_get_responseStream(This,pBody) (This)->lpVtbl->get_responseStream(This,pBody)
13879#define IServerXMLHTTPRequest2_get_readyState(This,pState) (This)->lpVtbl->get_readyState(This,pState)
13880#define IServerXMLHTTPRequest2_put_onreadystatechange(This,pReadyStateSink) (This)->lpVtbl->put_onreadystatechange(This,pReadyStateSink)
13881/*** IServerXMLHTTPRequest methods ***/
13882#define IServerXMLHTTPRequest2_setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout) (This)->lpVtbl->setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout)
13883#define IServerXMLHTTPRequest2_waitForResponse(This,timeoutInSeconds,isSuccessful) (This)->lpVtbl->waitForResponse(This,timeoutInSeconds,isSuccessful)
13884#define IServerXMLHTTPRequest2_getOption(This,option,value) (This)->lpVtbl->getOption(This,option,value)
13885#define IServerXMLHTTPRequest2_setOption(This,option,value) (This)->lpVtbl->setOption(This,option,value)
13886/*** IServerXMLHTTPRequest2 methods ***/
13887#define IServerXMLHTTPRequest2_setProxy(This,proxySetting,varProxyServer,varBypassList) (This)->lpVtbl->setProxy(This,proxySetting,varProxyServer,varBypassList)
13888#define IServerXMLHTTPRequest2_setProxyCredentials(This,bstrUserName,bstrPassword) (This)->lpVtbl->setProxyCredentials(This,bstrUserName,bstrPassword)
13889#else
13890/*** IUnknown methods ***/
13891static inline HRESULT IServerXMLHTTPRequest2_QueryInterface(IServerXMLHTTPRequest2* This,REFIID riid,void **ppvObject) {
13892    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
13893}
13894static inline ULONG IServerXMLHTTPRequest2_AddRef(IServerXMLHTTPRequest2* This) {
13895    return This->lpVtbl->AddRef(This);
13896}
13897static inline ULONG IServerXMLHTTPRequest2_Release(IServerXMLHTTPRequest2* This) {
13898    return This->lpVtbl->Release(This);
13899}
13900/*** IDispatch methods ***/
13901static inline HRESULT IServerXMLHTTPRequest2_GetTypeInfoCount(IServerXMLHTTPRequest2* This,UINT *pctinfo) {
13902    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
13903}
13904static inline HRESULT IServerXMLHTTPRequest2_GetTypeInfo(IServerXMLHTTPRequest2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
13905    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
13906}
13907static inline HRESULT IServerXMLHTTPRequest2_GetIDsOfNames(IServerXMLHTTPRequest2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
13908    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
13909}
13910static inline HRESULT IServerXMLHTTPRequest2_Invoke(IServerXMLHTTPRequest2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
13911    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
13912}
13913/*** IXMLHTTPRequest methods ***/
13914static inline HRESULT IServerXMLHTTPRequest2_open(IServerXMLHTTPRequest2* This,BSTR bstrMethod,BSTR bstrUrl,VARIANT varAsync,VARIANT username,VARIANT password) {
13915    return This->lpVtbl->open(This,bstrMethod,bstrUrl,varAsync,username,password);
13916}
13917static inline HRESULT IServerXMLHTTPRequest2_setRequestHeader(IServerXMLHTTPRequest2* This,BSTR bstrHeader,BSTR bstrValue) {
13918    return This->lpVtbl->setRequestHeader(This,bstrHeader,bstrValue);
13919}
13920static inline HRESULT IServerXMLHTTPRequest2_getResponseHeader(IServerXMLHTTPRequest2* This,BSTR bstrHeader,BSTR *value) {
13921    return This->lpVtbl->getResponseHeader(This,bstrHeader,value);
13922}
13923static inline HRESULT IServerXMLHTTPRequest2_getAllResponseHeaders(IServerXMLHTTPRequest2* This,BSTR *pbstrHeaders) {
13924    return This->lpVtbl->getAllResponseHeaders(This,pbstrHeaders);
13925}
13926static inline HRESULT IServerXMLHTTPRequest2_send(IServerXMLHTTPRequest2* This,VARIANT body) {
13927    return This->lpVtbl->send(This,body);
13928}
13929static inline HRESULT IServerXMLHTTPRequest2_abort(IServerXMLHTTPRequest2* This) {
13930    return This->lpVtbl->abort(This);
13931}
13932static inline HRESULT IServerXMLHTTPRequest2_get_status(IServerXMLHTTPRequest2* This,LONG *pStatus) {
13933    return This->lpVtbl->get_status(This,pStatus);
13934}
13935static inline HRESULT IServerXMLHTTPRequest2_get_statusText(IServerXMLHTTPRequest2* This,BSTR *pStatus) {
13936    return This->lpVtbl->get_statusText(This,pStatus);
13937}
13938static inline HRESULT IServerXMLHTTPRequest2_get_responseXML(IServerXMLHTTPRequest2* This,IDispatch **pBody) {
13939    return This->lpVtbl->get_responseXML(This,pBody);
13940}
13941static inline HRESULT IServerXMLHTTPRequest2_get_responseText(IServerXMLHTTPRequest2* This,BSTR *pBody) {
13942    return This->lpVtbl->get_responseText(This,pBody);
13943}
13944static inline HRESULT IServerXMLHTTPRequest2_get_responseBody(IServerXMLHTTPRequest2* This,VARIANT *pBody) {
13945    return This->lpVtbl->get_responseBody(This,pBody);
13946}
13947static inline HRESULT IServerXMLHTTPRequest2_get_responseStream(IServerXMLHTTPRequest2* This,VARIANT *pBody) {
13948    return This->lpVtbl->get_responseStream(This,pBody);
13949}
13950static inline HRESULT IServerXMLHTTPRequest2_get_readyState(IServerXMLHTTPRequest2* This,LONG *pState) {
13951    return This->lpVtbl->get_readyState(This,pState);
13952}
13953static inline HRESULT IServerXMLHTTPRequest2_put_onreadystatechange(IServerXMLHTTPRequest2* This,IDispatch *pReadyStateSink) {
13954    return This->lpVtbl->put_onreadystatechange(This,pReadyStateSink);
13955}
13956/*** IServerXMLHTTPRequest methods ***/
13957static inline HRESULT IServerXMLHTTPRequest2_setTimeouts(IServerXMLHTTPRequest2* This,LONG resolveTimeout,LONG connectTimeout,LONG sendTimeout,LONG receiveTimeout) {
13958    return This->lpVtbl->setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout);
13959}
13960static inline HRESULT IServerXMLHTTPRequest2_waitForResponse(IServerXMLHTTPRequest2* This,VARIANT timeoutInSeconds,VARIANT_BOOL *isSuccessful) {
13961    return This->lpVtbl->waitForResponse(This,timeoutInSeconds,isSuccessful);
13962}
13963static inline HRESULT IServerXMLHTTPRequest2_getOption(IServerXMLHTTPRequest2* This,SERVERXMLHTTP_OPTION option,VARIANT *value) {
13964    return This->lpVtbl->getOption(This,option,value);
13965}
13966static inline HRESULT IServerXMLHTTPRequest2_setOption(IServerXMLHTTPRequest2* This,SERVERXMLHTTP_OPTION option,VARIANT value) {
13967    return This->lpVtbl->setOption(This,option,value);
13968}
13969/*** IServerXMLHTTPRequest2 methods ***/
13970static inline HRESULT IServerXMLHTTPRequest2_setProxy(IServerXMLHTTPRequest2* This,SXH_PROXY_SETTING proxySetting,VARIANT varProxyServer,VARIANT varBypassList) {
13971    return This->lpVtbl->setProxy(This,proxySetting,varProxyServer,varBypassList);
13972}
13973static inline HRESULT IServerXMLHTTPRequest2_setProxyCredentials(IServerXMLHTTPRequest2* This,BSTR bstrUserName,BSTR bstrPassword) {
13974    return This->lpVtbl->setProxyCredentials(This,bstrUserName,bstrPassword);
13975}
13976#endif
13977#endif
13978
13979#endif
13980
13981
13982#endif  /* __IServerXMLHTTPRequest2_INTERFACE_DEFINED__ */
13983
13984/*****************************************************************************
13985 * IXMLDOMParseError interface
13986 */
13987#ifndef __IXMLDOMParseError_INTERFACE_DEFINED__
13988#define __IXMLDOMParseError_INTERFACE_DEFINED__
13989
13990DEFINE_GUID(IID_IXMLDOMParseError, 0x3efaa426, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
13991#if defined(__cplusplus) && !defined(CINTERFACE)
13992MIDL_INTERFACE("3efaa426-272f-11d2-836f-0000f87a7782")
13993IXMLDOMParseError : public IDispatch
13994{
13995    virtual HRESULT STDMETHODCALLTYPE get_errorCode(
13996        LONG *errCode) = 0;
13997
13998    virtual HRESULT STDMETHODCALLTYPE get_url(
13999        BSTR *p) = 0;
14000
14001    virtual HRESULT STDMETHODCALLTYPE get_reason(
14002        BSTR *p) = 0;
14003
14004    virtual HRESULT STDMETHODCALLTYPE get_srcText(
14005        BSTR *p) = 0;
14006
14007    virtual HRESULT STDMETHODCALLTYPE get_line(
14008        LONG *lineNo) = 0;
14009
14010    virtual HRESULT STDMETHODCALLTYPE get_linepos(
14011        LONG *linePos) = 0;
14012
14013    virtual HRESULT STDMETHODCALLTYPE get_filepos(
14014        LONG *filePos) = 0;
14015
14016};
14017#ifdef __CRT_UUID_DECL
14018__CRT_UUID_DECL(IXMLDOMParseError, 0x3efaa426, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
14019#endif
14020#else
14021typedef struct IXMLDOMParseErrorVtbl {
14022    BEGIN_INTERFACE
14023
14024    /*** IUnknown methods ***/
14025    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14026        IXMLDOMParseError *This,
14027        REFIID riid,
14028        void **ppvObject);
14029
14030    ULONG (STDMETHODCALLTYPE *AddRef)(
14031        IXMLDOMParseError *This);
14032
14033    ULONG (STDMETHODCALLTYPE *Release)(
14034        IXMLDOMParseError *This);
14035
14036    /*** IDispatch methods ***/
14037    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14038        IXMLDOMParseError *This,
14039        UINT *pctinfo);
14040
14041    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14042        IXMLDOMParseError *This,
14043        UINT iTInfo,
14044        LCID lcid,
14045        ITypeInfo **ppTInfo);
14046
14047    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14048        IXMLDOMParseError *This,
14049        REFIID riid,
14050        LPOLESTR *rgszNames,
14051        UINT cNames,
14052        LCID lcid,
14053        DISPID *rgDispId);
14054
14055    HRESULT (STDMETHODCALLTYPE *Invoke)(
14056        IXMLDOMParseError *This,
14057        DISPID dispIdMember,
14058        REFIID riid,
14059        LCID lcid,
14060        WORD wFlags,
14061        DISPPARAMS *pDispParams,
14062        VARIANT *pVarResult,
14063        EXCEPINFO *pExcepInfo,
14064        UINT *puArgErr);
14065
14066    /*** IXMLDOMParseError methods ***/
14067    HRESULT (STDMETHODCALLTYPE *get_errorCode)(
14068        IXMLDOMParseError *This,
14069        LONG *errCode);
14070
14071    HRESULT (STDMETHODCALLTYPE *get_url)(
14072        IXMLDOMParseError *This,
14073        BSTR *p);
14074
14075    HRESULT (STDMETHODCALLTYPE *get_reason)(
14076        IXMLDOMParseError *This,
14077        BSTR *p);
14078
14079    HRESULT (STDMETHODCALLTYPE *get_srcText)(
14080        IXMLDOMParseError *This,
14081        BSTR *p);
14082
14083    HRESULT (STDMETHODCALLTYPE *get_line)(
14084        IXMLDOMParseError *This,
14085        LONG *lineNo);
14086
14087    HRESULT (STDMETHODCALLTYPE *get_linepos)(
14088        IXMLDOMParseError *This,
14089        LONG *linePos);
14090
14091    HRESULT (STDMETHODCALLTYPE *get_filepos)(
14092        IXMLDOMParseError *This,
14093        LONG *filePos);
14094
14095    END_INTERFACE
14096} IXMLDOMParseErrorVtbl;
14097
14098interface IXMLDOMParseError {
14099    CONST_VTBL IXMLDOMParseErrorVtbl* lpVtbl;
14100};
14101
14102#ifdef COBJMACROS
14103#ifndef WIDL_C_INLINE_WRAPPERS
14104/*** IUnknown methods ***/
14105#define IXMLDOMParseError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14106#define IXMLDOMParseError_AddRef(This) (This)->lpVtbl->AddRef(This)
14107#define IXMLDOMParseError_Release(This) (This)->lpVtbl->Release(This)
14108/*** IDispatch methods ***/
14109#define IXMLDOMParseError_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14110#define IXMLDOMParseError_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14111#define IXMLDOMParseError_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14112#define IXMLDOMParseError_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14113/*** IXMLDOMParseError methods ***/
14114#define IXMLDOMParseError_get_errorCode(This,errCode) (This)->lpVtbl->get_errorCode(This,errCode)
14115#define IXMLDOMParseError_get_url(This,p) (This)->lpVtbl->get_url(This,p)
14116#define IXMLDOMParseError_get_reason(This,p) (This)->lpVtbl->get_reason(This,p)
14117#define IXMLDOMParseError_get_srcText(This,p) (This)->lpVtbl->get_srcText(This,p)
14118#define IXMLDOMParseError_get_line(This,lineNo) (This)->lpVtbl->get_line(This,lineNo)
14119#define IXMLDOMParseError_get_linepos(This,linePos) (This)->lpVtbl->get_linepos(This,linePos)
14120#define IXMLDOMParseError_get_filepos(This,filePos) (This)->lpVtbl->get_filepos(This,filePos)
14121#else
14122/*** IUnknown methods ***/
14123static inline HRESULT IXMLDOMParseError_QueryInterface(IXMLDOMParseError* This,REFIID riid,void **ppvObject) {
14124    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14125}
14126static inline ULONG IXMLDOMParseError_AddRef(IXMLDOMParseError* This) {
14127    return This->lpVtbl->AddRef(This);
14128}
14129static inline ULONG IXMLDOMParseError_Release(IXMLDOMParseError* This) {
14130    return This->lpVtbl->Release(This);
14131}
14132/*** IDispatch methods ***/
14133static inline HRESULT IXMLDOMParseError_GetTypeInfoCount(IXMLDOMParseError* This,UINT *pctinfo) {
14134    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14135}
14136static inline HRESULT IXMLDOMParseError_GetTypeInfo(IXMLDOMParseError* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14137    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14138}
14139static inline HRESULT IXMLDOMParseError_GetIDsOfNames(IXMLDOMParseError* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14140    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14141}
14142static inline HRESULT IXMLDOMParseError_Invoke(IXMLDOMParseError* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14143    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14144}
14145/*** IXMLDOMParseError methods ***/
14146static inline HRESULT IXMLDOMParseError_get_errorCode(IXMLDOMParseError* This,LONG *errCode) {
14147    return This->lpVtbl->get_errorCode(This,errCode);
14148}
14149static inline HRESULT IXMLDOMParseError_get_url(IXMLDOMParseError* This,BSTR *p) {
14150    return This->lpVtbl->get_url(This,p);
14151}
14152static inline HRESULT IXMLDOMParseError_get_reason(IXMLDOMParseError* This,BSTR *p) {
14153    return This->lpVtbl->get_reason(This,p);
14154}
14155static inline HRESULT IXMLDOMParseError_get_srcText(IXMLDOMParseError* This,BSTR *p) {
14156    return This->lpVtbl->get_srcText(This,p);
14157}
14158static inline HRESULT IXMLDOMParseError_get_line(IXMLDOMParseError* This,LONG *lineNo) {
14159    return This->lpVtbl->get_line(This,lineNo);
14160}
14161static inline HRESULT IXMLDOMParseError_get_linepos(IXMLDOMParseError* This,LONG *linePos) {
14162    return This->lpVtbl->get_linepos(This,linePos);
14163}
14164static inline HRESULT IXMLDOMParseError_get_filepos(IXMLDOMParseError* This,LONG *filePos) {
14165    return This->lpVtbl->get_filepos(This,filePos);
14166}
14167#endif
14168#endif
14169
14170#endif
14171
14172
14173#endif  /* __IXMLDOMParseError_INTERFACE_DEFINED__ */
14174
14175/*****************************************************************************
14176 * IXMLDOMParseError2 interface
14177 */
14178#ifndef __IXMLDOMParseError2_INTERFACE_DEFINED__
14179#define __IXMLDOMParseError2_INTERFACE_DEFINED__
14180
14181DEFINE_GUID(IID_IXMLDOMParseError2, 0x3efaa428, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
14182#if defined(__cplusplus) && !defined(CINTERFACE)
14183MIDL_INTERFACE("3efaa428-272f-11d2-836f-0000f87a7782")
14184IXMLDOMParseError2 : public IXMLDOMParseError
14185{
14186    virtual HRESULT STDMETHODCALLTYPE get_errorXPath(
14187        BSTR *xpathexpr) = 0;
14188
14189    virtual HRESULT STDMETHODCALLTYPE get_allErrors(
14190        IXMLDOMParseErrorCollection **allErrors) = 0;
14191
14192    virtual HRESULT STDMETHODCALLTYPE errorParameters(
14193        LONG index,
14194        BSTR *param) = 0;
14195
14196    virtual HRESULT STDMETHODCALLTYPE get_errorParametersCount(
14197        LONG *count) = 0;
14198
14199};
14200#ifdef __CRT_UUID_DECL
14201__CRT_UUID_DECL(IXMLDOMParseError2, 0x3efaa428, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
14202#endif
14203#else
14204typedef struct IXMLDOMParseError2Vtbl {
14205    BEGIN_INTERFACE
14206
14207    /*** IUnknown methods ***/
14208    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14209        IXMLDOMParseError2 *This,
14210        REFIID riid,
14211        void **ppvObject);
14212
14213    ULONG (STDMETHODCALLTYPE *AddRef)(
14214        IXMLDOMParseError2 *This);
14215
14216    ULONG (STDMETHODCALLTYPE *Release)(
14217        IXMLDOMParseError2 *This);
14218
14219    /*** IDispatch methods ***/
14220    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14221        IXMLDOMParseError2 *This,
14222        UINT *pctinfo);
14223
14224    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14225        IXMLDOMParseError2 *This,
14226        UINT iTInfo,
14227        LCID lcid,
14228        ITypeInfo **ppTInfo);
14229
14230    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14231        IXMLDOMParseError2 *This,
14232        REFIID riid,
14233        LPOLESTR *rgszNames,
14234        UINT cNames,
14235        LCID lcid,
14236        DISPID *rgDispId);
14237
14238    HRESULT (STDMETHODCALLTYPE *Invoke)(
14239        IXMLDOMParseError2 *This,
14240        DISPID dispIdMember,
14241        REFIID riid,
14242        LCID lcid,
14243        WORD wFlags,
14244        DISPPARAMS *pDispParams,
14245        VARIANT *pVarResult,
14246        EXCEPINFO *pExcepInfo,
14247        UINT *puArgErr);
14248
14249    /*** IXMLDOMParseError methods ***/
14250    HRESULT (STDMETHODCALLTYPE *get_errorCode)(
14251        IXMLDOMParseError2 *This,
14252        LONG *errCode);
14253
14254    HRESULT (STDMETHODCALLTYPE *get_url)(
14255        IXMLDOMParseError2 *This,
14256        BSTR *p);
14257
14258    HRESULT (STDMETHODCALLTYPE *get_reason)(
14259        IXMLDOMParseError2 *This,
14260        BSTR *p);
14261
14262    HRESULT (STDMETHODCALLTYPE *get_srcText)(
14263        IXMLDOMParseError2 *This,
14264        BSTR *p);
14265
14266    HRESULT (STDMETHODCALLTYPE *get_line)(
14267        IXMLDOMParseError2 *This,
14268        LONG *lineNo);
14269
14270    HRESULT (STDMETHODCALLTYPE *get_linepos)(
14271        IXMLDOMParseError2 *This,
14272        LONG *linePos);
14273
14274    HRESULT (STDMETHODCALLTYPE *get_filepos)(
14275        IXMLDOMParseError2 *This,
14276        LONG *filePos);
14277
14278    /*** IXMLDOMParseError2 methods ***/
14279    HRESULT (STDMETHODCALLTYPE *get_errorXPath)(
14280        IXMLDOMParseError2 *This,
14281        BSTR *xpathexpr);
14282
14283    HRESULT (STDMETHODCALLTYPE *get_allErrors)(
14284        IXMLDOMParseError2 *This,
14285        IXMLDOMParseErrorCollection **allErrors);
14286
14287    HRESULT (STDMETHODCALLTYPE *errorParameters)(
14288        IXMLDOMParseError2 *This,
14289        LONG index,
14290        BSTR *param);
14291
14292    HRESULT (STDMETHODCALLTYPE *get_errorParametersCount)(
14293        IXMLDOMParseError2 *This,
14294        LONG *count);
14295
14296    END_INTERFACE
14297} IXMLDOMParseError2Vtbl;
14298
14299interface IXMLDOMParseError2 {
14300    CONST_VTBL IXMLDOMParseError2Vtbl* lpVtbl;
14301};
14302
14303#ifdef COBJMACROS
14304#ifndef WIDL_C_INLINE_WRAPPERS
14305/*** IUnknown methods ***/
14306#define IXMLDOMParseError2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14307#define IXMLDOMParseError2_AddRef(This) (This)->lpVtbl->AddRef(This)
14308#define IXMLDOMParseError2_Release(This) (This)->lpVtbl->Release(This)
14309/*** IDispatch methods ***/
14310#define IXMLDOMParseError2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14311#define IXMLDOMParseError2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14312#define IXMLDOMParseError2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14313#define IXMLDOMParseError2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14314/*** IXMLDOMParseError methods ***/
14315#define IXMLDOMParseError2_get_errorCode(This,errCode) (This)->lpVtbl->get_errorCode(This,errCode)
14316#define IXMLDOMParseError2_get_url(This,p) (This)->lpVtbl->get_url(This,p)
14317#define IXMLDOMParseError2_get_reason(This,p) (This)->lpVtbl->get_reason(This,p)
14318#define IXMLDOMParseError2_get_srcText(This,p) (This)->lpVtbl->get_srcText(This,p)
14319#define IXMLDOMParseError2_get_line(This,lineNo) (This)->lpVtbl->get_line(This,lineNo)
14320#define IXMLDOMParseError2_get_linepos(This,linePos) (This)->lpVtbl->get_linepos(This,linePos)
14321#define IXMLDOMParseError2_get_filepos(This,filePos) (This)->lpVtbl->get_filepos(This,filePos)
14322/*** IXMLDOMParseError2 methods ***/
14323#define IXMLDOMParseError2_get_errorXPath(This,xpathexpr) (This)->lpVtbl->get_errorXPath(This,xpathexpr)
14324#define IXMLDOMParseError2_get_allErrors(This,allErrors) (This)->lpVtbl->get_allErrors(This,allErrors)
14325#define IXMLDOMParseError2_errorParameters(This,index,param) (This)->lpVtbl->errorParameters(This,index,param)
14326#define IXMLDOMParseError2_get_errorParametersCount(This,count) (This)->lpVtbl->get_errorParametersCount(This,count)
14327#else
14328/*** IUnknown methods ***/
14329static inline HRESULT IXMLDOMParseError2_QueryInterface(IXMLDOMParseError2* This,REFIID riid,void **ppvObject) {
14330    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14331}
14332static inline ULONG IXMLDOMParseError2_AddRef(IXMLDOMParseError2* This) {
14333    return This->lpVtbl->AddRef(This);
14334}
14335static inline ULONG IXMLDOMParseError2_Release(IXMLDOMParseError2* This) {
14336    return This->lpVtbl->Release(This);
14337}
14338/*** IDispatch methods ***/
14339static inline HRESULT IXMLDOMParseError2_GetTypeInfoCount(IXMLDOMParseError2* This,UINT *pctinfo) {
14340    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14341}
14342static inline HRESULT IXMLDOMParseError2_GetTypeInfo(IXMLDOMParseError2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14343    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14344}
14345static inline HRESULT IXMLDOMParseError2_GetIDsOfNames(IXMLDOMParseError2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14346    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14347}
14348static inline HRESULT IXMLDOMParseError2_Invoke(IXMLDOMParseError2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14349    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14350}
14351/*** IXMLDOMParseError methods ***/
14352static inline HRESULT IXMLDOMParseError2_get_errorCode(IXMLDOMParseError2* This,LONG *errCode) {
14353    return This->lpVtbl->get_errorCode(This,errCode);
14354}
14355static inline HRESULT IXMLDOMParseError2_get_url(IXMLDOMParseError2* This,BSTR *p) {
14356    return This->lpVtbl->get_url(This,p);
14357}
14358static inline HRESULT IXMLDOMParseError2_get_reason(IXMLDOMParseError2* This,BSTR *p) {
14359    return This->lpVtbl->get_reason(This,p);
14360}
14361static inline HRESULT IXMLDOMParseError2_get_srcText(IXMLDOMParseError2* This,BSTR *p) {
14362    return This->lpVtbl->get_srcText(This,p);
14363}
14364static inline HRESULT IXMLDOMParseError2_get_line(IXMLDOMParseError2* This,LONG *lineNo) {
14365    return This->lpVtbl->get_line(This,lineNo);
14366}
14367static inline HRESULT IXMLDOMParseError2_get_linepos(IXMLDOMParseError2* This,LONG *linePos) {
14368    return This->lpVtbl->get_linepos(This,linePos);
14369}
14370static inline HRESULT IXMLDOMParseError2_get_filepos(IXMLDOMParseError2* This,LONG *filePos) {
14371    return This->lpVtbl->get_filepos(This,filePos);
14372}
14373/*** IXMLDOMParseError2 methods ***/
14374static inline HRESULT IXMLDOMParseError2_get_errorXPath(IXMLDOMParseError2* This,BSTR *xpathexpr) {
14375    return This->lpVtbl->get_errorXPath(This,xpathexpr);
14376}
14377static inline HRESULT IXMLDOMParseError2_get_allErrors(IXMLDOMParseError2* This,IXMLDOMParseErrorCollection **allErrors) {
14378    return This->lpVtbl->get_allErrors(This,allErrors);
14379}
14380static inline HRESULT IXMLDOMParseError2_errorParameters(IXMLDOMParseError2* This,LONG index,BSTR *param) {
14381    return This->lpVtbl->errorParameters(This,index,param);
14382}
14383static inline HRESULT IXMLDOMParseError2_get_errorParametersCount(IXMLDOMParseError2* This,LONG *count) {
14384    return This->lpVtbl->get_errorParametersCount(This,count);
14385}
14386#endif
14387#endif
14388
14389#endif
14390
14391
14392#endif  /* __IXMLDOMParseError2_INTERFACE_DEFINED__ */
14393
14394/*****************************************************************************
14395 * IXMLDOMParseErrorCollection interface
14396 */
14397#ifndef __IXMLDOMParseErrorCollection_INTERFACE_DEFINED__
14398#define __IXMLDOMParseErrorCollection_INTERFACE_DEFINED__
14399
14400DEFINE_GUID(IID_IXMLDOMParseErrorCollection, 0x3efaa429, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82);
14401#if defined(__cplusplus) && !defined(CINTERFACE)
14402MIDL_INTERFACE("3efaa429-272f-11d2-836f-0000f87a7782")
14403IXMLDOMParseErrorCollection : public IDispatch
14404{
14405    virtual HRESULT STDMETHODCALLTYPE get_item(
14406        LONG index,
14407        IXMLDOMParseError2 **error) = 0;
14408
14409    virtual HRESULT STDMETHODCALLTYPE get_length(
14410        LONG *length) = 0;
14411
14412    virtual HRESULT STDMETHODCALLTYPE get_next(
14413        IXMLDOMParseError2 **error) = 0;
14414
14415    virtual HRESULT STDMETHODCALLTYPE reset(
14416        ) = 0;
14417
14418    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
14419        IUnknown **ppunk) = 0;
14420
14421};
14422#ifdef __CRT_UUID_DECL
14423__CRT_UUID_DECL(IXMLDOMParseErrorCollection, 0x3efaa429, 0x272f, 0x11d2, 0x83,0x6f, 0x00,0x00,0xf8,0x7a,0x77,0x82)
14424#endif
14425#else
14426typedef struct IXMLDOMParseErrorCollectionVtbl {
14427    BEGIN_INTERFACE
14428
14429    /*** IUnknown methods ***/
14430    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
14431        IXMLDOMParseErrorCollection *This,
14432        REFIID riid,
14433        void **ppvObject);
14434
14435    ULONG (STDMETHODCALLTYPE *AddRef)(
14436        IXMLDOMParseErrorCollection *This);
14437
14438    ULONG (STDMETHODCALLTYPE *Release)(
14439        IXMLDOMParseErrorCollection *This);
14440
14441    /*** IDispatch methods ***/
14442    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
14443        IXMLDOMParseErrorCollection *This,
14444        UINT *pctinfo);
14445
14446    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
14447        IXMLDOMParseErrorCollection *This,
14448        UINT iTInfo,
14449        LCID lcid,
14450        ITypeInfo **ppTInfo);
14451
14452    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
14453        IXMLDOMParseErrorCollection *This,
14454        REFIID riid,
14455        LPOLESTR *rgszNames,
14456        UINT cNames,
14457        LCID lcid,
14458        DISPID *rgDispId);
14459
14460    HRESULT (STDMETHODCALLTYPE *Invoke)(
14461        IXMLDOMParseErrorCollection *This,
14462        DISPID dispIdMember,
14463        REFIID riid,
14464        LCID lcid,
14465        WORD wFlags,
14466        DISPPARAMS *pDispParams,
14467        VARIANT *pVarResult,
14468        EXCEPINFO *pExcepInfo,
14469        UINT *puArgErr);
14470
14471    /*** IXMLDOMParseErrorCollection methods ***/
14472    HRESULT (STDMETHODCALLTYPE *get_item)(
14473        IXMLDOMParseErrorCollection *This,
14474        LONG index,
14475        IXMLDOMParseError2 **error);
14476
14477    HRESULT (STDMETHODCALLTYPE *get_length)(
14478        IXMLDOMParseErrorCollection *This,
14479        LONG *length);
14480
14481    HRESULT (STDMETHODCALLTYPE *get_next)(
14482        IXMLDOMParseErrorCollection *This,
14483        IXMLDOMParseError2 **error);
14484
14485    HRESULT (STDMETHODCALLTYPE *reset)(
14486        IXMLDOMParseErrorCollection *This);
14487
14488    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
14489        IXMLDOMParseErrorCollection *This,
14490        IUnknown **ppunk);
14491
14492    END_INTERFACE
14493} IXMLDOMParseErrorCollectionVtbl;
14494
14495interface IXMLDOMParseErrorCollection {
14496    CONST_VTBL IXMLDOMParseErrorCollectionVtbl* lpVtbl;
14497};
14498
14499#ifdef COBJMACROS
14500#ifndef WIDL_C_INLINE_WRAPPERS
14501/*** IUnknown methods ***/
14502#define IXMLDOMParseErrorCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
14503#define IXMLDOMParseErrorCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
14504#define IXMLDOMParseErrorCollection_Release(This) (This)->lpVtbl->Release(This)
14505/*** IDispatch methods ***/
14506#define IXMLDOMParseErrorCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
14507#define IXMLDOMParseErrorCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
14508#define IXMLDOMParseErrorCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
14509#define IXMLDOMParseErrorCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
14510/*** IXMLDOMParseErrorCollection methods ***/
14511#define IXMLDOMParseErrorCollection_get_item(This,index,error) (This)->lpVtbl->get_item(This,index,error)
14512#define IXMLDOMParseErrorCollection_get_length(This,length) (This)->lpVtbl->get_length(This,length)
14513#define IXMLDOMParseErrorCollection_get_next(This,error) (This)->lpVtbl->get_next(This,error)
14514#define IXMLDOMParseErrorCollection_reset(This) (This)->lpVtbl->reset(This)
14515#define IXMLDOMParseErrorCollection_get__newEnum(This,ppunk) (This)->lpVtbl->get__newEnum(This,ppunk)
14516#else
14517/*** IUnknown methods ***/
14518static inline HRESULT IXMLDOMParseErrorCollection_QueryInterface(IXMLDOMParseErrorCollection* This,REFIID riid,void **ppvObject) {
14519    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
14520}
14521static inline ULONG IXMLDOMParseErrorCollection_AddRef(IXMLDOMParseErrorCollection* This) {
14522    return This->lpVtbl->AddRef(This);
14523}
14524static inline ULONG IXMLDOMParseErrorCollection_Release(IXMLDOMParseErrorCollection* This) {
14525    return This->lpVtbl->Release(This);
14526}
14527/*** IDispatch methods ***/
14528static inline HRESULT IXMLDOMParseErrorCollection_GetTypeInfoCount(IXMLDOMParseErrorCollection* This,UINT *pctinfo) {
14529    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
14530}
14531static inline HRESULT IXMLDOMParseErrorCollection_GetTypeInfo(IXMLDOMParseErrorCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
14532    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
14533}
14534static inline HRESULT IXMLDOMParseErrorCollection_GetIDsOfNames(IXMLDOMParseErrorCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
14535    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
14536}
14537static inline HRESULT IXMLDOMParseErrorCollection_Invoke(IXMLDOMParseErrorCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
14538    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
14539}
14540/*** IXMLDOMParseErrorCollection methods ***/
14541static inline HRESULT IXMLDOMParseErrorCollection_get_item(IXMLDOMParseErrorCollection* This,LONG index,IXMLDOMParseError2 **error) {
14542    return This->lpVtbl->get_item(This,index,error);
14543}
14544static inline HRESULT IXMLDOMParseErrorCollection_get_length(IXMLDOMParseErrorCollection* This,LONG *length) {
14545    return This->lpVtbl->get_length(This,length);
14546}
14547static inline HRESULT IXMLDOMParseErrorCollection_get_next(IXMLDOMParseErrorCollection* This,IXMLDOMParseError2 **error) {
14548    return This->lpVtbl->get_next(This,error);
14549}
14550static inline HRESULT IXMLDOMParseErrorCollection_reset(IXMLDOMParseErrorCollection* This) {
14551    return This->lpVtbl->reset(This);
14552}
14553static inline HRESULT IXMLDOMParseErrorCollection_get__newEnum(IXMLDOMParseErrorCollection* This,IUnknown **ppunk) {
14554    return This->lpVtbl->get__newEnum(This,ppunk);
14555}
14556#endif
14557#endif
14558
14559#endif
14560
14561
14562#endif  /* __IXMLDOMParseErrorCollection_INTERFACE_DEFINED__ */
14563
14564/*****************************************************************************
14565 * DOMDocument26 coclass
14566 */
14567
14568DEFINE_GUID(CLSID_DOMDocument26, 0xf5078f1b, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14569
14570#ifdef __cplusplus
14571class DECLSPEC_UUID("f5078f1b-c551-11d3-89b9-0000f81fe221") DOMDocument26;
14572#ifdef __CRT_UUID_DECL
14573__CRT_UUID_DECL(DOMDocument26, 0xf5078f1b, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14574#endif
14575#endif
14576
14577/*****************************************************************************
14578 * DOMDocument30 coclass
14579 */
14580
14581DEFINE_GUID(CLSID_DOMDocument30, 0xf5078f32, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14582
14583#ifdef __cplusplus
14584class DECLSPEC_UUID("f5078f32-c551-11d3-89b9-0000f81fe221") DOMDocument30;
14585#ifdef __CRT_UUID_DECL
14586__CRT_UUID_DECL(DOMDocument30, 0xf5078f32, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14587#endif
14588#endif
14589
14590/*****************************************************************************
14591 * DOMDocument40 coclass
14592 */
14593
14594DEFINE_GUID(CLSID_DOMDocument40, 0x88d969c0, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14595
14596#ifdef __cplusplus
14597class DECLSPEC_UUID("88d969c0-f192-11d4-a65f-0040963251e5") DOMDocument40;
14598#ifdef __CRT_UUID_DECL
14599__CRT_UUID_DECL(DOMDocument40, 0x88d969c0, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14600#endif
14601#endif
14602
14603/*****************************************************************************
14604 * DOMDocument60 coclass
14605 */
14606
14607DEFINE_GUID(CLSID_DOMDocument60, 0x88d96a05, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14608
14609#ifdef __cplusplus
14610class DECLSPEC_UUID("88d96a05-f192-11d4-a65f-0040963251e5") DOMDocument60;
14611#ifdef __CRT_UUID_DECL
14612__CRT_UUID_DECL(DOMDocument60, 0x88d96a05, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14613#endif
14614#endif
14615
14616/*****************************************************************************
14617 * DOMDocument coclass
14618 */
14619
14620DEFINE_GUID(CLSID_DOMDocument, 0xf6d90f11, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4);
14621
14622#ifdef __cplusplus
14623class DECLSPEC_UUID("f6d90f11-9c73-11d3-b32e-00c04f990bb4") DOMDocument;
14624#ifdef __CRT_UUID_DECL
14625__CRT_UUID_DECL(DOMDocument, 0xf6d90f11, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4)
14626#endif
14627#endif
14628
14629/*****************************************************************************
14630 * FreeThreadedDOMDocument26 coclass
14631 */
14632
14633DEFINE_GUID(CLSID_FreeThreadedDOMDocument26, 0xf5078f1c, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14634
14635#ifdef __cplusplus
14636class DECLSPEC_UUID("f5078f1c-c551-11d3-89b9-0000f81fe221") FreeThreadedDOMDocument26;
14637#ifdef __CRT_UUID_DECL
14638__CRT_UUID_DECL(FreeThreadedDOMDocument26, 0xf5078f1c, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14639#endif
14640#endif
14641
14642/*****************************************************************************
14643 * FreeThreadedDOMDocument30 coclass
14644 */
14645
14646DEFINE_GUID(CLSID_FreeThreadedDOMDocument30, 0xf5078f33, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14647
14648#ifdef __cplusplus
14649class DECLSPEC_UUID("f5078f33-c551-11d3-89b9-0000f81fe221") FreeThreadedDOMDocument30;
14650#ifdef __CRT_UUID_DECL
14651__CRT_UUID_DECL(FreeThreadedDOMDocument30, 0xf5078f33, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14652#endif
14653#endif
14654
14655/*****************************************************************************
14656 * FreeThreadedDOMDocument40 coclass
14657 */
14658
14659DEFINE_GUID(CLSID_FreeThreadedDOMDocument40, 0x88d969c1, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14660
14661#ifdef __cplusplus
14662class DECLSPEC_UUID("88d969c1-f192-11d4-a65f-0040963251e5") FreeThreadedDOMDocument40;
14663#ifdef __CRT_UUID_DECL
14664__CRT_UUID_DECL(FreeThreadedDOMDocument40, 0x88d969c1, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14665#endif
14666#endif
14667
14668/*****************************************************************************
14669 * FreeThreadedDOMDocument60 coclass
14670 */
14671
14672DEFINE_GUID(CLSID_FreeThreadedDOMDocument60, 0x88d96a06, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14673
14674#ifdef __cplusplus
14675class DECLSPEC_UUID("88d96a06-f192-11d4-a65f-0040963251e5") FreeThreadedDOMDocument60;
14676#ifdef __CRT_UUID_DECL
14677__CRT_UUID_DECL(FreeThreadedDOMDocument60, 0x88d96a06, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14678#endif
14679#endif
14680
14681/*****************************************************************************
14682 * FreeThreadedDOMDocument coclass
14683 */
14684
14685DEFINE_GUID(CLSID_FreeThreadedDOMDocument, 0xf6d90f12, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4);
14686
14687#ifdef __cplusplus
14688class DECLSPEC_UUID("f6d90f12-9c73-11d3-b32e-00c04f990bb4") FreeThreadedDOMDocument;
14689#ifdef __CRT_UUID_DECL
14690__CRT_UUID_DECL(FreeThreadedDOMDocument, 0xf6d90f12, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4)
14691#endif
14692#endif
14693
14694/*****************************************************************************
14695 * XMLHTTP26 coclass
14696 */
14697
14698DEFINE_GUID(CLSID_XMLHTTP26, 0xf5078f1e, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14699
14700#ifdef __cplusplus
14701class DECLSPEC_UUID("f5078f1e-c551-11d3-89b9-0000f81fe221") XMLHTTP26;
14702#ifdef __CRT_UUID_DECL
14703__CRT_UUID_DECL(XMLHTTP26, 0xf5078f1e, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14704#endif
14705#endif
14706
14707/*****************************************************************************
14708 * XMLHTTP30 coclass
14709 */
14710
14711DEFINE_GUID(CLSID_XMLHTTP30, 0xf5078f35, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14712
14713#ifdef __cplusplus
14714class DECLSPEC_UUID("f5078f35-c551-11d3-89b9-0000f81fe221") XMLHTTP30;
14715#ifdef __CRT_UUID_DECL
14716__CRT_UUID_DECL(XMLHTTP30, 0xf5078f35, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14717#endif
14718#endif
14719
14720/*****************************************************************************
14721 * XMLHTTP40 coclass
14722 */
14723
14724DEFINE_GUID(CLSID_XMLHTTP40, 0x88d969c5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14725
14726#ifdef __cplusplus
14727class DECLSPEC_UUID("88d969c5-f192-11d4-a65f-0040963251e5") XMLHTTP40;
14728#ifdef __CRT_UUID_DECL
14729__CRT_UUID_DECL(XMLHTTP40, 0x88d969c5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14730#endif
14731#endif
14732
14733/*****************************************************************************
14734 * XMLHTTP60 coclass
14735 */
14736
14737DEFINE_GUID(CLSID_XMLHTTP60, 0x88d96a0a, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14738
14739#ifdef __cplusplus
14740class DECLSPEC_UUID("88d96a0a-f192-11d4-a65f-0040963251e5") XMLHTTP60;
14741#ifdef __CRT_UUID_DECL
14742__CRT_UUID_DECL(XMLHTTP60, 0x88d96a0a, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14743#endif
14744#endif
14745
14746/*****************************************************************************
14747 * XMLHTTP coclass
14748 */
14749
14750DEFINE_GUID(CLSID_XMLHTTP, 0xf6d90f16, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4);
14751
14752#ifdef __cplusplus
14753class DECLSPEC_UUID("f6d90f16-9c73-11d3-b32e-00c04f990bb4") XMLHTTP;
14754#ifdef __CRT_UUID_DECL
14755__CRT_UUID_DECL(XMLHTTP, 0xf6d90f16, 0x9c73, 0x11d3, 0xb3,0x2e, 0x00,0xc0,0x4f,0x99,0x0b,0xb4)
14756#endif
14757#endif
14758
14759/*****************************************************************************
14760 * ServerXMLHTTP30 coclass
14761 */
14762
14763DEFINE_GUID(CLSID_ServerXMLHTTP30, 0xafb40ffd, 0xb609, 0x40a3, 0x98,0x28, 0xf8,0x8b,0xbe,0x11,0xe4,0xe3);
14764
14765#ifdef __cplusplus
14766class DECLSPEC_UUID("afb40ffd-b609-40a3-9828-f88bbe11e4e3") ServerXMLHTTP30;
14767#ifdef __CRT_UUID_DECL
14768__CRT_UUID_DECL(ServerXMLHTTP30, 0xafb40ffd, 0xb609, 0x40a3, 0x98,0x28, 0xf8,0x8b,0xbe,0x11,0xe4,0xe3)
14769#endif
14770#endif
14771
14772/*****************************************************************************
14773 * ServerXMLHTTP40 coclass
14774 */
14775
14776DEFINE_GUID(CLSID_ServerXMLHTTP40, 0x88d969c6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14777
14778#ifdef __cplusplus
14779class DECLSPEC_UUID("88d969c6-f192-11d4-a65f-0040963251e5") ServerXMLHTTP40;
14780#ifdef __CRT_UUID_DECL
14781__CRT_UUID_DECL(ServerXMLHTTP40, 0x88d969c6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14782#endif
14783#endif
14784
14785/*****************************************************************************
14786 * ServerXMLHTTP60 coclass
14787 */
14788
14789DEFINE_GUID(CLSID_ServerXMLHTTP60, 0x88d96a0b, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14790
14791#ifdef __cplusplus
14792class DECLSPEC_UUID("88d96a0b-f192-11d4-a65f-0040963251e5") ServerXMLHTTP60;
14793#ifdef __CRT_UUID_DECL
14794__CRT_UUID_DECL(ServerXMLHTTP60, 0x88d96a0b, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14795#endif
14796#endif
14797
14798/*****************************************************************************
14799 * ServerXMLHTTP coclass
14800 */
14801
14802DEFINE_GUID(CLSID_ServerXMLHTTP, 0xafba6b42, 0x5692, 0x48ea, 0x81,0x41, 0xdc,0x51,0x7d,0xcf,0x0e,0xf1);
14803
14804#ifdef __cplusplus
14805class DECLSPEC_UUID("afba6b42-5692-48ea-8141-dc517dcf0ef1") ServerXMLHTTP;
14806#ifdef __CRT_UUID_DECL
14807__CRT_UUID_DECL(ServerXMLHTTP, 0xafba6b42, 0x5692, 0x48ea, 0x81,0x41, 0xdc,0x51,0x7d,0xcf,0x0e,0xf1)
14808#endif
14809#endif
14810
14811/*****************************************************************************
14812 * XMLSchemaCache26 coclass
14813 */
14814
14815DEFINE_GUID(CLSID_XMLSchemaCache26, 0xf5078f1d, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14816
14817#ifdef __cplusplus
14818class DECLSPEC_UUID("f5078f1d-c551-11d3-89b9-0000f81fe221") XMLSchemaCache26;
14819#ifdef __CRT_UUID_DECL
14820__CRT_UUID_DECL(XMLSchemaCache26, 0xf5078f1d, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14821#endif
14822#endif
14823
14824/*****************************************************************************
14825 * XMLSchemaCache30 coclass
14826 */
14827
14828DEFINE_GUID(CLSID_XMLSchemaCache30, 0xf5078f34, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14829
14830#ifdef __cplusplus
14831class DECLSPEC_UUID("f5078f34-c551-11d3-89b9-0000f81fe221") XMLSchemaCache30;
14832#ifdef __CRT_UUID_DECL
14833__CRT_UUID_DECL(XMLSchemaCache30, 0xf5078f34, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14834#endif
14835#endif
14836
14837/*****************************************************************************
14838 * XMLSchemaCache40 coclass
14839 */
14840
14841DEFINE_GUID(CLSID_XMLSchemaCache40, 0x88d969c2, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14842
14843#ifdef __cplusplus
14844class DECLSPEC_UUID("88d969c2-f192-11d4-a65f-0040963251e5") XMLSchemaCache40;
14845#ifdef __CRT_UUID_DECL
14846__CRT_UUID_DECL(XMLSchemaCache40, 0x88d969c2, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14847#endif
14848#endif
14849
14850/*****************************************************************************
14851 * XMLSchemaCache coclass
14852 */
14853
14854DEFINE_GUID(CLSID_XMLSchemaCache, 0x373984c9, 0xb845, 0x449b, 0x91,0xe7, 0x45,0xac,0x83,0x03,0x6a,0xde);
14855
14856#ifdef __cplusplus
14857class DECLSPEC_UUID("373984c9-b845-449b-91e7-45ac83036ade") XMLSchemaCache;
14858#ifdef __CRT_UUID_DECL
14859__CRT_UUID_DECL(XMLSchemaCache, 0x373984c9, 0xb845, 0x449b, 0x91,0xe7, 0x45,0xac,0x83,0x03,0x6a,0xde)
14860#endif
14861#endif
14862
14863/*****************************************************************************
14864 * XSLTemplate26 coclass
14865 */
14866
14867DEFINE_GUID(CLSID_XSLTemplate26, 0xf5078f21, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14868
14869#ifdef __cplusplus
14870class DECLSPEC_UUID("f5078f21-c551-11d3-89b9-0000f81fe221") XSLTemplate26;
14871#ifdef __CRT_UUID_DECL
14872__CRT_UUID_DECL(XSLTemplate26, 0xf5078f21, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14873#endif
14874#endif
14875
14876/*****************************************************************************
14877 * XSLTemplate30 coclass
14878 */
14879
14880DEFINE_GUID(CLSID_XSLTemplate30, 0xf5078f36, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21);
14881
14882#ifdef __cplusplus
14883class DECLSPEC_UUID("f5078f36-c551-11d3-89b9-0000f81fe221") XSLTemplate30;
14884#ifdef __CRT_UUID_DECL
14885__CRT_UUID_DECL(XSLTemplate30, 0xf5078f36, 0xc551, 0x11d3, 0x89,0xb9, 0x00,0x00,0xf8,0x1f,0xe2,0x21)
14886#endif
14887#endif
14888
14889/*****************************************************************************
14890 * XSLTemplate40 coclass
14891 */
14892
14893DEFINE_GUID(CLSID_XSLTemplate40, 0x88d969c3, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14894
14895#ifdef __cplusplus
14896class DECLSPEC_UUID("88d969c3-f192-11d4-a65f-0040963251e5") XSLTemplate40;
14897#ifdef __CRT_UUID_DECL
14898__CRT_UUID_DECL(XSLTemplate40, 0x88d969c3, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14899#endif
14900#endif
14901
14902/*****************************************************************************
14903 * XSLTemplate60 coclass
14904 */
14905
14906DEFINE_GUID(CLSID_XSLTemplate60, 0x88d96a08, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14907
14908#ifdef __cplusplus
14909class DECLSPEC_UUID("88d96a08-f192-11d4-a65f-0040963251e5") XSLTemplate60;
14910#ifdef __CRT_UUID_DECL
14911__CRT_UUID_DECL(XSLTemplate60, 0x88d96a08, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14912#endif
14913#endif
14914
14915/*****************************************************************************
14916 * XSLTemplate coclass
14917 */
14918
14919DEFINE_GUID(CLSID_XSLTemplate, 0x2933bf94, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60);
14920
14921#ifdef __cplusplus
14922class DECLSPEC_UUID("2933bf94-7b36-11d2-b20e-00c04f983e60") XSLTemplate;
14923#ifdef __CRT_UUID_DECL
14924__CRT_UUID_DECL(XSLTemplate, 0x2933bf94, 0x7b36, 0x11d2, 0xb2,0x0e, 0x00,0xc0,0x4f,0x98,0x3e,0x60)
14925#endif
14926#endif
14927
14928/*****************************************************************************
14929 * ISAXAttributes interface
14930 */
14931#ifndef __ISAXAttributes_INTERFACE_DEFINED__
14932#define __ISAXAttributes_INTERFACE_DEFINED__
14933
14934DEFINE_GUID(IID_ISAXAttributes, 0xf078abe1, 0x45d2, 0x4832, 0x91,0xea, 0x44,0x66,0xce,0x2f,0x25,0xc9);
14935#if defined(__cplusplus) && !defined(CINTERFACE)
14936MIDL_INTERFACE("f078abe1-45d2-4832-91ea-4466ce2f25c9")
14937ISAXAttributes : public IUnknown
14938{
14939    virtual HRESULT STDMETHODCALLTYPE getLength(
14940        int *length) = 0;
14941
14942    virtual HRESULT STDMETHODCALLTYPE getURI(
14943        int nIndex,
14944        const WCHAR **pUrl,
14945        int *pUriSize) = 0;
14946
14947    virtual HRESULT STDMETHODCALLTYPE getLocalName(
14948        int nIndex,
14949        const WCHAR **pLocalName,
14950        int *pLocalNameLength) = 0;
14951
14952    virtual HRESULT STDMETHODCALLTYPE getQName(
14953        int nIndex,
14954        const WCHAR **pQName,
14955        int *pQNameLength) = 0;
14956
14957    virtual HRESULT STDMETHODCALLTYPE getName(
14958        int nIndex,
14959        const WCHAR **pUri,
14960        int *pUriLength,
14961        const WCHAR **pLocalName,
14962        int *pLocalNameSize,
14963        const WCHAR **pQName,
14964        int *pQNameLength) = 0;
14965
14966    virtual HRESULT STDMETHODCALLTYPE getIndexFromName(
14967        const WCHAR *pUri,
14968        int cUriLength,
14969        const WCHAR *pLocalName,
14970        int cocalNameLength,
14971        int *index) = 0;
14972
14973    virtual HRESULT STDMETHODCALLTYPE getIndexFromQName(
14974        const WCHAR *pQName,
14975        int nQNameLength,
14976        int *index) = 0;
14977
14978    virtual HRESULT STDMETHODCALLTYPE getType(
14979        int nIndex,
14980        const WCHAR **pType,
14981        int *pTypeLength) = 0;
14982
14983    virtual HRESULT STDMETHODCALLTYPE getTypeFromName(
14984        const WCHAR *pUri,
14985        int nUri,
14986        const WCHAR *pLocalName,
14987        int nLocalName,
14988        const WCHAR **pType,
14989        int *nType) = 0;
14990
14991    virtual HRESULT STDMETHODCALLTYPE getTypeFromQName(
14992        const WCHAR *pQName,
14993        int nQName,
14994        const WCHAR **pType,
14995        int *nType) = 0;
14996
14997    virtual HRESULT STDMETHODCALLTYPE getValue(
14998        int nIndex,
14999        const WCHAR **pValue,
15000        int *nValue) = 0;
15001
15002    virtual HRESULT STDMETHODCALLTYPE getValueFromName(
15003        const WCHAR *pUri,
15004        int nUri,
15005        const WCHAR *pLocalName,
15006        int nLocalName,
15007        const WCHAR **pValue,
15008        int *nValue) = 0;
15009
15010    virtual HRESULT STDMETHODCALLTYPE getValueFromQName(
15011        const WCHAR *pQName,
15012        int nQName,
15013        const WCHAR **pValue,
15014        int *nValue) = 0;
15015
15016};
15017#ifdef __CRT_UUID_DECL
15018__CRT_UUID_DECL(ISAXAttributes, 0xf078abe1, 0x45d2, 0x4832, 0x91,0xea, 0x44,0x66,0xce,0x2f,0x25,0xc9)
15019#endif
15020#else
15021typedef struct ISAXAttributesVtbl {
15022    BEGIN_INTERFACE
15023
15024    /*** IUnknown methods ***/
15025    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15026        ISAXAttributes *This,
15027        REFIID riid,
15028        void **ppvObject);
15029
15030    ULONG (STDMETHODCALLTYPE *AddRef)(
15031        ISAXAttributes *This);
15032
15033    ULONG (STDMETHODCALLTYPE *Release)(
15034        ISAXAttributes *This);
15035
15036    /*** ISAXAttributes methods ***/
15037    HRESULT (STDMETHODCALLTYPE *getLength)(
15038        ISAXAttributes *This,
15039        int *length);
15040
15041    HRESULT (STDMETHODCALLTYPE *getURI)(
15042        ISAXAttributes *This,
15043        int nIndex,
15044        const WCHAR **pUrl,
15045        int *pUriSize);
15046
15047    HRESULT (STDMETHODCALLTYPE *getLocalName)(
15048        ISAXAttributes *This,
15049        int nIndex,
15050        const WCHAR **pLocalName,
15051        int *pLocalNameLength);
15052
15053    HRESULT (STDMETHODCALLTYPE *getQName)(
15054        ISAXAttributes *This,
15055        int nIndex,
15056        const WCHAR **pQName,
15057        int *pQNameLength);
15058
15059    HRESULT (STDMETHODCALLTYPE *getName)(
15060        ISAXAttributes *This,
15061        int nIndex,
15062        const WCHAR **pUri,
15063        int *pUriLength,
15064        const WCHAR **pLocalName,
15065        int *pLocalNameSize,
15066        const WCHAR **pQName,
15067        int *pQNameLength);
15068
15069    HRESULT (STDMETHODCALLTYPE *getIndexFromName)(
15070        ISAXAttributes *This,
15071        const WCHAR *pUri,
15072        int cUriLength,
15073        const WCHAR *pLocalName,
15074        int cocalNameLength,
15075        int *index);
15076
15077    HRESULT (STDMETHODCALLTYPE *getIndexFromQName)(
15078        ISAXAttributes *This,
15079        const WCHAR *pQName,
15080        int nQNameLength,
15081        int *index);
15082
15083    HRESULT (STDMETHODCALLTYPE *getType)(
15084        ISAXAttributes *This,
15085        int nIndex,
15086        const WCHAR **pType,
15087        int *pTypeLength);
15088
15089    HRESULT (STDMETHODCALLTYPE *getTypeFromName)(
15090        ISAXAttributes *This,
15091        const WCHAR *pUri,
15092        int nUri,
15093        const WCHAR *pLocalName,
15094        int nLocalName,
15095        const WCHAR **pType,
15096        int *nType);
15097
15098    HRESULT (STDMETHODCALLTYPE *getTypeFromQName)(
15099        ISAXAttributes *This,
15100        const WCHAR *pQName,
15101        int nQName,
15102        const WCHAR **pType,
15103        int *nType);
15104
15105    HRESULT (STDMETHODCALLTYPE *getValue)(
15106        ISAXAttributes *This,
15107        int nIndex,
15108        const WCHAR **pValue,
15109        int *nValue);
15110
15111    HRESULT (STDMETHODCALLTYPE *getValueFromName)(
15112        ISAXAttributes *This,
15113        const WCHAR *pUri,
15114        int nUri,
15115        const WCHAR *pLocalName,
15116        int nLocalName,
15117        const WCHAR **pValue,
15118        int *nValue);
15119
15120    HRESULT (STDMETHODCALLTYPE *getValueFromQName)(
15121        ISAXAttributes *This,
15122        const WCHAR *pQName,
15123        int nQName,
15124        const WCHAR **pValue,
15125        int *nValue);
15126
15127    END_INTERFACE
15128} ISAXAttributesVtbl;
15129
15130interface ISAXAttributes {
15131    CONST_VTBL ISAXAttributesVtbl* lpVtbl;
15132};
15133
15134#ifdef COBJMACROS
15135#ifndef WIDL_C_INLINE_WRAPPERS
15136/*** IUnknown methods ***/
15137#define ISAXAttributes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15138#define ISAXAttributes_AddRef(This) (This)->lpVtbl->AddRef(This)
15139#define ISAXAttributes_Release(This) (This)->lpVtbl->Release(This)
15140/*** ISAXAttributes methods ***/
15141#define ISAXAttributes_getLength(This,length) (This)->lpVtbl->getLength(This,length)
15142#define ISAXAttributes_getURI(This,nIndex,pUrl,pUriSize) (This)->lpVtbl->getURI(This,nIndex,pUrl,pUriSize)
15143#define ISAXAttributes_getLocalName(This,nIndex,pLocalName,pLocalNameLength) (This)->lpVtbl->getLocalName(This,nIndex,pLocalName,pLocalNameLength)
15144#define ISAXAttributes_getQName(This,nIndex,pQName,pQNameLength) (This)->lpVtbl->getQName(This,nIndex,pQName,pQNameLength)
15145#define ISAXAttributes_getName(This,nIndex,pUri,pUriLength,pLocalName,pLocalNameSize,pQName,pQNameLength) (This)->lpVtbl->getName(This,nIndex,pUri,pUriLength,pLocalName,pLocalNameSize,pQName,pQNameLength)
15146#define ISAXAttributes_getIndexFromName(This,pUri,cUriLength,pLocalName,cocalNameLength,index) (This)->lpVtbl->getIndexFromName(This,pUri,cUriLength,pLocalName,cocalNameLength,index)
15147#define ISAXAttributes_getIndexFromQName(This,pQName,nQNameLength,index) (This)->lpVtbl->getIndexFromQName(This,pQName,nQNameLength,index)
15148#define ISAXAttributes_getType(This,nIndex,pType,pTypeLength) (This)->lpVtbl->getType(This,nIndex,pType,pTypeLength)
15149#define ISAXAttributes_getTypeFromName(This,pUri,nUri,pLocalName,nLocalName,pType,nType) (This)->lpVtbl->getTypeFromName(This,pUri,nUri,pLocalName,nLocalName,pType,nType)
15150#define ISAXAttributes_getTypeFromQName(This,pQName,nQName,pType,nType) (This)->lpVtbl->getTypeFromQName(This,pQName,nQName,pType,nType)
15151#define ISAXAttributes_getValue(This,nIndex,pValue,nValue) (This)->lpVtbl->getValue(This,nIndex,pValue,nValue)
15152#define ISAXAttributes_getValueFromName(This,pUri,nUri,pLocalName,nLocalName,pValue,nValue) (This)->lpVtbl->getValueFromName(This,pUri,nUri,pLocalName,nLocalName,pValue,nValue)
15153#define ISAXAttributes_getValueFromQName(This,pQName,nQName,pValue,nValue) (This)->lpVtbl->getValueFromQName(This,pQName,nQName,pValue,nValue)
15154#else
15155/*** IUnknown methods ***/
15156static inline HRESULT ISAXAttributes_QueryInterface(ISAXAttributes* This,REFIID riid,void **ppvObject) {
15157    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15158}
15159static inline ULONG ISAXAttributes_AddRef(ISAXAttributes* This) {
15160    return This->lpVtbl->AddRef(This);
15161}
15162static inline ULONG ISAXAttributes_Release(ISAXAttributes* This) {
15163    return This->lpVtbl->Release(This);
15164}
15165/*** ISAXAttributes methods ***/
15166static inline HRESULT ISAXAttributes_getLength(ISAXAttributes* This,int *length) {
15167    return This->lpVtbl->getLength(This,length);
15168}
15169static inline HRESULT ISAXAttributes_getURI(ISAXAttributes* This,int nIndex,const WCHAR **pUrl,int *pUriSize) {
15170    return This->lpVtbl->getURI(This,nIndex,pUrl,pUriSize);
15171}
15172static inline HRESULT ISAXAttributes_getLocalName(ISAXAttributes* This,int nIndex,const WCHAR **pLocalName,int *pLocalNameLength) {
15173    return This->lpVtbl->getLocalName(This,nIndex,pLocalName,pLocalNameLength);
15174}
15175static inline HRESULT ISAXAttributes_getQName(ISAXAttributes* This,int nIndex,const WCHAR **pQName,int *pQNameLength) {
15176    return This->lpVtbl->getQName(This,nIndex,pQName,pQNameLength);
15177}
15178static inline HRESULT ISAXAttributes_getName(ISAXAttributes* This,int nIndex,const WCHAR **pUri,int *pUriLength,const WCHAR **pLocalName,int *pLocalNameSize,const WCHAR **pQName,int *pQNameLength) {
15179    return This->lpVtbl->getName(This,nIndex,pUri,pUriLength,pLocalName,pLocalNameSize,pQName,pQNameLength);
15180}
15181static inline HRESULT ISAXAttributes_getIndexFromName(ISAXAttributes* This,const WCHAR *pUri,int cUriLength,const WCHAR *pLocalName,int cocalNameLength,int *index) {
15182    return This->lpVtbl->getIndexFromName(This,pUri,cUriLength,pLocalName,cocalNameLength,index);
15183}
15184static inline HRESULT ISAXAttributes_getIndexFromQName(ISAXAttributes* This,const WCHAR *pQName,int nQNameLength,int *index) {
15185    return This->lpVtbl->getIndexFromQName(This,pQName,nQNameLength,index);
15186}
15187static inline HRESULT ISAXAttributes_getType(ISAXAttributes* This,int nIndex,const WCHAR **pType,int *pTypeLength) {
15188    return This->lpVtbl->getType(This,nIndex,pType,pTypeLength);
15189}
15190static inline HRESULT ISAXAttributes_getTypeFromName(ISAXAttributes* This,const WCHAR *pUri,int nUri,const WCHAR *pLocalName,int nLocalName,const WCHAR **pType,int *nType) {
15191    return This->lpVtbl->getTypeFromName(This,pUri,nUri,pLocalName,nLocalName,pType,nType);
15192}
15193static inline HRESULT ISAXAttributes_getTypeFromQName(ISAXAttributes* This,const WCHAR *pQName,int nQName,const WCHAR **pType,int *nType) {
15194    return This->lpVtbl->getTypeFromQName(This,pQName,nQName,pType,nType);
15195}
15196static inline HRESULT ISAXAttributes_getValue(ISAXAttributes* This,int nIndex,const WCHAR **pValue,int *nValue) {
15197    return This->lpVtbl->getValue(This,nIndex,pValue,nValue);
15198}
15199static inline HRESULT ISAXAttributes_getValueFromName(ISAXAttributes* This,const WCHAR *pUri,int nUri,const WCHAR *pLocalName,int nLocalName,const WCHAR **pValue,int *nValue) {
15200    return This->lpVtbl->getValueFromName(This,pUri,nUri,pLocalName,nLocalName,pValue,nValue);
15201}
15202static inline HRESULT ISAXAttributes_getValueFromQName(ISAXAttributes* This,const WCHAR *pQName,int nQName,const WCHAR **pValue,int *nValue) {
15203    return This->lpVtbl->getValueFromQName(This,pQName,nQName,pValue,nValue);
15204}
15205#endif
15206#endif
15207
15208#endif
15209
15210
15211#endif  /* __ISAXAttributes_INTERFACE_DEFINED__ */
15212
15213/*****************************************************************************
15214 * ISAXContentHandler interface
15215 */
15216#ifndef __ISAXContentHandler_INTERFACE_DEFINED__
15217#define __ISAXContentHandler_INTERFACE_DEFINED__
15218
15219DEFINE_GUID(IID_ISAXContentHandler, 0x1545cdfa, 0x9e4e, 0x4497, 0xa8,0xa4, 0x2b,0xf7,0xd0,0x11,0x2c,0x44);
15220#if defined(__cplusplus) && !defined(CINTERFACE)
15221MIDL_INTERFACE("1545cdfa-9e4e-4497-a8a4-2bf7d0112c44")
15222ISAXContentHandler : public IUnknown
15223{
15224    virtual HRESULT STDMETHODCALLTYPE putDocumentLocator(
15225        ISAXLocator *pLocator) = 0;
15226
15227    virtual HRESULT STDMETHODCALLTYPE startDocument(
15228        ) = 0;
15229
15230    virtual HRESULT STDMETHODCALLTYPE endDocument(
15231        ) = 0;
15232
15233    virtual HRESULT STDMETHODCALLTYPE startPrefixMapping(
15234        const WCHAR *pPrefix,
15235        int nPrefix,
15236        const WCHAR *pUri,
15237        int nUri) = 0;
15238
15239    virtual HRESULT STDMETHODCALLTYPE endPrefixMapping(
15240        const WCHAR *pPrefix,
15241        int nPrefix) = 0;
15242
15243    virtual HRESULT STDMETHODCALLTYPE startElement(
15244        const WCHAR *pNamespaceUri,
15245        int nNamespaceUri,
15246        const WCHAR *pLocalName,
15247        int nLocalName,
15248        const WCHAR *pQName,
15249        int nQName,
15250        ISAXAttributes *pAttr) = 0;
15251
15252    virtual HRESULT STDMETHODCALLTYPE endElement(
15253        const WCHAR *pNamespaceUri,
15254        int nNamespaceUri,
15255        const WCHAR *pLocalName,
15256        int nLocalName,
15257        const WCHAR *pQName,
15258        int nQName) = 0;
15259
15260    virtual HRESULT STDMETHODCALLTYPE characters(
15261        const WCHAR *pChars,
15262        int nChars) = 0;
15263
15264    virtual HRESULT STDMETHODCALLTYPE ignorableWhitespace(
15265        const WCHAR *pChars,
15266        int nChars) = 0;
15267
15268    virtual HRESULT STDMETHODCALLTYPE processingInstruction(
15269        const WCHAR *pTarget,
15270        int nTarget,
15271        const WCHAR *pData,
15272        int nData) = 0;
15273
15274    virtual HRESULT STDMETHODCALLTYPE skippedEntity(
15275        const WCHAR *pName,
15276        int nName) = 0;
15277
15278};
15279#ifdef __CRT_UUID_DECL
15280__CRT_UUID_DECL(ISAXContentHandler, 0x1545cdfa, 0x9e4e, 0x4497, 0xa8,0xa4, 0x2b,0xf7,0xd0,0x11,0x2c,0x44)
15281#endif
15282#else
15283typedef struct ISAXContentHandlerVtbl {
15284    BEGIN_INTERFACE
15285
15286    /*** IUnknown methods ***/
15287    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15288        ISAXContentHandler *This,
15289        REFIID riid,
15290        void **ppvObject);
15291
15292    ULONG (STDMETHODCALLTYPE *AddRef)(
15293        ISAXContentHandler *This);
15294
15295    ULONG (STDMETHODCALLTYPE *Release)(
15296        ISAXContentHandler *This);
15297
15298    /*** ISAXContentHandler methods ***/
15299    HRESULT (STDMETHODCALLTYPE *putDocumentLocator)(
15300        ISAXContentHandler *This,
15301        ISAXLocator *pLocator);
15302
15303    HRESULT (STDMETHODCALLTYPE *startDocument)(
15304        ISAXContentHandler *This);
15305
15306    HRESULT (STDMETHODCALLTYPE *endDocument)(
15307        ISAXContentHandler *This);
15308
15309    HRESULT (STDMETHODCALLTYPE *startPrefixMapping)(
15310        ISAXContentHandler *This,
15311        const WCHAR *pPrefix,
15312        int nPrefix,
15313        const WCHAR *pUri,
15314        int nUri);
15315
15316    HRESULT (STDMETHODCALLTYPE *endPrefixMapping)(
15317        ISAXContentHandler *This,
15318        const WCHAR *pPrefix,
15319        int nPrefix);
15320
15321    HRESULT (STDMETHODCALLTYPE *startElement)(
15322        ISAXContentHandler *This,
15323        const WCHAR *pNamespaceUri,
15324        int nNamespaceUri,
15325        const WCHAR *pLocalName,
15326        int nLocalName,
15327        const WCHAR *pQName,
15328        int nQName,
15329        ISAXAttributes *pAttr);
15330
15331    HRESULT (STDMETHODCALLTYPE *endElement)(
15332        ISAXContentHandler *This,
15333        const WCHAR *pNamespaceUri,
15334        int nNamespaceUri,
15335        const WCHAR *pLocalName,
15336        int nLocalName,
15337        const WCHAR *pQName,
15338        int nQName);
15339
15340    HRESULT (STDMETHODCALLTYPE *characters)(
15341        ISAXContentHandler *This,
15342        const WCHAR *pChars,
15343        int nChars);
15344
15345    HRESULT (STDMETHODCALLTYPE *ignorableWhitespace)(
15346        ISAXContentHandler *This,
15347        const WCHAR *pChars,
15348        int nChars);
15349
15350    HRESULT (STDMETHODCALLTYPE *processingInstruction)(
15351        ISAXContentHandler *This,
15352        const WCHAR *pTarget,
15353        int nTarget,
15354        const WCHAR *pData,
15355        int nData);
15356
15357    HRESULT (STDMETHODCALLTYPE *skippedEntity)(
15358        ISAXContentHandler *This,
15359        const WCHAR *pName,
15360        int nName);
15361
15362    END_INTERFACE
15363} ISAXContentHandlerVtbl;
15364
15365interface ISAXContentHandler {
15366    CONST_VTBL ISAXContentHandlerVtbl* lpVtbl;
15367};
15368
15369#ifdef COBJMACROS
15370#ifndef WIDL_C_INLINE_WRAPPERS
15371/*** IUnknown methods ***/
15372#define ISAXContentHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15373#define ISAXContentHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
15374#define ISAXContentHandler_Release(This) (This)->lpVtbl->Release(This)
15375/*** ISAXContentHandler methods ***/
15376#define ISAXContentHandler_putDocumentLocator(This,pLocator) (This)->lpVtbl->putDocumentLocator(This,pLocator)
15377#define ISAXContentHandler_startDocument(This) (This)->lpVtbl->startDocument(This)
15378#define ISAXContentHandler_endDocument(This) (This)->lpVtbl->endDocument(This)
15379#define ISAXContentHandler_startPrefixMapping(This,pPrefix,nPrefix,pUri,nUri) (This)->lpVtbl->startPrefixMapping(This,pPrefix,nPrefix,pUri,nUri)
15380#define ISAXContentHandler_endPrefixMapping(This,pPrefix,nPrefix) (This)->lpVtbl->endPrefixMapping(This,pPrefix,nPrefix)
15381#define ISAXContentHandler_startElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName,pAttr) (This)->lpVtbl->startElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName,pAttr)
15382#define ISAXContentHandler_endElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName) (This)->lpVtbl->endElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName)
15383#define ISAXContentHandler_characters(This,pChars,nChars) (This)->lpVtbl->characters(This,pChars,nChars)
15384#define ISAXContentHandler_ignorableWhitespace(This,pChars,nChars) (This)->lpVtbl->ignorableWhitespace(This,pChars,nChars)
15385#define ISAXContentHandler_processingInstruction(This,pTarget,nTarget,pData,nData) (This)->lpVtbl->processingInstruction(This,pTarget,nTarget,pData,nData)
15386#define ISAXContentHandler_skippedEntity(This,pName,nName) (This)->lpVtbl->skippedEntity(This,pName,nName)
15387#else
15388/*** IUnknown methods ***/
15389static inline HRESULT ISAXContentHandler_QueryInterface(ISAXContentHandler* This,REFIID riid,void **ppvObject) {
15390    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15391}
15392static inline ULONG ISAXContentHandler_AddRef(ISAXContentHandler* This) {
15393    return This->lpVtbl->AddRef(This);
15394}
15395static inline ULONG ISAXContentHandler_Release(ISAXContentHandler* This) {
15396    return This->lpVtbl->Release(This);
15397}
15398/*** ISAXContentHandler methods ***/
15399static inline HRESULT ISAXContentHandler_putDocumentLocator(ISAXContentHandler* This,ISAXLocator *pLocator) {
15400    return This->lpVtbl->putDocumentLocator(This,pLocator);
15401}
15402static inline HRESULT ISAXContentHandler_startDocument(ISAXContentHandler* This) {
15403    return This->lpVtbl->startDocument(This);
15404}
15405static inline HRESULT ISAXContentHandler_endDocument(ISAXContentHandler* This) {
15406    return This->lpVtbl->endDocument(This);
15407}
15408static inline HRESULT ISAXContentHandler_startPrefixMapping(ISAXContentHandler* This,const WCHAR *pPrefix,int nPrefix,const WCHAR *pUri,int nUri) {
15409    return This->lpVtbl->startPrefixMapping(This,pPrefix,nPrefix,pUri,nUri);
15410}
15411static inline HRESULT ISAXContentHandler_endPrefixMapping(ISAXContentHandler* This,const WCHAR *pPrefix,int nPrefix) {
15412    return This->lpVtbl->endPrefixMapping(This,pPrefix,nPrefix);
15413}
15414static inline HRESULT ISAXContentHandler_startElement(ISAXContentHandler* This,const WCHAR *pNamespaceUri,int nNamespaceUri,const WCHAR *pLocalName,int nLocalName,const WCHAR *pQName,int nQName,ISAXAttributes *pAttr) {
15415    return This->lpVtbl->startElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName,pAttr);
15416}
15417static inline HRESULT ISAXContentHandler_endElement(ISAXContentHandler* This,const WCHAR *pNamespaceUri,int nNamespaceUri,const WCHAR *pLocalName,int nLocalName,const WCHAR *pQName,int nQName) {
15418    return This->lpVtbl->endElement(This,pNamespaceUri,nNamespaceUri,pLocalName,nLocalName,pQName,nQName);
15419}
15420static inline HRESULT ISAXContentHandler_characters(ISAXContentHandler* This,const WCHAR *pChars,int nChars) {
15421    return This->lpVtbl->characters(This,pChars,nChars);
15422}
15423static inline HRESULT ISAXContentHandler_ignorableWhitespace(ISAXContentHandler* This,const WCHAR *pChars,int nChars) {
15424    return This->lpVtbl->ignorableWhitespace(This,pChars,nChars);
15425}
15426static inline HRESULT ISAXContentHandler_processingInstruction(ISAXContentHandler* This,const WCHAR *pTarget,int nTarget,const WCHAR *pData,int nData) {
15427    return This->lpVtbl->processingInstruction(This,pTarget,nTarget,pData,nData);
15428}
15429static inline HRESULT ISAXContentHandler_skippedEntity(ISAXContentHandler* This,const WCHAR *pName,int nName) {
15430    return This->lpVtbl->skippedEntity(This,pName,nName);
15431}
15432#endif
15433#endif
15434
15435#endif
15436
15437
15438#endif  /* __ISAXContentHandler_INTERFACE_DEFINED__ */
15439
15440/*****************************************************************************
15441 * ISAXDeclHandler interface
15442 */
15443#ifndef __ISAXDeclHandler_INTERFACE_DEFINED__
15444#define __ISAXDeclHandler_INTERFACE_DEFINED__
15445
15446DEFINE_GUID(IID_ISAXDeclHandler, 0x862629ac, 0x771a, 0x47b2, 0x83,0x37, 0x4e,0x68,0x43,0xc1,0xbe,0x90);
15447#if defined(__cplusplus) && !defined(CINTERFACE)
15448MIDL_INTERFACE("862629ac-771a-47b2-8337-4e6843c1be90")
15449ISAXDeclHandler : public IUnknown
15450{
15451    virtual HRESULT STDMETHODCALLTYPE elementDecl(
15452        const WCHAR *pName,
15453        int nName,
15454        const WCHAR *pModel,
15455        int nModel) = 0;
15456
15457    virtual HRESULT STDMETHODCALLTYPE attributeDecl(
15458        const WCHAR *pElementName,
15459        int nElementName,
15460        const WCHAR *pAttributeName,
15461        int nAttributeName,
15462        const WCHAR *pType,
15463        int nType,
15464        const WCHAR *pValueDefault,
15465        int nValueDefault,
15466        const WCHAR *pValue,
15467        int nValue) = 0;
15468
15469    virtual HRESULT STDMETHODCALLTYPE internalEntityDecl(
15470        const WCHAR *pName,
15471        int nName,
15472        const WCHAR *pValue,
15473        int nValue) = 0;
15474
15475    virtual HRESULT STDMETHODCALLTYPE externalEntityDecl(
15476        const WCHAR *pName,
15477        int nName,
15478        const WCHAR *pPublicId,
15479        int nPublicId,
15480        const WCHAR *pSystemId,
15481        int nSystemId) = 0;
15482
15483};
15484#ifdef __CRT_UUID_DECL
15485__CRT_UUID_DECL(ISAXDeclHandler, 0x862629ac, 0x771a, 0x47b2, 0x83,0x37, 0x4e,0x68,0x43,0xc1,0xbe,0x90)
15486#endif
15487#else
15488typedef struct ISAXDeclHandlerVtbl {
15489    BEGIN_INTERFACE
15490
15491    /*** IUnknown methods ***/
15492    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15493        ISAXDeclHandler *This,
15494        REFIID riid,
15495        void **ppvObject);
15496
15497    ULONG (STDMETHODCALLTYPE *AddRef)(
15498        ISAXDeclHandler *This);
15499
15500    ULONG (STDMETHODCALLTYPE *Release)(
15501        ISAXDeclHandler *This);
15502
15503    /*** ISAXDeclHandler methods ***/
15504    HRESULT (STDMETHODCALLTYPE *elementDecl)(
15505        ISAXDeclHandler *This,
15506        const WCHAR *pName,
15507        int nName,
15508        const WCHAR *pModel,
15509        int nModel);
15510
15511    HRESULT (STDMETHODCALLTYPE *attributeDecl)(
15512        ISAXDeclHandler *This,
15513        const WCHAR *pElementName,
15514        int nElementName,
15515        const WCHAR *pAttributeName,
15516        int nAttributeName,
15517        const WCHAR *pType,
15518        int nType,
15519        const WCHAR *pValueDefault,
15520        int nValueDefault,
15521        const WCHAR *pValue,
15522        int nValue);
15523
15524    HRESULT (STDMETHODCALLTYPE *internalEntityDecl)(
15525        ISAXDeclHandler *This,
15526        const WCHAR *pName,
15527        int nName,
15528        const WCHAR *pValue,
15529        int nValue);
15530
15531    HRESULT (STDMETHODCALLTYPE *externalEntityDecl)(
15532        ISAXDeclHandler *This,
15533        const WCHAR *pName,
15534        int nName,
15535        const WCHAR *pPublicId,
15536        int nPublicId,
15537        const WCHAR *pSystemId,
15538        int nSystemId);
15539
15540    END_INTERFACE
15541} ISAXDeclHandlerVtbl;
15542
15543interface ISAXDeclHandler {
15544    CONST_VTBL ISAXDeclHandlerVtbl* lpVtbl;
15545};
15546
15547#ifdef COBJMACROS
15548#ifndef WIDL_C_INLINE_WRAPPERS
15549/*** IUnknown methods ***/
15550#define ISAXDeclHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15551#define ISAXDeclHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
15552#define ISAXDeclHandler_Release(This) (This)->lpVtbl->Release(This)
15553/*** ISAXDeclHandler methods ***/
15554#define ISAXDeclHandler_elementDecl(This,pName,nName,pModel,nModel) (This)->lpVtbl->elementDecl(This,pName,nName,pModel,nModel)
15555#define ISAXDeclHandler_attributeDecl(This,pElementName,nElementName,pAttributeName,nAttributeName,pType,nType,pValueDefault,nValueDefault,pValue,nValue) (This)->lpVtbl->attributeDecl(This,pElementName,nElementName,pAttributeName,nAttributeName,pType,nType,pValueDefault,nValueDefault,pValue,nValue)
15556#define ISAXDeclHandler_internalEntityDecl(This,pName,nName,pValue,nValue) (This)->lpVtbl->internalEntityDecl(This,pName,nName,pValue,nValue)
15557#define ISAXDeclHandler_externalEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId) (This)->lpVtbl->externalEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId)
15558#else
15559/*** IUnknown methods ***/
15560static inline HRESULT ISAXDeclHandler_QueryInterface(ISAXDeclHandler* This,REFIID riid,void **ppvObject) {
15561    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15562}
15563static inline ULONG ISAXDeclHandler_AddRef(ISAXDeclHandler* This) {
15564    return This->lpVtbl->AddRef(This);
15565}
15566static inline ULONG ISAXDeclHandler_Release(ISAXDeclHandler* This) {
15567    return This->lpVtbl->Release(This);
15568}
15569/*** ISAXDeclHandler methods ***/
15570static inline HRESULT ISAXDeclHandler_elementDecl(ISAXDeclHandler* This,const WCHAR *pName,int nName,const WCHAR *pModel,int nModel) {
15571    return This->lpVtbl->elementDecl(This,pName,nName,pModel,nModel);
15572}
15573static inline HRESULT ISAXDeclHandler_attributeDecl(ISAXDeclHandler* This,const WCHAR *pElementName,int nElementName,const WCHAR *pAttributeName,int nAttributeName,const WCHAR *pType,int nType,const WCHAR *pValueDefault,int nValueDefault,const WCHAR *pValue,int nValue) {
15574    return This->lpVtbl->attributeDecl(This,pElementName,nElementName,pAttributeName,nAttributeName,pType,nType,pValueDefault,nValueDefault,pValue,nValue);
15575}
15576static inline HRESULT ISAXDeclHandler_internalEntityDecl(ISAXDeclHandler* This,const WCHAR *pName,int nName,const WCHAR *pValue,int nValue) {
15577    return This->lpVtbl->internalEntityDecl(This,pName,nName,pValue,nValue);
15578}
15579static inline HRESULT ISAXDeclHandler_externalEntityDecl(ISAXDeclHandler* This,const WCHAR *pName,int nName,const WCHAR *pPublicId,int nPublicId,const WCHAR *pSystemId,int nSystemId) {
15580    return This->lpVtbl->externalEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId);
15581}
15582#endif
15583#endif
15584
15585#endif
15586
15587
15588#endif  /* __ISAXDeclHandler_INTERFACE_DEFINED__ */
15589
15590/*****************************************************************************
15591 * ISAXDTDHandler interface
15592 */
15593#ifndef __ISAXDTDHandler_INTERFACE_DEFINED__
15594#define __ISAXDTDHandler_INTERFACE_DEFINED__
15595
15596DEFINE_GUID(IID_ISAXDTDHandler, 0xe15c1baf, 0xafb3, 0x4d60, 0x8c,0x36, 0x19,0xa8,0xc4,0x5d,0xef,0xed);
15597#if defined(__cplusplus) && !defined(CINTERFACE)
15598MIDL_INTERFACE("e15c1baf-afb3-4d60-8c36-19a8c45defed")
15599ISAXDTDHandler : public IUnknown
15600{
15601    virtual HRESULT STDMETHODCALLTYPE notationDecl(
15602        const WCHAR *pName,
15603        int nName,
15604        const WCHAR *pPublicId,
15605        int nPublicId,
15606        const WCHAR *pSystemId,
15607        int nSystemId) = 0;
15608
15609    virtual HRESULT STDMETHODCALLTYPE unparsedEntityDecl(
15610        const WCHAR *pName,
15611        int nName,
15612        const WCHAR *pPublicId,
15613        int nPublicId,
15614        const WCHAR *pSystemId,
15615        int nSystemId,
15616        const WCHAR *pNotationName,
15617        int nNotationName) = 0;
15618
15619};
15620#ifdef __CRT_UUID_DECL
15621__CRT_UUID_DECL(ISAXDTDHandler, 0xe15c1baf, 0xafb3, 0x4d60, 0x8c,0x36, 0x19,0xa8,0xc4,0x5d,0xef,0xed)
15622#endif
15623#else
15624typedef struct ISAXDTDHandlerVtbl {
15625    BEGIN_INTERFACE
15626
15627    /*** IUnknown methods ***/
15628    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15629        ISAXDTDHandler *This,
15630        REFIID riid,
15631        void **ppvObject);
15632
15633    ULONG (STDMETHODCALLTYPE *AddRef)(
15634        ISAXDTDHandler *This);
15635
15636    ULONG (STDMETHODCALLTYPE *Release)(
15637        ISAXDTDHandler *This);
15638
15639    /*** ISAXDTDHandler methods ***/
15640    HRESULT (STDMETHODCALLTYPE *notationDecl)(
15641        ISAXDTDHandler *This,
15642        const WCHAR *pName,
15643        int nName,
15644        const WCHAR *pPublicId,
15645        int nPublicId,
15646        const WCHAR *pSystemId,
15647        int nSystemId);
15648
15649    HRESULT (STDMETHODCALLTYPE *unparsedEntityDecl)(
15650        ISAXDTDHandler *This,
15651        const WCHAR *pName,
15652        int nName,
15653        const WCHAR *pPublicId,
15654        int nPublicId,
15655        const WCHAR *pSystemId,
15656        int nSystemId,
15657        const WCHAR *pNotationName,
15658        int nNotationName);
15659
15660    END_INTERFACE
15661} ISAXDTDHandlerVtbl;
15662
15663interface ISAXDTDHandler {
15664    CONST_VTBL ISAXDTDHandlerVtbl* lpVtbl;
15665};
15666
15667#ifdef COBJMACROS
15668#ifndef WIDL_C_INLINE_WRAPPERS
15669/*** IUnknown methods ***/
15670#define ISAXDTDHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15671#define ISAXDTDHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
15672#define ISAXDTDHandler_Release(This) (This)->lpVtbl->Release(This)
15673/*** ISAXDTDHandler methods ***/
15674#define ISAXDTDHandler_notationDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId) (This)->lpVtbl->notationDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId)
15675#define ISAXDTDHandler_unparsedEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId,pNotationName,nNotationName) (This)->lpVtbl->unparsedEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId,pNotationName,nNotationName)
15676#else
15677/*** IUnknown methods ***/
15678static inline HRESULT ISAXDTDHandler_QueryInterface(ISAXDTDHandler* This,REFIID riid,void **ppvObject) {
15679    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15680}
15681static inline ULONG ISAXDTDHandler_AddRef(ISAXDTDHandler* This) {
15682    return This->lpVtbl->AddRef(This);
15683}
15684static inline ULONG ISAXDTDHandler_Release(ISAXDTDHandler* This) {
15685    return This->lpVtbl->Release(This);
15686}
15687/*** ISAXDTDHandler methods ***/
15688static inline HRESULT ISAXDTDHandler_notationDecl(ISAXDTDHandler* This,const WCHAR *pName,int nName,const WCHAR *pPublicId,int nPublicId,const WCHAR *pSystemId,int nSystemId) {
15689    return This->lpVtbl->notationDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId);
15690}
15691static inline HRESULT ISAXDTDHandler_unparsedEntityDecl(ISAXDTDHandler* This,const WCHAR *pName,int nName,const WCHAR *pPublicId,int nPublicId,const WCHAR *pSystemId,int nSystemId,const WCHAR *pNotationName,int nNotationName) {
15692    return This->lpVtbl->unparsedEntityDecl(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId,pNotationName,nNotationName);
15693}
15694#endif
15695#endif
15696
15697#endif
15698
15699
15700#endif  /* __ISAXDTDHandler_INTERFACE_DEFINED__ */
15701
15702/*****************************************************************************
15703 * ISAXEntityResolver interface
15704 */
15705#ifndef __ISAXEntityResolver_INTERFACE_DEFINED__
15706#define __ISAXEntityResolver_INTERFACE_DEFINED__
15707
15708DEFINE_GUID(IID_ISAXEntityResolver, 0x99bca7bd, 0xe8c4, 0x4d5f, 0xa0,0xcf, 0x6d,0x90,0x79,0x01,0xff,0x07);
15709#if defined(__cplusplus) && !defined(CINTERFACE)
15710MIDL_INTERFACE("99bca7bd-e8c4-4d5f-a0cf-6d907901ff07")
15711ISAXEntityResolver : public IUnknown
15712{
15713    virtual HRESULT STDMETHODCALLTYPE resolveEntity(
15714        const WCHAR *pPublicId,
15715        const WCHAR *pSystemId,
15716        VARIANT *ret) = 0;
15717
15718};
15719#ifdef __CRT_UUID_DECL
15720__CRT_UUID_DECL(ISAXEntityResolver, 0x99bca7bd, 0xe8c4, 0x4d5f, 0xa0,0xcf, 0x6d,0x90,0x79,0x01,0xff,0x07)
15721#endif
15722#else
15723typedef struct ISAXEntityResolverVtbl {
15724    BEGIN_INTERFACE
15725
15726    /*** IUnknown methods ***/
15727    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15728        ISAXEntityResolver *This,
15729        REFIID riid,
15730        void **ppvObject);
15731
15732    ULONG (STDMETHODCALLTYPE *AddRef)(
15733        ISAXEntityResolver *This);
15734
15735    ULONG (STDMETHODCALLTYPE *Release)(
15736        ISAXEntityResolver *This);
15737
15738    /*** ISAXEntityResolver methods ***/
15739    HRESULT (STDMETHODCALLTYPE *resolveEntity)(
15740        ISAXEntityResolver *This,
15741        const WCHAR *pPublicId,
15742        const WCHAR *pSystemId,
15743        VARIANT *ret);
15744
15745    END_INTERFACE
15746} ISAXEntityResolverVtbl;
15747
15748interface ISAXEntityResolver {
15749    CONST_VTBL ISAXEntityResolverVtbl* lpVtbl;
15750};
15751
15752#ifdef COBJMACROS
15753#ifndef WIDL_C_INLINE_WRAPPERS
15754/*** IUnknown methods ***/
15755#define ISAXEntityResolver_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15756#define ISAXEntityResolver_AddRef(This) (This)->lpVtbl->AddRef(This)
15757#define ISAXEntityResolver_Release(This) (This)->lpVtbl->Release(This)
15758/*** ISAXEntityResolver methods ***/
15759#define ISAXEntityResolver_resolveEntity(This,pPublicId,pSystemId,ret) (This)->lpVtbl->resolveEntity(This,pPublicId,pSystemId,ret)
15760#else
15761/*** IUnknown methods ***/
15762static inline HRESULT ISAXEntityResolver_QueryInterface(ISAXEntityResolver* This,REFIID riid,void **ppvObject) {
15763    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15764}
15765static inline ULONG ISAXEntityResolver_AddRef(ISAXEntityResolver* This) {
15766    return This->lpVtbl->AddRef(This);
15767}
15768static inline ULONG ISAXEntityResolver_Release(ISAXEntityResolver* This) {
15769    return This->lpVtbl->Release(This);
15770}
15771/*** ISAXEntityResolver methods ***/
15772static inline HRESULT ISAXEntityResolver_resolveEntity(ISAXEntityResolver* This,const WCHAR *pPublicId,const WCHAR *pSystemId,VARIANT *ret) {
15773    return This->lpVtbl->resolveEntity(This,pPublicId,pSystemId,ret);
15774}
15775#endif
15776#endif
15777
15778#endif
15779
15780
15781#endif  /* __ISAXEntityResolver_INTERFACE_DEFINED__ */
15782
15783/*****************************************************************************
15784 * ISAXErrorHandler interface
15785 */
15786#ifndef __ISAXErrorHandler_INTERFACE_DEFINED__
15787#define __ISAXErrorHandler_INTERFACE_DEFINED__
15788
15789DEFINE_GUID(IID_ISAXErrorHandler, 0xa60511c4, 0xccf5, 0x479e, 0x98,0xa3, 0xdc,0x8d,0xc5,0x45,0xb7,0xd0);
15790#if defined(__cplusplus) && !defined(CINTERFACE)
15791MIDL_INTERFACE("a60511c4-ccf5-479e-98a3-dc8dc545b7d0")
15792ISAXErrorHandler : public IUnknown
15793{
15794    virtual HRESULT STDMETHODCALLTYPE error(
15795        ISAXLocator *pLocator,
15796        const WCHAR *pErrorMessage,
15797        HRESULT hrErrorCode) = 0;
15798
15799    virtual HRESULT STDMETHODCALLTYPE fatalError(
15800        ISAXLocator *pLocator,
15801        const WCHAR *pErrorMessage,
15802        HRESULT hrErrorCode) = 0;
15803
15804    virtual HRESULT STDMETHODCALLTYPE ignorableWarning(
15805        ISAXLocator *pLocator,
15806        const WCHAR *pErrorMessage,
15807        HRESULT hrErrorCode) = 0;
15808
15809};
15810#ifdef __CRT_UUID_DECL
15811__CRT_UUID_DECL(ISAXErrorHandler, 0xa60511c4, 0xccf5, 0x479e, 0x98,0xa3, 0xdc,0x8d,0xc5,0x45,0xb7,0xd0)
15812#endif
15813#else
15814typedef struct ISAXErrorHandlerVtbl {
15815    BEGIN_INTERFACE
15816
15817    /*** IUnknown methods ***/
15818    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15819        ISAXErrorHandler *This,
15820        REFIID riid,
15821        void **ppvObject);
15822
15823    ULONG (STDMETHODCALLTYPE *AddRef)(
15824        ISAXErrorHandler *This);
15825
15826    ULONG (STDMETHODCALLTYPE *Release)(
15827        ISAXErrorHandler *This);
15828
15829    /*** ISAXErrorHandler methods ***/
15830    HRESULT (STDMETHODCALLTYPE *error)(
15831        ISAXErrorHandler *This,
15832        ISAXLocator *pLocator,
15833        const WCHAR *pErrorMessage,
15834        HRESULT hrErrorCode);
15835
15836    HRESULT (STDMETHODCALLTYPE *fatalError)(
15837        ISAXErrorHandler *This,
15838        ISAXLocator *pLocator,
15839        const WCHAR *pErrorMessage,
15840        HRESULT hrErrorCode);
15841
15842    HRESULT (STDMETHODCALLTYPE *ignorableWarning)(
15843        ISAXErrorHandler *This,
15844        ISAXLocator *pLocator,
15845        const WCHAR *pErrorMessage,
15846        HRESULT hrErrorCode);
15847
15848    END_INTERFACE
15849} ISAXErrorHandlerVtbl;
15850
15851interface ISAXErrorHandler {
15852    CONST_VTBL ISAXErrorHandlerVtbl* lpVtbl;
15853};
15854
15855#ifdef COBJMACROS
15856#ifndef WIDL_C_INLINE_WRAPPERS
15857/*** IUnknown methods ***/
15858#define ISAXErrorHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15859#define ISAXErrorHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
15860#define ISAXErrorHandler_Release(This) (This)->lpVtbl->Release(This)
15861/*** ISAXErrorHandler methods ***/
15862#define ISAXErrorHandler_error(This,pLocator,pErrorMessage,hrErrorCode) (This)->lpVtbl->error(This,pLocator,pErrorMessage,hrErrorCode)
15863#define ISAXErrorHandler_fatalError(This,pLocator,pErrorMessage,hrErrorCode) (This)->lpVtbl->fatalError(This,pLocator,pErrorMessage,hrErrorCode)
15864#define ISAXErrorHandler_ignorableWarning(This,pLocator,pErrorMessage,hrErrorCode) (This)->lpVtbl->ignorableWarning(This,pLocator,pErrorMessage,hrErrorCode)
15865#else
15866/*** IUnknown methods ***/
15867static inline HRESULT ISAXErrorHandler_QueryInterface(ISAXErrorHandler* This,REFIID riid,void **ppvObject) {
15868    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
15869}
15870static inline ULONG ISAXErrorHandler_AddRef(ISAXErrorHandler* This) {
15871    return This->lpVtbl->AddRef(This);
15872}
15873static inline ULONG ISAXErrorHandler_Release(ISAXErrorHandler* This) {
15874    return This->lpVtbl->Release(This);
15875}
15876/*** ISAXErrorHandler methods ***/
15877static inline HRESULT ISAXErrorHandler_error(ISAXErrorHandler* This,ISAXLocator *pLocator,const WCHAR *pErrorMessage,HRESULT hrErrorCode) {
15878    return This->lpVtbl->error(This,pLocator,pErrorMessage,hrErrorCode);
15879}
15880static inline HRESULT ISAXErrorHandler_fatalError(ISAXErrorHandler* This,ISAXLocator *pLocator,const WCHAR *pErrorMessage,HRESULT hrErrorCode) {
15881    return This->lpVtbl->fatalError(This,pLocator,pErrorMessage,hrErrorCode);
15882}
15883static inline HRESULT ISAXErrorHandler_ignorableWarning(ISAXErrorHandler* This,ISAXLocator *pLocator,const WCHAR *pErrorMessage,HRESULT hrErrorCode) {
15884    return This->lpVtbl->ignorableWarning(This,pLocator,pErrorMessage,hrErrorCode);
15885}
15886#endif
15887#endif
15888
15889#endif
15890
15891
15892#endif  /* __ISAXErrorHandler_INTERFACE_DEFINED__ */
15893
15894/*****************************************************************************
15895 * ISAXLexicalHandler interface
15896 */
15897#ifndef __ISAXLexicalHandler_INTERFACE_DEFINED__
15898#define __ISAXLexicalHandler_INTERFACE_DEFINED__
15899
15900DEFINE_GUID(IID_ISAXLexicalHandler, 0x7f85d5f5, 0x47a8, 0x4497, 0xbd,0xa5, 0x84,0xba,0x04,0x81,0x9e,0xa6);
15901#if defined(__cplusplus) && !defined(CINTERFACE)
15902MIDL_INTERFACE("7f85d5f5-47a8-4497-bda5-84ba04819ea6")
15903ISAXLexicalHandler : public IUnknown
15904{
15905    virtual HRESULT STDMETHODCALLTYPE startDTD(
15906        const WCHAR *pName,
15907        int nName,
15908        const WCHAR *pPublicId,
15909        int nPublicId,
15910        const WCHAR *pSystemId,
15911        int nSystemId) = 0;
15912
15913    virtual HRESULT STDMETHODCALLTYPE endDTD(
15914        ) = 0;
15915
15916    virtual HRESULT STDMETHODCALLTYPE startEntity(
15917        const WCHAR *pName,
15918        int nName) = 0;
15919
15920    virtual HRESULT STDMETHODCALLTYPE endEntity(
15921        const WCHAR *pName,
15922        int nName) = 0;
15923
15924    virtual HRESULT STDMETHODCALLTYPE startCDATA(
15925        ) = 0;
15926
15927    virtual HRESULT STDMETHODCALLTYPE endCDATA(
15928        ) = 0;
15929
15930    virtual HRESULT STDMETHODCALLTYPE comment(
15931        const WCHAR *pChars,
15932        int nChars) = 0;
15933
15934};
15935#ifdef __CRT_UUID_DECL
15936__CRT_UUID_DECL(ISAXLexicalHandler, 0x7f85d5f5, 0x47a8, 0x4497, 0xbd,0xa5, 0x84,0xba,0x04,0x81,0x9e,0xa6)
15937#endif
15938#else
15939typedef struct ISAXLexicalHandlerVtbl {
15940    BEGIN_INTERFACE
15941
15942    /*** IUnknown methods ***/
15943    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
15944        ISAXLexicalHandler *This,
15945        REFIID riid,
15946        void **ppvObject);
15947
15948    ULONG (STDMETHODCALLTYPE *AddRef)(
15949        ISAXLexicalHandler *This);
15950
15951    ULONG (STDMETHODCALLTYPE *Release)(
15952        ISAXLexicalHandler *This);
15953
15954    /*** ISAXLexicalHandler methods ***/
15955    HRESULT (STDMETHODCALLTYPE *startDTD)(
15956        ISAXLexicalHandler *This,
15957        const WCHAR *pName,
15958        int nName,
15959        const WCHAR *pPublicId,
15960        int nPublicId,
15961        const WCHAR *pSystemId,
15962        int nSystemId);
15963
15964    HRESULT (STDMETHODCALLTYPE *endDTD)(
15965        ISAXLexicalHandler *This);
15966
15967    HRESULT (STDMETHODCALLTYPE *startEntity)(
15968        ISAXLexicalHandler *This,
15969        const WCHAR *pName,
15970        int nName);
15971
15972    HRESULT (STDMETHODCALLTYPE *endEntity)(
15973        ISAXLexicalHandler *This,
15974        const WCHAR *pName,
15975        int nName);
15976
15977    HRESULT (STDMETHODCALLTYPE *startCDATA)(
15978        ISAXLexicalHandler *This);
15979
15980    HRESULT (STDMETHODCALLTYPE *endCDATA)(
15981        ISAXLexicalHandler *This);
15982
15983    HRESULT (STDMETHODCALLTYPE *comment)(
15984        ISAXLexicalHandler *This,
15985        const WCHAR *pChars,
15986        int nChars);
15987
15988    END_INTERFACE
15989} ISAXLexicalHandlerVtbl;
15990
15991interface ISAXLexicalHandler {
15992    CONST_VTBL ISAXLexicalHandlerVtbl* lpVtbl;
15993};
15994
15995#ifdef COBJMACROS
15996#ifndef WIDL_C_INLINE_WRAPPERS
15997/*** IUnknown methods ***/
15998#define ISAXLexicalHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
15999#define ISAXLexicalHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
16000#define ISAXLexicalHandler_Release(This) (This)->lpVtbl->Release(This)
16001/*** ISAXLexicalHandler methods ***/
16002#define ISAXLexicalHandler_startDTD(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId) (This)->lpVtbl->startDTD(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId)
16003#define ISAXLexicalHandler_endDTD(This) (This)->lpVtbl->endDTD(This)
16004#define ISAXLexicalHandler_startEntity(This,pName,nName) (This)->lpVtbl->startEntity(This,pName,nName)
16005#define ISAXLexicalHandler_endEntity(This,pName,nName) (This)->lpVtbl->endEntity(This,pName,nName)
16006#define ISAXLexicalHandler_startCDATA(This) (This)->lpVtbl->startCDATA(This)
16007#define ISAXLexicalHandler_endCDATA(This) (This)->lpVtbl->endCDATA(This)
16008#define ISAXLexicalHandler_comment(This,pChars,nChars) (This)->lpVtbl->comment(This,pChars,nChars)
16009#else
16010/*** IUnknown methods ***/
16011static inline HRESULT ISAXLexicalHandler_QueryInterface(ISAXLexicalHandler* This,REFIID riid,void **ppvObject) {
16012    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16013}
16014static inline ULONG ISAXLexicalHandler_AddRef(ISAXLexicalHandler* This) {
16015    return This->lpVtbl->AddRef(This);
16016}
16017static inline ULONG ISAXLexicalHandler_Release(ISAXLexicalHandler* This) {
16018    return This->lpVtbl->Release(This);
16019}
16020/*** ISAXLexicalHandler methods ***/
16021static inline HRESULT ISAXLexicalHandler_startDTD(ISAXLexicalHandler* This,const WCHAR *pName,int nName,const WCHAR *pPublicId,int nPublicId,const WCHAR *pSystemId,int nSystemId) {
16022    return This->lpVtbl->startDTD(This,pName,nName,pPublicId,nPublicId,pSystemId,nSystemId);
16023}
16024static inline HRESULT ISAXLexicalHandler_endDTD(ISAXLexicalHandler* This) {
16025    return This->lpVtbl->endDTD(This);
16026}
16027static inline HRESULT ISAXLexicalHandler_startEntity(ISAXLexicalHandler* This,const WCHAR *pName,int nName) {
16028    return This->lpVtbl->startEntity(This,pName,nName);
16029}
16030static inline HRESULT ISAXLexicalHandler_endEntity(ISAXLexicalHandler* This,const WCHAR *pName,int nName) {
16031    return This->lpVtbl->endEntity(This,pName,nName);
16032}
16033static inline HRESULT ISAXLexicalHandler_startCDATA(ISAXLexicalHandler* This) {
16034    return This->lpVtbl->startCDATA(This);
16035}
16036static inline HRESULT ISAXLexicalHandler_endCDATA(ISAXLexicalHandler* This) {
16037    return This->lpVtbl->endCDATA(This);
16038}
16039static inline HRESULT ISAXLexicalHandler_comment(ISAXLexicalHandler* This,const WCHAR *pChars,int nChars) {
16040    return This->lpVtbl->comment(This,pChars,nChars);
16041}
16042#endif
16043#endif
16044
16045#endif
16046
16047
16048#endif  /* __ISAXLexicalHandler_INTERFACE_DEFINED__ */
16049
16050/*****************************************************************************
16051 * ISAXLocator interface
16052 */
16053#ifndef __ISAXLocator_INTERFACE_DEFINED__
16054#define __ISAXLocator_INTERFACE_DEFINED__
16055
16056DEFINE_GUID(IID_ISAXLocator, 0x9b7e472a, 0x0de4, 0x4640, 0xbf,0xf3, 0x84,0xd3,0x8a,0x05,0x1c,0x31);
16057#if defined(__cplusplus) && !defined(CINTERFACE)
16058MIDL_INTERFACE("9b7e472a-0de4-4640-bff3-84d38a051c31")
16059ISAXLocator : public IUnknown
16060{
16061    virtual HRESULT STDMETHODCALLTYPE getColumnNumber(
16062        int *nColumn) = 0;
16063
16064    virtual HRESULT STDMETHODCALLTYPE getLineNumber(
16065        int *nLine) = 0;
16066
16067    virtual HRESULT STDMETHODCALLTYPE getPublicId(
16068        const WCHAR **publicId) = 0;
16069
16070    virtual HRESULT STDMETHODCALLTYPE getSystemId(
16071        const WCHAR **systemId) = 0;
16072
16073};
16074#ifdef __CRT_UUID_DECL
16075__CRT_UUID_DECL(ISAXLocator, 0x9b7e472a, 0x0de4, 0x4640, 0xbf,0xf3, 0x84,0xd3,0x8a,0x05,0x1c,0x31)
16076#endif
16077#else
16078typedef struct ISAXLocatorVtbl {
16079    BEGIN_INTERFACE
16080
16081    /*** IUnknown methods ***/
16082    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16083        ISAXLocator *This,
16084        REFIID riid,
16085        void **ppvObject);
16086
16087    ULONG (STDMETHODCALLTYPE *AddRef)(
16088        ISAXLocator *This);
16089
16090    ULONG (STDMETHODCALLTYPE *Release)(
16091        ISAXLocator *This);
16092
16093    /*** ISAXLocator methods ***/
16094    HRESULT (STDMETHODCALLTYPE *getColumnNumber)(
16095        ISAXLocator *This,
16096        int *nColumn);
16097
16098    HRESULT (STDMETHODCALLTYPE *getLineNumber)(
16099        ISAXLocator *This,
16100        int *nLine);
16101
16102    HRESULT (STDMETHODCALLTYPE *getPublicId)(
16103        ISAXLocator *This,
16104        const WCHAR **publicId);
16105
16106    HRESULT (STDMETHODCALLTYPE *getSystemId)(
16107        ISAXLocator *This,
16108        const WCHAR **systemId);
16109
16110    END_INTERFACE
16111} ISAXLocatorVtbl;
16112
16113interface ISAXLocator {
16114    CONST_VTBL ISAXLocatorVtbl* lpVtbl;
16115};
16116
16117#ifdef COBJMACROS
16118#ifndef WIDL_C_INLINE_WRAPPERS
16119/*** IUnknown methods ***/
16120#define ISAXLocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16121#define ISAXLocator_AddRef(This) (This)->lpVtbl->AddRef(This)
16122#define ISAXLocator_Release(This) (This)->lpVtbl->Release(This)
16123/*** ISAXLocator methods ***/
16124#define ISAXLocator_getColumnNumber(This,nColumn) (This)->lpVtbl->getColumnNumber(This,nColumn)
16125#define ISAXLocator_getLineNumber(This,nLine) (This)->lpVtbl->getLineNumber(This,nLine)
16126#define ISAXLocator_getPublicId(This,publicId) (This)->lpVtbl->getPublicId(This,publicId)
16127#define ISAXLocator_getSystemId(This,systemId) (This)->lpVtbl->getSystemId(This,systemId)
16128#else
16129/*** IUnknown methods ***/
16130static inline HRESULT ISAXLocator_QueryInterface(ISAXLocator* This,REFIID riid,void **ppvObject) {
16131    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16132}
16133static inline ULONG ISAXLocator_AddRef(ISAXLocator* This) {
16134    return This->lpVtbl->AddRef(This);
16135}
16136static inline ULONG ISAXLocator_Release(ISAXLocator* This) {
16137    return This->lpVtbl->Release(This);
16138}
16139/*** ISAXLocator methods ***/
16140static inline HRESULT ISAXLocator_getColumnNumber(ISAXLocator* This,int *nColumn) {
16141    return This->lpVtbl->getColumnNumber(This,nColumn);
16142}
16143static inline HRESULT ISAXLocator_getLineNumber(ISAXLocator* This,int *nLine) {
16144    return This->lpVtbl->getLineNumber(This,nLine);
16145}
16146static inline HRESULT ISAXLocator_getPublicId(ISAXLocator* This,const WCHAR **publicId) {
16147    return This->lpVtbl->getPublicId(This,publicId);
16148}
16149static inline HRESULT ISAXLocator_getSystemId(ISAXLocator* This,const WCHAR **systemId) {
16150    return This->lpVtbl->getSystemId(This,systemId);
16151}
16152#endif
16153#endif
16154
16155#endif
16156
16157
16158#endif  /* __ISAXLocator_INTERFACE_DEFINED__ */
16159
16160/*****************************************************************************
16161 * ISAXXMLReader interface
16162 */
16163#ifndef __ISAXXMLReader_INTERFACE_DEFINED__
16164#define __ISAXXMLReader_INTERFACE_DEFINED__
16165
16166DEFINE_GUID(IID_ISAXXMLReader, 0xa4f96ed0, 0xf829, 0x476e, 0x81,0xc0, 0xcd,0xc7,0xbd,0x2a,0x08,0x02);
16167#if defined(__cplusplus) && !defined(CINTERFACE)
16168MIDL_INTERFACE("a4f96ed0-f829-476e-81c0-cdc7bd2a0802")
16169ISAXXMLReader : public IUnknown
16170{
16171    virtual HRESULT STDMETHODCALLTYPE getFeature(
16172        const WCHAR *pFeature,
16173        VARIANT_BOOL *pValue) = 0;
16174
16175    virtual HRESULT STDMETHODCALLTYPE putFeature(
16176        const WCHAR *pFeature,
16177        VARIANT_BOOL vfValue) = 0;
16178
16179    virtual HRESULT STDMETHODCALLTYPE getProperty(
16180        const WCHAR *pProp,
16181        VARIANT *pValue) = 0;
16182
16183    virtual HRESULT STDMETHODCALLTYPE putProperty(
16184        const WCHAR *pProp,
16185        VARIANT value) = 0;
16186
16187    virtual HRESULT STDMETHODCALLTYPE getEntityResolver(
16188        ISAXEntityResolver **ppEntityResolver) = 0;
16189
16190    virtual HRESULT STDMETHODCALLTYPE putEntityResolver(
16191        ISAXEntityResolver *pEntityResolver) = 0;
16192
16193    virtual HRESULT STDMETHODCALLTYPE getContentHandler(
16194        ISAXContentHandler **pContentHandler) = 0;
16195
16196    virtual HRESULT STDMETHODCALLTYPE putContentHandler(
16197        ISAXContentHandler *contentHandler) = 0;
16198
16199    virtual HRESULT STDMETHODCALLTYPE getDTDHandler(
16200        ISAXDTDHandler **pDTDHandler) = 0;
16201
16202    virtual HRESULT STDMETHODCALLTYPE putDTDHandler(
16203        ISAXDTDHandler *pDTDHandler) = 0;
16204
16205    virtual HRESULT STDMETHODCALLTYPE getErrorHandler(
16206        ISAXErrorHandler **pErrorHandler) = 0;
16207
16208    virtual HRESULT STDMETHODCALLTYPE putErrorHandler(
16209        ISAXErrorHandler *errorHandler) = 0;
16210
16211    virtual HRESULT STDMETHODCALLTYPE getBaseURL(
16212        const WCHAR **pBaseUrl) = 0;
16213
16214    virtual HRESULT STDMETHODCALLTYPE putBaseURL(
16215        const WCHAR *pBaseUrl) = 0;
16216
16217    virtual HRESULT STDMETHODCALLTYPE getSecureBaseURL(
16218        const WCHAR **pSecureBaseUrl) = 0;
16219
16220    virtual HRESULT STDMETHODCALLTYPE putSecureBaseURL(
16221        const WCHAR *secureBaseUrl) = 0;
16222
16223    virtual HRESULT STDMETHODCALLTYPE parse(
16224        VARIANT varInput) = 0;
16225
16226    virtual HRESULT STDMETHODCALLTYPE parseURL(
16227        const WCHAR *url) = 0;
16228
16229};
16230#ifdef __CRT_UUID_DECL
16231__CRT_UUID_DECL(ISAXXMLReader, 0xa4f96ed0, 0xf829, 0x476e, 0x81,0xc0, 0xcd,0xc7,0xbd,0x2a,0x08,0x02)
16232#endif
16233#else
16234typedef struct ISAXXMLReaderVtbl {
16235    BEGIN_INTERFACE
16236
16237    /*** IUnknown methods ***/
16238    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16239        ISAXXMLReader *This,
16240        REFIID riid,
16241        void **ppvObject);
16242
16243    ULONG (STDMETHODCALLTYPE *AddRef)(
16244        ISAXXMLReader *This);
16245
16246    ULONG (STDMETHODCALLTYPE *Release)(
16247        ISAXXMLReader *This);
16248
16249    /*** ISAXXMLReader methods ***/
16250    HRESULT (STDMETHODCALLTYPE *getFeature)(
16251        ISAXXMLReader *This,
16252        const WCHAR *pFeature,
16253        VARIANT_BOOL *pValue);
16254
16255    HRESULT (STDMETHODCALLTYPE *putFeature)(
16256        ISAXXMLReader *This,
16257        const WCHAR *pFeature,
16258        VARIANT_BOOL vfValue);
16259
16260    HRESULT (STDMETHODCALLTYPE *getProperty)(
16261        ISAXXMLReader *This,
16262        const WCHAR *pProp,
16263        VARIANT *pValue);
16264
16265    HRESULT (STDMETHODCALLTYPE *putProperty)(
16266        ISAXXMLReader *This,
16267        const WCHAR *pProp,
16268        VARIANT value);
16269
16270    HRESULT (STDMETHODCALLTYPE *getEntityResolver)(
16271        ISAXXMLReader *This,
16272        ISAXEntityResolver **ppEntityResolver);
16273
16274    HRESULT (STDMETHODCALLTYPE *putEntityResolver)(
16275        ISAXXMLReader *This,
16276        ISAXEntityResolver *pEntityResolver);
16277
16278    HRESULT (STDMETHODCALLTYPE *getContentHandler)(
16279        ISAXXMLReader *This,
16280        ISAXContentHandler **pContentHandler);
16281
16282    HRESULT (STDMETHODCALLTYPE *putContentHandler)(
16283        ISAXXMLReader *This,
16284        ISAXContentHandler *contentHandler);
16285
16286    HRESULT (STDMETHODCALLTYPE *getDTDHandler)(
16287        ISAXXMLReader *This,
16288        ISAXDTDHandler **pDTDHandler);
16289
16290    HRESULT (STDMETHODCALLTYPE *putDTDHandler)(
16291        ISAXXMLReader *This,
16292        ISAXDTDHandler *pDTDHandler);
16293
16294    HRESULT (STDMETHODCALLTYPE *getErrorHandler)(
16295        ISAXXMLReader *This,
16296        ISAXErrorHandler **pErrorHandler);
16297
16298    HRESULT (STDMETHODCALLTYPE *putErrorHandler)(
16299        ISAXXMLReader *This,
16300        ISAXErrorHandler *errorHandler);
16301
16302    HRESULT (STDMETHODCALLTYPE *getBaseURL)(
16303        ISAXXMLReader *This,
16304        const WCHAR **pBaseUrl);
16305
16306    HRESULT (STDMETHODCALLTYPE *putBaseURL)(
16307        ISAXXMLReader *This,
16308        const WCHAR *pBaseUrl);
16309
16310    HRESULT (STDMETHODCALLTYPE *getSecureBaseURL)(
16311        ISAXXMLReader *This,
16312        const WCHAR **pSecureBaseUrl);
16313
16314    HRESULT (STDMETHODCALLTYPE *putSecureBaseURL)(
16315        ISAXXMLReader *This,
16316        const WCHAR *secureBaseUrl);
16317
16318    HRESULT (STDMETHODCALLTYPE *parse)(
16319        ISAXXMLReader *This,
16320        VARIANT varInput);
16321
16322    HRESULT (STDMETHODCALLTYPE *parseURL)(
16323        ISAXXMLReader *This,
16324        const WCHAR *url);
16325
16326    END_INTERFACE
16327} ISAXXMLReaderVtbl;
16328
16329interface ISAXXMLReader {
16330    CONST_VTBL ISAXXMLReaderVtbl* lpVtbl;
16331};
16332
16333#ifdef COBJMACROS
16334#ifndef WIDL_C_INLINE_WRAPPERS
16335/*** IUnknown methods ***/
16336#define ISAXXMLReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16337#define ISAXXMLReader_AddRef(This) (This)->lpVtbl->AddRef(This)
16338#define ISAXXMLReader_Release(This) (This)->lpVtbl->Release(This)
16339/*** ISAXXMLReader methods ***/
16340#define ISAXXMLReader_getFeature(This,pFeature,pValue) (This)->lpVtbl->getFeature(This,pFeature,pValue)
16341#define ISAXXMLReader_putFeature(This,pFeature,vfValue) (This)->lpVtbl->putFeature(This,pFeature,vfValue)
16342#define ISAXXMLReader_getProperty(This,pProp,pValue) (This)->lpVtbl->getProperty(This,pProp,pValue)
16343#define ISAXXMLReader_putProperty(This,pProp,value) (This)->lpVtbl->putProperty(This,pProp,value)
16344#define ISAXXMLReader_getEntityResolver(This,ppEntityResolver) (This)->lpVtbl->getEntityResolver(This,ppEntityResolver)
16345#define ISAXXMLReader_putEntityResolver(This,pEntityResolver) (This)->lpVtbl->putEntityResolver(This,pEntityResolver)
16346#define ISAXXMLReader_getContentHandler(This,pContentHandler) (This)->lpVtbl->getContentHandler(This,pContentHandler)
16347#define ISAXXMLReader_putContentHandler(This,contentHandler) (This)->lpVtbl->putContentHandler(This,contentHandler)
16348#define ISAXXMLReader_getDTDHandler(This,pDTDHandler) (This)->lpVtbl->getDTDHandler(This,pDTDHandler)
16349#define ISAXXMLReader_putDTDHandler(This,pDTDHandler) (This)->lpVtbl->putDTDHandler(This,pDTDHandler)
16350#define ISAXXMLReader_getErrorHandler(This,pErrorHandler) (This)->lpVtbl->getErrorHandler(This,pErrorHandler)
16351#define ISAXXMLReader_putErrorHandler(This,errorHandler) (This)->lpVtbl->putErrorHandler(This,errorHandler)
16352#define ISAXXMLReader_getBaseURL(This,pBaseUrl) (This)->lpVtbl->getBaseURL(This,pBaseUrl)
16353#define ISAXXMLReader_putBaseURL(This,pBaseUrl) (This)->lpVtbl->putBaseURL(This,pBaseUrl)
16354#define ISAXXMLReader_getSecureBaseURL(This,pSecureBaseUrl) (This)->lpVtbl->getSecureBaseURL(This,pSecureBaseUrl)
16355#define ISAXXMLReader_putSecureBaseURL(This,secureBaseUrl) (This)->lpVtbl->putSecureBaseURL(This,secureBaseUrl)
16356#define ISAXXMLReader_parse(This,varInput) (This)->lpVtbl->parse(This,varInput)
16357#define ISAXXMLReader_parseURL(This,url) (This)->lpVtbl->parseURL(This,url)
16358#else
16359/*** IUnknown methods ***/
16360static inline HRESULT ISAXXMLReader_QueryInterface(ISAXXMLReader* This,REFIID riid,void **ppvObject) {
16361    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16362}
16363static inline ULONG ISAXXMLReader_AddRef(ISAXXMLReader* This) {
16364    return This->lpVtbl->AddRef(This);
16365}
16366static inline ULONG ISAXXMLReader_Release(ISAXXMLReader* This) {
16367    return This->lpVtbl->Release(This);
16368}
16369/*** ISAXXMLReader methods ***/
16370static inline HRESULT ISAXXMLReader_getFeature(ISAXXMLReader* This,const WCHAR *pFeature,VARIANT_BOOL *pValue) {
16371    return This->lpVtbl->getFeature(This,pFeature,pValue);
16372}
16373static inline HRESULT ISAXXMLReader_putFeature(ISAXXMLReader* This,const WCHAR *pFeature,VARIANT_BOOL vfValue) {
16374    return This->lpVtbl->putFeature(This,pFeature,vfValue);
16375}
16376static inline HRESULT ISAXXMLReader_getProperty(ISAXXMLReader* This,const WCHAR *pProp,VARIANT *pValue) {
16377    return This->lpVtbl->getProperty(This,pProp,pValue);
16378}
16379static inline HRESULT ISAXXMLReader_putProperty(ISAXXMLReader* This,const WCHAR *pProp,VARIANT value) {
16380    return This->lpVtbl->putProperty(This,pProp,value);
16381}
16382static inline HRESULT ISAXXMLReader_getEntityResolver(ISAXXMLReader* This,ISAXEntityResolver **ppEntityResolver) {
16383    return This->lpVtbl->getEntityResolver(This,ppEntityResolver);
16384}
16385static inline HRESULT ISAXXMLReader_putEntityResolver(ISAXXMLReader* This,ISAXEntityResolver *pEntityResolver) {
16386    return This->lpVtbl->putEntityResolver(This,pEntityResolver);
16387}
16388static inline HRESULT ISAXXMLReader_getContentHandler(ISAXXMLReader* This,ISAXContentHandler **pContentHandler) {
16389    return This->lpVtbl->getContentHandler(This,pContentHandler);
16390}
16391static inline HRESULT ISAXXMLReader_putContentHandler(ISAXXMLReader* This,ISAXContentHandler *contentHandler) {
16392    return This->lpVtbl->putContentHandler(This,contentHandler);
16393}
16394static inline HRESULT ISAXXMLReader_getDTDHandler(ISAXXMLReader* This,ISAXDTDHandler **pDTDHandler) {
16395    return This->lpVtbl->getDTDHandler(This,pDTDHandler);
16396}
16397static inline HRESULT ISAXXMLReader_putDTDHandler(ISAXXMLReader* This,ISAXDTDHandler *pDTDHandler) {
16398    return This->lpVtbl->putDTDHandler(This,pDTDHandler);
16399}
16400static inline HRESULT ISAXXMLReader_getErrorHandler(ISAXXMLReader* This,ISAXErrorHandler **pErrorHandler) {
16401    return This->lpVtbl->getErrorHandler(This,pErrorHandler);
16402}
16403static inline HRESULT ISAXXMLReader_putErrorHandler(ISAXXMLReader* This,ISAXErrorHandler *errorHandler) {
16404    return This->lpVtbl->putErrorHandler(This,errorHandler);
16405}
16406static inline HRESULT ISAXXMLReader_getBaseURL(ISAXXMLReader* This,const WCHAR **pBaseUrl) {
16407    return This->lpVtbl->getBaseURL(This,pBaseUrl);
16408}
16409static inline HRESULT ISAXXMLReader_putBaseURL(ISAXXMLReader* This,const WCHAR *pBaseUrl) {
16410    return This->lpVtbl->putBaseURL(This,pBaseUrl);
16411}
16412static inline HRESULT ISAXXMLReader_getSecureBaseURL(ISAXXMLReader* This,const WCHAR **pSecureBaseUrl) {
16413    return This->lpVtbl->getSecureBaseURL(This,pSecureBaseUrl);
16414}
16415static inline HRESULT ISAXXMLReader_putSecureBaseURL(ISAXXMLReader* This,const WCHAR *secureBaseUrl) {
16416    return This->lpVtbl->putSecureBaseURL(This,secureBaseUrl);
16417}
16418static inline HRESULT ISAXXMLReader_parse(ISAXXMLReader* This,VARIANT varInput) {
16419    return This->lpVtbl->parse(This,varInput);
16420}
16421static inline HRESULT ISAXXMLReader_parseURL(ISAXXMLReader* This,const WCHAR *url) {
16422    return This->lpVtbl->parseURL(This,url);
16423}
16424#endif
16425#endif
16426
16427#endif
16428
16429
16430#endif  /* __ISAXXMLReader_INTERFACE_DEFINED__ */
16431
16432/*****************************************************************************
16433 * ISAXXMLFilter interface
16434 */
16435#ifndef __ISAXXMLFilter_INTERFACE_DEFINED__
16436#define __ISAXXMLFilter_INTERFACE_DEFINED__
16437
16438DEFINE_GUID(IID_ISAXXMLFilter, 0x70409222, 0xca09, 0x4475, 0xac,0xb8, 0x40,0x31,0x2f,0xe8,0xd1,0x45);
16439#if defined(__cplusplus) && !defined(CINTERFACE)
16440MIDL_INTERFACE("70409222-ca09-4475-acb8-40312fe8d145")
16441ISAXXMLFilter : public ISAXXMLReader
16442{
16443    virtual HRESULT STDMETHODCALLTYPE getParent(
16444        ISAXXMLReader **pReader) = 0;
16445
16446    virtual HRESULT STDMETHODCALLTYPE putParent(
16447        ISAXXMLReader *reader) = 0;
16448
16449};
16450#ifdef __CRT_UUID_DECL
16451__CRT_UUID_DECL(ISAXXMLFilter, 0x70409222, 0xca09, 0x4475, 0xac,0xb8, 0x40,0x31,0x2f,0xe8,0xd1,0x45)
16452#endif
16453#else
16454typedef struct ISAXXMLFilterVtbl {
16455    BEGIN_INTERFACE
16456
16457    /*** IUnknown methods ***/
16458    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16459        ISAXXMLFilter *This,
16460        REFIID riid,
16461        void **ppvObject);
16462
16463    ULONG (STDMETHODCALLTYPE *AddRef)(
16464        ISAXXMLFilter *This);
16465
16466    ULONG (STDMETHODCALLTYPE *Release)(
16467        ISAXXMLFilter *This);
16468
16469    /*** ISAXXMLReader methods ***/
16470    HRESULT (STDMETHODCALLTYPE *getFeature)(
16471        ISAXXMLFilter *This,
16472        const WCHAR *pFeature,
16473        VARIANT_BOOL *pValue);
16474
16475    HRESULT (STDMETHODCALLTYPE *putFeature)(
16476        ISAXXMLFilter *This,
16477        const WCHAR *pFeature,
16478        VARIANT_BOOL vfValue);
16479
16480    HRESULT (STDMETHODCALLTYPE *getProperty)(
16481        ISAXXMLFilter *This,
16482        const WCHAR *pProp,
16483        VARIANT *pValue);
16484
16485    HRESULT (STDMETHODCALLTYPE *putProperty)(
16486        ISAXXMLFilter *This,
16487        const WCHAR *pProp,
16488        VARIANT value);
16489
16490    HRESULT (STDMETHODCALLTYPE *getEntityResolver)(
16491        ISAXXMLFilter *This,
16492        ISAXEntityResolver **ppEntityResolver);
16493
16494    HRESULT (STDMETHODCALLTYPE *putEntityResolver)(
16495        ISAXXMLFilter *This,
16496        ISAXEntityResolver *pEntityResolver);
16497
16498    HRESULT (STDMETHODCALLTYPE *getContentHandler)(
16499        ISAXXMLFilter *This,
16500        ISAXContentHandler **pContentHandler);
16501
16502    HRESULT (STDMETHODCALLTYPE *putContentHandler)(
16503        ISAXXMLFilter *This,
16504        ISAXContentHandler *contentHandler);
16505
16506    HRESULT (STDMETHODCALLTYPE *getDTDHandler)(
16507        ISAXXMLFilter *This,
16508        ISAXDTDHandler **pDTDHandler);
16509
16510    HRESULT (STDMETHODCALLTYPE *putDTDHandler)(
16511        ISAXXMLFilter *This,
16512        ISAXDTDHandler *pDTDHandler);
16513
16514    HRESULT (STDMETHODCALLTYPE *getErrorHandler)(
16515        ISAXXMLFilter *This,
16516        ISAXErrorHandler **pErrorHandler);
16517
16518    HRESULT (STDMETHODCALLTYPE *putErrorHandler)(
16519        ISAXXMLFilter *This,
16520        ISAXErrorHandler *errorHandler);
16521
16522    HRESULT (STDMETHODCALLTYPE *getBaseURL)(
16523        ISAXXMLFilter *This,
16524        const WCHAR **pBaseUrl);
16525
16526    HRESULT (STDMETHODCALLTYPE *putBaseURL)(
16527        ISAXXMLFilter *This,
16528        const WCHAR *pBaseUrl);
16529
16530    HRESULT (STDMETHODCALLTYPE *getSecureBaseURL)(
16531        ISAXXMLFilter *This,
16532        const WCHAR **pSecureBaseUrl);
16533
16534    HRESULT (STDMETHODCALLTYPE *putSecureBaseURL)(
16535        ISAXXMLFilter *This,
16536        const WCHAR *secureBaseUrl);
16537
16538    HRESULT (STDMETHODCALLTYPE *parse)(
16539        ISAXXMLFilter *This,
16540        VARIANT varInput);
16541
16542    HRESULT (STDMETHODCALLTYPE *parseURL)(
16543        ISAXXMLFilter *This,
16544        const WCHAR *url);
16545
16546    /*** ISAXXMLFilter methods ***/
16547    HRESULT (STDMETHODCALLTYPE *getParent)(
16548        ISAXXMLFilter *This,
16549        ISAXXMLReader **pReader);
16550
16551    HRESULT (STDMETHODCALLTYPE *putParent)(
16552        ISAXXMLFilter *This,
16553        ISAXXMLReader *reader);
16554
16555    END_INTERFACE
16556} ISAXXMLFilterVtbl;
16557
16558interface ISAXXMLFilter {
16559    CONST_VTBL ISAXXMLFilterVtbl* lpVtbl;
16560};
16561
16562#ifdef COBJMACROS
16563#ifndef WIDL_C_INLINE_WRAPPERS
16564/*** IUnknown methods ***/
16565#define ISAXXMLFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16566#define ISAXXMLFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
16567#define ISAXXMLFilter_Release(This) (This)->lpVtbl->Release(This)
16568/*** ISAXXMLReader methods ***/
16569#define ISAXXMLFilter_getFeature(This,pFeature,pValue) (This)->lpVtbl->getFeature(This,pFeature,pValue)
16570#define ISAXXMLFilter_putFeature(This,pFeature,vfValue) (This)->lpVtbl->putFeature(This,pFeature,vfValue)
16571#define ISAXXMLFilter_getProperty(This,pProp,pValue) (This)->lpVtbl->getProperty(This,pProp,pValue)
16572#define ISAXXMLFilter_putProperty(This,pProp,value) (This)->lpVtbl->putProperty(This,pProp,value)
16573#define ISAXXMLFilter_getEntityResolver(This,ppEntityResolver) (This)->lpVtbl->getEntityResolver(This,ppEntityResolver)
16574#define ISAXXMLFilter_putEntityResolver(This,pEntityResolver) (This)->lpVtbl->putEntityResolver(This,pEntityResolver)
16575#define ISAXXMLFilter_getContentHandler(This,pContentHandler) (This)->lpVtbl->getContentHandler(This,pContentHandler)
16576#define ISAXXMLFilter_putContentHandler(This,contentHandler) (This)->lpVtbl->putContentHandler(This,contentHandler)
16577#define ISAXXMLFilter_getDTDHandler(This,pDTDHandler) (This)->lpVtbl->getDTDHandler(This,pDTDHandler)
16578#define ISAXXMLFilter_putDTDHandler(This,pDTDHandler) (This)->lpVtbl->putDTDHandler(This,pDTDHandler)
16579#define ISAXXMLFilter_getErrorHandler(This,pErrorHandler) (This)->lpVtbl->getErrorHandler(This,pErrorHandler)
16580#define ISAXXMLFilter_putErrorHandler(This,errorHandler) (This)->lpVtbl->putErrorHandler(This,errorHandler)
16581#define ISAXXMLFilter_getBaseURL(This,pBaseUrl) (This)->lpVtbl->getBaseURL(This,pBaseUrl)
16582#define ISAXXMLFilter_putBaseURL(This,pBaseUrl) (This)->lpVtbl->putBaseURL(This,pBaseUrl)
16583#define ISAXXMLFilter_getSecureBaseURL(This,pSecureBaseUrl) (This)->lpVtbl->getSecureBaseURL(This,pSecureBaseUrl)
16584#define ISAXXMLFilter_putSecureBaseURL(This,secureBaseUrl) (This)->lpVtbl->putSecureBaseURL(This,secureBaseUrl)
16585#define ISAXXMLFilter_parse(This,varInput) (This)->lpVtbl->parse(This,varInput)
16586#define ISAXXMLFilter_parseURL(This,url) (This)->lpVtbl->parseURL(This,url)
16587/*** ISAXXMLFilter methods ***/
16588#define ISAXXMLFilter_getParent(This,pReader) (This)->lpVtbl->getParent(This,pReader)
16589#define ISAXXMLFilter_putParent(This,reader) (This)->lpVtbl->putParent(This,reader)
16590#else
16591/*** IUnknown methods ***/
16592static inline HRESULT ISAXXMLFilter_QueryInterface(ISAXXMLFilter* This,REFIID riid,void **ppvObject) {
16593    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16594}
16595static inline ULONG ISAXXMLFilter_AddRef(ISAXXMLFilter* This) {
16596    return This->lpVtbl->AddRef(This);
16597}
16598static inline ULONG ISAXXMLFilter_Release(ISAXXMLFilter* This) {
16599    return This->lpVtbl->Release(This);
16600}
16601/*** ISAXXMLReader methods ***/
16602static inline HRESULT ISAXXMLFilter_getFeature(ISAXXMLFilter* This,const WCHAR *pFeature,VARIANT_BOOL *pValue) {
16603    return This->lpVtbl->getFeature(This,pFeature,pValue);
16604}
16605static inline HRESULT ISAXXMLFilter_putFeature(ISAXXMLFilter* This,const WCHAR *pFeature,VARIANT_BOOL vfValue) {
16606    return This->lpVtbl->putFeature(This,pFeature,vfValue);
16607}
16608static inline HRESULT ISAXXMLFilter_getProperty(ISAXXMLFilter* This,const WCHAR *pProp,VARIANT *pValue) {
16609    return This->lpVtbl->getProperty(This,pProp,pValue);
16610}
16611static inline HRESULT ISAXXMLFilter_putProperty(ISAXXMLFilter* This,const WCHAR *pProp,VARIANT value) {
16612    return This->lpVtbl->putProperty(This,pProp,value);
16613}
16614static inline HRESULT ISAXXMLFilter_getEntityResolver(ISAXXMLFilter* This,ISAXEntityResolver **ppEntityResolver) {
16615    return This->lpVtbl->getEntityResolver(This,ppEntityResolver);
16616}
16617static inline HRESULT ISAXXMLFilter_putEntityResolver(ISAXXMLFilter* This,ISAXEntityResolver *pEntityResolver) {
16618    return This->lpVtbl->putEntityResolver(This,pEntityResolver);
16619}
16620static inline HRESULT ISAXXMLFilter_getContentHandler(ISAXXMLFilter* This,ISAXContentHandler **pContentHandler) {
16621    return This->lpVtbl->getContentHandler(This,pContentHandler);
16622}
16623static inline HRESULT ISAXXMLFilter_putContentHandler(ISAXXMLFilter* This,ISAXContentHandler *contentHandler) {
16624    return This->lpVtbl->putContentHandler(This,contentHandler);
16625}
16626static inline HRESULT ISAXXMLFilter_getDTDHandler(ISAXXMLFilter* This,ISAXDTDHandler **pDTDHandler) {
16627    return This->lpVtbl->getDTDHandler(This,pDTDHandler);
16628}
16629static inline HRESULT ISAXXMLFilter_putDTDHandler(ISAXXMLFilter* This,ISAXDTDHandler *pDTDHandler) {
16630    return This->lpVtbl->putDTDHandler(This,pDTDHandler);
16631}
16632static inline HRESULT ISAXXMLFilter_getErrorHandler(ISAXXMLFilter* This,ISAXErrorHandler **pErrorHandler) {
16633    return This->lpVtbl->getErrorHandler(This,pErrorHandler);
16634}
16635static inline HRESULT ISAXXMLFilter_putErrorHandler(ISAXXMLFilter* This,ISAXErrorHandler *errorHandler) {
16636    return This->lpVtbl->putErrorHandler(This,errorHandler);
16637}
16638static inline HRESULT ISAXXMLFilter_getBaseURL(ISAXXMLFilter* This,const WCHAR **pBaseUrl) {
16639    return This->lpVtbl->getBaseURL(This,pBaseUrl);
16640}
16641static inline HRESULT ISAXXMLFilter_putBaseURL(ISAXXMLFilter* This,const WCHAR *pBaseUrl) {
16642    return This->lpVtbl->putBaseURL(This,pBaseUrl);
16643}
16644static inline HRESULT ISAXXMLFilter_getSecureBaseURL(ISAXXMLFilter* This,const WCHAR **pSecureBaseUrl) {
16645    return This->lpVtbl->getSecureBaseURL(This,pSecureBaseUrl);
16646}
16647static inline HRESULT ISAXXMLFilter_putSecureBaseURL(ISAXXMLFilter* This,const WCHAR *secureBaseUrl) {
16648    return This->lpVtbl->putSecureBaseURL(This,secureBaseUrl);
16649}
16650static inline HRESULT ISAXXMLFilter_parse(ISAXXMLFilter* This,VARIANT varInput) {
16651    return This->lpVtbl->parse(This,varInput);
16652}
16653static inline HRESULT ISAXXMLFilter_parseURL(ISAXXMLFilter* This,const WCHAR *url) {
16654    return This->lpVtbl->parseURL(This,url);
16655}
16656/*** ISAXXMLFilter methods ***/
16657static inline HRESULT ISAXXMLFilter_getParent(ISAXXMLFilter* This,ISAXXMLReader **pReader) {
16658    return This->lpVtbl->getParent(This,pReader);
16659}
16660static inline HRESULT ISAXXMLFilter_putParent(ISAXXMLFilter* This,ISAXXMLReader *reader) {
16661    return This->lpVtbl->putParent(This,reader);
16662}
16663#endif
16664#endif
16665
16666#endif
16667
16668
16669#endif  /* __ISAXXMLFilter_INTERFACE_DEFINED__ */
16670
16671/*****************************************************************************
16672 * IVBSAXAttributes interface
16673 */
16674#ifndef __IVBSAXAttributes_INTERFACE_DEFINED__
16675#define __IVBSAXAttributes_INTERFACE_DEFINED__
16676
16677DEFINE_GUID(IID_IVBSAXAttributes, 0x10dc0586, 0x132b, 0x4cac, 0x8b,0xb3, 0xdb,0x00,0xac,0x8b,0x7e,0xe0);
16678#if defined(__cplusplus) && !defined(CINTERFACE)
16679MIDL_INTERFACE("10dc0586-132b-4cac-8bb3-db00ac8b7ee0")
16680IVBSAXAttributes : public IDispatch
16681{
16682    virtual HRESULT STDMETHODCALLTYPE get_length(
16683        int *nLength) = 0;
16684
16685    virtual HRESULT STDMETHODCALLTYPE getURI(
16686        int nIndex,
16687        BSTR *uri) = 0;
16688
16689    virtual HRESULT STDMETHODCALLTYPE getLocalName(
16690        int nIndex,
16691        BSTR *localName) = 0;
16692
16693    virtual HRESULT STDMETHODCALLTYPE getQName(
16694        int nIndex,
16695        BSTR *QName) = 0;
16696
16697    virtual HRESULT STDMETHODCALLTYPE getIndexFromName(
16698        BSTR uri,
16699        BSTR localName,
16700        int *nIndex) = 0;
16701
16702    virtual HRESULT STDMETHODCALLTYPE getIndexFromQName(
16703        BSTR QName,
16704        int *nIndex) = 0;
16705
16706    virtual HRESULT STDMETHODCALLTYPE getType(
16707        int nIndex,
16708        BSTR *type) = 0;
16709
16710    virtual HRESULT STDMETHODCALLTYPE getTypeFromName(
16711        BSTR uri,
16712        BSTR localName,
16713        BSTR *type) = 0;
16714
16715    virtual HRESULT STDMETHODCALLTYPE getTypeFromQName(
16716        BSTR QName,
16717        BSTR *type) = 0;
16718
16719    virtual HRESULT STDMETHODCALLTYPE getValue(
16720        int nIndex,
16721        BSTR *value) = 0;
16722
16723    virtual HRESULT STDMETHODCALLTYPE getValueFromName(
16724        BSTR uri,
16725        BSTR localName,
16726        BSTR *value) = 0;
16727
16728    virtual HRESULT STDMETHODCALLTYPE getValueFromQName(
16729        BSTR QName,
16730        BSTR *value) = 0;
16731
16732};
16733#ifdef __CRT_UUID_DECL
16734__CRT_UUID_DECL(IVBSAXAttributes, 0x10dc0586, 0x132b, 0x4cac, 0x8b,0xb3, 0xdb,0x00,0xac,0x8b,0x7e,0xe0)
16735#endif
16736#else
16737typedef struct IVBSAXAttributesVtbl {
16738    BEGIN_INTERFACE
16739
16740    /*** IUnknown methods ***/
16741    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
16742        IVBSAXAttributes *This,
16743        REFIID riid,
16744        void **ppvObject);
16745
16746    ULONG (STDMETHODCALLTYPE *AddRef)(
16747        IVBSAXAttributes *This);
16748
16749    ULONG (STDMETHODCALLTYPE *Release)(
16750        IVBSAXAttributes *This);
16751
16752    /*** IDispatch methods ***/
16753    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
16754        IVBSAXAttributes *This,
16755        UINT *pctinfo);
16756
16757    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
16758        IVBSAXAttributes *This,
16759        UINT iTInfo,
16760        LCID lcid,
16761        ITypeInfo **ppTInfo);
16762
16763    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
16764        IVBSAXAttributes *This,
16765        REFIID riid,
16766        LPOLESTR *rgszNames,
16767        UINT cNames,
16768        LCID lcid,
16769        DISPID *rgDispId);
16770
16771    HRESULT (STDMETHODCALLTYPE *Invoke)(
16772        IVBSAXAttributes *This,
16773        DISPID dispIdMember,
16774        REFIID riid,
16775        LCID lcid,
16776        WORD wFlags,
16777        DISPPARAMS *pDispParams,
16778        VARIANT *pVarResult,
16779        EXCEPINFO *pExcepInfo,
16780        UINT *puArgErr);
16781
16782    /*** IVBSAXAttributes methods ***/
16783    HRESULT (STDMETHODCALLTYPE *get_length)(
16784        IVBSAXAttributes *This,
16785        int *nLength);
16786
16787    HRESULT (STDMETHODCALLTYPE *getURI)(
16788        IVBSAXAttributes *This,
16789        int nIndex,
16790        BSTR *uri);
16791
16792    HRESULT (STDMETHODCALLTYPE *getLocalName)(
16793        IVBSAXAttributes *This,
16794        int nIndex,
16795        BSTR *localName);
16796
16797    HRESULT (STDMETHODCALLTYPE *getQName)(
16798        IVBSAXAttributes *This,
16799        int nIndex,
16800        BSTR *QName);
16801
16802    HRESULT (STDMETHODCALLTYPE *getIndexFromName)(
16803        IVBSAXAttributes *This,
16804        BSTR uri,
16805        BSTR localName,
16806        int *nIndex);
16807
16808    HRESULT (STDMETHODCALLTYPE *getIndexFromQName)(
16809        IVBSAXAttributes *This,
16810        BSTR QName,
16811        int *nIndex);
16812
16813    HRESULT (STDMETHODCALLTYPE *getType)(
16814        IVBSAXAttributes *This,
16815        int nIndex,
16816        BSTR *type);
16817
16818    HRESULT (STDMETHODCALLTYPE *getTypeFromName)(
16819        IVBSAXAttributes *This,
16820        BSTR uri,
16821        BSTR localName,
16822        BSTR *type);
16823
16824    HRESULT (STDMETHODCALLTYPE *getTypeFromQName)(
16825        IVBSAXAttributes *This,
16826        BSTR QName,
16827        BSTR *type);
16828
16829    HRESULT (STDMETHODCALLTYPE *getValue)(
16830        IVBSAXAttributes *This,
16831        int nIndex,
16832        BSTR *value);
16833
16834    HRESULT (STDMETHODCALLTYPE *getValueFromName)(
16835        IVBSAXAttributes *This,
16836        BSTR uri,
16837        BSTR localName,
16838        BSTR *value);
16839
16840    HRESULT (STDMETHODCALLTYPE *getValueFromQName)(
16841        IVBSAXAttributes *This,
16842        BSTR QName,
16843        BSTR *value);
16844
16845    END_INTERFACE
16846} IVBSAXAttributesVtbl;
16847
16848interface IVBSAXAttributes {
16849    CONST_VTBL IVBSAXAttributesVtbl* lpVtbl;
16850};
16851
16852#ifdef COBJMACROS
16853#ifndef WIDL_C_INLINE_WRAPPERS
16854/*** IUnknown methods ***/
16855#define IVBSAXAttributes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
16856#define IVBSAXAttributes_AddRef(This) (This)->lpVtbl->AddRef(This)
16857#define IVBSAXAttributes_Release(This) (This)->lpVtbl->Release(This)
16858/*** IDispatch methods ***/
16859#define IVBSAXAttributes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
16860#define IVBSAXAttributes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
16861#define IVBSAXAttributes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
16862#define IVBSAXAttributes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
16863/*** IVBSAXAttributes methods ***/
16864#define IVBSAXAttributes_get_length(This,nLength) (This)->lpVtbl->get_length(This,nLength)
16865#define IVBSAXAttributes_getURI(This,nIndex,uri) (This)->lpVtbl->getURI(This,nIndex,uri)
16866#define IVBSAXAttributes_getLocalName(This,nIndex,localName) (This)->lpVtbl->getLocalName(This,nIndex,localName)
16867#define IVBSAXAttributes_getQName(This,nIndex,QName) (This)->lpVtbl->getQName(This,nIndex,QName)
16868#define IVBSAXAttributes_getIndexFromName(This,uri,localName,nIndex) (This)->lpVtbl->getIndexFromName(This,uri,localName,nIndex)
16869#define IVBSAXAttributes_getIndexFromQName(This,QName,nIndex) (This)->lpVtbl->getIndexFromQName(This,QName,nIndex)
16870#define IVBSAXAttributes_getType(This,nIndex,type) (This)->lpVtbl->getType(This,nIndex,type)
16871#define IVBSAXAttributes_getTypeFromName(This,uri,localName,type) (This)->lpVtbl->getTypeFromName(This,uri,localName,type)
16872#define IVBSAXAttributes_getTypeFromQName(This,QName,type) (This)->lpVtbl->getTypeFromQName(This,QName,type)
16873#define IVBSAXAttributes_getValue(This,nIndex,value) (This)->lpVtbl->getValue(This,nIndex,value)
16874#define IVBSAXAttributes_getValueFromName(This,uri,localName,value) (This)->lpVtbl->getValueFromName(This,uri,localName,value)
16875#define IVBSAXAttributes_getValueFromQName(This,QName,value) (This)->lpVtbl->getValueFromQName(This,QName,value)
16876#else
16877/*** IUnknown methods ***/
16878static inline HRESULT IVBSAXAttributes_QueryInterface(IVBSAXAttributes* This,REFIID riid,void **ppvObject) {
16879    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
16880}
16881static inline ULONG IVBSAXAttributes_AddRef(IVBSAXAttributes* This) {
16882    return This->lpVtbl->AddRef(This);
16883}
16884static inline ULONG IVBSAXAttributes_Release(IVBSAXAttributes* This) {
16885    return This->lpVtbl->Release(This);
16886}
16887/*** IDispatch methods ***/
16888static inline HRESULT IVBSAXAttributes_GetTypeInfoCount(IVBSAXAttributes* This,UINT *pctinfo) {
16889    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
16890}
16891static inline HRESULT IVBSAXAttributes_GetTypeInfo(IVBSAXAttributes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
16892    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
16893}
16894static inline HRESULT IVBSAXAttributes_GetIDsOfNames(IVBSAXAttributes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
16895    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
16896}
16897static inline HRESULT IVBSAXAttributes_Invoke(IVBSAXAttributes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
16898    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
16899}
16900/*** IVBSAXAttributes methods ***/
16901static inline HRESULT IVBSAXAttributes_get_length(IVBSAXAttributes* This,int *nLength) {
16902    return This->lpVtbl->get_length(This,nLength);
16903}
16904static inline HRESULT IVBSAXAttributes_getURI(IVBSAXAttributes* This,int nIndex,BSTR *uri) {
16905    return This->lpVtbl->getURI(This,nIndex,uri);
16906}
16907static inline HRESULT IVBSAXAttributes_getLocalName(IVBSAXAttributes* This,int nIndex,BSTR *localName) {
16908    return This->lpVtbl->getLocalName(This,nIndex,localName);
16909}
16910static inline HRESULT IVBSAXAttributes_getQName(IVBSAXAttributes* This,int nIndex,BSTR *QName) {
16911    return This->lpVtbl->getQName(This,nIndex,QName);
16912}
16913static inline HRESULT IVBSAXAttributes_getIndexFromName(IVBSAXAttributes* This,BSTR uri,BSTR localName,int *nIndex) {
16914    return This->lpVtbl->getIndexFromName(This,uri,localName,nIndex);
16915}
16916static inline HRESULT IVBSAXAttributes_getIndexFromQName(IVBSAXAttributes* This,BSTR QName,int *nIndex) {
16917    return This->lpVtbl->getIndexFromQName(This,QName,nIndex);
16918}
16919static inline HRESULT IVBSAXAttributes_getType(IVBSAXAttributes* This,int nIndex,BSTR *type) {
16920    return This->lpVtbl->getType(This,nIndex,type);
16921}
16922static inline HRESULT IVBSAXAttributes_getTypeFromName(IVBSAXAttributes* This,BSTR uri,BSTR localName,BSTR *type) {
16923    return This->lpVtbl->getTypeFromName(This,uri,localName,type);
16924}
16925static inline HRESULT IVBSAXAttributes_getTypeFromQName(IVBSAXAttributes* This,BSTR QName,BSTR *type) {
16926    return This->lpVtbl->getTypeFromQName(This,QName,type);
16927}
16928static inline HRESULT IVBSAXAttributes_getValue(IVBSAXAttributes* This,int nIndex,BSTR *value) {
16929    return This->lpVtbl->getValue(This,nIndex,value);
16930}
16931static inline HRESULT IVBSAXAttributes_getValueFromName(IVBSAXAttributes* This,BSTR uri,BSTR localName,BSTR *value) {
16932    return This->lpVtbl->getValueFromName(This,uri,localName,value);
16933}
16934static inline HRESULT IVBSAXAttributes_getValueFromQName(IVBSAXAttributes* This,BSTR QName,BSTR *value) {
16935    return This->lpVtbl->getValueFromQName(This,QName,value);
16936}
16937#endif
16938#endif
16939
16940#endif
16941
16942
16943#endif  /* __IVBSAXAttributes_INTERFACE_DEFINED__ */
16944
16945/*****************************************************************************
16946 * IVBSAXContentHandler interface
16947 */
16948#ifndef __IVBSAXContentHandler_INTERFACE_DEFINED__
16949#define __IVBSAXContentHandler_INTERFACE_DEFINED__
16950
16951DEFINE_GUID(IID_IVBSAXContentHandler, 0x2ed7290a, 0x4dd5, 0x4b46, 0xbb,0x26, 0x4e,0x41,0x55,0xe7,0x7f,0xaa);
16952#if defined(__cplusplus) && !defined(CINTERFACE)
16953MIDL_INTERFACE("2ed7290a-4dd5-4b46-bb26-4e4155e77faa")
16954IVBSAXContentHandler : public IDispatch
16955{
16956    virtual HRESULT STDMETHODCALLTYPE putref_documentLocator(
16957        IVBSAXLocator *oLocator) = 0;
16958
16959    virtual HRESULT STDMETHODCALLTYPE startDocument(
16960        ) = 0;
16961
16962    virtual HRESULT STDMETHODCALLTYPE endDocument(
16963        ) = 0;
16964
16965    virtual HRESULT STDMETHODCALLTYPE startPrefixMapping(
16966        BSTR *prefix,
16967        BSTR *uri) = 0;
16968
16969    virtual HRESULT STDMETHODCALLTYPE endPrefixMapping(
16970        BSTR *prefix) = 0;
16971
16972    virtual HRESULT STDMETHODCALLTYPE startElement(
16973        BSTR *namespaceURI,
16974        BSTR *localName,
16975        BSTR *QName,
16976        IVBSAXAttributes *oAttributes) = 0;
16977
16978    virtual HRESULT STDMETHODCALLTYPE endElement(
16979        BSTR *namespaceURI,
16980        BSTR *localName,
16981        BSTR *strQName) = 0;
16982
16983    virtual HRESULT STDMETHODCALLTYPE characters(
16984        BSTR *chars) = 0;
16985
16986    virtual HRESULT STDMETHODCALLTYPE ignorableWhitespace(
16987        BSTR *chars) = 0;
16988
16989    virtual HRESULT STDMETHODCALLTYPE processingInstruction(
16990        BSTR *target,
16991        BSTR *data) = 0;
16992
16993    virtual HRESULT STDMETHODCALLTYPE skippedEntity(
16994        BSTR *name) = 0;
16995
16996};
16997#ifdef __CRT_UUID_DECL
16998__CRT_UUID_DECL(IVBSAXContentHandler, 0x2ed7290a, 0x4dd5, 0x4b46, 0xbb,0x26, 0x4e,0x41,0x55,0xe7,0x7f,0xaa)
16999#endif
17000#else
17001typedef struct IVBSAXContentHandlerVtbl {
17002    BEGIN_INTERFACE
17003
17004    /*** IUnknown methods ***/
17005    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17006        IVBSAXContentHandler *This,
17007        REFIID riid,
17008        void **ppvObject);
17009
17010    ULONG (STDMETHODCALLTYPE *AddRef)(
17011        IVBSAXContentHandler *This);
17012
17013    ULONG (STDMETHODCALLTYPE *Release)(
17014        IVBSAXContentHandler *This);
17015
17016    /*** IDispatch methods ***/
17017    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17018        IVBSAXContentHandler *This,
17019        UINT *pctinfo);
17020
17021    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17022        IVBSAXContentHandler *This,
17023        UINT iTInfo,
17024        LCID lcid,
17025        ITypeInfo **ppTInfo);
17026
17027    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17028        IVBSAXContentHandler *This,
17029        REFIID riid,
17030        LPOLESTR *rgszNames,
17031        UINT cNames,
17032        LCID lcid,
17033        DISPID *rgDispId);
17034
17035    HRESULT (STDMETHODCALLTYPE *Invoke)(
17036        IVBSAXContentHandler *This,
17037        DISPID dispIdMember,
17038        REFIID riid,
17039        LCID lcid,
17040        WORD wFlags,
17041        DISPPARAMS *pDispParams,
17042        VARIANT *pVarResult,
17043        EXCEPINFO *pExcepInfo,
17044        UINT *puArgErr);
17045
17046    /*** IVBSAXContentHandler methods ***/
17047    HRESULT (STDMETHODCALLTYPE *putref_documentLocator)(
17048        IVBSAXContentHandler *This,
17049        IVBSAXLocator *oLocator);
17050
17051    HRESULT (STDMETHODCALLTYPE *startDocument)(
17052        IVBSAXContentHandler *This);
17053
17054    HRESULT (STDMETHODCALLTYPE *endDocument)(
17055        IVBSAXContentHandler *This);
17056
17057    HRESULT (STDMETHODCALLTYPE *startPrefixMapping)(
17058        IVBSAXContentHandler *This,
17059        BSTR *prefix,
17060        BSTR *uri);
17061
17062    HRESULT (STDMETHODCALLTYPE *endPrefixMapping)(
17063        IVBSAXContentHandler *This,
17064        BSTR *prefix);
17065
17066    HRESULT (STDMETHODCALLTYPE *startElement)(
17067        IVBSAXContentHandler *This,
17068        BSTR *namespaceURI,
17069        BSTR *localName,
17070        BSTR *QName,
17071        IVBSAXAttributes *oAttributes);
17072
17073    HRESULT (STDMETHODCALLTYPE *endElement)(
17074        IVBSAXContentHandler *This,
17075        BSTR *namespaceURI,
17076        BSTR *localName,
17077        BSTR *strQName);
17078
17079    HRESULT (STDMETHODCALLTYPE *characters)(
17080        IVBSAXContentHandler *This,
17081        BSTR *chars);
17082
17083    HRESULT (STDMETHODCALLTYPE *ignorableWhitespace)(
17084        IVBSAXContentHandler *This,
17085        BSTR *chars);
17086
17087    HRESULT (STDMETHODCALLTYPE *processingInstruction)(
17088        IVBSAXContentHandler *This,
17089        BSTR *target,
17090        BSTR *data);
17091
17092    HRESULT (STDMETHODCALLTYPE *skippedEntity)(
17093        IVBSAXContentHandler *This,
17094        BSTR *name);
17095
17096    END_INTERFACE
17097} IVBSAXContentHandlerVtbl;
17098
17099interface IVBSAXContentHandler {
17100    CONST_VTBL IVBSAXContentHandlerVtbl* lpVtbl;
17101};
17102
17103#ifdef COBJMACROS
17104#ifndef WIDL_C_INLINE_WRAPPERS
17105/*** IUnknown methods ***/
17106#define IVBSAXContentHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17107#define IVBSAXContentHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
17108#define IVBSAXContentHandler_Release(This) (This)->lpVtbl->Release(This)
17109/*** IDispatch methods ***/
17110#define IVBSAXContentHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17111#define IVBSAXContentHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17112#define IVBSAXContentHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17113#define IVBSAXContentHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17114/*** IVBSAXContentHandler methods ***/
17115#define IVBSAXContentHandler_putref_documentLocator(This,oLocator) (This)->lpVtbl->putref_documentLocator(This,oLocator)
17116#define IVBSAXContentHandler_startDocument(This) (This)->lpVtbl->startDocument(This)
17117#define IVBSAXContentHandler_endDocument(This) (This)->lpVtbl->endDocument(This)
17118#define IVBSAXContentHandler_startPrefixMapping(This,prefix,uri) (This)->lpVtbl->startPrefixMapping(This,prefix,uri)
17119#define IVBSAXContentHandler_endPrefixMapping(This,prefix) (This)->lpVtbl->endPrefixMapping(This,prefix)
17120#define IVBSAXContentHandler_startElement(This,namespaceURI,localName,QName,oAttributes) (This)->lpVtbl->startElement(This,namespaceURI,localName,QName,oAttributes)
17121#define IVBSAXContentHandler_endElement(This,namespaceURI,localName,strQName) (This)->lpVtbl->endElement(This,namespaceURI,localName,strQName)
17122#define IVBSAXContentHandler_characters(This,chars) (This)->lpVtbl->characters(This,chars)
17123#define IVBSAXContentHandler_ignorableWhitespace(This,chars) (This)->lpVtbl->ignorableWhitespace(This,chars)
17124#define IVBSAXContentHandler_processingInstruction(This,target,data) (This)->lpVtbl->processingInstruction(This,target,data)
17125#define IVBSAXContentHandler_skippedEntity(This,name) (This)->lpVtbl->skippedEntity(This,name)
17126#else
17127/*** IUnknown methods ***/
17128static inline HRESULT IVBSAXContentHandler_QueryInterface(IVBSAXContentHandler* This,REFIID riid,void **ppvObject) {
17129    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17130}
17131static inline ULONG IVBSAXContentHandler_AddRef(IVBSAXContentHandler* This) {
17132    return This->lpVtbl->AddRef(This);
17133}
17134static inline ULONG IVBSAXContentHandler_Release(IVBSAXContentHandler* This) {
17135    return This->lpVtbl->Release(This);
17136}
17137/*** IDispatch methods ***/
17138static inline HRESULT IVBSAXContentHandler_GetTypeInfoCount(IVBSAXContentHandler* This,UINT *pctinfo) {
17139    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17140}
17141static inline HRESULT IVBSAXContentHandler_GetTypeInfo(IVBSAXContentHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17142    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17143}
17144static inline HRESULT IVBSAXContentHandler_GetIDsOfNames(IVBSAXContentHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17145    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17146}
17147static inline HRESULT IVBSAXContentHandler_Invoke(IVBSAXContentHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17148    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17149}
17150/*** IVBSAXContentHandler methods ***/
17151static inline HRESULT IVBSAXContentHandler_putref_documentLocator(IVBSAXContentHandler* This,IVBSAXLocator *oLocator) {
17152    return This->lpVtbl->putref_documentLocator(This,oLocator);
17153}
17154static inline HRESULT IVBSAXContentHandler_startDocument(IVBSAXContentHandler* This) {
17155    return This->lpVtbl->startDocument(This);
17156}
17157static inline HRESULT IVBSAXContentHandler_endDocument(IVBSAXContentHandler* This) {
17158    return This->lpVtbl->endDocument(This);
17159}
17160static inline HRESULT IVBSAXContentHandler_startPrefixMapping(IVBSAXContentHandler* This,BSTR *prefix,BSTR *uri) {
17161    return This->lpVtbl->startPrefixMapping(This,prefix,uri);
17162}
17163static inline HRESULT IVBSAXContentHandler_endPrefixMapping(IVBSAXContentHandler* This,BSTR *prefix) {
17164    return This->lpVtbl->endPrefixMapping(This,prefix);
17165}
17166static inline HRESULT IVBSAXContentHandler_startElement(IVBSAXContentHandler* This,BSTR *namespaceURI,BSTR *localName,BSTR *QName,IVBSAXAttributes *oAttributes) {
17167    return This->lpVtbl->startElement(This,namespaceURI,localName,QName,oAttributes);
17168}
17169static inline HRESULT IVBSAXContentHandler_endElement(IVBSAXContentHandler* This,BSTR *namespaceURI,BSTR *localName,BSTR *strQName) {
17170    return This->lpVtbl->endElement(This,namespaceURI,localName,strQName);
17171}
17172static inline HRESULT IVBSAXContentHandler_characters(IVBSAXContentHandler* This,BSTR *chars) {
17173    return This->lpVtbl->characters(This,chars);
17174}
17175static inline HRESULT IVBSAXContentHandler_ignorableWhitespace(IVBSAXContentHandler* This,BSTR *chars) {
17176    return This->lpVtbl->ignorableWhitespace(This,chars);
17177}
17178static inline HRESULT IVBSAXContentHandler_processingInstruction(IVBSAXContentHandler* This,BSTR *target,BSTR *data) {
17179    return This->lpVtbl->processingInstruction(This,target,data);
17180}
17181static inline HRESULT IVBSAXContentHandler_skippedEntity(IVBSAXContentHandler* This,BSTR *name) {
17182    return This->lpVtbl->skippedEntity(This,name);
17183}
17184#endif
17185#endif
17186
17187#endif
17188
17189
17190#endif  /* __IVBSAXContentHandler_INTERFACE_DEFINED__ */
17191
17192/*****************************************************************************
17193 * IVBSAXDeclHandler interface
17194 */
17195#ifndef __IVBSAXDeclHandler_INTERFACE_DEFINED__
17196#define __IVBSAXDeclHandler_INTERFACE_DEFINED__
17197
17198DEFINE_GUID(IID_IVBSAXDeclHandler, 0xe8917260, 0x7579, 0x4be1, 0xb5,0xdd, 0x7a,0xfb,0xfa,0x6f,0x07,0x7b);
17199#if defined(__cplusplus) && !defined(CINTERFACE)
17200MIDL_INTERFACE("e8917260-7579-4be1-b5dd-7afbfa6f077b")
17201IVBSAXDeclHandler : public IDispatch
17202{
17203    virtual HRESULT STDMETHODCALLTYPE elementDecl(
17204        BSTR *name,
17205        BSTR *model) = 0;
17206
17207    virtual HRESULT STDMETHODCALLTYPE attributeDecl(
17208        BSTR *elementName,
17209        BSTR *attributeName,
17210        BSTR *type,
17211        BSTR *valueDefault,
17212        BSTR *value) = 0;
17213
17214    virtual HRESULT STDMETHODCALLTYPE internalEntityDecl(
17215        BSTR *name,
17216        BSTR *value) = 0;
17217
17218    virtual HRESULT STDMETHODCALLTYPE externalEntityDecl(
17219        BSTR *name,
17220        BSTR *publicId,
17221        BSTR *systemId) = 0;
17222
17223};
17224#ifdef __CRT_UUID_DECL
17225__CRT_UUID_DECL(IVBSAXDeclHandler, 0xe8917260, 0x7579, 0x4be1, 0xb5,0xdd, 0x7a,0xfb,0xfa,0x6f,0x07,0x7b)
17226#endif
17227#else
17228typedef struct IVBSAXDeclHandlerVtbl {
17229    BEGIN_INTERFACE
17230
17231    /*** IUnknown methods ***/
17232    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17233        IVBSAXDeclHandler *This,
17234        REFIID riid,
17235        void **ppvObject);
17236
17237    ULONG (STDMETHODCALLTYPE *AddRef)(
17238        IVBSAXDeclHandler *This);
17239
17240    ULONG (STDMETHODCALLTYPE *Release)(
17241        IVBSAXDeclHandler *This);
17242
17243    /*** IDispatch methods ***/
17244    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17245        IVBSAXDeclHandler *This,
17246        UINT *pctinfo);
17247
17248    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17249        IVBSAXDeclHandler *This,
17250        UINT iTInfo,
17251        LCID lcid,
17252        ITypeInfo **ppTInfo);
17253
17254    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17255        IVBSAXDeclHandler *This,
17256        REFIID riid,
17257        LPOLESTR *rgszNames,
17258        UINT cNames,
17259        LCID lcid,
17260        DISPID *rgDispId);
17261
17262    HRESULT (STDMETHODCALLTYPE *Invoke)(
17263        IVBSAXDeclHandler *This,
17264        DISPID dispIdMember,
17265        REFIID riid,
17266        LCID lcid,
17267        WORD wFlags,
17268        DISPPARAMS *pDispParams,
17269        VARIANT *pVarResult,
17270        EXCEPINFO *pExcepInfo,
17271        UINT *puArgErr);
17272
17273    /*** IVBSAXDeclHandler methods ***/
17274    HRESULT (STDMETHODCALLTYPE *elementDecl)(
17275        IVBSAXDeclHandler *This,
17276        BSTR *name,
17277        BSTR *model);
17278
17279    HRESULT (STDMETHODCALLTYPE *attributeDecl)(
17280        IVBSAXDeclHandler *This,
17281        BSTR *elementName,
17282        BSTR *attributeName,
17283        BSTR *type,
17284        BSTR *valueDefault,
17285        BSTR *value);
17286
17287    HRESULT (STDMETHODCALLTYPE *internalEntityDecl)(
17288        IVBSAXDeclHandler *This,
17289        BSTR *name,
17290        BSTR *value);
17291
17292    HRESULT (STDMETHODCALLTYPE *externalEntityDecl)(
17293        IVBSAXDeclHandler *This,
17294        BSTR *name,
17295        BSTR *publicId,
17296        BSTR *systemId);
17297
17298    END_INTERFACE
17299} IVBSAXDeclHandlerVtbl;
17300
17301interface IVBSAXDeclHandler {
17302    CONST_VTBL IVBSAXDeclHandlerVtbl* lpVtbl;
17303};
17304
17305#ifdef COBJMACROS
17306#ifndef WIDL_C_INLINE_WRAPPERS
17307/*** IUnknown methods ***/
17308#define IVBSAXDeclHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17309#define IVBSAXDeclHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
17310#define IVBSAXDeclHandler_Release(This) (This)->lpVtbl->Release(This)
17311/*** IDispatch methods ***/
17312#define IVBSAXDeclHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17313#define IVBSAXDeclHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17314#define IVBSAXDeclHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17315#define IVBSAXDeclHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17316/*** IVBSAXDeclHandler methods ***/
17317#define IVBSAXDeclHandler_elementDecl(This,name,model) (This)->lpVtbl->elementDecl(This,name,model)
17318#define IVBSAXDeclHandler_attributeDecl(This,elementName,attributeName,type,valueDefault,value) (This)->lpVtbl->attributeDecl(This,elementName,attributeName,type,valueDefault,value)
17319#define IVBSAXDeclHandler_internalEntityDecl(This,name,value) (This)->lpVtbl->internalEntityDecl(This,name,value)
17320#define IVBSAXDeclHandler_externalEntityDecl(This,name,publicId,systemId) (This)->lpVtbl->externalEntityDecl(This,name,publicId,systemId)
17321#else
17322/*** IUnknown methods ***/
17323static inline HRESULT IVBSAXDeclHandler_QueryInterface(IVBSAXDeclHandler* This,REFIID riid,void **ppvObject) {
17324    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17325}
17326static inline ULONG IVBSAXDeclHandler_AddRef(IVBSAXDeclHandler* This) {
17327    return This->lpVtbl->AddRef(This);
17328}
17329static inline ULONG IVBSAXDeclHandler_Release(IVBSAXDeclHandler* This) {
17330    return This->lpVtbl->Release(This);
17331}
17332/*** IDispatch methods ***/
17333static inline HRESULT IVBSAXDeclHandler_GetTypeInfoCount(IVBSAXDeclHandler* This,UINT *pctinfo) {
17334    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17335}
17336static inline HRESULT IVBSAXDeclHandler_GetTypeInfo(IVBSAXDeclHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17337    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17338}
17339static inline HRESULT IVBSAXDeclHandler_GetIDsOfNames(IVBSAXDeclHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17340    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17341}
17342static inline HRESULT IVBSAXDeclHandler_Invoke(IVBSAXDeclHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17343    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17344}
17345/*** IVBSAXDeclHandler methods ***/
17346static inline HRESULT IVBSAXDeclHandler_elementDecl(IVBSAXDeclHandler* This,BSTR *name,BSTR *model) {
17347    return This->lpVtbl->elementDecl(This,name,model);
17348}
17349static inline HRESULT IVBSAXDeclHandler_attributeDecl(IVBSAXDeclHandler* This,BSTR *elementName,BSTR *attributeName,BSTR *type,BSTR *valueDefault,BSTR *value) {
17350    return This->lpVtbl->attributeDecl(This,elementName,attributeName,type,valueDefault,value);
17351}
17352static inline HRESULT IVBSAXDeclHandler_internalEntityDecl(IVBSAXDeclHandler* This,BSTR *name,BSTR *value) {
17353    return This->lpVtbl->internalEntityDecl(This,name,value);
17354}
17355static inline HRESULT IVBSAXDeclHandler_externalEntityDecl(IVBSAXDeclHandler* This,BSTR *name,BSTR *publicId,BSTR *systemId) {
17356    return This->lpVtbl->externalEntityDecl(This,name,publicId,systemId);
17357}
17358#endif
17359#endif
17360
17361#endif
17362
17363
17364#endif  /* __IVBSAXDeclHandler_INTERFACE_DEFINED__ */
17365
17366/*****************************************************************************
17367 * IVBSAXDTDHandler interface
17368 */
17369#ifndef __IVBSAXDTDHandler_INTERFACE_DEFINED__
17370#define __IVBSAXDTDHandler_INTERFACE_DEFINED__
17371
17372DEFINE_GUID(IID_IVBSAXDTDHandler, 0x24fb3297, 0x302d, 0x4620, 0xba,0x39, 0x3a,0x73,0x2d,0x85,0x05,0x58);
17373#if defined(__cplusplus) && !defined(CINTERFACE)
17374MIDL_INTERFACE("24fb3297-302d-4620-ba39-3a732d850558")
17375IVBSAXDTDHandler : public IDispatch
17376{
17377    virtual HRESULT STDMETHODCALLTYPE notationDecl(
17378        BSTR *name,
17379        BSTR *publicId,
17380        BSTR *systemId) = 0;
17381
17382    virtual HRESULT STDMETHODCALLTYPE unparsedEntityDecl(
17383        BSTR *name,
17384        BSTR *publicId,
17385        BSTR *systemId,
17386        BSTR *notationName) = 0;
17387
17388};
17389#ifdef __CRT_UUID_DECL
17390__CRT_UUID_DECL(IVBSAXDTDHandler, 0x24fb3297, 0x302d, 0x4620, 0xba,0x39, 0x3a,0x73,0x2d,0x85,0x05,0x58)
17391#endif
17392#else
17393typedef struct IVBSAXDTDHandlerVtbl {
17394    BEGIN_INTERFACE
17395
17396    /*** IUnknown methods ***/
17397    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17398        IVBSAXDTDHandler *This,
17399        REFIID riid,
17400        void **ppvObject);
17401
17402    ULONG (STDMETHODCALLTYPE *AddRef)(
17403        IVBSAXDTDHandler *This);
17404
17405    ULONG (STDMETHODCALLTYPE *Release)(
17406        IVBSAXDTDHandler *This);
17407
17408    /*** IDispatch methods ***/
17409    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17410        IVBSAXDTDHandler *This,
17411        UINT *pctinfo);
17412
17413    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17414        IVBSAXDTDHandler *This,
17415        UINT iTInfo,
17416        LCID lcid,
17417        ITypeInfo **ppTInfo);
17418
17419    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17420        IVBSAXDTDHandler *This,
17421        REFIID riid,
17422        LPOLESTR *rgszNames,
17423        UINT cNames,
17424        LCID lcid,
17425        DISPID *rgDispId);
17426
17427    HRESULT (STDMETHODCALLTYPE *Invoke)(
17428        IVBSAXDTDHandler *This,
17429        DISPID dispIdMember,
17430        REFIID riid,
17431        LCID lcid,
17432        WORD wFlags,
17433        DISPPARAMS *pDispParams,
17434        VARIANT *pVarResult,
17435        EXCEPINFO *pExcepInfo,
17436        UINT *puArgErr);
17437
17438    /*** IVBSAXDTDHandler methods ***/
17439    HRESULT (STDMETHODCALLTYPE *notationDecl)(
17440        IVBSAXDTDHandler *This,
17441        BSTR *name,
17442        BSTR *publicId,
17443        BSTR *systemId);
17444
17445    HRESULT (STDMETHODCALLTYPE *unparsedEntityDecl)(
17446        IVBSAXDTDHandler *This,
17447        BSTR *name,
17448        BSTR *publicId,
17449        BSTR *systemId,
17450        BSTR *notationName);
17451
17452    END_INTERFACE
17453} IVBSAXDTDHandlerVtbl;
17454
17455interface IVBSAXDTDHandler {
17456    CONST_VTBL IVBSAXDTDHandlerVtbl* lpVtbl;
17457};
17458
17459#ifdef COBJMACROS
17460#ifndef WIDL_C_INLINE_WRAPPERS
17461/*** IUnknown methods ***/
17462#define IVBSAXDTDHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17463#define IVBSAXDTDHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
17464#define IVBSAXDTDHandler_Release(This) (This)->lpVtbl->Release(This)
17465/*** IDispatch methods ***/
17466#define IVBSAXDTDHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17467#define IVBSAXDTDHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17468#define IVBSAXDTDHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17469#define IVBSAXDTDHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17470/*** IVBSAXDTDHandler methods ***/
17471#define IVBSAXDTDHandler_notationDecl(This,name,publicId,systemId) (This)->lpVtbl->notationDecl(This,name,publicId,systemId)
17472#define IVBSAXDTDHandler_unparsedEntityDecl(This,name,publicId,systemId,notationName) (This)->lpVtbl->unparsedEntityDecl(This,name,publicId,systemId,notationName)
17473#else
17474/*** IUnknown methods ***/
17475static inline HRESULT IVBSAXDTDHandler_QueryInterface(IVBSAXDTDHandler* This,REFIID riid,void **ppvObject) {
17476    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17477}
17478static inline ULONG IVBSAXDTDHandler_AddRef(IVBSAXDTDHandler* This) {
17479    return This->lpVtbl->AddRef(This);
17480}
17481static inline ULONG IVBSAXDTDHandler_Release(IVBSAXDTDHandler* This) {
17482    return This->lpVtbl->Release(This);
17483}
17484/*** IDispatch methods ***/
17485static inline HRESULT IVBSAXDTDHandler_GetTypeInfoCount(IVBSAXDTDHandler* This,UINT *pctinfo) {
17486    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17487}
17488static inline HRESULT IVBSAXDTDHandler_GetTypeInfo(IVBSAXDTDHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17489    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17490}
17491static inline HRESULT IVBSAXDTDHandler_GetIDsOfNames(IVBSAXDTDHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17492    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17493}
17494static inline HRESULT IVBSAXDTDHandler_Invoke(IVBSAXDTDHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17495    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17496}
17497/*** IVBSAXDTDHandler methods ***/
17498static inline HRESULT IVBSAXDTDHandler_notationDecl(IVBSAXDTDHandler* This,BSTR *name,BSTR *publicId,BSTR *systemId) {
17499    return This->lpVtbl->notationDecl(This,name,publicId,systemId);
17500}
17501static inline HRESULT IVBSAXDTDHandler_unparsedEntityDecl(IVBSAXDTDHandler* This,BSTR *name,BSTR *publicId,BSTR *systemId,BSTR *notationName) {
17502    return This->lpVtbl->unparsedEntityDecl(This,name,publicId,systemId,notationName);
17503}
17504#endif
17505#endif
17506
17507#endif
17508
17509
17510#endif  /* __IVBSAXDTDHandler_INTERFACE_DEFINED__ */
17511
17512/*****************************************************************************
17513 * IVBSAXEntityResolver interface
17514 */
17515#ifndef __IVBSAXEntityResolver_INTERFACE_DEFINED__
17516#define __IVBSAXEntityResolver_INTERFACE_DEFINED__
17517
17518DEFINE_GUID(IID_IVBSAXEntityResolver, 0x0c05d096, 0xf45b, 0x4aca, 0xad,0x1a, 0xaa,0x0b,0xc2,0x55,0x18,0xdc);
17519#if defined(__cplusplus) && !defined(CINTERFACE)
17520MIDL_INTERFACE("0c05d096-f45b-4aca-ad1a-aa0bc25518dc")
17521IVBSAXEntityResolver : public IDispatch
17522{
17523    virtual HRESULT STDMETHODCALLTYPE resolveEntity(
17524        BSTR *publicId,
17525        BSTR *systemId,
17526        VARIANT *ret) = 0;
17527
17528};
17529#ifdef __CRT_UUID_DECL
17530__CRT_UUID_DECL(IVBSAXEntityResolver, 0x0c05d096, 0xf45b, 0x4aca, 0xad,0x1a, 0xaa,0x0b,0xc2,0x55,0x18,0xdc)
17531#endif
17532#else
17533typedef struct IVBSAXEntityResolverVtbl {
17534    BEGIN_INTERFACE
17535
17536    /*** IUnknown methods ***/
17537    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17538        IVBSAXEntityResolver *This,
17539        REFIID riid,
17540        void **ppvObject);
17541
17542    ULONG (STDMETHODCALLTYPE *AddRef)(
17543        IVBSAXEntityResolver *This);
17544
17545    ULONG (STDMETHODCALLTYPE *Release)(
17546        IVBSAXEntityResolver *This);
17547
17548    /*** IDispatch methods ***/
17549    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17550        IVBSAXEntityResolver *This,
17551        UINT *pctinfo);
17552
17553    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17554        IVBSAXEntityResolver *This,
17555        UINT iTInfo,
17556        LCID lcid,
17557        ITypeInfo **ppTInfo);
17558
17559    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17560        IVBSAXEntityResolver *This,
17561        REFIID riid,
17562        LPOLESTR *rgszNames,
17563        UINT cNames,
17564        LCID lcid,
17565        DISPID *rgDispId);
17566
17567    HRESULT (STDMETHODCALLTYPE *Invoke)(
17568        IVBSAXEntityResolver *This,
17569        DISPID dispIdMember,
17570        REFIID riid,
17571        LCID lcid,
17572        WORD wFlags,
17573        DISPPARAMS *pDispParams,
17574        VARIANT *pVarResult,
17575        EXCEPINFO *pExcepInfo,
17576        UINT *puArgErr);
17577
17578    /*** IVBSAXEntityResolver methods ***/
17579    HRESULT (STDMETHODCALLTYPE *resolveEntity)(
17580        IVBSAXEntityResolver *This,
17581        BSTR *publicId,
17582        BSTR *systemId,
17583        VARIANT *ret);
17584
17585    END_INTERFACE
17586} IVBSAXEntityResolverVtbl;
17587
17588interface IVBSAXEntityResolver {
17589    CONST_VTBL IVBSAXEntityResolverVtbl* lpVtbl;
17590};
17591
17592#ifdef COBJMACROS
17593#ifndef WIDL_C_INLINE_WRAPPERS
17594/*** IUnknown methods ***/
17595#define IVBSAXEntityResolver_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17596#define IVBSAXEntityResolver_AddRef(This) (This)->lpVtbl->AddRef(This)
17597#define IVBSAXEntityResolver_Release(This) (This)->lpVtbl->Release(This)
17598/*** IDispatch methods ***/
17599#define IVBSAXEntityResolver_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17600#define IVBSAXEntityResolver_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17601#define IVBSAXEntityResolver_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17602#define IVBSAXEntityResolver_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17603/*** IVBSAXEntityResolver methods ***/
17604#define IVBSAXEntityResolver_resolveEntity(This,publicId,systemId,ret) (This)->lpVtbl->resolveEntity(This,publicId,systemId,ret)
17605#else
17606/*** IUnknown methods ***/
17607static inline HRESULT IVBSAXEntityResolver_QueryInterface(IVBSAXEntityResolver* This,REFIID riid,void **ppvObject) {
17608    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17609}
17610static inline ULONG IVBSAXEntityResolver_AddRef(IVBSAXEntityResolver* This) {
17611    return This->lpVtbl->AddRef(This);
17612}
17613static inline ULONG IVBSAXEntityResolver_Release(IVBSAXEntityResolver* This) {
17614    return This->lpVtbl->Release(This);
17615}
17616/*** IDispatch methods ***/
17617static inline HRESULT IVBSAXEntityResolver_GetTypeInfoCount(IVBSAXEntityResolver* This,UINT *pctinfo) {
17618    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17619}
17620static inline HRESULT IVBSAXEntityResolver_GetTypeInfo(IVBSAXEntityResolver* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17621    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17622}
17623static inline HRESULT IVBSAXEntityResolver_GetIDsOfNames(IVBSAXEntityResolver* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17624    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17625}
17626static inline HRESULT IVBSAXEntityResolver_Invoke(IVBSAXEntityResolver* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17627    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17628}
17629/*** IVBSAXEntityResolver methods ***/
17630static inline HRESULT IVBSAXEntityResolver_resolveEntity(IVBSAXEntityResolver* This,BSTR *publicId,BSTR *systemId,VARIANT *ret) {
17631    return This->lpVtbl->resolveEntity(This,publicId,systemId,ret);
17632}
17633#endif
17634#endif
17635
17636#endif
17637
17638
17639#endif  /* __IVBSAXEntityResolver_INTERFACE_DEFINED__ */
17640
17641/*****************************************************************************
17642 * IVBSAXErrorHandler interface
17643 */
17644#ifndef __IVBSAXErrorHandler_INTERFACE_DEFINED__
17645#define __IVBSAXErrorHandler_INTERFACE_DEFINED__
17646
17647DEFINE_GUID(IID_IVBSAXErrorHandler, 0xd963d3fe, 0x173c, 0x4862, 0x90,0x95, 0xb9,0x2f,0x66,0x99,0x5f,0x52);
17648#if defined(__cplusplus) && !defined(CINTERFACE)
17649MIDL_INTERFACE("d963d3fe-173c-4862-9095-b92f66995f52")
17650IVBSAXErrorHandler : public IDispatch
17651{
17652    virtual HRESULT STDMETHODCALLTYPE error(
17653        IVBSAXLocator *locator,
17654        BSTR *errorMessage,
17655        LONG errorCode) = 0;
17656
17657    virtual HRESULT STDMETHODCALLTYPE fatalError(
17658        IVBSAXLocator *locator,
17659        BSTR *errorMessage,
17660        LONG errorCode) = 0;
17661
17662    virtual HRESULT STDMETHODCALLTYPE ignorableWarning(
17663        IVBSAXLocator *locator,
17664        BSTR *errorMessage,
17665        LONG errorCode) = 0;
17666
17667};
17668#ifdef __CRT_UUID_DECL
17669__CRT_UUID_DECL(IVBSAXErrorHandler, 0xd963d3fe, 0x173c, 0x4862, 0x90,0x95, 0xb9,0x2f,0x66,0x99,0x5f,0x52)
17670#endif
17671#else
17672typedef struct IVBSAXErrorHandlerVtbl {
17673    BEGIN_INTERFACE
17674
17675    /*** IUnknown methods ***/
17676    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17677        IVBSAXErrorHandler *This,
17678        REFIID riid,
17679        void **ppvObject);
17680
17681    ULONG (STDMETHODCALLTYPE *AddRef)(
17682        IVBSAXErrorHandler *This);
17683
17684    ULONG (STDMETHODCALLTYPE *Release)(
17685        IVBSAXErrorHandler *This);
17686
17687    /*** IDispatch methods ***/
17688    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17689        IVBSAXErrorHandler *This,
17690        UINT *pctinfo);
17691
17692    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17693        IVBSAXErrorHandler *This,
17694        UINT iTInfo,
17695        LCID lcid,
17696        ITypeInfo **ppTInfo);
17697
17698    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17699        IVBSAXErrorHandler *This,
17700        REFIID riid,
17701        LPOLESTR *rgszNames,
17702        UINT cNames,
17703        LCID lcid,
17704        DISPID *rgDispId);
17705
17706    HRESULT (STDMETHODCALLTYPE *Invoke)(
17707        IVBSAXErrorHandler *This,
17708        DISPID dispIdMember,
17709        REFIID riid,
17710        LCID lcid,
17711        WORD wFlags,
17712        DISPPARAMS *pDispParams,
17713        VARIANT *pVarResult,
17714        EXCEPINFO *pExcepInfo,
17715        UINT *puArgErr);
17716
17717    /*** IVBSAXErrorHandler methods ***/
17718    HRESULT (STDMETHODCALLTYPE *error)(
17719        IVBSAXErrorHandler *This,
17720        IVBSAXLocator *locator,
17721        BSTR *errorMessage,
17722        LONG errorCode);
17723
17724    HRESULT (STDMETHODCALLTYPE *fatalError)(
17725        IVBSAXErrorHandler *This,
17726        IVBSAXLocator *locator,
17727        BSTR *errorMessage,
17728        LONG errorCode);
17729
17730    HRESULT (STDMETHODCALLTYPE *ignorableWarning)(
17731        IVBSAXErrorHandler *This,
17732        IVBSAXLocator *locator,
17733        BSTR *errorMessage,
17734        LONG errorCode);
17735
17736    END_INTERFACE
17737} IVBSAXErrorHandlerVtbl;
17738
17739interface IVBSAXErrorHandler {
17740    CONST_VTBL IVBSAXErrorHandlerVtbl* lpVtbl;
17741};
17742
17743#ifdef COBJMACROS
17744#ifndef WIDL_C_INLINE_WRAPPERS
17745/*** IUnknown methods ***/
17746#define IVBSAXErrorHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17747#define IVBSAXErrorHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
17748#define IVBSAXErrorHandler_Release(This) (This)->lpVtbl->Release(This)
17749/*** IDispatch methods ***/
17750#define IVBSAXErrorHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17751#define IVBSAXErrorHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17752#define IVBSAXErrorHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17753#define IVBSAXErrorHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17754/*** IVBSAXErrorHandler methods ***/
17755#define IVBSAXErrorHandler_error(This,locator,errorMessage,errorCode) (This)->lpVtbl->error(This,locator,errorMessage,errorCode)
17756#define IVBSAXErrorHandler_fatalError(This,locator,errorMessage,errorCode) (This)->lpVtbl->fatalError(This,locator,errorMessage,errorCode)
17757#define IVBSAXErrorHandler_ignorableWarning(This,locator,errorMessage,errorCode) (This)->lpVtbl->ignorableWarning(This,locator,errorMessage,errorCode)
17758#else
17759/*** IUnknown methods ***/
17760static inline HRESULT IVBSAXErrorHandler_QueryInterface(IVBSAXErrorHandler* This,REFIID riid,void **ppvObject) {
17761    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17762}
17763static inline ULONG IVBSAXErrorHandler_AddRef(IVBSAXErrorHandler* This) {
17764    return This->lpVtbl->AddRef(This);
17765}
17766static inline ULONG IVBSAXErrorHandler_Release(IVBSAXErrorHandler* This) {
17767    return This->lpVtbl->Release(This);
17768}
17769/*** IDispatch methods ***/
17770static inline HRESULT IVBSAXErrorHandler_GetTypeInfoCount(IVBSAXErrorHandler* This,UINT *pctinfo) {
17771    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17772}
17773static inline HRESULT IVBSAXErrorHandler_GetTypeInfo(IVBSAXErrorHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17774    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17775}
17776static inline HRESULT IVBSAXErrorHandler_GetIDsOfNames(IVBSAXErrorHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17777    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17778}
17779static inline HRESULT IVBSAXErrorHandler_Invoke(IVBSAXErrorHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17780    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17781}
17782/*** IVBSAXErrorHandler methods ***/
17783static inline HRESULT IVBSAXErrorHandler_error(IVBSAXErrorHandler* This,IVBSAXLocator *locator,BSTR *errorMessage,LONG errorCode) {
17784    return This->lpVtbl->error(This,locator,errorMessage,errorCode);
17785}
17786static inline HRESULT IVBSAXErrorHandler_fatalError(IVBSAXErrorHandler* This,IVBSAXLocator *locator,BSTR *errorMessage,LONG errorCode) {
17787    return This->lpVtbl->fatalError(This,locator,errorMessage,errorCode);
17788}
17789static inline HRESULT IVBSAXErrorHandler_ignorableWarning(IVBSAXErrorHandler* This,IVBSAXLocator *locator,BSTR *errorMessage,LONG errorCode) {
17790    return This->lpVtbl->ignorableWarning(This,locator,errorMessage,errorCode);
17791}
17792#endif
17793#endif
17794
17795#endif
17796
17797
17798#endif  /* __IVBSAXErrorHandler_INTERFACE_DEFINED__ */
17799
17800/*****************************************************************************
17801 * IVBSAXLexicalHandler interface
17802 */
17803#ifndef __IVBSAXLexicalHandler_INTERFACE_DEFINED__
17804#define __IVBSAXLexicalHandler_INTERFACE_DEFINED__
17805
17806DEFINE_GUID(IID_IVBSAXLexicalHandler, 0x032aac35, 0x8c0e, 0x4d9d, 0x97,0x9f, 0xe3,0xb7,0x02,0x93,0x55,0x76);
17807#if defined(__cplusplus) && !defined(CINTERFACE)
17808MIDL_INTERFACE("032aac35-8c0e-4d9d-979f-e3b702935576")
17809IVBSAXLexicalHandler : public IDispatch
17810{
17811    virtual HRESULT STDMETHODCALLTYPE startDTD(
17812        BSTR *name,
17813        BSTR *publicId,
17814        BSTR *systemId) = 0;
17815
17816    virtual HRESULT STDMETHODCALLTYPE endDTD(
17817        ) = 0;
17818
17819    virtual HRESULT STDMETHODCALLTYPE startEntity(
17820        BSTR *name) = 0;
17821
17822    virtual HRESULT STDMETHODCALLTYPE endEntity(
17823        BSTR *name) = 0;
17824
17825    virtual HRESULT STDMETHODCALLTYPE startCDATA(
17826        ) = 0;
17827
17828    virtual HRESULT STDMETHODCALLTYPE endCDATA(
17829        ) = 0;
17830
17831    virtual HRESULT STDMETHODCALLTYPE comment(
17832        BSTR *chars) = 0;
17833
17834};
17835#ifdef __CRT_UUID_DECL
17836__CRT_UUID_DECL(IVBSAXLexicalHandler, 0x032aac35, 0x8c0e, 0x4d9d, 0x97,0x9f, 0xe3,0xb7,0x02,0x93,0x55,0x76)
17837#endif
17838#else
17839typedef struct IVBSAXLexicalHandlerVtbl {
17840    BEGIN_INTERFACE
17841
17842    /*** IUnknown methods ***/
17843    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
17844        IVBSAXLexicalHandler *This,
17845        REFIID riid,
17846        void **ppvObject);
17847
17848    ULONG (STDMETHODCALLTYPE *AddRef)(
17849        IVBSAXLexicalHandler *This);
17850
17851    ULONG (STDMETHODCALLTYPE *Release)(
17852        IVBSAXLexicalHandler *This);
17853
17854    /*** IDispatch methods ***/
17855    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
17856        IVBSAXLexicalHandler *This,
17857        UINT *pctinfo);
17858
17859    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
17860        IVBSAXLexicalHandler *This,
17861        UINT iTInfo,
17862        LCID lcid,
17863        ITypeInfo **ppTInfo);
17864
17865    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
17866        IVBSAXLexicalHandler *This,
17867        REFIID riid,
17868        LPOLESTR *rgszNames,
17869        UINT cNames,
17870        LCID lcid,
17871        DISPID *rgDispId);
17872
17873    HRESULT (STDMETHODCALLTYPE *Invoke)(
17874        IVBSAXLexicalHandler *This,
17875        DISPID dispIdMember,
17876        REFIID riid,
17877        LCID lcid,
17878        WORD wFlags,
17879        DISPPARAMS *pDispParams,
17880        VARIANT *pVarResult,
17881        EXCEPINFO *pExcepInfo,
17882        UINT *puArgErr);
17883
17884    /*** IVBSAXLexicalHandler methods ***/
17885    HRESULT (STDMETHODCALLTYPE *startDTD)(
17886        IVBSAXLexicalHandler *This,
17887        BSTR *name,
17888        BSTR *publicId,
17889        BSTR *systemId);
17890
17891    HRESULT (STDMETHODCALLTYPE *endDTD)(
17892        IVBSAXLexicalHandler *This);
17893
17894    HRESULT (STDMETHODCALLTYPE *startEntity)(
17895        IVBSAXLexicalHandler *This,
17896        BSTR *name);
17897
17898    HRESULT (STDMETHODCALLTYPE *endEntity)(
17899        IVBSAXLexicalHandler *This,
17900        BSTR *name);
17901
17902    HRESULT (STDMETHODCALLTYPE *startCDATA)(
17903        IVBSAXLexicalHandler *This);
17904
17905    HRESULT (STDMETHODCALLTYPE *endCDATA)(
17906        IVBSAXLexicalHandler *This);
17907
17908    HRESULT (STDMETHODCALLTYPE *comment)(
17909        IVBSAXLexicalHandler *This,
17910        BSTR *chars);
17911
17912    END_INTERFACE
17913} IVBSAXLexicalHandlerVtbl;
17914
17915interface IVBSAXLexicalHandler {
17916    CONST_VTBL IVBSAXLexicalHandlerVtbl* lpVtbl;
17917};
17918
17919#ifdef COBJMACROS
17920#ifndef WIDL_C_INLINE_WRAPPERS
17921/*** IUnknown methods ***/
17922#define IVBSAXLexicalHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
17923#define IVBSAXLexicalHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
17924#define IVBSAXLexicalHandler_Release(This) (This)->lpVtbl->Release(This)
17925/*** IDispatch methods ***/
17926#define IVBSAXLexicalHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
17927#define IVBSAXLexicalHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
17928#define IVBSAXLexicalHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
17929#define IVBSAXLexicalHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
17930/*** IVBSAXLexicalHandler methods ***/
17931#define IVBSAXLexicalHandler_startDTD(This,name,publicId,systemId) (This)->lpVtbl->startDTD(This,name,publicId,systemId)
17932#define IVBSAXLexicalHandler_endDTD(This) (This)->lpVtbl->endDTD(This)
17933#define IVBSAXLexicalHandler_startEntity(This,name) (This)->lpVtbl->startEntity(This,name)
17934#define IVBSAXLexicalHandler_endEntity(This,name) (This)->lpVtbl->endEntity(This,name)
17935#define IVBSAXLexicalHandler_startCDATA(This) (This)->lpVtbl->startCDATA(This)
17936#define IVBSAXLexicalHandler_endCDATA(This) (This)->lpVtbl->endCDATA(This)
17937#define IVBSAXLexicalHandler_comment(This,chars) (This)->lpVtbl->comment(This,chars)
17938#else
17939/*** IUnknown methods ***/
17940static inline HRESULT IVBSAXLexicalHandler_QueryInterface(IVBSAXLexicalHandler* This,REFIID riid,void **ppvObject) {
17941    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
17942}
17943static inline ULONG IVBSAXLexicalHandler_AddRef(IVBSAXLexicalHandler* This) {
17944    return This->lpVtbl->AddRef(This);
17945}
17946static inline ULONG IVBSAXLexicalHandler_Release(IVBSAXLexicalHandler* This) {
17947    return This->lpVtbl->Release(This);
17948}
17949/*** IDispatch methods ***/
17950static inline HRESULT IVBSAXLexicalHandler_GetTypeInfoCount(IVBSAXLexicalHandler* This,UINT *pctinfo) {
17951    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
17952}
17953static inline HRESULT IVBSAXLexicalHandler_GetTypeInfo(IVBSAXLexicalHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
17954    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
17955}
17956static inline HRESULT IVBSAXLexicalHandler_GetIDsOfNames(IVBSAXLexicalHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
17957    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
17958}
17959static inline HRESULT IVBSAXLexicalHandler_Invoke(IVBSAXLexicalHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
17960    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
17961}
17962/*** IVBSAXLexicalHandler methods ***/
17963static inline HRESULT IVBSAXLexicalHandler_startDTD(IVBSAXLexicalHandler* This,BSTR *name,BSTR *publicId,BSTR *systemId) {
17964    return This->lpVtbl->startDTD(This,name,publicId,systemId);
17965}
17966static inline HRESULT IVBSAXLexicalHandler_endDTD(IVBSAXLexicalHandler* This) {
17967    return This->lpVtbl->endDTD(This);
17968}
17969static inline HRESULT IVBSAXLexicalHandler_startEntity(IVBSAXLexicalHandler* This,BSTR *name) {
17970    return This->lpVtbl->startEntity(This,name);
17971}
17972static inline HRESULT IVBSAXLexicalHandler_endEntity(IVBSAXLexicalHandler* This,BSTR *name) {
17973    return This->lpVtbl->endEntity(This,name);
17974}
17975static inline HRESULT IVBSAXLexicalHandler_startCDATA(IVBSAXLexicalHandler* This) {
17976    return This->lpVtbl->startCDATA(This);
17977}
17978static inline HRESULT IVBSAXLexicalHandler_endCDATA(IVBSAXLexicalHandler* This) {
17979    return This->lpVtbl->endCDATA(This);
17980}
17981static inline HRESULT IVBSAXLexicalHandler_comment(IVBSAXLexicalHandler* This,BSTR *chars) {
17982    return This->lpVtbl->comment(This,chars);
17983}
17984#endif
17985#endif
17986
17987#endif
17988
17989
17990#endif  /* __IVBSAXLexicalHandler_INTERFACE_DEFINED__ */
17991
17992/*****************************************************************************
17993 * IVBSAXLocator interface
17994 */
17995#ifndef __IVBSAXLocator_INTERFACE_DEFINED__
17996#define __IVBSAXLocator_INTERFACE_DEFINED__
17997
17998DEFINE_GUID(IID_IVBSAXLocator, 0x796e7ac5, 0x5aa2, 0x4eff, 0xac,0xad, 0x3f,0xaa,0xf0,0x1a,0x32,0x88);
17999#if defined(__cplusplus) && !defined(CINTERFACE)
18000MIDL_INTERFACE("796e7ac5-5aa2-4eff-acad-3faaf01a3288")
18001IVBSAXLocator : public IDispatch
18002{
18003    virtual HRESULT STDMETHODCALLTYPE get_columnNumber(
18004        int *column) = 0;
18005
18006    virtual HRESULT STDMETHODCALLTYPE get_lineNumber(
18007        int *line) = 0;
18008
18009    virtual HRESULT STDMETHODCALLTYPE get_publicId(
18010        BSTR *publicId) = 0;
18011
18012    virtual HRESULT STDMETHODCALLTYPE get_systemId(
18013        BSTR *systemId) = 0;
18014
18015};
18016#ifdef __CRT_UUID_DECL
18017__CRT_UUID_DECL(IVBSAXLocator, 0x796e7ac5, 0x5aa2, 0x4eff, 0xac,0xad, 0x3f,0xaa,0xf0,0x1a,0x32,0x88)
18018#endif
18019#else
18020typedef struct IVBSAXLocatorVtbl {
18021    BEGIN_INTERFACE
18022
18023    /*** IUnknown methods ***/
18024    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18025        IVBSAXLocator *This,
18026        REFIID riid,
18027        void **ppvObject);
18028
18029    ULONG (STDMETHODCALLTYPE *AddRef)(
18030        IVBSAXLocator *This);
18031
18032    ULONG (STDMETHODCALLTYPE *Release)(
18033        IVBSAXLocator *This);
18034
18035    /*** IDispatch methods ***/
18036    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18037        IVBSAXLocator *This,
18038        UINT *pctinfo);
18039
18040    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18041        IVBSAXLocator *This,
18042        UINT iTInfo,
18043        LCID lcid,
18044        ITypeInfo **ppTInfo);
18045
18046    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18047        IVBSAXLocator *This,
18048        REFIID riid,
18049        LPOLESTR *rgszNames,
18050        UINT cNames,
18051        LCID lcid,
18052        DISPID *rgDispId);
18053
18054    HRESULT (STDMETHODCALLTYPE *Invoke)(
18055        IVBSAXLocator *This,
18056        DISPID dispIdMember,
18057        REFIID riid,
18058        LCID lcid,
18059        WORD wFlags,
18060        DISPPARAMS *pDispParams,
18061        VARIANT *pVarResult,
18062        EXCEPINFO *pExcepInfo,
18063        UINT *puArgErr);
18064
18065    /*** IVBSAXLocator methods ***/
18066    HRESULT (STDMETHODCALLTYPE *get_columnNumber)(
18067        IVBSAXLocator *This,
18068        int *column);
18069
18070    HRESULT (STDMETHODCALLTYPE *get_lineNumber)(
18071        IVBSAXLocator *This,
18072        int *line);
18073
18074    HRESULT (STDMETHODCALLTYPE *get_publicId)(
18075        IVBSAXLocator *This,
18076        BSTR *publicId);
18077
18078    HRESULT (STDMETHODCALLTYPE *get_systemId)(
18079        IVBSAXLocator *This,
18080        BSTR *systemId);
18081
18082    END_INTERFACE
18083} IVBSAXLocatorVtbl;
18084
18085interface IVBSAXLocator {
18086    CONST_VTBL IVBSAXLocatorVtbl* lpVtbl;
18087};
18088
18089#ifdef COBJMACROS
18090#ifndef WIDL_C_INLINE_WRAPPERS
18091/*** IUnknown methods ***/
18092#define IVBSAXLocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18093#define IVBSAXLocator_AddRef(This) (This)->lpVtbl->AddRef(This)
18094#define IVBSAXLocator_Release(This) (This)->lpVtbl->Release(This)
18095/*** IDispatch methods ***/
18096#define IVBSAXLocator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18097#define IVBSAXLocator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18098#define IVBSAXLocator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18099#define IVBSAXLocator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18100/*** IVBSAXLocator methods ***/
18101#define IVBSAXLocator_get_columnNumber(This,column) (This)->lpVtbl->get_columnNumber(This,column)
18102#define IVBSAXLocator_get_lineNumber(This,line) (This)->lpVtbl->get_lineNumber(This,line)
18103#define IVBSAXLocator_get_publicId(This,publicId) (This)->lpVtbl->get_publicId(This,publicId)
18104#define IVBSAXLocator_get_systemId(This,systemId) (This)->lpVtbl->get_systemId(This,systemId)
18105#else
18106/*** IUnknown methods ***/
18107static inline HRESULT IVBSAXLocator_QueryInterface(IVBSAXLocator* This,REFIID riid,void **ppvObject) {
18108    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18109}
18110static inline ULONG IVBSAXLocator_AddRef(IVBSAXLocator* This) {
18111    return This->lpVtbl->AddRef(This);
18112}
18113static inline ULONG IVBSAXLocator_Release(IVBSAXLocator* This) {
18114    return This->lpVtbl->Release(This);
18115}
18116/*** IDispatch methods ***/
18117static inline HRESULT IVBSAXLocator_GetTypeInfoCount(IVBSAXLocator* This,UINT *pctinfo) {
18118    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18119}
18120static inline HRESULT IVBSAXLocator_GetTypeInfo(IVBSAXLocator* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18121    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18122}
18123static inline HRESULT IVBSAXLocator_GetIDsOfNames(IVBSAXLocator* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18124    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18125}
18126static inline HRESULT IVBSAXLocator_Invoke(IVBSAXLocator* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18127    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18128}
18129/*** IVBSAXLocator methods ***/
18130static inline HRESULT IVBSAXLocator_get_columnNumber(IVBSAXLocator* This,int *column) {
18131    return This->lpVtbl->get_columnNumber(This,column);
18132}
18133static inline HRESULT IVBSAXLocator_get_lineNumber(IVBSAXLocator* This,int *line) {
18134    return This->lpVtbl->get_lineNumber(This,line);
18135}
18136static inline HRESULT IVBSAXLocator_get_publicId(IVBSAXLocator* This,BSTR *publicId) {
18137    return This->lpVtbl->get_publicId(This,publicId);
18138}
18139static inline HRESULT IVBSAXLocator_get_systemId(IVBSAXLocator* This,BSTR *systemId) {
18140    return This->lpVtbl->get_systemId(This,systemId);
18141}
18142#endif
18143#endif
18144
18145#endif
18146
18147
18148#endif  /* __IVBSAXLocator_INTERFACE_DEFINED__ */
18149
18150/*****************************************************************************
18151 * IVBSAXXMLFilter interface
18152 */
18153#ifndef __IVBSAXXMLFilter_INTERFACE_DEFINED__
18154#define __IVBSAXXMLFilter_INTERFACE_DEFINED__
18155
18156DEFINE_GUID(IID_IVBSAXXMLFilter, 0x1299eb1b, 0x5b88, 0x433e, 0x82,0xde, 0x82,0xca,0x75,0xad,0x4e,0x04);
18157#if defined(__cplusplus) && !defined(CINTERFACE)
18158MIDL_INTERFACE("1299eb1b-5b88-433e-82de-82ca75ad4e04")
18159IVBSAXXMLFilter : public IDispatch
18160{
18161    virtual HRESULT STDMETHODCALLTYPE get_parent(
18162        IVBSAXXMLReader **reader) = 0;
18163
18164    virtual HRESULT STDMETHODCALLTYPE putref_parent(
18165        IVBSAXXMLReader *reader) = 0;
18166
18167};
18168#ifdef __CRT_UUID_DECL
18169__CRT_UUID_DECL(IVBSAXXMLFilter, 0x1299eb1b, 0x5b88, 0x433e, 0x82,0xde, 0x82,0xca,0x75,0xad,0x4e,0x04)
18170#endif
18171#else
18172typedef struct IVBSAXXMLFilterVtbl {
18173    BEGIN_INTERFACE
18174
18175    /*** IUnknown methods ***/
18176    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18177        IVBSAXXMLFilter *This,
18178        REFIID riid,
18179        void **ppvObject);
18180
18181    ULONG (STDMETHODCALLTYPE *AddRef)(
18182        IVBSAXXMLFilter *This);
18183
18184    ULONG (STDMETHODCALLTYPE *Release)(
18185        IVBSAXXMLFilter *This);
18186
18187    /*** IDispatch methods ***/
18188    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18189        IVBSAXXMLFilter *This,
18190        UINT *pctinfo);
18191
18192    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18193        IVBSAXXMLFilter *This,
18194        UINT iTInfo,
18195        LCID lcid,
18196        ITypeInfo **ppTInfo);
18197
18198    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18199        IVBSAXXMLFilter *This,
18200        REFIID riid,
18201        LPOLESTR *rgszNames,
18202        UINT cNames,
18203        LCID lcid,
18204        DISPID *rgDispId);
18205
18206    HRESULT (STDMETHODCALLTYPE *Invoke)(
18207        IVBSAXXMLFilter *This,
18208        DISPID dispIdMember,
18209        REFIID riid,
18210        LCID lcid,
18211        WORD wFlags,
18212        DISPPARAMS *pDispParams,
18213        VARIANT *pVarResult,
18214        EXCEPINFO *pExcepInfo,
18215        UINT *puArgErr);
18216
18217    /*** IVBSAXXMLFilter methods ***/
18218    HRESULT (STDMETHODCALLTYPE *get_parent)(
18219        IVBSAXXMLFilter *This,
18220        IVBSAXXMLReader **reader);
18221
18222    HRESULT (STDMETHODCALLTYPE *putref_parent)(
18223        IVBSAXXMLFilter *This,
18224        IVBSAXXMLReader *reader);
18225
18226    END_INTERFACE
18227} IVBSAXXMLFilterVtbl;
18228
18229interface IVBSAXXMLFilter {
18230    CONST_VTBL IVBSAXXMLFilterVtbl* lpVtbl;
18231};
18232
18233#ifdef COBJMACROS
18234#ifndef WIDL_C_INLINE_WRAPPERS
18235/*** IUnknown methods ***/
18236#define IVBSAXXMLFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18237#define IVBSAXXMLFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
18238#define IVBSAXXMLFilter_Release(This) (This)->lpVtbl->Release(This)
18239/*** IDispatch methods ***/
18240#define IVBSAXXMLFilter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18241#define IVBSAXXMLFilter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18242#define IVBSAXXMLFilter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18243#define IVBSAXXMLFilter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18244/*** IVBSAXXMLFilter methods ***/
18245#define IVBSAXXMLFilter_get_parent(This,reader) (This)->lpVtbl->get_parent(This,reader)
18246#define IVBSAXXMLFilter_putref_parent(This,reader) (This)->lpVtbl->putref_parent(This,reader)
18247#else
18248/*** IUnknown methods ***/
18249static inline HRESULT IVBSAXXMLFilter_QueryInterface(IVBSAXXMLFilter* This,REFIID riid,void **ppvObject) {
18250    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18251}
18252static inline ULONG IVBSAXXMLFilter_AddRef(IVBSAXXMLFilter* This) {
18253    return This->lpVtbl->AddRef(This);
18254}
18255static inline ULONG IVBSAXXMLFilter_Release(IVBSAXXMLFilter* This) {
18256    return This->lpVtbl->Release(This);
18257}
18258/*** IDispatch methods ***/
18259static inline HRESULT IVBSAXXMLFilter_GetTypeInfoCount(IVBSAXXMLFilter* This,UINT *pctinfo) {
18260    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18261}
18262static inline HRESULT IVBSAXXMLFilter_GetTypeInfo(IVBSAXXMLFilter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18263    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18264}
18265static inline HRESULT IVBSAXXMLFilter_GetIDsOfNames(IVBSAXXMLFilter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18266    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18267}
18268static inline HRESULT IVBSAXXMLFilter_Invoke(IVBSAXXMLFilter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18269    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18270}
18271/*** IVBSAXXMLFilter methods ***/
18272static inline HRESULT IVBSAXXMLFilter_get_parent(IVBSAXXMLFilter* This,IVBSAXXMLReader **reader) {
18273    return This->lpVtbl->get_parent(This,reader);
18274}
18275static inline HRESULT IVBSAXXMLFilter_putref_parent(IVBSAXXMLFilter* This,IVBSAXXMLReader *reader) {
18276    return This->lpVtbl->putref_parent(This,reader);
18277}
18278#endif
18279#endif
18280
18281#endif
18282
18283
18284#endif  /* __IVBSAXXMLFilter_INTERFACE_DEFINED__ */
18285
18286/*****************************************************************************
18287 * IVBSAXXMLReader interface
18288 */
18289#ifndef __IVBSAXXMLReader_INTERFACE_DEFINED__
18290#define __IVBSAXXMLReader_INTERFACE_DEFINED__
18291
18292DEFINE_GUID(IID_IVBSAXXMLReader, 0x8c033caa, 0x6cd6, 0x4f73, 0xb7,0x28, 0x45,0x31,0xaf,0x74,0x94,0x5f);
18293#if defined(__cplusplus) && !defined(CINTERFACE)
18294MIDL_INTERFACE("8c033caa-6cd6-4f73-b728-4531af74945f")
18295IVBSAXXMLReader : public IDispatch
18296{
18297    virtual HRESULT STDMETHODCALLTYPE getFeature(
18298        BSTR pFeature,
18299        VARIANT_BOOL *pValue) = 0;
18300
18301    virtual HRESULT STDMETHODCALLTYPE putFeature(
18302        BSTR pFeature,
18303        VARIANT_BOOL vfValue) = 0;
18304
18305    virtual HRESULT STDMETHODCALLTYPE getProperty(
18306        BSTR pProp,
18307        VARIANT *pValue) = 0;
18308
18309    virtual HRESULT STDMETHODCALLTYPE putProperty(
18310        BSTR pProp,
18311        VARIANT value) = 0;
18312
18313    virtual HRESULT STDMETHODCALLTYPE get_entityResolver(
18314        IVBSAXEntityResolver **ppEntityResolver) = 0;
18315
18316    virtual HRESULT STDMETHODCALLTYPE putref_entityResolver(
18317        IVBSAXEntityResolver *pEntityResolver) = 0;
18318
18319    virtual HRESULT STDMETHODCALLTYPE get_contentHandler(
18320        IVBSAXContentHandler **pContentHandler) = 0;
18321
18322    virtual HRESULT STDMETHODCALLTYPE putref_contentHandler(
18323        IVBSAXContentHandler *contentHandler) = 0;
18324
18325    virtual HRESULT STDMETHODCALLTYPE get_dtdHandler(
18326        IVBSAXDTDHandler **pDTDHandler) = 0;
18327
18328    virtual HRESULT STDMETHODCALLTYPE putref_dtdHandler(
18329        IVBSAXDTDHandler *pDTDHandler) = 0;
18330
18331    virtual HRESULT STDMETHODCALLTYPE get_errorHandler(
18332        IVBSAXErrorHandler **pErrorHandler) = 0;
18333
18334    virtual HRESULT STDMETHODCALLTYPE putref_errorHandler(
18335        IVBSAXErrorHandler *errorHandler) = 0;
18336
18337    virtual HRESULT STDMETHODCALLTYPE get_baseURL(
18338        BSTR *pBaseUrl) = 0;
18339
18340    virtual HRESULT STDMETHODCALLTYPE put_baseURL(
18341        BSTR pBaseUrl) = 0;
18342
18343    virtual HRESULT STDMETHODCALLTYPE get_secureBaseURL(
18344        BSTR *pSecureBaseUrl) = 0;
18345
18346    virtual HRESULT STDMETHODCALLTYPE put_secureBaseURL(
18347        BSTR secureBaseUrl) = 0;
18348
18349    virtual HRESULT STDMETHODCALLTYPE parse(
18350        VARIANT varInput) = 0;
18351
18352    virtual HRESULT STDMETHODCALLTYPE parseURL(
18353        BSTR url) = 0;
18354
18355};
18356#ifdef __CRT_UUID_DECL
18357__CRT_UUID_DECL(IVBSAXXMLReader, 0x8c033caa, 0x6cd6, 0x4f73, 0xb7,0x28, 0x45,0x31,0xaf,0x74,0x94,0x5f)
18358#endif
18359#else
18360typedef struct IVBSAXXMLReaderVtbl {
18361    BEGIN_INTERFACE
18362
18363    /*** IUnknown methods ***/
18364    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18365        IVBSAXXMLReader *This,
18366        REFIID riid,
18367        void **ppvObject);
18368
18369    ULONG (STDMETHODCALLTYPE *AddRef)(
18370        IVBSAXXMLReader *This);
18371
18372    ULONG (STDMETHODCALLTYPE *Release)(
18373        IVBSAXXMLReader *This);
18374
18375    /*** IDispatch methods ***/
18376    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18377        IVBSAXXMLReader *This,
18378        UINT *pctinfo);
18379
18380    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18381        IVBSAXXMLReader *This,
18382        UINT iTInfo,
18383        LCID lcid,
18384        ITypeInfo **ppTInfo);
18385
18386    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18387        IVBSAXXMLReader *This,
18388        REFIID riid,
18389        LPOLESTR *rgszNames,
18390        UINT cNames,
18391        LCID lcid,
18392        DISPID *rgDispId);
18393
18394    HRESULT (STDMETHODCALLTYPE *Invoke)(
18395        IVBSAXXMLReader *This,
18396        DISPID dispIdMember,
18397        REFIID riid,
18398        LCID lcid,
18399        WORD wFlags,
18400        DISPPARAMS *pDispParams,
18401        VARIANT *pVarResult,
18402        EXCEPINFO *pExcepInfo,
18403        UINT *puArgErr);
18404
18405    /*** IVBSAXXMLReader methods ***/
18406    HRESULT (STDMETHODCALLTYPE *getFeature)(
18407        IVBSAXXMLReader *This,
18408        BSTR pFeature,
18409        VARIANT_BOOL *pValue);
18410
18411    HRESULT (STDMETHODCALLTYPE *putFeature)(
18412        IVBSAXXMLReader *This,
18413        BSTR pFeature,
18414        VARIANT_BOOL vfValue);
18415
18416    HRESULT (STDMETHODCALLTYPE *getProperty)(
18417        IVBSAXXMLReader *This,
18418        BSTR pProp,
18419        VARIANT *pValue);
18420
18421    HRESULT (STDMETHODCALLTYPE *putProperty)(
18422        IVBSAXXMLReader *This,
18423        BSTR pProp,
18424        VARIANT value);
18425
18426    HRESULT (STDMETHODCALLTYPE *get_entityResolver)(
18427        IVBSAXXMLReader *This,
18428        IVBSAXEntityResolver **ppEntityResolver);
18429
18430    HRESULT (STDMETHODCALLTYPE *putref_entityResolver)(
18431        IVBSAXXMLReader *This,
18432        IVBSAXEntityResolver *pEntityResolver);
18433
18434    HRESULT (STDMETHODCALLTYPE *get_contentHandler)(
18435        IVBSAXXMLReader *This,
18436        IVBSAXContentHandler **pContentHandler);
18437
18438    HRESULT (STDMETHODCALLTYPE *putref_contentHandler)(
18439        IVBSAXXMLReader *This,
18440        IVBSAXContentHandler *contentHandler);
18441
18442    HRESULT (STDMETHODCALLTYPE *get_dtdHandler)(
18443        IVBSAXXMLReader *This,
18444        IVBSAXDTDHandler **pDTDHandler);
18445
18446    HRESULT (STDMETHODCALLTYPE *putref_dtdHandler)(
18447        IVBSAXXMLReader *This,
18448        IVBSAXDTDHandler *pDTDHandler);
18449
18450    HRESULT (STDMETHODCALLTYPE *get_errorHandler)(
18451        IVBSAXXMLReader *This,
18452        IVBSAXErrorHandler **pErrorHandler);
18453
18454    HRESULT (STDMETHODCALLTYPE *putref_errorHandler)(
18455        IVBSAXXMLReader *This,
18456        IVBSAXErrorHandler *errorHandler);
18457
18458    HRESULT (STDMETHODCALLTYPE *get_baseURL)(
18459        IVBSAXXMLReader *This,
18460        BSTR *pBaseUrl);
18461
18462    HRESULT (STDMETHODCALLTYPE *put_baseURL)(
18463        IVBSAXXMLReader *This,
18464        BSTR pBaseUrl);
18465
18466    HRESULT (STDMETHODCALLTYPE *get_secureBaseURL)(
18467        IVBSAXXMLReader *This,
18468        BSTR *pSecureBaseUrl);
18469
18470    HRESULT (STDMETHODCALLTYPE *put_secureBaseURL)(
18471        IVBSAXXMLReader *This,
18472        BSTR secureBaseUrl);
18473
18474    HRESULT (STDMETHODCALLTYPE *parse)(
18475        IVBSAXXMLReader *This,
18476        VARIANT varInput);
18477
18478    HRESULT (STDMETHODCALLTYPE *parseURL)(
18479        IVBSAXXMLReader *This,
18480        BSTR url);
18481
18482    END_INTERFACE
18483} IVBSAXXMLReaderVtbl;
18484
18485interface IVBSAXXMLReader {
18486    CONST_VTBL IVBSAXXMLReaderVtbl* lpVtbl;
18487};
18488
18489#ifdef COBJMACROS
18490#ifndef WIDL_C_INLINE_WRAPPERS
18491/*** IUnknown methods ***/
18492#define IVBSAXXMLReader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18493#define IVBSAXXMLReader_AddRef(This) (This)->lpVtbl->AddRef(This)
18494#define IVBSAXXMLReader_Release(This) (This)->lpVtbl->Release(This)
18495/*** IDispatch methods ***/
18496#define IVBSAXXMLReader_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18497#define IVBSAXXMLReader_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18498#define IVBSAXXMLReader_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18499#define IVBSAXXMLReader_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18500/*** IVBSAXXMLReader methods ***/
18501#define IVBSAXXMLReader_getFeature(This,pFeature,pValue) (This)->lpVtbl->getFeature(This,pFeature,pValue)
18502#define IVBSAXXMLReader_putFeature(This,pFeature,vfValue) (This)->lpVtbl->putFeature(This,pFeature,vfValue)
18503#define IVBSAXXMLReader_getProperty(This,pProp,pValue) (This)->lpVtbl->getProperty(This,pProp,pValue)
18504#define IVBSAXXMLReader_putProperty(This,pProp,value) (This)->lpVtbl->putProperty(This,pProp,value)
18505#define IVBSAXXMLReader_get_entityResolver(This,ppEntityResolver) (This)->lpVtbl->get_entityResolver(This,ppEntityResolver)
18506#define IVBSAXXMLReader_putref_entityResolver(This,pEntityResolver) (This)->lpVtbl->putref_entityResolver(This,pEntityResolver)
18507#define IVBSAXXMLReader_get_contentHandler(This,pContentHandler) (This)->lpVtbl->get_contentHandler(This,pContentHandler)
18508#define IVBSAXXMLReader_putref_contentHandler(This,contentHandler) (This)->lpVtbl->putref_contentHandler(This,contentHandler)
18509#define IVBSAXXMLReader_get_dtdHandler(This,pDTDHandler) (This)->lpVtbl->get_dtdHandler(This,pDTDHandler)
18510#define IVBSAXXMLReader_putref_dtdHandler(This,pDTDHandler) (This)->lpVtbl->putref_dtdHandler(This,pDTDHandler)
18511#define IVBSAXXMLReader_get_errorHandler(This,pErrorHandler) (This)->lpVtbl->get_errorHandler(This,pErrorHandler)
18512#define IVBSAXXMLReader_putref_errorHandler(This,errorHandler) (This)->lpVtbl->putref_errorHandler(This,errorHandler)
18513#define IVBSAXXMLReader_get_baseURL(This,pBaseUrl) (This)->lpVtbl->get_baseURL(This,pBaseUrl)
18514#define IVBSAXXMLReader_put_baseURL(This,pBaseUrl) (This)->lpVtbl->put_baseURL(This,pBaseUrl)
18515#define IVBSAXXMLReader_get_secureBaseURL(This,pSecureBaseUrl) (This)->lpVtbl->get_secureBaseURL(This,pSecureBaseUrl)
18516#define IVBSAXXMLReader_put_secureBaseURL(This,secureBaseUrl) (This)->lpVtbl->put_secureBaseURL(This,secureBaseUrl)
18517#define IVBSAXXMLReader_parse(This,varInput) (This)->lpVtbl->parse(This,varInput)
18518#define IVBSAXXMLReader_parseURL(This,url) (This)->lpVtbl->parseURL(This,url)
18519#else
18520/*** IUnknown methods ***/
18521static inline HRESULT IVBSAXXMLReader_QueryInterface(IVBSAXXMLReader* This,REFIID riid,void **ppvObject) {
18522    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18523}
18524static inline ULONG IVBSAXXMLReader_AddRef(IVBSAXXMLReader* This) {
18525    return This->lpVtbl->AddRef(This);
18526}
18527static inline ULONG IVBSAXXMLReader_Release(IVBSAXXMLReader* This) {
18528    return This->lpVtbl->Release(This);
18529}
18530/*** IDispatch methods ***/
18531static inline HRESULT IVBSAXXMLReader_GetTypeInfoCount(IVBSAXXMLReader* This,UINT *pctinfo) {
18532    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18533}
18534static inline HRESULT IVBSAXXMLReader_GetTypeInfo(IVBSAXXMLReader* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18535    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18536}
18537static inline HRESULT IVBSAXXMLReader_GetIDsOfNames(IVBSAXXMLReader* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18538    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18539}
18540static inline HRESULT IVBSAXXMLReader_Invoke(IVBSAXXMLReader* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18541    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18542}
18543/*** IVBSAXXMLReader methods ***/
18544static inline HRESULT IVBSAXXMLReader_getFeature(IVBSAXXMLReader* This,BSTR pFeature,VARIANT_BOOL *pValue) {
18545    return This->lpVtbl->getFeature(This,pFeature,pValue);
18546}
18547static inline HRESULT IVBSAXXMLReader_putFeature(IVBSAXXMLReader* This,BSTR pFeature,VARIANT_BOOL vfValue) {
18548    return This->lpVtbl->putFeature(This,pFeature,vfValue);
18549}
18550static inline HRESULT IVBSAXXMLReader_getProperty(IVBSAXXMLReader* This,BSTR pProp,VARIANT *pValue) {
18551    return This->lpVtbl->getProperty(This,pProp,pValue);
18552}
18553static inline HRESULT IVBSAXXMLReader_putProperty(IVBSAXXMLReader* This,BSTR pProp,VARIANT value) {
18554    return This->lpVtbl->putProperty(This,pProp,value);
18555}
18556static inline HRESULT IVBSAXXMLReader_get_entityResolver(IVBSAXXMLReader* This,IVBSAXEntityResolver **ppEntityResolver) {
18557    return This->lpVtbl->get_entityResolver(This,ppEntityResolver);
18558}
18559static inline HRESULT IVBSAXXMLReader_putref_entityResolver(IVBSAXXMLReader* This,IVBSAXEntityResolver *pEntityResolver) {
18560    return This->lpVtbl->putref_entityResolver(This,pEntityResolver);
18561}
18562static inline HRESULT IVBSAXXMLReader_get_contentHandler(IVBSAXXMLReader* This,IVBSAXContentHandler **pContentHandler) {
18563    return This->lpVtbl->get_contentHandler(This,pContentHandler);
18564}
18565static inline HRESULT IVBSAXXMLReader_putref_contentHandler(IVBSAXXMLReader* This,IVBSAXContentHandler *contentHandler) {
18566    return This->lpVtbl->putref_contentHandler(This,contentHandler);
18567}
18568static inline HRESULT IVBSAXXMLReader_get_dtdHandler(IVBSAXXMLReader* This,IVBSAXDTDHandler **pDTDHandler) {
18569    return This->lpVtbl->get_dtdHandler(This,pDTDHandler);
18570}
18571static inline HRESULT IVBSAXXMLReader_putref_dtdHandler(IVBSAXXMLReader* This,IVBSAXDTDHandler *pDTDHandler) {
18572    return This->lpVtbl->putref_dtdHandler(This,pDTDHandler);
18573}
18574static inline HRESULT IVBSAXXMLReader_get_errorHandler(IVBSAXXMLReader* This,IVBSAXErrorHandler **pErrorHandler) {
18575    return This->lpVtbl->get_errorHandler(This,pErrorHandler);
18576}
18577static inline HRESULT IVBSAXXMLReader_putref_errorHandler(IVBSAXXMLReader* This,IVBSAXErrorHandler *errorHandler) {
18578    return This->lpVtbl->putref_errorHandler(This,errorHandler);
18579}
18580static inline HRESULT IVBSAXXMLReader_get_baseURL(IVBSAXXMLReader* This,BSTR *pBaseUrl) {
18581    return This->lpVtbl->get_baseURL(This,pBaseUrl);
18582}
18583static inline HRESULT IVBSAXXMLReader_put_baseURL(IVBSAXXMLReader* This,BSTR pBaseUrl) {
18584    return This->lpVtbl->put_baseURL(This,pBaseUrl);
18585}
18586static inline HRESULT IVBSAXXMLReader_get_secureBaseURL(IVBSAXXMLReader* This,BSTR *pSecureBaseUrl) {
18587    return This->lpVtbl->get_secureBaseURL(This,pSecureBaseUrl);
18588}
18589static inline HRESULT IVBSAXXMLReader_put_secureBaseURL(IVBSAXXMLReader* This,BSTR secureBaseUrl) {
18590    return This->lpVtbl->put_secureBaseURL(This,secureBaseUrl);
18591}
18592static inline HRESULT IVBSAXXMLReader_parse(IVBSAXXMLReader* This,VARIANT varInput) {
18593    return This->lpVtbl->parse(This,varInput);
18594}
18595static inline HRESULT IVBSAXXMLReader_parseURL(IVBSAXXMLReader* This,BSTR url) {
18596    return This->lpVtbl->parseURL(This,url);
18597}
18598#endif
18599#endif
18600
18601#endif
18602
18603
18604#endif  /* __IVBSAXXMLReader_INTERFACE_DEFINED__ */
18605
18606/*****************************************************************************
18607 * IMXAttributes interface
18608 */
18609#ifndef __IMXAttributes_INTERFACE_DEFINED__
18610#define __IMXAttributes_INTERFACE_DEFINED__
18611
18612DEFINE_GUID(IID_IMXAttributes, 0xf10d27cc, 0x3ec0, 0x415c, 0x8e,0xd8, 0x77,0xab,0x1c,0x5e,0x72,0x62);
18613#if defined(__cplusplus) && !defined(CINTERFACE)
18614MIDL_INTERFACE("f10d27cc-3ec0-415c-8ed8-77ab1c5e7262")
18615IMXAttributes : public IDispatch
18616{
18617    virtual HRESULT STDMETHODCALLTYPE addAttribute(
18618        BSTR uri,
18619        BSTR localName,
18620        BSTR QName,
18621        BSTR type,
18622        BSTR value) = 0;
18623
18624    virtual HRESULT STDMETHODCALLTYPE addAttributeFromIndex(
18625        VARIANT atts,
18626        int index) = 0;
18627
18628    virtual HRESULT STDMETHODCALLTYPE clear(
18629        ) = 0;
18630
18631    virtual HRESULT STDMETHODCALLTYPE removeAttribute(
18632        int index) = 0;
18633
18634    virtual HRESULT STDMETHODCALLTYPE setAttribute(
18635        int index,
18636        BSTR uri,
18637        BSTR localName,
18638        BSTR QName,
18639        BSTR type,
18640        BSTR value) = 0;
18641
18642    virtual HRESULT STDMETHODCALLTYPE setAttributes(
18643        VARIANT atts) = 0;
18644
18645    virtual HRESULT STDMETHODCALLTYPE setLocalName(
18646        int index,
18647        BSTR localName) = 0;
18648
18649    virtual HRESULT STDMETHODCALLTYPE setQName(
18650        int index,
18651        BSTR QName) = 0;
18652
18653    virtual HRESULT STDMETHODCALLTYPE setType(
18654        int index,
18655        BSTR type) = 0;
18656
18657    virtual HRESULT STDMETHODCALLTYPE setURI(
18658        int index,
18659        BSTR uri) = 0;
18660
18661    virtual HRESULT STDMETHODCALLTYPE setValue(
18662        int index,
18663        BSTR value) = 0;
18664
18665};
18666#ifdef __CRT_UUID_DECL
18667__CRT_UUID_DECL(IMXAttributes, 0xf10d27cc, 0x3ec0, 0x415c, 0x8e,0xd8, 0x77,0xab,0x1c,0x5e,0x72,0x62)
18668#endif
18669#else
18670typedef struct IMXAttributesVtbl {
18671    BEGIN_INTERFACE
18672
18673    /*** IUnknown methods ***/
18674    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18675        IMXAttributes *This,
18676        REFIID riid,
18677        void **ppvObject);
18678
18679    ULONG (STDMETHODCALLTYPE *AddRef)(
18680        IMXAttributes *This);
18681
18682    ULONG (STDMETHODCALLTYPE *Release)(
18683        IMXAttributes *This);
18684
18685    /*** IDispatch methods ***/
18686    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18687        IMXAttributes *This,
18688        UINT *pctinfo);
18689
18690    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18691        IMXAttributes *This,
18692        UINT iTInfo,
18693        LCID lcid,
18694        ITypeInfo **ppTInfo);
18695
18696    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18697        IMXAttributes *This,
18698        REFIID riid,
18699        LPOLESTR *rgszNames,
18700        UINT cNames,
18701        LCID lcid,
18702        DISPID *rgDispId);
18703
18704    HRESULT (STDMETHODCALLTYPE *Invoke)(
18705        IMXAttributes *This,
18706        DISPID dispIdMember,
18707        REFIID riid,
18708        LCID lcid,
18709        WORD wFlags,
18710        DISPPARAMS *pDispParams,
18711        VARIANT *pVarResult,
18712        EXCEPINFO *pExcepInfo,
18713        UINT *puArgErr);
18714
18715    /*** IMXAttributes methods ***/
18716    HRESULT (STDMETHODCALLTYPE *addAttribute)(
18717        IMXAttributes *This,
18718        BSTR uri,
18719        BSTR localName,
18720        BSTR QName,
18721        BSTR type,
18722        BSTR value);
18723
18724    HRESULT (STDMETHODCALLTYPE *addAttributeFromIndex)(
18725        IMXAttributes *This,
18726        VARIANT atts,
18727        int index);
18728
18729    HRESULT (STDMETHODCALLTYPE *clear)(
18730        IMXAttributes *This);
18731
18732    HRESULT (STDMETHODCALLTYPE *removeAttribute)(
18733        IMXAttributes *This,
18734        int index);
18735
18736    HRESULT (STDMETHODCALLTYPE *setAttribute)(
18737        IMXAttributes *This,
18738        int index,
18739        BSTR uri,
18740        BSTR localName,
18741        BSTR QName,
18742        BSTR type,
18743        BSTR value);
18744
18745    HRESULT (STDMETHODCALLTYPE *setAttributes)(
18746        IMXAttributes *This,
18747        VARIANT atts);
18748
18749    HRESULT (STDMETHODCALLTYPE *setLocalName)(
18750        IMXAttributes *This,
18751        int index,
18752        BSTR localName);
18753
18754    HRESULT (STDMETHODCALLTYPE *setQName)(
18755        IMXAttributes *This,
18756        int index,
18757        BSTR QName);
18758
18759    HRESULT (STDMETHODCALLTYPE *setType)(
18760        IMXAttributes *This,
18761        int index,
18762        BSTR type);
18763
18764    HRESULT (STDMETHODCALLTYPE *setURI)(
18765        IMXAttributes *This,
18766        int index,
18767        BSTR uri);
18768
18769    HRESULT (STDMETHODCALLTYPE *setValue)(
18770        IMXAttributes *This,
18771        int index,
18772        BSTR value);
18773
18774    END_INTERFACE
18775} IMXAttributesVtbl;
18776
18777interface IMXAttributes {
18778    CONST_VTBL IMXAttributesVtbl* lpVtbl;
18779};
18780
18781#ifdef COBJMACROS
18782#ifndef WIDL_C_INLINE_WRAPPERS
18783/*** IUnknown methods ***/
18784#define IMXAttributes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18785#define IMXAttributes_AddRef(This) (This)->lpVtbl->AddRef(This)
18786#define IMXAttributes_Release(This) (This)->lpVtbl->Release(This)
18787/*** IDispatch methods ***/
18788#define IMXAttributes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18789#define IMXAttributes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18790#define IMXAttributes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18791#define IMXAttributes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18792/*** IMXAttributes methods ***/
18793#define IMXAttributes_addAttribute(This,uri,localName,QName,type,value) (This)->lpVtbl->addAttribute(This,uri,localName,QName,type,value)
18794#define IMXAttributes_addAttributeFromIndex(This,atts,index) (This)->lpVtbl->addAttributeFromIndex(This,atts,index)
18795#define IMXAttributes_clear(This) (This)->lpVtbl->clear(This)
18796#define IMXAttributes_removeAttribute(This,index) (This)->lpVtbl->removeAttribute(This,index)
18797#define IMXAttributes_setAttribute(This,index,uri,localName,QName,type,value) (This)->lpVtbl->setAttribute(This,index,uri,localName,QName,type,value)
18798#define IMXAttributes_setAttributes(This,atts) (This)->lpVtbl->setAttributes(This,atts)
18799#define IMXAttributes_setLocalName(This,index,localName) (This)->lpVtbl->setLocalName(This,index,localName)
18800#define IMXAttributes_setQName(This,index,QName) (This)->lpVtbl->setQName(This,index,QName)
18801#define IMXAttributes_setType(This,index,type) (This)->lpVtbl->setType(This,index,type)
18802#define IMXAttributes_setURI(This,index,uri) (This)->lpVtbl->setURI(This,index,uri)
18803#define IMXAttributes_setValue(This,index,value) (This)->lpVtbl->setValue(This,index,value)
18804#else
18805/*** IUnknown methods ***/
18806static inline HRESULT IMXAttributes_QueryInterface(IMXAttributes* This,REFIID riid,void **ppvObject) {
18807    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18808}
18809static inline ULONG IMXAttributes_AddRef(IMXAttributes* This) {
18810    return This->lpVtbl->AddRef(This);
18811}
18812static inline ULONG IMXAttributes_Release(IMXAttributes* This) {
18813    return This->lpVtbl->Release(This);
18814}
18815/*** IDispatch methods ***/
18816static inline HRESULT IMXAttributes_GetTypeInfoCount(IMXAttributes* This,UINT *pctinfo) {
18817    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18818}
18819static inline HRESULT IMXAttributes_GetTypeInfo(IMXAttributes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18820    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18821}
18822static inline HRESULT IMXAttributes_GetIDsOfNames(IMXAttributes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18823    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18824}
18825static inline HRESULT IMXAttributes_Invoke(IMXAttributes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18826    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18827}
18828/*** IMXAttributes methods ***/
18829static inline HRESULT IMXAttributes_addAttribute(IMXAttributes* This,BSTR uri,BSTR localName,BSTR QName,BSTR type,BSTR value) {
18830    return This->lpVtbl->addAttribute(This,uri,localName,QName,type,value);
18831}
18832static inline HRESULT IMXAttributes_addAttributeFromIndex(IMXAttributes* This,VARIANT atts,int index) {
18833    return This->lpVtbl->addAttributeFromIndex(This,atts,index);
18834}
18835static inline HRESULT IMXAttributes_clear(IMXAttributes* This) {
18836    return This->lpVtbl->clear(This);
18837}
18838static inline HRESULT IMXAttributes_removeAttribute(IMXAttributes* This,int index) {
18839    return This->lpVtbl->removeAttribute(This,index);
18840}
18841static inline HRESULT IMXAttributes_setAttribute(IMXAttributes* This,int index,BSTR uri,BSTR localName,BSTR QName,BSTR type,BSTR value) {
18842    return This->lpVtbl->setAttribute(This,index,uri,localName,QName,type,value);
18843}
18844static inline HRESULT IMXAttributes_setAttributes(IMXAttributes* This,VARIANT atts) {
18845    return This->lpVtbl->setAttributes(This,atts);
18846}
18847static inline HRESULT IMXAttributes_setLocalName(IMXAttributes* This,int index,BSTR localName) {
18848    return This->lpVtbl->setLocalName(This,index,localName);
18849}
18850static inline HRESULT IMXAttributes_setQName(IMXAttributes* This,int index,BSTR QName) {
18851    return This->lpVtbl->setQName(This,index,QName);
18852}
18853static inline HRESULT IMXAttributes_setType(IMXAttributes* This,int index,BSTR type) {
18854    return This->lpVtbl->setType(This,index,type);
18855}
18856static inline HRESULT IMXAttributes_setURI(IMXAttributes* This,int index,BSTR uri) {
18857    return This->lpVtbl->setURI(This,index,uri);
18858}
18859static inline HRESULT IMXAttributes_setValue(IMXAttributes* This,int index,BSTR value) {
18860    return This->lpVtbl->setValue(This,index,value);
18861}
18862#endif
18863#endif
18864
18865#endif
18866
18867
18868#endif  /* __IMXAttributes_INTERFACE_DEFINED__ */
18869
18870/*****************************************************************************
18871 * IMXSchemaDeclHandler interface
18872 */
18873#ifndef __IMXSchemaDeclHandler_INTERFACE_DEFINED__
18874#define __IMXSchemaDeclHandler_INTERFACE_DEFINED__
18875
18876DEFINE_GUID(IID_IMXSchemaDeclHandler, 0xfa4bb38c, 0xfaf9, 0x4cca, 0x93,0x02, 0xd1,0xdd,0x0f,0xe5,0x20,0xdb);
18877#if defined(__cplusplus) && !defined(CINTERFACE)
18878MIDL_INTERFACE("fa4bb38c-faf9-4cca-9302-d1dd0fe520db")
18879IMXSchemaDeclHandler : public IDispatch
18880{
18881    virtual HRESULT STDMETHODCALLTYPE schemaElementDecl(
18882        ISchemaElement *oSchemaElement) = 0;
18883
18884};
18885#ifdef __CRT_UUID_DECL
18886__CRT_UUID_DECL(IMXSchemaDeclHandler, 0xfa4bb38c, 0xfaf9, 0x4cca, 0x93,0x02, 0xd1,0xdd,0x0f,0xe5,0x20,0xdb)
18887#endif
18888#else
18889typedef struct IMXSchemaDeclHandlerVtbl {
18890    BEGIN_INTERFACE
18891
18892    /*** IUnknown methods ***/
18893    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
18894        IMXSchemaDeclHandler *This,
18895        REFIID riid,
18896        void **ppvObject);
18897
18898    ULONG (STDMETHODCALLTYPE *AddRef)(
18899        IMXSchemaDeclHandler *This);
18900
18901    ULONG (STDMETHODCALLTYPE *Release)(
18902        IMXSchemaDeclHandler *This);
18903
18904    /*** IDispatch methods ***/
18905    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
18906        IMXSchemaDeclHandler *This,
18907        UINT *pctinfo);
18908
18909    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
18910        IMXSchemaDeclHandler *This,
18911        UINT iTInfo,
18912        LCID lcid,
18913        ITypeInfo **ppTInfo);
18914
18915    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
18916        IMXSchemaDeclHandler *This,
18917        REFIID riid,
18918        LPOLESTR *rgszNames,
18919        UINT cNames,
18920        LCID lcid,
18921        DISPID *rgDispId);
18922
18923    HRESULT (STDMETHODCALLTYPE *Invoke)(
18924        IMXSchemaDeclHandler *This,
18925        DISPID dispIdMember,
18926        REFIID riid,
18927        LCID lcid,
18928        WORD wFlags,
18929        DISPPARAMS *pDispParams,
18930        VARIANT *pVarResult,
18931        EXCEPINFO *pExcepInfo,
18932        UINT *puArgErr);
18933
18934    /*** IMXSchemaDeclHandler methods ***/
18935    HRESULT (STDMETHODCALLTYPE *schemaElementDecl)(
18936        IMXSchemaDeclHandler *This,
18937        ISchemaElement *oSchemaElement);
18938
18939    END_INTERFACE
18940} IMXSchemaDeclHandlerVtbl;
18941
18942interface IMXSchemaDeclHandler {
18943    CONST_VTBL IMXSchemaDeclHandlerVtbl* lpVtbl;
18944};
18945
18946#ifdef COBJMACROS
18947#ifndef WIDL_C_INLINE_WRAPPERS
18948/*** IUnknown methods ***/
18949#define IMXSchemaDeclHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
18950#define IMXSchemaDeclHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
18951#define IMXSchemaDeclHandler_Release(This) (This)->lpVtbl->Release(This)
18952/*** IDispatch methods ***/
18953#define IMXSchemaDeclHandler_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
18954#define IMXSchemaDeclHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
18955#define IMXSchemaDeclHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
18956#define IMXSchemaDeclHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
18957/*** IMXSchemaDeclHandler methods ***/
18958#define IMXSchemaDeclHandler_schemaElementDecl(This,oSchemaElement) (This)->lpVtbl->schemaElementDecl(This,oSchemaElement)
18959#else
18960/*** IUnknown methods ***/
18961static inline HRESULT IMXSchemaDeclHandler_QueryInterface(IMXSchemaDeclHandler* This,REFIID riid,void **ppvObject) {
18962    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
18963}
18964static inline ULONG IMXSchemaDeclHandler_AddRef(IMXSchemaDeclHandler* This) {
18965    return This->lpVtbl->AddRef(This);
18966}
18967static inline ULONG IMXSchemaDeclHandler_Release(IMXSchemaDeclHandler* This) {
18968    return This->lpVtbl->Release(This);
18969}
18970/*** IDispatch methods ***/
18971static inline HRESULT IMXSchemaDeclHandler_GetTypeInfoCount(IMXSchemaDeclHandler* This,UINT *pctinfo) {
18972    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
18973}
18974static inline HRESULT IMXSchemaDeclHandler_GetTypeInfo(IMXSchemaDeclHandler* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
18975    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
18976}
18977static inline HRESULT IMXSchemaDeclHandler_GetIDsOfNames(IMXSchemaDeclHandler* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
18978    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
18979}
18980static inline HRESULT IMXSchemaDeclHandler_Invoke(IMXSchemaDeclHandler* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
18981    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
18982}
18983/*** IMXSchemaDeclHandler methods ***/
18984static inline HRESULT IMXSchemaDeclHandler_schemaElementDecl(IMXSchemaDeclHandler* This,ISchemaElement *oSchemaElement) {
18985    return This->lpVtbl->schemaElementDecl(This,oSchemaElement);
18986}
18987#endif
18988#endif
18989
18990#endif
18991
18992
18993#endif  /* __IMXSchemaDeclHandler_INTERFACE_DEFINED__ */
18994
18995/*****************************************************************************
18996 * IMXReaderControl interface
18997 */
18998#ifndef __IMXReaderControl_INTERFACE_DEFINED__
18999#define __IMXReaderControl_INTERFACE_DEFINED__
19000
19001DEFINE_GUID(IID_IMXReaderControl, 0x808f4e35, 0x8d5a, 0x4fbe, 0x84,0x66, 0x33,0xa4,0x12,0x79,0xed,0x30);
19002#if defined(__cplusplus) && !defined(CINTERFACE)
19003MIDL_INTERFACE("808f4e35-8d5a-4fbe-8466-33a41279ed30")
19004IMXReaderControl : public IDispatch
19005{
19006    virtual HRESULT STDMETHODCALLTYPE abort(
19007        ) = 0;
19008
19009    virtual HRESULT STDMETHODCALLTYPE resume(
19010        ) = 0;
19011
19012    virtual HRESULT STDMETHODCALLTYPE suspend(
19013        ) = 0;
19014
19015};
19016#ifdef __CRT_UUID_DECL
19017__CRT_UUID_DECL(IMXReaderControl, 0x808f4e35, 0x8d5a, 0x4fbe, 0x84,0x66, 0x33,0xa4,0x12,0x79,0xed,0x30)
19018#endif
19019#else
19020typedef struct IMXReaderControlVtbl {
19021    BEGIN_INTERFACE
19022
19023    /*** IUnknown methods ***/
19024    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19025        IMXReaderControl *This,
19026        REFIID riid,
19027        void **ppvObject);
19028
19029    ULONG (STDMETHODCALLTYPE *AddRef)(
19030        IMXReaderControl *This);
19031
19032    ULONG (STDMETHODCALLTYPE *Release)(
19033        IMXReaderControl *This);
19034
19035    /*** IDispatch methods ***/
19036    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19037        IMXReaderControl *This,
19038        UINT *pctinfo);
19039
19040    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19041        IMXReaderControl *This,
19042        UINT iTInfo,
19043        LCID lcid,
19044        ITypeInfo **ppTInfo);
19045
19046    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19047        IMXReaderControl *This,
19048        REFIID riid,
19049        LPOLESTR *rgszNames,
19050        UINT cNames,
19051        LCID lcid,
19052        DISPID *rgDispId);
19053
19054    HRESULT (STDMETHODCALLTYPE *Invoke)(
19055        IMXReaderControl *This,
19056        DISPID dispIdMember,
19057        REFIID riid,
19058        LCID lcid,
19059        WORD wFlags,
19060        DISPPARAMS *pDispParams,
19061        VARIANT *pVarResult,
19062        EXCEPINFO *pExcepInfo,
19063        UINT *puArgErr);
19064
19065    /*** IMXReaderControl methods ***/
19066    HRESULT (STDMETHODCALLTYPE *abort)(
19067        IMXReaderControl *This);
19068
19069    HRESULT (STDMETHODCALLTYPE *resume)(
19070        IMXReaderControl *This);
19071
19072    HRESULT (STDMETHODCALLTYPE *suspend)(
19073        IMXReaderControl *This);
19074
19075    END_INTERFACE
19076} IMXReaderControlVtbl;
19077
19078interface IMXReaderControl {
19079    CONST_VTBL IMXReaderControlVtbl* lpVtbl;
19080};
19081
19082#ifdef COBJMACROS
19083#ifndef WIDL_C_INLINE_WRAPPERS
19084/*** IUnknown methods ***/
19085#define IMXReaderControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19086#define IMXReaderControl_AddRef(This) (This)->lpVtbl->AddRef(This)
19087#define IMXReaderControl_Release(This) (This)->lpVtbl->Release(This)
19088/*** IDispatch methods ***/
19089#define IMXReaderControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19090#define IMXReaderControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19091#define IMXReaderControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19092#define IMXReaderControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19093/*** IMXReaderControl methods ***/
19094#define IMXReaderControl_abort(This) (This)->lpVtbl->abort(This)
19095#define IMXReaderControl_resume(This) (This)->lpVtbl->resume(This)
19096#define IMXReaderControl_suspend(This) (This)->lpVtbl->suspend(This)
19097#else
19098/*** IUnknown methods ***/
19099static inline HRESULT IMXReaderControl_QueryInterface(IMXReaderControl* This,REFIID riid,void **ppvObject) {
19100    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19101}
19102static inline ULONG IMXReaderControl_AddRef(IMXReaderControl* This) {
19103    return This->lpVtbl->AddRef(This);
19104}
19105static inline ULONG IMXReaderControl_Release(IMXReaderControl* This) {
19106    return This->lpVtbl->Release(This);
19107}
19108/*** IDispatch methods ***/
19109static inline HRESULT IMXReaderControl_GetTypeInfoCount(IMXReaderControl* This,UINT *pctinfo) {
19110    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19111}
19112static inline HRESULT IMXReaderControl_GetTypeInfo(IMXReaderControl* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19113    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19114}
19115static inline HRESULT IMXReaderControl_GetIDsOfNames(IMXReaderControl* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19116    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19117}
19118static inline HRESULT IMXReaderControl_Invoke(IMXReaderControl* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19119    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19120}
19121/*** IMXReaderControl methods ***/
19122static inline HRESULT IMXReaderControl_abort(IMXReaderControl* This) {
19123    return This->lpVtbl->abort(This);
19124}
19125static inline HRESULT IMXReaderControl_resume(IMXReaderControl* This) {
19126    return This->lpVtbl->resume(This);
19127}
19128static inline HRESULT IMXReaderControl_suspend(IMXReaderControl* This) {
19129    return This->lpVtbl->suspend(This);
19130}
19131#endif
19132#endif
19133
19134#endif
19135
19136
19137#endif  /* __IMXReaderControl_INTERFACE_DEFINED__ */
19138
19139/*****************************************************************************
19140 * IMXWriter interface
19141 */
19142#ifndef __IMXWriter_INTERFACE_DEFINED__
19143#define __IMXWriter_INTERFACE_DEFINED__
19144
19145DEFINE_GUID(IID_IMXWriter, 0x4d7ff4ba, 0x1565, 0x4ea8, 0x94,0xe1, 0x6e,0x72,0x4a,0x46,0xf9,0x8d);
19146#if defined(__cplusplus) && !defined(CINTERFACE)
19147MIDL_INTERFACE("4d7ff4ba-1565-4ea8-94e1-6e724a46f98d")
19148IMXWriter : public IDispatch
19149{
19150    virtual HRESULT STDMETHODCALLTYPE put_output(
19151        VARIANT Destination) = 0;
19152
19153    virtual HRESULT STDMETHODCALLTYPE get_output(
19154        VARIANT *Destination) = 0;
19155
19156    virtual HRESULT STDMETHODCALLTYPE put_encoding(
19157        BSTR encoding) = 0;
19158
19159    virtual HRESULT STDMETHODCALLTYPE get_encoding(
19160        BSTR *encoding) = 0;
19161
19162    virtual HRESULT STDMETHODCALLTYPE put_byteOrderMark(
19163        VARIANT_BOOL writeByteOrderMark) = 0;
19164
19165    virtual HRESULT STDMETHODCALLTYPE get_byteOrderMark(
19166        VARIANT_BOOL *writeByteOrderMark) = 0;
19167
19168    virtual HRESULT STDMETHODCALLTYPE put_indent(
19169        VARIANT_BOOL indentMode) = 0;
19170
19171    virtual HRESULT STDMETHODCALLTYPE get_indent(
19172        VARIANT_BOOL *indentMode) = 0;
19173
19174    virtual HRESULT STDMETHODCALLTYPE put_standalone(
19175        VARIANT_BOOL value) = 0;
19176
19177    virtual HRESULT STDMETHODCALLTYPE get_standalone(
19178        VARIANT_BOOL *value) = 0;
19179
19180    virtual HRESULT STDMETHODCALLTYPE put_omitXMLDeclaration(
19181        VARIANT_BOOL value) = 0;
19182
19183    virtual HRESULT STDMETHODCALLTYPE get_omitXMLDeclaration(
19184        VARIANT_BOOL *value) = 0;
19185
19186    virtual HRESULT STDMETHODCALLTYPE put_version(
19187        BSTR version) = 0;
19188
19189    virtual HRESULT STDMETHODCALLTYPE get_version(
19190        BSTR *version) = 0;
19191
19192    virtual HRESULT STDMETHODCALLTYPE put_disableOutputEscaping(
19193        VARIANT_BOOL value) = 0;
19194
19195    virtual HRESULT STDMETHODCALLTYPE get_disableOutputEscaping(
19196        VARIANT_BOOL *value) = 0;
19197
19198    virtual HRESULT STDMETHODCALLTYPE flush(
19199        ) = 0;
19200
19201};
19202#ifdef __CRT_UUID_DECL
19203__CRT_UUID_DECL(IMXWriter, 0x4d7ff4ba, 0x1565, 0x4ea8, 0x94,0xe1, 0x6e,0x72,0x4a,0x46,0xf9,0x8d)
19204#endif
19205#else
19206typedef struct IMXWriterVtbl {
19207    BEGIN_INTERFACE
19208
19209    /*** IUnknown methods ***/
19210    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19211        IMXWriter *This,
19212        REFIID riid,
19213        void **ppvObject);
19214
19215    ULONG (STDMETHODCALLTYPE *AddRef)(
19216        IMXWriter *This);
19217
19218    ULONG (STDMETHODCALLTYPE *Release)(
19219        IMXWriter *This);
19220
19221    /*** IDispatch methods ***/
19222    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19223        IMXWriter *This,
19224        UINT *pctinfo);
19225
19226    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19227        IMXWriter *This,
19228        UINT iTInfo,
19229        LCID lcid,
19230        ITypeInfo **ppTInfo);
19231
19232    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19233        IMXWriter *This,
19234        REFIID riid,
19235        LPOLESTR *rgszNames,
19236        UINT cNames,
19237        LCID lcid,
19238        DISPID *rgDispId);
19239
19240    HRESULT (STDMETHODCALLTYPE *Invoke)(
19241        IMXWriter *This,
19242        DISPID dispIdMember,
19243        REFIID riid,
19244        LCID lcid,
19245        WORD wFlags,
19246        DISPPARAMS *pDispParams,
19247        VARIANT *pVarResult,
19248        EXCEPINFO *pExcepInfo,
19249        UINT *puArgErr);
19250
19251    /*** IMXWriter methods ***/
19252    HRESULT (STDMETHODCALLTYPE *put_output)(
19253        IMXWriter *This,
19254        VARIANT Destination);
19255
19256    HRESULT (STDMETHODCALLTYPE *get_output)(
19257        IMXWriter *This,
19258        VARIANT *Destination);
19259
19260    HRESULT (STDMETHODCALLTYPE *put_encoding)(
19261        IMXWriter *This,
19262        BSTR encoding);
19263
19264    HRESULT (STDMETHODCALLTYPE *get_encoding)(
19265        IMXWriter *This,
19266        BSTR *encoding);
19267
19268    HRESULT (STDMETHODCALLTYPE *put_byteOrderMark)(
19269        IMXWriter *This,
19270        VARIANT_BOOL writeByteOrderMark);
19271
19272    HRESULT (STDMETHODCALLTYPE *get_byteOrderMark)(
19273        IMXWriter *This,
19274        VARIANT_BOOL *writeByteOrderMark);
19275
19276    HRESULT (STDMETHODCALLTYPE *put_indent)(
19277        IMXWriter *This,
19278        VARIANT_BOOL indentMode);
19279
19280    HRESULT (STDMETHODCALLTYPE *get_indent)(
19281        IMXWriter *This,
19282        VARIANT_BOOL *indentMode);
19283
19284    HRESULT (STDMETHODCALLTYPE *put_standalone)(
19285        IMXWriter *This,
19286        VARIANT_BOOL value);
19287
19288    HRESULT (STDMETHODCALLTYPE *get_standalone)(
19289        IMXWriter *This,
19290        VARIANT_BOOL *value);
19291
19292    HRESULT (STDMETHODCALLTYPE *put_omitXMLDeclaration)(
19293        IMXWriter *This,
19294        VARIANT_BOOL value);
19295
19296    HRESULT (STDMETHODCALLTYPE *get_omitXMLDeclaration)(
19297        IMXWriter *This,
19298        VARIANT_BOOL *value);
19299
19300    HRESULT (STDMETHODCALLTYPE *put_version)(
19301        IMXWriter *This,
19302        BSTR version);
19303
19304    HRESULT (STDMETHODCALLTYPE *get_version)(
19305        IMXWriter *This,
19306        BSTR *version);
19307
19308    HRESULT (STDMETHODCALLTYPE *put_disableOutputEscaping)(
19309        IMXWriter *This,
19310        VARIANT_BOOL value);
19311
19312    HRESULT (STDMETHODCALLTYPE *get_disableOutputEscaping)(
19313        IMXWriter *This,
19314        VARIANT_BOOL *value);
19315
19316    HRESULT (STDMETHODCALLTYPE *flush)(
19317        IMXWriter *This);
19318
19319    END_INTERFACE
19320} IMXWriterVtbl;
19321
19322interface IMXWriter {
19323    CONST_VTBL IMXWriterVtbl* lpVtbl;
19324};
19325
19326#ifdef COBJMACROS
19327#ifndef WIDL_C_INLINE_WRAPPERS
19328/*** IUnknown methods ***/
19329#define IMXWriter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19330#define IMXWriter_AddRef(This) (This)->lpVtbl->AddRef(This)
19331#define IMXWriter_Release(This) (This)->lpVtbl->Release(This)
19332/*** IDispatch methods ***/
19333#define IMXWriter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19334#define IMXWriter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19335#define IMXWriter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19336#define IMXWriter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19337/*** IMXWriter methods ***/
19338#define IMXWriter_put_output(This,Destination) (This)->lpVtbl->put_output(This,Destination)
19339#define IMXWriter_get_output(This,Destination) (This)->lpVtbl->get_output(This,Destination)
19340#define IMXWriter_put_encoding(This,encoding) (This)->lpVtbl->put_encoding(This,encoding)
19341#define IMXWriter_get_encoding(This,encoding) (This)->lpVtbl->get_encoding(This,encoding)
19342#define IMXWriter_put_byteOrderMark(This,writeByteOrderMark) (This)->lpVtbl->put_byteOrderMark(This,writeByteOrderMark)
19343#define IMXWriter_get_byteOrderMark(This,writeByteOrderMark) (This)->lpVtbl->get_byteOrderMark(This,writeByteOrderMark)
19344#define IMXWriter_put_indent(This,indentMode) (This)->lpVtbl->put_indent(This,indentMode)
19345#define IMXWriter_get_indent(This,indentMode) (This)->lpVtbl->get_indent(This,indentMode)
19346#define IMXWriter_put_standalone(This,value) (This)->lpVtbl->put_standalone(This,value)
19347#define IMXWriter_get_standalone(This,value) (This)->lpVtbl->get_standalone(This,value)
19348#define IMXWriter_put_omitXMLDeclaration(This,value) (This)->lpVtbl->put_omitXMLDeclaration(This,value)
19349#define IMXWriter_get_omitXMLDeclaration(This,value) (This)->lpVtbl->get_omitXMLDeclaration(This,value)
19350#define IMXWriter_put_version(This,version) (This)->lpVtbl->put_version(This,version)
19351#define IMXWriter_get_version(This,version) (This)->lpVtbl->get_version(This,version)
19352#define IMXWriter_put_disableOutputEscaping(This,value) (This)->lpVtbl->put_disableOutputEscaping(This,value)
19353#define IMXWriter_get_disableOutputEscaping(This,value) (This)->lpVtbl->get_disableOutputEscaping(This,value)
19354#define IMXWriter_flush(This) (This)->lpVtbl->flush(This)
19355#else
19356/*** IUnknown methods ***/
19357static inline HRESULT IMXWriter_QueryInterface(IMXWriter* This,REFIID riid,void **ppvObject) {
19358    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19359}
19360static inline ULONG IMXWriter_AddRef(IMXWriter* This) {
19361    return This->lpVtbl->AddRef(This);
19362}
19363static inline ULONG IMXWriter_Release(IMXWriter* This) {
19364    return This->lpVtbl->Release(This);
19365}
19366/*** IDispatch methods ***/
19367static inline HRESULT IMXWriter_GetTypeInfoCount(IMXWriter* This,UINT *pctinfo) {
19368    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19369}
19370static inline HRESULT IMXWriter_GetTypeInfo(IMXWriter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19371    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19372}
19373static inline HRESULT IMXWriter_GetIDsOfNames(IMXWriter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19374    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19375}
19376static inline HRESULT IMXWriter_Invoke(IMXWriter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19377    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19378}
19379/*** IMXWriter methods ***/
19380static inline HRESULT IMXWriter_put_output(IMXWriter* This,VARIANT Destination) {
19381    return This->lpVtbl->put_output(This,Destination);
19382}
19383static inline HRESULT IMXWriter_get_output(IMXWriter* This,VARIANT *Destination) {
19384    return This->lpVtbl->get_output(This,Destination);
19385}
19386static inline HRESULT IMXWriter_put_encoding(IMXWriter* This,BSTR encoding) {
19387    return This->lpVtbl->put_encoding(This,encoding);
19388}
19389static inline HRESULT IMXWriter_get_encoding(IMXWriter* This,BSTR *encoding) {
19390    return This->lpVtbl->get_encoding(This,encoding);
19391}
19392static inline HRESULT IMXWriter_put_byteOrderMark(IMXWriter* This,VARIANT_BOOL writeByteOrderMark) {
19393    return This->lpVtbl->put_byteOrderMark(This,writeByteOrderMark);
19394}
19395static inline HRESULT IMXWriter_get_byteOrderMark(IMXWriter* This,VARIANT_BOOL *writeByteOrderMark) {
19396    return This->lpVtbl->get_byteOrderMark(This,writeByteOrderMark);
19397}
19398static inline HRESULT IMXWriter_put_indent(IMXWriter* This,VARIANT_BOOL indentMode) {
19399    return This->lpVtbl->put_indent(This,indentMode);
19400}
19401static inline HRESULT IMXWriter_get_indent(IMXWriter* This,VARIANT_BOOL *indentMode) {
19402    return This->lpVtbl->get_indent(This,indentMode);
19403}
19404static inline HRESULT IMXWriter_put_standalone(IMXWriter* This,VARIANT_BOOL value) {
19405    return This->lpVtbl->put_standalone(This,value);
19406}
19407static inline HRESULT IMXWriter_get_standalone(IMXWriter* This,VARIANT_BOOL *value) {
19408    return This->lpVtbl->get_standalone(This,value);
19409}
19410static inline HRESULT IMXWriter_put_omitXMLDeclaration(IMXWriter* This,VARIANT_BOOL value) {
19411    return This->lpVtbl->put_omitXMLDeclaration(This,value);
19412}
19413static inline HRESULT IMXWriter_get_omitXMLDeclaration(IMXWriter* This,VARIANT_BOOL *value) {
19414    return This->lpVtbl->get_omitXMLDeclaration(This,value);
19415}
19416static inline HRESULT IMXWriter_put_version(IMXWriter* This,BSTR version) {
19417    return This->lpVtbl->put_version(This,version);
19418}
19419static inline HRESULT IMXWriter_get_version(IMXWriter* This,BSTR *version) {
19420    return This->lpVtbl->get_version(This,version);
19421}
19422static inline HRESULT IMXWriter_put_disableOutputEscaping(IMXWriter* This,VARIANT_BOOL value) {
19423    return This->lpVtbl->put_disableOutputEscaping(This,value);
19424}
19425static inline HRESULT IMXWriter_get_disableOutputEscaping(IMXWriter* This,VARIANT_BOOL *value) {
19426    return This->lpVtbl->get_disableOutputEscaping(This,value);
19427}
19428static inline HRESULT IMXWriter_flush(IMXWriter* This) {
19429    return This->lpVtbl->flush(This);
19430}
19431#endif
19432#endif
19433
19434#endif
19435
19436
19437#endif  /* __IMXWriter_INTERFACE_DEFINED__ */
19438
19439/*****************************************************************************
19440 * IMXNamespacePrefixes interface
19441 */
19442#ifndef __IMXNamespacePrefixes_INTERFACE_DEFINED__
19443#define __IMXNamespacePrefixes_INTERFACE_DEFINED__
19444
19445DEFINE_GUID(IID_IMXNamespacePrefixes, 0xc90352f4, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd);
19446#if defined(__cplusplus) && !defined(CINTERFACE)
19447MIDL_INTERFACE("c90352f4-643c-4fbc-bb23-e996eb2d51fd")
19448IMXNamespacePrefixes : public IDispatch
19449{
19450    virtual HRESULT STDMETHODCALLTYPE get_item(
19451        LONG index,
19452        BSTR *prefix) = 0;
19453
19454    virtual HRESULT STDMETHODCALLTYPE get_length(
19455        LONG *length) = 0;
19456
19457    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
19458        IUnknown **ppUnk) = 0;
19459
19460};
19461#ifdef __CRT_UUID_DECL
19462__CRT_UUID_DECL(IMXNamespacePrefixes, 0xc90352f4, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd)
19463#endif
19464#else
19465typedef struct IMXNamespacePrefixesVtbl {
19466    BEGIN_INTERFACE
19467
19468    /*** IUnknown methods ***/
19469    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19470        IMXNamespacePrefixes *This,
19471        REFIID riid,
19472        void **ppvObject);
19473
19474    ULONG (STDMETHODCALLTYPE *AddRef)(
19475        IMXNamespacePrefixes *This);
19476
19477    ULONG (STDMETHODCALLTYPE *Release)(
19478        IMXNamespacePrefixes *This);
19479
19480    /*** IDispatch methods ***/
19481    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19482        IMXNamespacePrefixes *This,
19483        UINT *pctinfo);
19484
19485    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19486        IMXNamespacePrefixes *This,
19487        UINT iTInfo,
19488        LCID lcid,
19489        ITypeInfo **ppTInfo);
19490
19491    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19492        IMXNamespacePrefixes *This,
19493        REFIID riid,
19494        LPOLESTR *rgszNames,
19495        UINT cNames,
19496        LCID lcid,
19497        DISPID *rgDispId);
19498
19499    HRESULT (STDMETHODCALLTYPE *Invoke)(
19500        IMXNamespacePrefixes *This,
19501        DISPID dispIdMember,
19502        REFIID riid,
19503        LCID lcid,
19504        WORD wFlags,
19505        DISPPARAMS *pDispParams,
19506        VARIANT *pVarResult,
19507        EXCEPINFO *pExcepInfo,
19508        UINT *puArgErr);
19509
19510    /*** IMXNamespacePrefixes methods ***/
19511    HRESULT (STDMETHODCALLTYPE *get_item)(
19512        IMXNamespacePrefixes *This,
19513        LONG index,
19514        BSTR *prefix);
19515
19516    HRESULT (STDMETHODCALLTYPE *get_length)(
19517        IMXNamespacePrefixes *This,
19518        LONG *length);
19519
19520    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
19521        IMXNamespacePrefixes *This,
19522        IUnknown **ppUnk);
19523
19524    END_INTERFACE
19525} IMXNamespacePrefixesVtbl;
19526
19527interface IMXNamespacePrefixes {
19528    CONST_VTBL IMXNamespacePrefixesVtbl* lpVtbl;
19529};
19530
19531#ifdef COBJMACROS
19532#ifndef WIDL_C_INLINE_WRAPPERS
19533/*** IUnknown methods ***/
19534#define IMXNamespacePrefixes_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19535#define IMXNamespacePrefixes_AddRef(This) (This)->lpVtbl->AddRef(This)
19536#define IMXNamespacePrefixes_Release(This) (This)->lpVtbl->Release(This)
19537/*** IDispatch methods ***/
19538#define IMXNamespacePrefixes_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19539#define IMXNamespacePrefixes_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19540#define IMXNamespacePrefixes_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19541#define IMXNamespacePrefixes_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19542/*** IMXNamespacePrefixes methods ***/
19543#define IMXNamespacePrefixes_get_item(This,index,prefix) (This)->lpVtbl->get_item(This,index,prefix)
19544#define IMXNamespacePrefixes_get_length(This,length) (This)->lpVtbl->get_length(This,length)
19545#define IMXNamespacePrefixes_get__newEnum(This,ppUnk) (This)->lpVtbl->get__newEnum(This,ppUnk)
19546#else
19547/*** IUnknown methods ***/
19548static inline HRESULT IMXNamespacePrefixes_QueryInterface(IMXNamespacePrefixes* This,REFIID riid,void **ppvObject) {
19549    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19550}
19551static inline ULONG IMXNamespacePrefixes_AddRef(IMXNamespacePrefixes* This) {
19552    return This->lpVtbl->AddRef(This);
19553}
19554static inline ULONG IMXNamespacePrefixes_Release(IMXNamespacePrefixes* This) {
19555    return This->lpVtbl->Release(This);
19556}
19557/*** IDispatch methods ***/
19558static inline HRESULT IMXNamespacePrefixes_GetTypeInfoCount(IMXNamespacePrefixes* This,UINT *pctinfo) {
19559    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19560}
19561static inline HRESULT IMXNamespacePrefixes_GetTypeInfo(IMXNamespacePrefixes* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19562    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19563}
19564static inline HRESULT IMXNamespacePrefixes_GetIDsOfNames(IMXNamespacePrefixes* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19565    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19566}
19567static inline HRESULT IMXNamespacePrefixes_Invoke(IMXNamespacePrefixes* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19568    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19569}
19570/*** IMXNamespacePrefixes methods ***/
19571static inline HRESULT IMXNamespacePrefixes_get_item(IMXNamespacePrefixes* This,LONG index,BSTR *prefix) {
19572    return This->lpVtbl->get_item(This,index,prefix);
19573}
19574static inline HRESULT IMXNamespacePrefixes_get_length(IMXNamespacePrefixes* This,LONG *length) {
19575    return This->lpVtbl->get_length(This,length);
19576}
19577static inline HRESULT IMXNamespacePrefixes_get__newEnum(IMXNamespacePrefixes* This,IUnknown **ppUnk) {
19578    return This->lpVtbl->get__newEnum(This,ppUnk);
19579}
19580#endif
19581#endif
19582
19583#endif
19584
19585
19586#endif  /* __IMXNamespacePrefixes_INTERFACE_DEFINED__ */
19587
19588/*****************************************************************************
19589 * IMXNamespaceManager interface
19590 */
19591#ifndef __IMXNamespaceManager_INTERFACE_DEFINED__
19592#define __IMXNamespaceManager_INTERFACE_DEFINED__
19593
19594DEFINE_GUID(IID_IMXNamespaceManager, 0xc90352f6, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd);
19595#if defined(__cplusplus) && !defined(CINTERFACE)
19596MIDL_INTERFACE("c90352f6-643c-4fbc-bb23-e996eb2d51fd")
19597IMXNamespaceManager : public IUnknown
19598{
19599    virtual HRESULT STDMETHODCALLTYPE putAllowOverride(
19600        VARIANT_BOOL fOverride) = 0;
19601
19602    virtual HRESULT STDMETHODCALLTYPE getAllowOverride(
19603        VARIANT_BOOL *fOverride) = 0;
19604
19605    virtual HRESULT STDMETHODCALLTYPE reset(
19606        ) = 0;
19607
19608    virtual HRESULT STDMETHODCALLTYPE pushContext(
19609        ) = 0;
19610
19611    virtual HRESULT STDMETHODCALLTYPE pushNodeContext(
19612        IXMLDOMNode *contextNode,
19613        VARIANT_BOOL fDeep) = 0;
19614
19615    virtual HRESULT STDMETHODCALLTYPE popContext(
19616        ) = 0;
19617
19618    virtual HRESULT STDMETHODCALLTYPE declarePrefix(
19619        const WCHAR *prefix,
19620        const WCHAR *namespaceURI) = 0;
19621
19622    virtual HRESULT STDMETHODCALLTYPE getDeclaredPrefix(
19623        LONG nIndex,
19624        WCHAR *pwchPrefix,
19625        int *pcchPrefix) = 0;
19626
19627    virtual HRESULT STDMETHODCALLTYPE getPrefix(
19628        const WCHAR *pwszNamespaceURI,
19629        LONG nIndex,
19630        WCHAR *pwchPrefix,
19631        int *pcchPrefix) = 0;
19632
19633    virtual HRESULT STDMETHODCALLTYPE getURI(
19634        const WCHAR *pwchPrefix,
19635        IXMLDOMNode *pContextNode,
19636        WCHAR *pwchUri,
19637        int *pcchUri) = 0;
19638
19639};
19640#ifdef __CRT_UUID_DECL
19641__CRT_UUID_DECL(IMXNamespaceManager, 0xc90352f6, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd)
19642#endif
19643#else
19644typedef struct IMXNamespaceManagerVtbl {
19645    BEGIN_INTERFACE
19646
19647    /*** IUnknown methods ***/
19648    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19649        IMXNamespaceManager *This,
19650        REFIID riid,
19651        void **ppvObject);
19652
19653    ULONG (STDMETHODCALLTYPE *AddRef)(
19654        IMXNamespaceManager *This);
19655
19656    ULONG (STDMETHODCALLTYPE *Release)(
19657        IMXNamespaceManager *This);
19658
19659    /*** IMXNamespaceManager methods ***/
19660    HRESULT (STDMETHODCALLTYPE *putAllowOverride)(
19661        IMXNamespaceManager *This,
19662        VARIANT_BOOL fOverride);
19663
19664    HRESULT (STDMETHODCALLTYPE *getAllowOverride)(
19665        IMXNamespaceManager *This,
19666        VARIANT_BOOL *fOverride);
19667
19668    HRESULT (STDMETHODCALLTYPE *reset)(
19669        IMXNamespaceManager *This);
19670
19671    HRESULT (STDMETHODCALLTYPE *pushContext)(
19672        IMXNamespaceManager *This);
19673
19674    HRESULT (STDMETHODCALLTYPE *pushNodeContext)(
19675        IMXNamespaceManager *This,
19676        IXMLDOMNode *contextNode,
19677        VARIANT_BOOL fDeep);
19678
19679    HRESULT (STDMETHODCALLTYPE *popContext)(
19680        IMXNamespaceManager *This);
19681
19682    HRESULT (STDMETHODCALLTYPE *declarePrefix)(
19683        IMXNamespaceManager *This,
19684        const WCHAR *prefix,
19685        const WCHAR *namespaceURI);
19686
19687    HRESULT (STDMETHODCALLTYPE *getDeclaredPrefix)(
19688        IMXNamespaceManager *This,
19689        LONG nIndex,
19690        WCHAR *pwchPrefix,
19691        int *pcchPrefix);
19692
19693    HRESULT (STDMETHODCALLTYPE *getPrefix)(
19694        IMXNamespaceManager *This,
19695        const WCHAR *pwszNamespaceURI,
19696        LONG nIndex,
19697        WCHAR *pwchPrefix,
19698        int *pcchPrefix);
19699
19700    HRESULT (STDMETHODCALLTYPE *getURI)(
19701        IMXNamespaceManager *This,
19702        const WCHAR *pwchPrefix,
19703        IXMLDOMNode *pContextNode,
19704        WCHAR *pwchUri,
19705        int *pcchUri);
19706
19707    END_INTERFACE
19708} IMXNamespaceManagerVtbl;
19709
19710interface IMXNamespaceManager {
19711    CONST_VTBL IMXNamespaceManagerVtbl* lpVtbl;
19712};
19713
19714#ifdef COBJMACROS
19715#ifndef WIDL_C_INLINE_WRAPPERS
19716/*** IUnknown methods ***/
19717#define IMXNamespaceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19718#define IMXNamespaceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
19719#define IMXNamespaceManager_Release(This) (This)->lpVtbl->Release(This)
19720/*** IMXNamespaceManager methods ***/
19721#define IMXNamespaceManager_putAllowOverride(This,fOverride) (This)->lpVtbl->putAllowOverride(This,fOverride)
19722#define IMXNamespaceManager_getAllowOverride(This,fOverride) (This)->lpVtbl->getAllowOverride(This,fOverride)
19723#define IMXNamespaceManager_reset(This) (This)->lpVtbl->reset(This)
19724#define IMXNamespaceManager_pushContext(This) (This)->lpVtbl->pushContext(This)
19725#define IMXNamespaceManager_pushNodeContext(This,contextNode,fDeep) (This)->lpVtbl->pushNodeContext(This,contextNode,fDeep)
19726#define IMXNamespaceManager_popContext(This) (This)->lpVtbl->popContext(This)
19727#define IMXNamespaceManager_declarePrefix(This,prefix,namespaceURI) (This)->lpVtbl->declarePrefix(This,prefix,namespaceURI)
19728#define IMXNamespaceManager_getDeclaredPrefix(This,nIndex,pwchPrefix,pcchPrefix) (This)->lpVtbl->getDeclaredPrefix(This,nIndex,pwchPrefix,pcchPrefix)
19729#define IMXNamespaceManager_getPrefix(This,pwszNamespaceURI,nIndex,pwchPrefix,pcchPrefix) (This)->lpVtbl->getPrefix(This,pwszNamespaceURI,nIndex,pwchPrefix,pcchPrefix)
19730#define IMXNamespaceManager_getURI(This,pwchPrefix,pContextNode,pwchUri,pcchUri) (This)->lpVtbl->getURI(This,pwchPrefix,pContextNode,pwchUri,pcchUri)
19731#else
19732/*** IUnknown methods ***/
19733static inline HRESULT IMXNamespaceManager_QueryInterface(IMXNamespaceManager* This,REFIID riid,void **ppvObject) {
19734    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19735}
19736static inline ULONG IMXNamespaceManager_AddRef(IMXNamespaceManager* This) {
19737    return This->lpVtbl->AddRef(This);
19738}
19739static inline ULONG IMXNamespaceManager_Release(IMXNamespaceManager* This) {
19740    return This->lpVtbl->Release(This);
19741}
19742/*** IMXNamespaceManager methods ***/
19743static inline HRESULT IMXNamespaceManager_putAllowOverride(IMXNamespaceManager* This,VARIANT_BOOL fOverride) {
19744    return This->lpVtbl->putAllowOverride(This,fOverride);
19745}
19746static inline HRESULT IMXNamespaceManager_getAllowOverride(IMXNamespaceManager* This,VARIANT_BOOL *fOverride) {
19747    return This->lpVtbl->getAllowOverride(This,fOverride);
19748}
19749static inline HRESULT IMXNamespaceManager_reset(IMXNamespaceManager* This) {
19750    return This->lpVtbl->reset(This);
19751}
19752static inline HRESULT IMXNamespaceManager_pushContext(IMXNamespaceManager* This) {
19753    return This->lpVtbl->pushContext(This);
19754}
19755static inline HRESULT IMXNamespaceManager_pushNodeContext(IMXNamespaceManager* This,IXMLDOMNode *contextNode,VARIANT_BOOL fDeep) {
19756    return This->lpVtbl->pushNodeContext(This,contextNode,fDeep);
19757}
19758static inline HRESULT IMXNamespaceManager_popContext(IMXNamespaceManager* This) {
19759    return This->lpVtbl->popContext(This);
19760}
19761static inline HRESULT IMXNamespaceManager_declarePrefix(IMXNamespaceManager* This,const WCHAR *prefix,const WCHAR *namespaceURI) {
19762    return This->lpVtbl->declarePrefix(This,prefix,namespaceURI);
19763}
19764static inline HRESULT IMXNamespaceManager_getDeclaredPrefix(IMXNamespaceManager* This,LONG nIndex,WCHAR *pwchPrefix,int *pcchPrefix) {
19765    return This->lpVtbl->getDeclaredPrefix(This,nIndex,pwchPrefix,pcchPrefix);
19766}
19767static inline HRESULT IMXNamespaceManager_getPrefix(IMXNamespaceManager* This,const WCHAR *pwszNamespaceURI,LONG nIndex,WCHAR *pwchPrefix,int *pcchPrefix) {
19768    return This->lpVtbl->getPrefix(This,pwszNamespaceURI,nIndex,pwchPrefix,pcchPrefix);
19769}
19770static inline HRESULT IMXNamespaceManager_getURI(IMXNamespaceManager* This,const WCHAR *pwchPrefix,IXMLDOMNode *pContextNode,WCHAR *pwchUri,int *pcchUri) {
19771    return This->lpVtbl->getURI(This,pwchPrefix,pContextNode,pwchUri,pcchUri);
19772}
19773#endif
19774#endif
19775
19776#endif
19777
19778
19779#endif  /* __IMXNamespaceManager_INTERFACE_DEFINED__ */
19780
19781/*****************************************************************************
19782 * IVBMXNamespaceManager interface
19783 */
19784#ifndef __IVBMXNamespaceManager_INTERFACE_DEFINED__
19785#define __IVBMXNamespaceManager_INTERFACE_DEFINED__
19786
19787DEFINE_GUID(IID_IVBMXNamespaceManager, 0xc90352f5, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd);
19788#if defined(__cplusplus) && !defined(CINTERFACE)
19789MIDL_INTERFACE("c90352f5-643c-4fbc-bb23-e996eb2d51fd")
19790IVBMXNamespaceManager : public IDispatch
19791{
19792    virtual HRESULT STDMETHODCALLTYPE put_allowOverride(
19793        VARIANT_BOOL fOverride) = 0;
19794
19795    virtual HRESULT STDMETHODCALLTYPE get_allowOverride(
19796        VARIANT_BOOL *fOverride) = 0;
19797
19798    virtual HRESULT STDMETHODCALLTYPE reset(
19799        ) = 0;
19800
19801    virtual HRESULT STDMETHODCALLTYPE pushContext(
19802        ) = 0;
19803
19804    virtual HRESULT STDMETHODCALLTYPE pushNodeContext(
19805        IXMLDOMNode *contextNode,
19806        VARIANT_BOOL fDeep = -1) = 0;
19807
19808    virtual HRESULT STDMETHODCALLTYPE popContext(
19809        ) = 0;
19810
19811    virtual HRESULT STDMETHODCALLTYPE declarePrefix(
19812        BSTR prefix,
19813        BSTR namespaceURI) = 0;
19814
19815    virtual HRESULT STDMETHODCALLTYPE getDeclaredPrefixes(
19816        IMXNamespacePrefixes **prefixes) = 0;
19817
19818    virtual HRESULT STDMETHODCALLTYPE getPrefixes(
19819        BSTR namespaceURI,
19820        IMXNamespacePrefixes **prefixes) = 0;
19821
19822    virtual HRESULT STDMETHODCALLTYPE getURI(
19823        BSTR prefix,
19824        VARIANT *uri) = 0;
19825
19826    virtual HRESULT STDMETHODCALLTYPE getURIFromNode(
19827        BSTR strPrefix,
19828        IXMLDOMNode *contextNode,
19829        VARIANT *uri) = 0;
19830
19831};
19832#ifdef __CRT_UUID_DECL
19833__CRT_UUID_DECL(IVBMXNamespaceManager, 0xc90352f5, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd)
19834#endif
19835#else
19836typedef struct IVBMXNamespaceManagerVtbl {
19837    BEGIN_INTERFACE
19838
19839    /*** IUnknown methods ***/
19840    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
19841        IVBMXNamespaceManager *This,
19842        REFIID riid,
19843        void **ppvObject);
19844
19845    ULONG (STDMETHODCALLTYPE *AddRef)(
19846        IVBMXNamespaceManager *This);
19847
19848    ULONG (STDMETHODCALLTYPE *Release)(
19849        IVBMXNamespaceManager *This);
19850
19851    /*** IDispatch methods ***/
19852    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
19853        IVBMXNamespaceManager *This,
19854        UINT *pctinfo);
19855
19856    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
19857        IVBMXNamespaceManager *This,
19858        UINT iTInfo,
19859        LCID lcid,
19860        ITypeInfo **ppTInfo);
19861
19862    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
19863        IVBMXNamespaceManager *This,
19864        REFIID riid,
19865        LPOLESTR *rgszNames,
19866        UINT cNames,
19867        LCID lcid,
19868        DISPID *rgDispId);
19869
19870    HRESULT (STDMETHODCALLTYPE *Invoke)(
19871        IVBMXNamespaceManager *This,
19872        DISPID dispIdMember,
19873        REFIID riid,
19874        LCID lcid,
19875        WORD wFlags,
19876        DISPPARAMS *pDispParams,
19877        VARIANT *pVarResult,
19878        EXCEPINFO *pExcepInfo,
19879        UINT *puArgErr);
19880
19881    /*** IVBMXNamespaceManager methods ***/
19882    HRESULT (STDMETHODCALLTYPE *put_allowOverride)(
19883        IVBMXNamespaceManager *This,
19884        VARIANT_BOOL fOverride);
19885
19886    HRESULT (STDMETHODCALLTYPE *get_allowOverride)(
19887        IVBMXNamespaceManager *This,
19888        VARIANT_BOOL *fOverride);
19889
19890    HRESULT (STDMETHODCALLTYPE *reset)(
19891        IVBMXNamespaceManager *This);
19892
19893    HRESULT (STDMETHODCALLTYPE *pushContext)(
19894        IVBMXNamespaceManager *This);
19895
19896    HRESULT (STDMETHODCALLTYPE *pushNodeContext)(
19897        IVBMXNamespaceManager *This,
19898        IXMLDOMNode *contextNode,
19899        VARIANT_BOOL fDeep);
19900
19901    HRESULT (STDMETHODCALLTYPE *popContext)(
19902        IVBMXNamespaceManager *This);
19903
19904    HRESULT (STDMETHODCALLTYPE *declarePrefix)(
19905        IVBMXNamespaceManager *This,
19906        BSTR prefix,
19907        BSTR namespaceURI);
19908
19909    HRESULT (STDMETHODCALLTYPE *getDeclaredPrefixes)(
19910        IVBMXNamespaceManager *This,
19911        IMXNamespacePrefixes **prefixes);
19912
19913    HRESULT (STDMETHODCALLTYPE *getPrefixes)(
19914        IVBMXNamespaceManager *This,
19915        BSTR namespaceURI,
19916        IMXNamespacePrefixes **prefixes);
19917
19918    HRESULT (STDMETHODCALLTYPE *getURI)(
19919        IVBMXNamespaceManager *This,
19920        BSTR prefix,
19921        VARIANT *uri);
19922
19923    HRESULT (STDMETHODCALLTYPE *getURIFromNode)(
19924        IVBMXNamespaceManager *This,
19925        BSTR strPrefix,
19926        IXMLDOMNode *contextNode,
19927        VARIANT *uri);
19928
19929    END_INTERFACE
19930} IVBMXNamespaceManagerVtbl;
19931
19932interface IVBMXNamespaceManager {
19933    CONST_VTBL IVBMXNamespaceManagerVtbl* lpVtbl;
19934};
19935
19936#ifdef COBJMACROS
19937#ifndef WIDL_C_INLINE_WRAPPERS
19938/*** IUnknown methods ***/
19939#define IVBMXNamespaceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
19940#define IVBMXNamespaceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
19941#define IVBMXNamespaceManager_Release(This) (This)->lpVtbl->Release(This)
19942/*** IDispatch methods ***/
19943#define IVBMXNamespaceManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
19944#define IVBMXNamespaceManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
19945#define IVBMXNamespaceManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
19946#define IVBMXNamespaceManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
19947/*** IVBMXNamespaceManager methods ***/
19948#define IVBMXNamespaceManager_put_allowOverride(This,fOverride) (This)->lpVtbl->put_allowOverride(This,fOverride)
19949#define IVBMXNamespaceManager_get_allowOverride(This,fOverride) (This)->lpVtbl->get_allowOverride(This,fOverride)
19950#define IVBMXNamespaceManager_reset(This) (This)->lpVtbl->reset(This)
19951#define IVBMXNamespaceManager_pushContext(This) (This)->lpVtbl->pushContext(This)
19952#define IVBMXNamespaceManager_pushNodeContext(This,contextNode,fDeep) (This)->lpVtbl->pushNodeContext(This,contextNode,fDeep)
19953#define IVBMXNamespaceManager_popContext(This) (This)->lpVtbl->popContext(This)
19954#define IVBMXNamespaceManager_declarePrefix(This,prefix,namespaceURI) (This)->lpVtbl->declarePrefix(This,prefix,namespaceURI)
19955#define IVBMXNamespaceManager_getDeclaredPrefixes(This,prefixes) (This)->lpVtbl->getDeclaredPrefixes(This,prefixes)
19956#define IVBMXNamespaceManager_getPrefixes(This,namespaceURI,prefixes) (This)->lpVtbl->getPrefixes(This,namespaceURI,prefixes)
19957#define IVBMXNamespaceManager_getURI(This,prefix,uri) (This)->lpVtbl->getURI(This,prefix,uri)
19958#define IVBMXNamespaceManager_getURIFromNode(This,strPrefix,contextNode,uri) (This)->lpVtbl->getURIFromNode(This,strPrefix,contextNode,uri)
19959#else
19960/*** IUnknown methods ***/
19961static inline HRESULT IVBMXNamespaceManager_QueryInterface(IVBMXNamespaceManager* This,REFIID riid,void **ppvObject) {
19962    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
19963}
19964static inline ULONG IVBMXNamespaceManager_AddRef(IVBMXNamespaceManager* This) {
19965    return This->lpVtbl->AddRef(This);
19966}
19967static inline ULONG IVBMXNamespaceManager_Release(IVBMXNamespaceManager* This) {
19968    return This->lpVtbl->Release(This);
19969}
19970/*** IDispatch methods ***/
19971static inline HRESULT IVBMXNamespaceManager_GetTypeInfoCount(IVBMXNamespaceManager* This,UINT *pctinfo) {
19972    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
19973}
19974static inline HRESULT IVBMXNamespaceManager_GetTypeInfo(IVBMXNamespaceManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
19975    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
19976}
19977static inline HRESULT IVBMXNamespaceManager_GetIDsOfNames(IVBMXNamespaceManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
19978    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
19979}
19980static inline HRESULT IVBMXNamespaceManager_Invoke(IVBMXNamespaceManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
19981    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
19982}
19983/*** IVBMXNamespaceManager methods ***/
19984static inline HRESULT IVBMXNamespaceManager_put_allowOverride(IVBMXNamespaceManager* This,VARIANT_BOOL fOverride) {
19985    return This->lpVtbl->put_allowOverride(This,fOverride);
19986}
19987static inline HRESULT IVBMXNamespaceManager_get_allowOverride(IVBMXNamespaceManager* This,VARIANT_BOOL *fOverride) {
19988    return This->lpVtbl->get_allowOverride(This,fOverride);
19989}
19990static inline HRESULT IVBMXNamespaceManager_reset(IVBMXNamespaceManager* This) {
19991    return This->lpVtbl->reset(This);
19992}
19993static inline HRESULT IVBMXNamespaceManager_pushContext(IVBMXNamespaceManager* This) {
19994    return This->lpVtbl->pushContext(This);
19995}
19996static inline HRESULT IVBMXNamespaceManager_pushNodeContext(IVBMXNamespaceManager* This,IXMLDOMNode *contextNode,VARIANT_BOOL fDeep) {
19997    return This->lpVtbl->pushNodeContext(This,contextNode,fDeep);
19998}
19999static inline HRESULT IVBMXNamespaceManager_popContext(IVBMXNamespaceManager* This) {
20000    return This->lpVtbl->popContext(This);
20001}
20002static inline HRESULT IVBMXNamespaceManager_declarePrefix(IVBMXNamespaceManager* This,BSTR prefix,BSTR namespaceURI) {
20003    return This->lpVtbl->declarePrefix(This,prefix,namespaceURI);
20004}
20005static inline HRESULT IVBMXNamespaceManager_getDeclaredPrefixes(IVBMXNamespaceManager* This,IMXNamespacePrefixes **prefixes) {
20006    return This->lpVtbl->getDeclaredPrefixes(This,prefixes);
20007}
20008static inline HRESULT IVBMXNamespaceManager_getPrefixes(IVBMXNamespaceManager* This,BSTR namespaceURI,IMXNamespacePrefixes **prefixes) {
20009    return This->lpVtbl->getPrefixes(This,namespaceURI,prefixes);
20010}
20011static inline HRESULT IVBMXNamespaceManager_getURI(IVBMXNamespaceManager* This,BSTR prefix,VARIANT *uri) {
20012    return This->lpVtbl->getURI(This,prefix,uri);
20013}
20014static inline HRESULT IVBMXNamespaceManager_getURIFromNode(IVBMXNamespaceManager* This,BSTR strPrefix,IXMLDOMNode *contextNode,VARIANT *uri) {
20015    return This->lpVtbl->getURIFromNode(This,strPrefix,contextNode,uri);
20016}
20017#endif
20018#endif
20019
20020#endif
20021
20022
20023#endif  /* __IVBMXNamespaceManager_INTERFACE_DEFINED__ */
20024
20025/*****************************************************************************
20026 * IMXXMLFilter interface
20027 */
20028#ifndef __IMXXMLFilter_INTERFACE_DEFINED__
20029#define __IMXXMLFilter_INTERFACE_DEFINED__
20030
20031DEFINE_GUID(IID_IMXXMLFilter, 0xc90352f7, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd);
20032#if defined(__cplusplus) && !defined(CINTERFACE)
20033MIDL_INTERFACE("c90352f7-643c-4fbc-bb23-e996eb2d51fd")
20034IMXXMLFilter : public IDispatch
20035{
20036    virtual HRESULT STDMETHODCALLTYPE getFeature(
20037        BSTR strName,
20038        VARIANT_BOOL *fValue) = 0;
20039
20040    virtual HRESULT STDMETHODCALLTYPE putFeature(
20041        BSTR strName,
20042        VARIANT_BOOL fValue) = 0;
20043
20044    virtual HRESULT STDMETHODCALLTYPE getProperty(
20045        BSTR strName,
20046        VARIANT *varValue) = 0;
20047
20048    virtual HRESULT STDMETHODCALLTYPE putProperty(
20049        BSTR strName,
20050        VARIANT varValue) = 0;
20051
20052    virtual HRESULT STDMETHODCALLTYPE get_entityResolver(
20053        IUnknown **oResolver) = 0;
20054
20055    virtual HRESULT STDMETHODCALLTYPE putref_entityResolver(
20056        IUnknown *oResolver) = 0;
20057
20058    virtual HRESULT STDMETHODCALLTYPE get_contentHandler(
20059        IUnknown **oHandler) = 0;
20060
20061    virtual HRESULT STDMETHODCALLTYPE putref_contentHandler(
20062        IUnknown *oHandler) = 0;
20063
20064    virtual HRESULT STDMETHODCALLTYPE get_dtdHandler(
20065        IUnknown **oHandler) = 0;
20066
20067    virtual HRESULT STDMETHODCALLTYPE putref_dtdHandler(
20068        IUnknown *oHandler) = 0;
20069
20070    virtual HRESULT STDMETHODCALLTYPE get_errorHandler(
20071        IUnknown **oHandler) = 0;
20072
20073    virtual HRESULT STDMETHODCALLTYPE putref_errorHandler(
20074        IUnknown *oHandler) = 0;
20075
20076};
20077#ifdef __CRT_UUID_DECL
20078__CRT_UUID_DECL(IMXXMLFilter, 0xc90352f7, 0x643c, 0x4fbc, 0xbb,0x23, 0xe9,0x96,0xeb,0x2d,0x51,0xfd)
20079#endif
20080#else
20081typedef struct IMXXMLFilterVtbl {
20082    BEGIN_INTERFACE
20083
20084    /*** IUnknown methods ***/
20085    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20086        IMXXMLFilter *This,
20087        REFIID riid,
20088        void **ppvObject);
20089
20090    ULONG (STDMETHODCALLTYPE *AddRef)(
20091        IMXXMLFilter *This);
20092
20093    ULONG (STDMETHODCALLTYPE *Release)(
20094        IMXXMLFilter *This);
20095
20096    /*** IDispatch methods ***/
20097    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20098        IMXXMLFilter *This,
20099        UINT *pctinfo);
20100
20101    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20102        IMXXMLFilter *This,
20103        UINT iTInfo,
20104        LCID lcid,
20105        ITypeInfo **ppTInfo);
20106
20107    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20108        IMXXMLFilter *This,
20109        REFIID riid,
20110        LPOLESTR *rgszNames,
20111        UINT cNames,
20112        LCID lcid,
20113        DISPID *rgDispId);
20114
20115    HRESULT (STDMETHODCALLTYPE *Invoke)(
20116        IMXXMLFilter *This,
20117        DISPID dispIdMember,
20118        REFIID riid,
20119        LCID lcid,
20120        WORD wFlags,
20121        DISPPARAMS *pDispParams,
20122        VARIANT *pVarResult,
20123        EXCEPINFO *pExcepInfo,
20124        UINT *puArgErr);
20125
20126    /*** IMXXMLFilter methods ***/
20127    HRESULT (STDMETHODCALLTYPE *getFeature)(
20128        IMXXMLFilter *This,
20129        BSTR strName,
20130        VARIANT_BOOL *fValue);
20131
20132    HRESULT (STDMETHODCALLTYPE *putFeature)(
20133        IMXXMLFilter *This,
20134        BSTR strName,
20135        VARIANT_BOOL fValue);
20136
20137    HRESULT (STDMETHODCALLTYPE *getProperty)(
20138        IMXXMLFilter *This,
20139        BSTR strName,
20140        VARIANT *varValue);
20141
20142    HRESULT (STDMETHODCALLTYPE *putProperty)(
20143        IMXXMLFilter *This,
20144        BSTR strName,
20145        VARIANT varValue);
20146
20147    HRESULT (STDMETHODCALLTYPE *get_entityResolver)(
20148        IMXXMLFilter *This,
20149        IUnknown **oResolver);
20150
20151    HRESULT (STDMETHODCALLTYPE *putref_entityResolver)(
20152        IMXXMLFilter *This,
20153        IUnknown *oResolver);
20154
20155    HRESULT (STDMETHODCALLTYPE *get_contentHandler)(
20156        IMXXMLFilter *This,
20157        IUnknown **oHandler);
20158
20159    HRESULT (STDMETHODCALLTYPE *putref_contentHandler)(
20160        IMXXMLFilter *This,
20161        IUnknown *oHandler);
20162
20163    HRESULT (STDMETHODCALLTYPE *get_dtdHandler)(
20164        IMXXMLFilter *This,
20165        IUnknown **oHandler);
20166
20167    HRESULT (STDMETHODCALLTYPE *putref_dtdHandler)(
20168        IMXXMLFilter *This,
20169        IUnknown *oHandler);
20170
20171    HRESULT (STDMETHODCALLTYPE *get_errorHandler)(
20172        IMXXMLFilter *This,
20173        IUnknown **oHandler);
20174
20175    HRESULT (STDMETHODCALLTYPE *putref_errorHandler)(
20176        IMXXMLFilter *This,
20177        IUnknown *oHandler);
20178
20179    END_INTERFACE
20180} IMXXMLFilterVtbl;
20181
20182interface IMXXMLFilter {
20183    CONST_VTBL IMXXMLFilterVtbl* lpVtbl;
20184};
20185
20186#ifdef COBJMACROS
20187#ifndef WIDL_C_INLINE_WRAPPERS
20188/*** IUnknown methods ***/
20189#define IMXXMLFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20190#define IMXXMLFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
20191#define IMXXMLFilter_Release(This) (This)->lpVtbl->Release(This)
20192/*** IDispatch methods ***/
20193#define IMXXMLFilter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20194#define IMXXMLFilter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20195#define IMXXMLFilter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20196#define IMXXMLFilter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20197/*** IMXXMLFilter methods ***/
20198#define IMXXMLFilter_getFeature(This,strName,fValue) (This)->lpVtbl->getFeature(This,strName,fValue)
20199#define IMXXMLFilter_putFeature(This,strName,fValue) (This)->lpVtbl->putFeature(This,strName,fValue)
20200#define IMXXMLFilter_getProperty(This,strName,varValue) (This)->lpVtbl->getProperty(This,strName,varValue)
20201#define IMXXMLFilter_putProperty(This,strName,varValue) (This)->lpVtbl->putProperty(This,strName,varValue)
20202#define IMXXMLFilter_get_entityResolver(This,oResolver) (This)->lpVtbl->get_entityResolver(This,oResolver)
20203#define IMXXMLFilter_putref_entityResolver(This,oResolver) (This)->lpVtbl->putref_entityResolver(This,oResolver)
20204#define IMXXMLFilter_get_contentHandler(This,oHandler) (This)->lpVtbl->get_contentHandler(This,oHandler)
20205#define IMXXMLFilter_putref_contentHandler(This,oHandler) (This)->lpVtbl->putref_contentHandler(This,oHandler)
20206#define IMXXMLFilter_get_dtdHandler(This,oHandler) (This)->lpVtbl->get_dtdHandler(This,oHandler)
20207#define IMXXMLFilter_putref_dtdHandler(This,oHandler) (This)->lpVtbl->putref_dtdHandler(This,oHandler)
20208#define IMXXMLFilter_get_errorHandler(This,oHandler) (This)->lpVtbl->get_errorHandler(This,oHandler)
20209#define IMXXMLFilter_putref_errorHandler(This,oHandler) (This)->lpVtbl->putref_errorHandler(This,oHandler)
20210#else
20211/*** IUnknown methods ***/
20212static inline HRESULT IMXXMLFilter_QueryInterface(IMXXMLFilter* This,REFIID riid,void **ppvObject) {
20213    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20214}
20215static inline ULONG IMXXMLFilter_AddRef(IMXXMLFilter* This) {
20216    return This->lpVtbl->AddRef(This);
20217}
20218static inline ULONG IMXXMLFilter_Release(IMXXMLFilter* This) {
20219    return This->lpVtbl->Release(This);
20220}
20221/*** IDispatch methods ***/
20222static inline HRESULT IMXXMLFilter_GetTypeInfoCount(IMXXMLFilter* This,UINT *pctinfo) {
20223    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20224}
20225static inline HRESULT IMXXMLFilter_GetTypeInfo(IMXXMLFilter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20226    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20227}
20228static inline HRESULT IMXXMLFilter_GetIDsOfNames(IMXXMLFilter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20229    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20230}
20231static inline HRESULT IMXXMLFilter_Invoke(IMXXMLFilter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20232    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20233}
20234/*** IMXXMLFilter methods ***/
20235static inline HRESULT IMXXMLFilter_getFeature(IMXXMLFilter* This,BSTR strName,VARIANT_BOOL *fValue) {
20236    return This->lpVtbl->getFeature(This,strName,fValue);
20237}
20238static inline HRESULT IMXXMLFilter_putFeature(IMXXMLFilter* This,BSTR strName,VARIANT_BOOL fValue) {
20239    return This->lpVtbl->putFeature(This,strName,fValue);
20240}
20241static inline HRESULT IMXXMLFilter_getProperty(IMXXMLFilter* This,BSTR strName,VARIANT *varValue) {
20242    return This->lpVtbl->getProperty(This,strName,varValue);
20243}
20244static inline HRESULT IMXXMLFilter_putProperty(IMXXMLFilter* This,BSTR strName,VARIANT varValue) {
20245    return This->lpVtbl->putProperty(This,strName,varValue);
20246}
20247static inline HRESULT IMXXMLFilter_get_entityResolver(IMXXMLFilter* This,IUnknown **oResolver) {
20248    return This->lpVtbl->get_entityResolver(This,oResolver);
20249}
20250static inline HRESULT IMXXMLFilter_putref_entityResolver(IMXXMLFilter* This,IUnknown *oResolver) {
20251    return This->lpVtbl->putref_entityResolver(This,oResolver);
20252}
20253static inline HRESULT IMXXMLFilter_get_contentHandler(IMXXMLFilter* This,IUnknown **oHandler) {
20254    return This->lpVtbl->get_contentHandler(This,oHandler);
20255}
20256static inline HRESULT IMXXMLFilter_putref_contentHandler(IMXXMLFilter* This,IUnknown *oHandler) {
20257    return This->lpVtbl->putref_contentHandler(This,oHandler);
20258}
20259static inline HRESULT IMXXMLFilter_get_dtdHandler(IMXXMLFilter* This,IUnknown **oHandler) {
20260    return This->lpVtbl->get_dtdHandler(This,oHandler);
20261}
20262static inline HRESULT IMXXMLFilter_putref_dtdHandler(IMXXMLFilter* This,IUnknown *oHandler) {
20263    return This->lpVtbl->putref_dtdHandler(This,oHandler);
20264}
20265static inline HRESULT IMXXMLFilter_get_errorHandler(IMXXMLFilter* This,IUnknown **oHandler) {
20266    return This->lpVtbl->get_errorHandler(This,oHandler);
20267}
20268static inline HRESULT IMXXMLFilter_putref_errorHandler(IMXXMLFilter* This,IUnknown *oHandler) {
20269    return This->lpVtbl->putref_errorHandler(This,oHandler);
20270}
20271#endif
20272#endif
20273
20274#endif
20275
20276
20277#endif  /* __IMXXMLFilter_INTERFACE_DEFINED__ */
20278
20279/*****************************************************************************
20280 * ISchemaStringCollection interface
20281 */
20282#ifndef __ISchemaStringCollection_INTERFACE_DEFINED__
20283#define __ISchemaStringCollection_INTERFACE_DEFINED__
20284
20285DEFINE_GUID(IID_ISchemaStringCollection, 0x50ea08b1, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
20286#if defined(__cplusplus) && !defined(CINTERFACE)
20287MIDL_INTERFACE("50ea08b1-dd1b-4664-9a50-c2f40f4bd79a")
20288ISchemaStringCollection : public IDispatch
20289{
20290    virtual HRESULT STDMETHODCALLTYPE get_item(
20291        LONG index,
20292        BSTR *bstr) = 0;
20293
20294    virtual HRESULT STDMETHODCALLTYPE get_length(
20295        LONG *length) = 0;
20296
20297    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
20298        IUnknown **ppunk) = 0;
20299
20300};
20301#ifdef __CRT_UUID_DECL
20302__CRT_UUID_DECL(ISchemaStringCollection, 0x50ea08b1, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
20303#endif
20304#else
20305typedef struct ISchemaStringCollectionVtbl {
20306    BEGIN_INTERFACE
20307
20308    /*** IUnknown methods ***/
20309    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20310        ISchemaStringCollection *This,
20311        REFIID riid,
20312        void **ppvObject);
20313
20314    ULONG (STDMETHODCALLTYPE *AddRef)(
20315        ISchemaStringCollection *This);
20316
20317    ULONG (STDMETHODCALLTYPE *Release)(
20318        ISchemaStringCollection *This);
20319
20320    /*** IDispatch methods ***/
20321    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20322        ISchemaStringCollection *This,
20323        UINT *pctinfo);
20324
20325    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20326        ISchemaStringCollection *This,
20327        UINT iTInfo,
20328        LCID lcid,
20329        ITypeInfo **ppTInfo);
20330
20331    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20332        ISchemaStringCollection *This,
20333        REFIID riid,
20334        LPOLESTR *rgszNames,
20335        UINT cNames,
20336        LCID lcid,
20337        DISPID *rgDispId);
20338
20339    HRESULT (STDMETHODCALLTYPE *Invoke)(
20340        ISchemaStringCollection *This,
20341        DISPID dispIdMember,
20342        REFIID riid,
20343        LCID lcid,
20344        WORD wFlags,
20345        DISPPARAMS *pDispParams,
20346        VARIANT *pVarResult,
20347        EXCEPINFO *pExcepInfo,
20348        UINT *puArgErr);
20349
20350    /*** ISchemaStringCollection methods ***/
20351    HRESULT (STDMETHODCALLTYPE *get_item)(
20352        ISchemaStringCollection *This,
20353        LONG index,
20354        BSTR *bstr);
20355
20356    HRESULT (STDMETHODCALLTYPE *get_length)(
20357        ISchemaStringCollection *This,
20358        LONG *length);
20359
20360    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
20361        ISchemaStringCollection *This,
20362        IUnknown **ppunk);
20363
20364    END_INTERFACE
20365} ISchemaStringCollectionVtbl;
20366
20367interface ISchemaStringCollection {
20368    CONST_VTBL ISchemaStringCollectionVtbl* lpVtbl;
20369};
20370
20371#ifdef COBJMACROS
20372#ifndef WIDL_C_INLINE_WRAPPERS
20373/*** IUnknown methods ***/
20374#define ISchemaStringCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20375#define ISchemaStringCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
20376#define ISchemaStringCollection_Release(This) (This)->lpVtbl->Release(This)
20377/*** IDispatch methods ***/
20378#define ISchemaStringCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20379#define ISchemaStringCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20380#define ISchemaStringCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20381#define ISchemaStringCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20382/*** ISchemaStringCollection methods ***/
20383#define ISchemaStringCollection_get_item(This,index,bstr) (This)->lpVtbl->get_item(This,index,bstr)
20384#define ISchemaStringCollection_get_length(This,length) (This)->lpVtbl->get_length(This,length)
20385#define ISchemaStringCollection_get__newEnum(This,ppunk) (This)->lpVtbl->get__newEnum(This,ppunk)
20386#else
20387/*** IUnknown methods ***/
20388static inline HRESULT ISchemaStringCollection_QueryInterface(ISchemaStringCollection* This,REFIID riid,void **ppvObject) {
20389    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20390}
20391static inline ULONG ISchemaStringCollection_AddRef(ISchemaStringCollection* This) {
20392    return This->lpVtbl->AddRef(This);
20393}
20394static inline ULONG ISchemaStringCollection_Release(ISchemaStringCollection* This) {
20395    return This->lpVtbl->Release(This);
20396}
20397/*** IDispatch methods ***/
20398static inline HRESULT ISchemaStringCollection_GetTypeInfoCount(ISchemaStringCollection* This,UINT *pctinfo) {
20399    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20400}
20401static inline HRESULT ISchemaStringCollection_GetTypeInfo(ISchemaStringCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20402    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20403}
20404static inline HRESULT ISchemaStringCollection_GetIDsOfNames(ISchemaStringCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20405    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20406}
20407static inline HRESULT ISchemaStringCollection_Invoke(ISchemaStringCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20408    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20409}
20410/*** ISchemaStringCollection methods ***/
20411static inline HRESULT ISchemaStringCollection_get_item(ISchemaStringCollection* This,LONG index,BSTR *bstr) {
20412    return This->lpVtbl->get_item(This,index,bstr);
20413}
20414static inline HRESULT ISchemaStringCollection_get_length(ISchemaStringCollection* This,LONG *length) {
20415    return This->lpVtbl->get_length(This,length);
20416}
20417static inline HRESULT ISchemaStringCollection_get__newEnum(ISchemaStringCollection* This,IUnknown **ppunk) {
20418    return This->lpVtbl->get__newEnum(This,ppunk);
20419}
20420#endif
20421#endif
20422
20423#endif
20424
20425
20426#endif  /* __ISchemaStringCollection_INTERFACE_DEFINED__ */
20427
20428/*****************************************************************************
20429 * ISchemaItemCollection interface
20430 */
20431#ifndef __ISchemaItemCollection_INTERFACE_DEFINED__
20432#define __ISchemaItemCollection_INTERFACE_DEFINED__
20433
20434DEFINE_GUID(IID_ISchemaItemCollection, 0x50ea08b2, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
20435#if defined(__cplusplus) && !defined(CINTERFACE)
20436MIDL_INTERFACE("50ea08b2-dd1b-4664-9a50-c2f40f4bd79a")
20437ISchemaItemCollection : public IDispatch
20438{
20439    virtual HRESULT STDMETHODCALLTYPE get_item(
20440        LONG index,
20441        ISchemaItem **item) = 0;
20442
20443    virtual HRESULT STDMETHODCALLTYPE itemByName(
20444        BSTR name,
20445        ISchemaItem **item) = 0;
20446
20447    virtual HRESULT STDMETHODCALLTYPE itemByQName(
20448        BSTR name,
20449        BSTR namespaceURI,
20450        ISchemaItem **item) = 0;
20451
20452    virtual HRESULT STDMETHODCALLTYPE get_length(
20453        LONG *length) = 0;
20454
20455    virtual HRESULT STDMETHODCALLTYPE get__newEnum(
20456        IUnknown **ppunk) = 0;
20457
20458};
20459#ifdef __CRT_UUID_DECL
20460__CRT_UUID_DECL(ISchemaItemCollection, 0x50ea08b2, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
20461#endif
20462#else
20463typedef struct ISchemaItemCollectionVtbl {
20464    BEGIN_INTERFACE
20465
20466    /*** IUnknown methods ***/
20467    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20468        ISchemaItemCollection *This,
20469        REFIID riid,
20470        void **ppvObject);
20471
20472    ULONG (STDMETHODCALLTYPE *AddRef)(
20473        ISchemaItemCollection *This);
20474
20475    ULONG (STDMETHODCALLTYPE *Release)(
20476        ISchemaItemCollection *This);
20477
20478    /*** IDispatch methods ***/
20479    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20480        ISchemaItemCollection *This,
20481        UINT *pctinfo);
20482
20483    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20484        ISchemaItemCollection *This,
20485        UINT iTInfo,
20486        LCID lcid,
20487        ITypeInfo **ppTInfo);
20488
20489    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20490        ISchemaItemCollection *This,
20491        REFIID riid,
20492        LPOLESTR *rgszNames,
20493        UINT cNames,
20494        LCID lcid,
20495        DISPID *rgDispId);
20496
20497    HRESULT (STDMETHODCALLTYPE *Invoke)(
20498        ISchemaItemCollection *This,
20499        DISPID dispIdMember,
20500        REFIID riid,
20501        LCID lcid,
20502        WORD wFlags,
20503        DISPPARAMS *pDispParams,
20504        VARIANT *pVarResult,
20505        EXCEPINFO *pExcepInfo,
20506        UINT *puArgErr);
20507
20508    /*** ISchemaItemCollection methods ***/
20509    HRESULT (STDMETHODCALLTYPE *get_item)(
20510        ISchemaItemCollection *This,
20511        LONG index,
20512        ISchemaItem **item);
20513
20514    HRESULT (STDMETHODCALLTYPE *itemByName)(
20515        ISchemaItemCollection *This,
20516        BSTR name,
20517        ISchemaItem **item);
20518
20519    HRESULT (STDMETHODCALLTYPE *itemByQName)(
20520        ISchemaItemCollection *This,
20521        BSTR name,
20522        BSTR namespaceURI,
20523        ISchemaItem **item);
20524
20525    HRESULT (STDMETHODCALLTYPE *get_length)(
20526        ISchemaItemCollection *This,
20527        LONG *length);
20528
20529    HRESULT (STDMETHODCALLTYPE *get__newEnum)(
20530        ISchemaItemCollection *This,
20531        IUnknown **ppunk);
20532
20533    END_INTERFACE
20534} ISchemaItemCollectionVtbl;
20535
20536interface ISchemaItemCollection {
20537    CONST_VTBL ISchemaItemCollectionVtbl* lpVtbl;
20538};
20539
20540#ifdef COBJMACROS
20541#ifndef WIDL_C_INLINE_WRAPPERS
20542/*** IUnknown methods ***/
20543#define ISchemaItemCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20544#define ISchemaItemCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
20545#define ISchemaItemCollection_Release(This) (This)->lpVtbl->Release(This)
20546/*** IDispatch methods ***/
20547#define ISchemaItemCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20548#define ISchemaItemCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20549#define ISchemaItemCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20550#define ISchemaItemCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20551/*** ISchemaItemCollection methods ***/
20552#define ISchemaItemCollection_get_item(This,index,item) (This)->lpVtbl->get_item(This,index,item)
20553#define ISchemaItemCollection_itemByName(This,name,item) (This)->lpVtbl->itemByName(This,name,item)
20554#define ISchemaItemCollection_itemByQName(This,name,namespaceURI,item) (This)->lpVtbl->itemByQName(This,name,namespaceURI,item)
20555#define ISchemaItemCollection_get_length(This,length) (This)->lpVtbl->get_length(This,length)
20556#define ISchemaItemCollection_get__newEnum(This,ppunk) (This)->lpVtbl->get__newEnum(This,ppunk)
20557#else
20558/*** IUnknown methods ***/
20559static inline HRESULT ISchemaItemCollection_QueryInterface(ISchemaItemCollection* This,REFIID riid,void **ppvObject) {
20560    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20561}
20562static inline ULONG ISchemaItemCollection_AddRef(ISchemaItemCollection* This) {
20563    return This->lpVtbl->AddRef(This);
20564}
20565static inline ULONG ISchemaItemCollection_Release(ISchemaItemCollection* This) {
20566    return This->lpVtbl->Release(This);
20567}
20568/*** IDispatch methods ***/
20569static inline HRESULT ISchemaItemCollection_GetTypeInfoCount(ISchemaItemCollection* This,UINT *pctinfo) {
20570    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20571}
20572static inline HRESULT ISchemaItemCollection_GetTypeInfo(ISchemaItemCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20573    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20574}
20575static inline HRESULT ISchemaItemCollection_GetIDsOfNames(ISchemaItemCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20576    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20577}
20578static inline HRESULT ISchemaItemCollection_Invoke(ISchemaItemCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20579    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20580}
20581/*** ISchemaItemCollection methods ***/
20582static inline HRESULT ISchemaItemCollection_get_item(ISchemaItemCollection* This,LONG index,ISchemaItem **item) {
20583    return This->lpVtbl->get_item(This,index,item);
20584}
20585static inline HRESULT ISchemaItemCollection_itemByName(ISchemaItemCollection* This,BSTR name,ISchemaItem **item) {
20586    return This->lpVtbl->itemByName(This,name,item);
20587}
20588static inline HRESULT ISchemaItemCollection_itemByQName(ISchemaItemCollection* This,BSTR name,BSTR namespaceURI,ISchemaItem **item) {
20589    return This->lpVtbl->itemByQName(This,name,namespaceURI,item);
20590}
20591static inline HRESULT ISchemaItemCollection_get_length(ISchemaItemCollection* This,LONG *length) {
20592    return This->lpVtbl->get_length(This,length);
20593}
20594static inline HRESULT ISchemaItemCollection_get__newEnum(ISchemaItemCollection* This,IUnknown **ppunk) {
20595    return This->lpVtbl->get__newEnum(This,ppunk);
20596}
20597#endif
20598#endif
20599
20600#endif
20601
20602
20603#endif  /* __ISchemaItemCollection_INTERFACE_DEFINED__ */
20604
20605/*****************************************************************************
20606 * ISchemaItem interface
20607 */
20608#ifndef __ISchemaItem_INTERFACE_DEFINED__
20609#define __ISchemaItem_INTERFACE_DEFINED__
20610
20611DEFINE_GUID(IID_ISchemaItem, 0x50ea08b3, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
20612#if defined(__cplusplus) && !defined(CINTERFACE)
20613MIDL_INTERFACE("50ea08b3-dd1b-4664-9a50-c2f40f4bd79a")
20614ISchemaItem : public IDispatch
20615{
20616    virtual HRESULT STDMETHODCALLTYPE get_name(
20617        BSTR *name) = 0;
20618
20619    virtual HRESULT STDMETHODCALLTYPE get_namespaceURI(
20620        BSTR *namespaceURI) = 0;
20621
20622    virtual HRESULT STDMETHODCALLTYPE get_schema(
20623        ISchema **schema) = 0;
20624
20625    virtual HRESULT STDMETHODCALLTYPE get_id(
20626        BSTR *id) = 0;
20627
20628    virtual HRESULT STDMETHODCALLTYPE get_itemType(
20629        SOMITEMTYPE *itemType) = 0;
20630
20631    virtual HRESULT STDMETHODCALLTYPE get_unhandledAttributes(
20632        IVBSAXAttributes **attributes) = 0;
20633
20634    virtual HRESULT STDMETHODCALLTYPE writeAnnotation(
20635        IUnknown *annotationSink,
20636        VARIANT_BOOL *isWritten) = 0;
20637
20638};
20639#ifdef __CRT_UUID_DECL
20640__CRT_UUID_DECL(ISchemaItem, 0x50ea08b3, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
20641#endif
20642#else
20643typedef struct ISchemaItemVtbl {
20644    BEGIN_INTERFACE
20645
20646    /*** IUnknown methods ***/
20647    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20648        ISchemaItem *This,
20649        REFIID riid,
20650        void **ppvObject);
20651
20652    ULONG (STDMETHODCALLTYPE *AddRef)(
20653        ISchemaItem *This);
20654
20655    ULONG (STDMETHODCALLTYPE *Release)(
20656        ISchemaItem *This);
20657
20658    /*** IDispatch methods ***/
20659    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20660        ISchemaItem *This,
20661        UINT *pctinfo);
20662
20663    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20664        ISchemaItem *This,
20665        UINT iTInfo,
20666        LCID lcid,
20667        ITypeInfo **ppTInfo);
20668
20669    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20670        ISchemaItem *This,
20671        REFIID riid,
20672        LPOLESTR *rgszNames,
20673        UINT cNames,
20674        LCID lcid,
20675        DISPID *rgDispId);
20676
20677    HRESULT (STDMETHODCALLTYPE *Invoke)(
20678        ISchemaItem *This,
20679        DISPID dispIdMember,
20680        REFIID riid,
20681        LCID lcid,
20682        WORD wFlags,
20683        DISPPARAMS *pDispParams,
20684        VARIANT *pVarResult,
20685        EXCEPINFO *pExcepInfo,
20686        UINT *puArgErr);
20687
20688    /*** ISchemaItem methods ***/
20689    HRESULT (STDMETHODCALLTYPE *get_name)(
20690        ISchemaItem *This,
20691        BSTR *name);
20692
20693    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
20694        ISchemaItem *This,
20695        BSTR *namespaceURI);
20696
20697    HRESULT (STDMETHODCALLTYPE *get_schema)(
20698        ISchemaItem *This,
20699        ISchema **schema);
20700
20701    HRESULT (STDMETHODCALLTYPE *get_id)(
20702        ISchemaItem *This,
20703        BSTR *id);
20704
20705    HRESULT (STDMETHODCALLTYPE *get_itemType)(
20706        ISchemaItem *This,
20707        SOMITEMTYPE *itemType);
20708
20709    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
20710        ISchemaItem *This,
20711        IVBSAXAttributes **attributes);
20712
20713    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
20714        ISchemaItem *This,
20715        IUnknown *annotationSink,
20716        VARIANT_BOOL *isWritten);
20717
20718    END_INTERFACE
20719} ISchemaItemVtbl;
20720
20721interface ISchemaItem {
20722    CONST_VTBL ISchemaItemVtbl* lpVtbl;
20723};
20724
20725#ifdef COBJMACROS
20726#ifndef WIDL_C_INLINE_WRAPPERS
20727/*** IUnknown methods ***/
20728#define ISchemaItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20729#define ISchemaItem_AddRef(This) (This)->lpVtbl->AddRef(This)
20730#define ISchemaItem_Release(This) (This)->lpVtbl->Release(This)
20731/*** IDispatch methods ***/
20732#define ISchemaItem_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20733#define ISchemaItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20734#define ISchemaItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20735#define ISchemaItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20736/*** ISchemaItem methods ***/
20737#define ISchemaItem_get_name(This,name) (This)->lpVtbl->get_name(This,name)
20738#define ISchemaItem_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
20739#define ISchemaItem_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
20740#define ISchemaItem_get_id(This,id) (This)->lpVtbl->get_id(This,id)
20741#define ISchemaItem_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
20742#define ISchemaItem_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
20743#define ISchemaItem_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
20744#else
20745/*** IUnknown methods ***/
20746static inline HRESULT ISchemaItem_QueryInterface(ISchemaItem* This,REFIID riid,void **ppvObject) {
20747    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20748}
20749static inline ULONG ISchemaItem_AddRef(ISchemaItem* This) {
20750    return This->lpVtbl->AddRef(This);
20751}
20752static inline ULONG ISchemaItem_Release(ISchemaItem* This) {
20753    return This->lpVtbl->Release(This);
20754}
20755/*** IDispatch methods ***/
20756static inline HRESULT ISchemaItem_GetTypeInfoCount(ISchemaItem* This,UINT *pctinfo) {
20757    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
20758}
20759static inline HRESULT ISchemaItem_GetTypeInfo(ISchemaItem* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
20760    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
20761}
20762static inline HRESULT ISchemaItem_GetIDsOfNames(ISchemaItem* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
20763    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
20764}
20765static inline HRESULT ISchemaItem_Invoke(ISchemaItem* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
20766    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
20767}
20768/*** ISchemaItem methods ***/
20769static inline HRESULT ISchemaItem_get_name(ISchemaItem* This,BSTR *name) {
20770    return This->lpVtbl->get_name(This,name);
20771}
20772static inline HRESULT ISchemaItem_get_namespaceURI(ISchemaItem* This,BSTR *namespaceURI) {
20773    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
20774}
20775static inline HRESULT ISchemaItem_get_schema(ISchemaItem* This,ISchema **schema) {
20776    return This->lpVtbl->get_schema(This,schema);
20777}
20778static inline HRESULT ISchemaItem_get_id(ISchemaItem* This,BSTR *id) {
20779    return This->lpVtbl->get_id(This,id);
20780}
20781static inline HRESULT ISchemaItem_get_itemType(ISchemaItem* This,SOMITEMTYPE *itemType) {
20782    return This->lpVtbl->get_itemType(This,itemType);
20783}
20784static inline HRESULT ISchemaItem_get_unhandledAttributes(ISchemaItem* This,IVBSAXAttributes **attributes) {
20785    return This->lpVtbl->get_unhandledAttributes(This,attributes);
20786}
20787static inline HRESULT ISchemaItem_writeAnnotation(ISchemaItem* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
20788    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
20789}
20790#endif
20791#endif
20792
20793#endif
20794
20795
20796#endif  /* __ISchemaItem_INTERFACE_DEFINED__ */
20797
20798/*****************************************************************************
20799 * ISchema interface
20800 */
20801#ifndef __ISchema_INTERFACE_DEFINED__
20802#define __ISchema_INTERFACE_DEFINED__
20803
20804DEFINE_GUID(IID_ISchema, 0x50ea08b4, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
20805#if defined(__cplusplus) && !defined(CINTERFACE)
20806MIDL_INTERFACE("50ea08b4-dd1b-4664-9a50-c2f40f4bd79a")
20807ISchema : public ISchemaItem
20808{
20809    virtual HRESULT STDMETHODCALLTYPE get_targetNamespace(
20810        BSTR *targetNamespace) = 0;
20811
20812    virtual HRESULT STDMETHODCALLTYPE get_version(
20813        BSTR *version) = 0;
20814
20815    virtual HRESULT STDMETHODCALLTYPE get_types(
20816        ISchemaItemCollection **types) = 0;
20817
20818    virtual HRESULT STDMETHODCALLTYPE get_elements(
20819        ISchemaItemCollection **elements) = 0;
20820
20821    virtual HRESULT STDMETHODCALLTYPE get_attributes(
20822        ISchemaItemCollection **attributes) = 0;
20823
20824    virtual HRESULT STDMETHODCALLTYPE get_attributeGroups(
20825        ISchemaItemCollection **attributeGroups) = 0;
20826
20827    virtual HRESULT STDMETHODCALLTYPE get_modelGroups(
20828        ISchemaItemCollection **modelGroups) = 0;
20829
20830    virtual HRESULT STDMETHODCALLTYPE get_notations(
20831        ISchemaItemCollection **notations) = 0;
20832
20833    virtual HRESULT STDMETHODCALLTYPE get_schemaLocations(
20834        ISchemaStringCollection **schemaLocations) = 0;
20835
20836};
20837#ifdef __CRT_UUID_DECL
20838__CRT_UUID_DECL(ISchema, 0x50ea08b4, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
20839#endif
20840#else
20841typedef struct ISchemaVtbl {
20842    BEGIN_INTERFACE
20843
20844    /*** IUnknown methods ***/
20845    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
20846        ISchema *This,
20847        REFIID riid,
20848        void **ppvObject);
20849
20850    ULONG (STDMETHODCALLTYPE *AddRef)(
20851        ISchema *This);
20852
20853    ULONG (STDMETHODCALLTYPE *Release)(
20854        ISchema *This);
20855
20856    /*** IDispatch methods ***/
20857    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
20858        ISchema *This,
20859        UINT *pctinfo);
20860
20861    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
20862        ISchema *This,
20863        UINT iTInfo,
20864        LCID lcid,
20865        ITypeInfo **ppTInfo);
20866
20867    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
20868        ISchema *This,
20869        REFIID riid,
20870        LPOLESTR *rgszNames,
20871        UINT cNames,
20872        LCID lcid,
20873        DISPID *rgDispId);
20874
20875    HRESULT (STDMETHODCALLTYPE *Invoke)(
20876        ISchema *This,
20877        DISPID dispIdMember,
20878        REFIID riid,
20879        LCID lcid,
20880        WORD wFlags,
20881        DISPPARAMS *pDispParams,
20882        VARIANT *pVarResult,
20883        EXCEPINFO *pExcepInfo,
20884        UINT *puArgErr);
20885
20886    /*** ISchemaItem methods ***/
20887    HRESULT (STDMETHODCALLTYPE *get_name)(
20888        ISchema *This,
20889        BSTR *name);
20890
20891    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
20892        ISchema *This,
20893        BSTR *namespaceURI);
20894
20895    HRESULT (STDMETHODCALLTYPE *get_schema)(
20896        ISchema *This,
20897        ISchema **schema);
20898
20899    HRESULT (STDMETHODCALLTYPE *get_id)(
20900        ISchema *This,
20901        BSTR *id);
20902
20903    HRESULT (STDMETHODCALLTYPE *get_itemType)(
20904        ISchema *This,
20905        SOMITEMTYPE *itemType);
20906
20907    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
20908        ISchema *This,
20909        IVBSAXAttributes **attributes);
20910
20911    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
20912        ISchema *This,
20913        IUnknown *annotationSink,
20914        VARIANT_BOOL *isWritten);
20915
20916    /*** ISchema methods ***/
20917    HRESULT (STDMETHODCALLTYPE *get_targetNamespace)(
20918        ISchema *This,
20919        BSTR *targetNamespace);
20920
20921    HRESULT (STDMETHODCALLTYPE *get_version)(
20922        ISchema *This,
20923        BSTR *version);
20924
20925    HRESULT (STDMETHODCALLTYPE *get_types)(
20926        ISchema *This,
20927        ISchemaItemCollection **types);
20928
20929    HRESULT (STDMETHODCALLTYPE *get_elements)(
20930        ISchema *This,
20931        ISchemaItemCollection **elements);
20932
20933    HRESULT (STDMETHODCALLTYPE *get_attributes)(
20934        ISchema *This,
20935        ISchemaItemCollection **attributes);
20936
20937    HRESULT (STDMETHODCALLTYPE *get_attributeGroups)(
20938        ISchema *This,
20939        ISchemaItemCollection **attributeGroups);
20940
20941    HRESULT (STDMETHODCALLTYPE *get_modelGroups)(
20942        ISchema *This,
20943        ISchemaItemCollection **modelGroups);
20944
20945    HRESULT (STDMETHODCALLTYPE *get_notations)(
20946        ISchema *This,
20947        ISchemaItemCollection **notations);
20948
20949    HRESULT (STDMETHODCALLTYPE *get_schemaLocations)(
20950        ISchema *This,
20951        ISchemaStringCollection **schemaLocations);
20952
20953    END_INTERFACE
20954} ISchemaVtbl;
20955
20956interface ISchema {
20957    CONST_VTBL ISchemaVtbl* lpVtbl;
20958};
20959
20960#ifdef COBJMACROS
20961#ifndef WIDL_C_INLINE_WRAPPERS
20962/*** IUnknown methods ***/
20963#define ISchema_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
20964#define ISchema_AddRef(This) (This)->lpVtbl->AddRef(This)
20965#define ISchema_Release(This) (This)->lpVtbl->Release(This)
20966/*** IDispatch methods ***/
20967#define ISchema_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
20968#define ISchema_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
20969#define ISchema_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
20970#define ISchema_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
20971/*** ISchemaItem methods ***/
20972#define ISchema_get_name(This,name) (This)->lpVtbl->get_name(This,name)
20973#define ISchema_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
20974#define ISchema_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
20975#define ISchema_get_id(This,id) (This)->lpVtbl->get_id(This,id)
20976#define ISchema_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
20977#define ISchema_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
20978#define ISchema_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
20979/*** ISchema methods ***/
20980#define ISchema_get_targetNamespace(This,targetNamespace) (This)->lpVtbl->get_targetNamespace(This,targetNamespace)
20981#define ISchema_get_version(This,version) (This)->lpVtbl->get_version(This,version)
20982#define ISchema_get_types(This,types) (This)->lpVtbl->get_types(This,types)
20983#define ISchema_get_elements(This,elements) (This)->lpVtbl->get_elements(This,elements)
20984#define ISchema_get_attributes(This,attributes) (This)->lpVtbl->get_attributes(This,attributes)
20985#define ISchema_get_attributeGroups(This,attributeGroups) (This)->lpVtbl->get_attributeGroups(This,attributeGroups)
20986#define ISchema_get_modelGroups(This,modelGroups) (This)->lpVtbl->get_modelGroups(This,modelGroups)
20987#define ISchema_get_notations(This,notations) (This)->lpVtbl->get_notations(This,notations)
20988#define ISchema_get_schemaLocations(This,schemaLocations) (This)->lpVtbl->get_schemaLocations(This,schemaLocations)
20989#else
20990/*** IUnknown methods ***/
20991static inline HRESULT ISchema_QueryInterface(ISchema* This,REFIID riid,void **ppvObject) {
20992    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
20993}
20994static inline ULONG ISchema_AddRef(ISchema* This) {
20995    return This->lpVtbl->AddRef(This);
20996}
20997static inline ULONG ISchema_Release(ISchema* This) {
20998    return This->lpVtbl->Release(This);
20999}
21000/*** IDispatch methods ***/
21001static inline HRESULT ISchema_GetTypeInfoCount(ISchema* This,UINT *pctinfo) {
21002    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21003}
21004static inline HRESULT ISchema_GetTypeInfo(ISchema* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21005    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21006}
21007static inline HRESULT ISchema_GetIDsOfNames(ISchema* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21008    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21009}
21010static inline HRESULT ISchema_Invoke(ISchema* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21011    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21012}
21013/*** ISchemaItem methods ***/
21014static inline HRESULT ISchema_get_name(ISchema* This,BSTR *name) {
21015    return This->lpVtbl->get_name(This,name);
21016}
21017static inline HRESULT ISchema_get_namespaceURI(ISchema* This,BSTR *namespaceURI) {
21018    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
21019}
21020static inline HRESULT ISchema_get_schema(ISchema* This,ISchema **schema) {
21021    return This->lpVtbl->get_schema(This,schema);
21022}
21023static inline HRESULT ISchema_get_id(ISchema* This,BSTR *id) {
21024    return This->lpVtbl->get_id(This,id);
21025}
21026static inline HRESULT ISchema_get_itemType(ISchema* This,SOMITEMTYPE *itemType) {
21027    return This->lpVtbl->get_itemType(This,itemType);
21028}
21029static inline HRESULT ISchema_get_unhandledAttributes(ISchema* This,IVBSAXAttributes **attributes) {
21030    return This->lpVtbl->get_unhandledAttributes(This,attributes);
21031}
21032static inline HRESULT ISchema_writeAnnotation(ISchema* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
21033    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
21034}
21035/*** ISchema methods ***/
21036static inline HRESULT ISchema_get_targetNamespace(ISchema* This,BSTR *targetNamespace) {
21037    return This->lpVtbl->get_targetNamespace(This,targetNamespace);
21038}
21039static inline HRESULT ISchema_get_version(ISchema* This,BSTR *version) {
21040    return This->lpVtbl->get_version(This,version);
21041}
21042static inline HRESULT ISchema_get_types(ISchema* This,ISchemaItemCollection **types) {
21043    return This->lpVtbl->get_types(This,types);
21044}
21045static inline HRESULT ISchema_get_elements(ISchema* This,ISchemaItemCollection **elements) {
21046    return This->lpVtbl->get_elements(This,elements);
21047}
21048static inline HRESULT ISchema_get_attributes(ISchema* This,ISchemaItemCollection **attributes) {
21049    return This->lpVtbl->get_attributes(This,attributes);
21050}
21051static inline HRESULT ISchema_get_attributeGroups(ISchema* This,ISchemaItemCollection **attributeGroups) {
21052    return This->lpVtbl->get_attributeGroups(This,attributeGroups);
21053}
21054static inline HRESULT ISchema_get_modelGroups(ISchema* This,ISchemaItemCollection **modelGroups) {
21055    return This->lpVtbl->get_modelGroups(This,modelGroups);
21056}
21057static inline HRESULT ISchema_get_notations(ISchema* This,ISchemaItemCollection **notations) {
21058    return This->lpVtbl->get_notations(This,notations);
21059}
21060static inline HRESULT ISchema_get_schemaLocations(ISchema* This,ISchemaStringCollection **schemaLocations) {
21061    return This->lpVtbl->get_schemaLocations(This,schemaLocations);
21062}
21063#endif
21064#endif
21065
21066#endif
21067
21068
21069#endif  /* __ISchema_INTERFACE_DEFINED__ */
21070
21071/*****************************************************************************
21072 * ISchemaParticle interface
21073 */
21074#ifndef __ISchemaParticle_INTERFACE_DEFINED__
21075#define __ISchemaParticle_INTERFACE_DEFINED__
21076
21077DEFINE_GUID(IID_ISchemaParticle, 0x50ea08b5, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
21078#if defined(__cplusplus) && !defined(CINTERFACE)
21079MIDL_INTERFACE("50ea08b5-dd1b-4664-9a50-c2f40f4bd79a")
21080ISchemaParticle : public ISchemaItem
21081{
21082    virtual HRESULT STDMETHODCALLTYPE get_minOccurs(
21083        VARIANT *minOccurs) = 0;
21084
21085    virtual HRESULT STDMETHODCALLTYPE get_maxOccurs(
21086        VARIANT *maxOccurs) = 0;
21087
21088};
21089#ifdef __CRT_UUID_DECL
21090__CRT_UUID_DECL(ISchemaParticle, 0x50ea08b5, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
21091#endif
21092#else
21093typedef struct ISchemaParticleVtbl {
21094    BEGIN_INTERFACE
21095
21096    /*** IUnknown methods ***/
21097    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21098        ISchemaParticle *This,
21099        REFIID riid,
21100        void **ppvObject);
21101
21102    ULONG (STDMETHODCALLTYPE *AddRef)(
21103        ISchemaParticle *This);
21104
21105    ULONG (STDMETHODCALLTYPE *Release)(
21106        ISchemaParticle *This);
21107
21108    /*** IDispatch methods ***/
21109    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21110        ISchemaParticle *This,
21111        UINT *pctinfo);
21112
21113    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21114        ISchemaParticle *This,
21115        UINT iTInfo,
21116        LCID lcid,
21117        ITypeInfo **ppTInfo);
21118
21119    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21120        ISchemaParticle *This,
21121        REFIID riid,
21122        LPOLESTR *rgszNames,
21123        UINT cNames,
21124        LCID lcid,
21125        DISPID *rgDispId);
21126
21127    HRESULT (STDMETHODCALLTYPE *Invoke)(
21128        ISchemaParticle *This,
21129        DISPID dispIdMember,
21130        REFIID riid,
21131        LCID lcid,
21132        WORD wFlags,
21133        DISPPARAMS *pDispParams,
21134        VARIANT *pVarResult,
21135        EXCEPINFO *pExcepInfo,
21136        UINT *puArgErr);
21137
21138    /*** ISchemaItem methods ***/
21139    HRESULT (STDMETHODCALLTYPE *get_name)(
21140        ISchemaParticle *This,
21141        BSTR *name);
21142
21143    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
21144        ISchemaParticle *This,
21145        BSTR *namespaceURI);
21146
21147    HRESULT (STDMETHODCALLTYPE *get_schema)(
21148        ISchemaParticle *This,
21149        ISchema **schema);
21150
21151    HRESULT (STDMETHODCALLTYPE *get_id)(
21152        ISchemaParticle *This,
21153        BSTR *id);
21154
21155    HRESULT (STDMETHODCALLTYPE *get_itemType)(
21156        ISchemaParticle *This,
21157        SOMITEMTYPE *itemType);
21158
21159    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
21160        ISchemaParticle *This,
21161        IVBSAXAttributes **attributes);
21162
21163    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
21164        ISchemaParticle *This,
21165        IUnknown *annotationSink,
21166        VARIANT_BOOL *isWritten);
21167
21168    /*** ISchemaParticle methods ***/
21169    HRESULT (STDMETHODCALLTYPE *get_minOccurs)(
21170        ISchemaParticle *This,
21171        VARIANT *minOccurs);
21172
21173    HRESULT (STDMETHODCALLTYPE *get_maxOccurs)(
21174        ISchemaParticle *This,
21175        VARIANT *maxOccurs);
21176
21177    END_INTERFACE
21178} ISchemaParticleVtbl;
21179
21180interface ISchemaParticle {
21181    CONST_VTBL ISchemaParticleVtbl* lpVtbl;
21182};
21183
21184#ifdef COBJMACROS
21185#ifndef WIDL_C_INLINE_WRAPPERS
21186/*** IUnknown methods ***/
21187#define ISchemaParticle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21188#define ISchemaParticle_AddRef(This) (This)->lpVtbl->AddRef(This)
21189#define ISchemaParticle_Release(This) (This)->lpVtbl->Release(This)
21190/*** IDispatch methods ***/
21191#define ISchemaParticle_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21192#define ISchemaParticle_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21193#define ISchemaParticle_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21194#define ISchemaParticle_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21195/*** ISchemaItem methods ***/
21196#define ISchemaParticle_get_name(This,name) (This)->lpVtbl->get_name(This,name)
21197#define ISchemaParticle_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
21198#define ISchemaParticle_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
21199#define ISchemaParticle_get_id(This,id) (This)->lpVtbl->get_id(This,id)
21200#define ISchemaParticle_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
21201#define ISchemaParticle_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
21202#define ISchemaParticle_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
21203/*** ISchemaParticle methods ***/
21204#define ISchemaParticle_get_minOccurs(This,minOccurs) (This)->lpVtbl->get_minOccurs(This,minOccurs)
21205#define ISchemaParticle_get_maxOccurs(This,maxOccurs) (This)->lpVtbl->get_maxOccurs(This,maxOccurs)
21206#else
21207/*** IUnknown methods ***/
21208static inline HRESULT ISchemaParticle_QueryInterface(ISchemaParticle* This,REFIID riid,void **ppvObject) {
21209    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21210}
21211static inline ULONG ISchemaParticle_AddRef(ISchemaParticle* This) {
21212    return This->lpVtbl->AddRef(This);
21213}
21214static inline ULONG ISchemaParticle_Release(ISchemaParticle* This) {
21215    return This->lpVtbl->Release(This);
21216}
21217/*** IDispatch methods ***/
21218static inline HRESULT ISchemaParticle_GetTypeInfoCount(ISchemaParticle* This,UINT *pctinfo) {
21219    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21220}
21221static inline HRESULT ISchemaParticle_GetTypeInfo(ISchemaParticle* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21222    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21223}
21224static inline HRESULT ISchemaParticle_GetIDsOfNames(ISchemaParticle* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21225    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21226}
21227static inline HRESULT ISchemaParticle_Invoke(ISchemaParticle* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21228    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21229}
21230/*** ISchemaItem methods ***/
21231static inline HRESULT ISchemaParticle_get_name(ISchemaParticle* This,BSTR *name) {
21232    return This->lpVtbl->get_name(This,name);
21233}
21234static inline HRESULT ISchemaParticle_get_namespaceURI(ISchemaParticle* This,BSTR *namespaceURI) {
21235    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
21236}
21237static inline HRESULT ISchemaParticle_get_schema(ISchemaParticle* This,ISchema **schema) {
21238    return This->lpVtbl->get_schema(This,schema);
21239}
21240static inline HRESULT ISchemaParticle_get_id(ISchemaParticle* This,BSTR *id) {
21241    return This->lpVtbl->get_id(This,id);
21242}
21243static inline HRESULT ISchemaParticle_get_itemType(ISchemaParticle* This,SOMITEMTYPE *itemType) {
21244    return This->lpVtbl->get_itemType(This,itemType);
21245}
21246static inline HRESULT ISchemaParticle_get_unhandledAttributes(ISchemaParticle* This,IVBSAXAttributes **attributes) {
21247    return This->lpVtbl->get_unhandledAttributes(This,attributes);
21248}
21249static inline HRESULT ISchemaParticle_writeAnnotation(ISchemaParticle* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
21250    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
21251}
21252/*** ISchemaParticle methods ***/
21253static inline HRESULT ISchemaParticle_get_minOccurs(ISchemaParticle* This,VARIANT *minOccurs) {
21254    return This->lpVtbl->get_minOccurs(This,minOccurs);
21255}
21256static inline HRESULT ISchemaParticle_get_maxOccurs(ISchemaParticle* This,VARIANT *maxOccurs) {
21257    return This->lpVtbl->get_maxOccurs(This,maxOccurs);
21258}
21259#endif
21260#endif
21261
21262#endif
21263
21264
21265#endif  /* __ISchemaParticle_INTERFACE_DEFINED__ */
21266
21267/*****************************************************************************
21268 * ISchemaAttribute interface
21269 */
21270#ifndef __ISchemaAttribute_INTERFACE_DEFINED__
21271#define __ISchemaAttribute_INTERFACE_DEFINED__
21272
21273DEFINE_GUID(IID_ISchemaAttribute, 0x50ea08b6, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
21274#if defined(__cplusplus) && !defined(CINTERFACE)
21275MIDL_INTERFACE("50ea08b6-dd1b-4664-9a50-c2f40f4bd79a")
21276ISchemaAttribute : public ISchemaItem
21277{
21278    virtual HRESULT STDMETHODCALLTYPE get_type(
21279        ISchemaType **type) = 0;
21280
21281    virtual HRESULT STDMETHODCALLTYPE get_scope(
21282        ISchemaComplexType **scope) = 0;
21283
21284    virtual HRESULT STDMETHODCALLTYPE get_defaultValue(
21285        BSTR *defaultValue) = 0;
21286
21287    virtual HRESULT STDMETHODCALLTYPE get_fixedValue(
21288        BSTR *fixedValue) = 0;
21289
21290    virtual HRESULT STDMETHODCALLTYPE get_use(
21291        SCHEMAUSE *use) = 0;
21292
21293    virtual HRESULT STDMETHODCALLTYPE get_isReference(
21294        VARIANT_BOOL *reference) = 0;
21295
21296};
21297#ifdef __CRT_UUID_DECL
21298__CRT_UUID_DECL(ISchemaAttribute, 0x50ea08b6, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
21299#endif
21300#else
21301typedef struct ISchemaAttributeVtbl {
21302    BEGIN_INTERFACE
21303
21304    /*** IUnknown methods ***/
21305    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21306        ISchemaAttribute *This,
21307        REFIID riid,
21308        void **ppvObject);
21309
21310    ULONG (STDMETHODCALLTYPE *AddRef)(
21311        ISchemaAttribute *This);
21312
21313    ULONG (STDMETHODCALLTYPE *Release)(
21314        ISchemaAttribute *This);
21315
21316    /*** IDispatch methods ***/
21317    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21318        ISchemaAttribute *This,
21319        UINT *pctinfo);
21320
21321    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21322        ISchemaAttribute *This,
21323        UINT iTInfo,
21324        LCID lcid,
21325        ITypeInfo **ppTInfo);
21326
21327    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21328        ISchemaAttribute *This,
21329        REFIID riid,
21330        LPOLESTR *rgszNames,
21331        UINT cNames,
21332        LCID lcid,
21333        DISPID *rgDispId);
21334
21335    HRESULT (STDMETHODCALLTYPE *Invoke)(
21336        ISchemaAttribute *This,
21337        DISPID dispIdMember,
21338        REFIID riid,
21339        LCID lcid,
21340        WORD wFlags,
21341        DISPPARAMS *pDispParams,
21342        VARIANT *pVarResult,
21343        EXCEPINFO *pExcepInfo,
21344        UINT *puArgErr);
21345
21346    /*** ISchemaItem methods ***/
21347    HRESULT (STDMETHODCALLTYPE *get_name)(
21348        ISchemaAttribute *This,
21349        BSTR *name);
21350
21351    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
21352        ISchemaAttribute *This,
21353        BSTR *namespaceURI);
21354
21355    HRESULT (STDMETHODCALLTYPE *get_schema)(
21356        ISchemaAttribute *This,
21357        ISchema **schema);
21358
21359    HRESULT (STDMETHODCALLTYPE *get_id)(
21360        ISchemaAttribute *This,
21361        BSTR *id);
21362
21363    HRESULT (STDMETHODCALLTYPE *get_itemType)(
21364        ISchemaAttribute *This,
21365        SOMITEMTYPE *itemType);
21366
21367    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
21368        ISchemaAttribute *This,
21369        IVBSAXAttributes **attributes);
21370
21371    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
21372        ISchemaAttribute *This,
21373        IUnknown *annotationSink,
21374        VARIANT_BOOL *isWritten);
21375
21376    /*** ISchemaAttribute methods ***/
21377    HRESULT (STDMETHODCALLTYPE *get_type)(
21378        ISchemaAttribute *This,
21379        ISchemaType **type);
21380
21381    HRESULT (STDMETHODCALLTYPE *get_scope)(
21382        ISchemaAttribute *This,
21383        ISchemaComplexType **scope);
21384
21385    HRESULT (STDMETHODCALLTYPE *get_defaultValue)(
21386        ISchemaAttribute *This,
21387        BSTR *defaultValue);
21388
21389    HRESULT (STDMETHODCALLTYPE *get_fixedValue)(
21390        ISchemaAttribute *This,
21391        BSTR *fixedValue);
21392
21393    HRESULT (STDMETHODCALLTYPE *get_use)(
21394        ISchemaAttribute *This,
21395        SCHEMAUSE *use);
21396
21397    HRESULT (STDMETHODCALLTYPE *get_isReference)(
21398        ISchemaAttribute *This,
21399        VARIANT_BOOL *reference);
21400
21401    END_INTERFACE
21402} ISchemaAttributeVtbl;
21403
21404interface ISchemaAttribute {
21405    CONST_VTBL ISchemaAttributeVtbl* lpVtbl;
21406};
21407
21408#ifdef COBJMACROS
21409#ifndef WIDL_C_INLINE_WRAPPERS
21410/*** IUnknown methods ***/
21411#define ISchemaAttribute_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21412#define ISchemaAttribute_AddRef(This) (This)->lpVtbl->AddRef(This)
21413#define ISchemaAttribute_Release(This) (This)->lpVtbl->Release(This)
21414/*** IDispatch methods ***/
21415#define ISchemaAttribute_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21416#define ISchemaAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21417#define ISchemaAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21418#define ISchemaAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21419/*** ISchemaItem methods ***/
21420#define ISchemaAttribute_get_name(This,name) (This)->lpVtbl->get_name(This,name)
21421#define ISchemaAttribute_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
21422#define ISchemaAttribute_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
21423#define ISchemaAttribute_get_id(This,id) (This)->lpVtbl->get_id(This,id)
21424#define ISchemaAttribute_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
21425#define ISchemaAttribute_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
21426#define ISchemaAttribute_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
21427/*** ISchemaAttribute methods ***/
21428#define ISchemaAttribute_get_type(This,type) (This)->lpVtbl->get_type(This,type)
21429#define ISchemaAttribute_get_scope(This,scope) (This)->lpVtbl->get_scope(This,scope)
21430#define ISchemaAttribute_get_defaultValue(This,defaultValue) (This)->lpVtbl->get_defaultValue(This,defaultValue)
21431#define ISchemaAttribute_get_fixedValue(This,fixedValue) (This)->lpVtbl->get_fixedValue(This,fixedValue)
21432#define ISchemaAttribute_get_use(This,use) (This)->lpVtbl->get_use(This,use)
21433#define ISchemaAttribute_get_isReference(This,reference) (This)->lpVtbl->get_isReference(This,reference)
21434#else
21435/*** IUnknown methods ***/
21436static inline HRESULT ISchemaAttribute_QueryInterface(ISchemaAttribute* This,REFIID riid,void **ppvObject) {
21437    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21438}
21439static inline ULONG ISchemaAttribute_AddRef(ISchemaAttribute* This) {
21440    return This->lpVtbl->AddRef(This);
21441}
21442static inline ULONG ISchemaAttribute_Release(ISchemaAttribute* This) {
21443    return This->lpVtbl->Release(This);
21444}
21445/*** IDispatch methods ***/
21446static inline HRESULT ISchemaAttribute_GetTypeInfoCount(ISchemaAttribute* This,UINT *pctinfo) {
21447    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21448}
21449static inline HRESULT ISchemaAttribute_GetTypeInfo(ISchemaAttribute* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21450    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21451}
21452static inline HRESULT ISchemaAttribute_GetIDsOfNames(ISchemaAttribute* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21453    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21454}
21455static inline HRESULT ISchemaAttribute_Invoke(ISchemaAttribute* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21456    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21457}
21458/*** ISchemaItem methods ***/
21459static inline HRESULT ISchemaAttribute_get_name(ISchemaAttribute* This,BSTR *name) {
21460    return This->lpVtbl->get_name(This,name);
21461}
21462static inline HRESULT ISchemaAttribute_get_namespaceURI(ISchemaAttribute* This,BSTR *namespaceURI) {
21463    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
21464}
21465static inline HRESULT ISchemaAttribute_get_schema(ISchemaAttribute* This,ISchema **schema) {
21466    return This->lpVtbl->get_schema(This,schema);
21467}
21468static inline HRESULT ISchemaAttribute_get_id(ISchemaAttribute* This,BSTR *id) {
21469    return This->lpVtbl->get_id(This,id);
21470}
21471static inline HRESULT ISchemaAttribute_get_itemType(ISchemaAttribute* This,SOMITEMTYPE *itemType) {
21472    return This->lpVtbl->get_itemType(This,itemType);
21473}
21474static inline HRESULT ISchemaAttribute_get_unhandledAttributes(ISchemaAttribute* This,IVBSAXAttributes **attributes) {
21475    return This->lpVtbl->get_unhandledAttributes(This,attributes);
21476}
21477static inline HRESULT ISchemaAttribute_writeAnnotation(ISchemaAttribute* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
21478    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
21479}
21480/*** ISchemaAttribute methods ***/
21481static inline HRESULT ISchemaAttribute_get_type(ISchemaAttribute* This,ISchemaType **type) {
21482    return This->lpVtbl->get_type(This,type);
21483}
21484static inline HRESULT ISchemaAttribute_get_scope(ISchemaAttribute* This,ISchemaComplexType **scope) {
21485    return This->lpVtbl->get_scope(This,scope);
21486}
21487static inline HRESULT ISchemaAttribute_get_defaultValue(ISchemaAttribute* This,BSTR *defaultValue) {
21488    return This->lpVtbl->get_defaultValue(This,defaultValue);
21489}
21490static inline HRESULT ISchemaAttribute_get_fixedValue(ISchemaAttribute* This,BSTR *fixedValue) {
21491    return This->lpVtbl->get_fixedValue(This,fixedValue);
21492}
21493static inline HRESULT ISchemaAttribute_get_use(ISchemaAttribute* This,SCHEMAUSE *use) {
21494    return This->lpVtbl->get_use(This,use);
21495}
21496static inline HRESULT ISchemaAttribute_get_isReference(ISchemaAttribute* This,VARIANT_BOOL *reference) {
21497    return This->lpVtbl->get_isReference(This,reference);
21498}
21499#endif
21500#endif
21501
21502#endif
21503
21504
21505#endif  /* __ISchemaAttribute_INTERFACE_DEFINED__ */
21506
21507/*****************************************************************************
21508 * ISchemaElement interface
21509 */
21510#ifndef __ISchemaElement_INTERFACE_DEFINED__
21511#define __ISchemaElement_INTERFACE_DEFINED__
21512
21513DEFINE_GUID(IID_ISchemaElement, 0x50ea08b7, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
21514#if defined(__cplusplus) && !defined(CINTERFACE)
21515MIDL_INTERFACE("50ea08b7-dd1b-4664-9a50-c2f40f4bd79a")
21516ISchemaElement : public ISchemaParticle
21517{
21518    virtual HRESULT STDMETHODCALLTYPE get_type(
21519        ISchemaType **type) = 0;
21520
21521    virtual HRESULT STDMETHODCALLTYPE get_scope(
21522        ISchemaComplexType **scope) = 0;
21523
21524    virtual HRESULT STDMETHODCALLTYPE get_defaultValue(
21525        BSTR *defaultValue) = 0;
21526
21527    virtual HRESULT STDMETHODCALLTYPE get_fixedValue(
21528        BSTR *fixedValue) = 0;
21529
21530    virtual HRESULT STDMETHODCALLTYPE get_isNillable(
21531        VARIANT_BOOL *nillable) = 0;
21532
21533    virtual HRESULT STDMETHODCALLTYPE get_identityConstraints(
21534        ISchemaItemCollection **constraints) = 0;
21535
21536    virtual HRESULT STDMETHODCALLTYPE get_substitutionGroup(
21537        ISchemaElement **element) = 0;
21538
21539    virtual HRESULT STDMETHODCALLTYPE get_substitutionGroupExclusions(
21540        SCHEMADERIVATIONMETHOD *exclusions) = 0;
21541
21542    virtual HRESULT STDMETHODCALLTYPE get_disallowedSubstitutions(
21543        SCHEMADERIVATIONMETHOD *disallowed) = 0;
21544
21545    virtual HRESULT STDMETHODCALLTYPE get_isAbstract(
21546        VARIANT_BOOL *abstract) = 0;
21547
21548    virtual HRESULT STDMETHODCALLTYPE get_isReference(
21549        VARIANT_BOOL *reference) = 0;
21550
21551};
21552#ifdef __CRT_UUID_DECL
21553__CRT_UUID_DECL(ISchemaElement, 0x50ea08b7, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
21554#endif
21555#else
21556typedef struct ISchemaElementVtbl {
21557    BEGIN_INTERFACE
21558
21559    /*** IUnknown methods ***/
21560    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21561        ISchemaElement *This,
21562        REFIID riid,
21563        void **ppvObject);
21564
21565    ULONG (STDMETHODCALLTYPE *AddRef)(
21566        ISchemaElement *This);
21567
21568    ULONG (STDMETHODCALLTYPE *Release)(
21569        ISchemaElement *This);
21570
21571    /*** IDispatch methods ***/
21572    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21573        ISchemaElement *This,
21574        UINT *pctinfo);
21575
21576    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21577        ISchemaElement *This,
21578        UINT iTInfo,
21579        LCID lcid,
21580        ITypeInfo **ppTInfo);
21581
21582    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21583        ISchemaElement *This,
21584        REFIID riid,
21585        LPOLESTR *rgszNames,
21586        UINT cNames,
21587        LCID lcid,
21588        DISPID *rgDispId);
21589
21590    HRESULT (STDMETHODCALLTYPE *Invoke)(
21591        ISchemaElement *This,
21592        DISPID dispIdMember,
21593        REFIID riid,
21594        LCID lcid,
21595        WORD wFlags,
21596        DISPPARAMS *pDispParams,
21597        VARIANT *pVarResult,
21598        EXCEPINFO *pExcepInfo,
21599        UINT *puArgErr);
21600
21601    /*** ISchemaItem methods ***/
21602    HRESULT (STDMETHODCALLTYPE *get_name)(
21603        ISchemaElement *This,
21604        BSTR *name);
21605
21606    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
21607        ISchemaElement *This,
21608        BSTR *namespaceURI);
21609
21610    HRESULT (STDMETHODCALLTYPE *get_schema)(
21611        ISchemaElement *This,
21612        ISchema **schema);
21613
21614    HRESULT (STDMETHODCALLTYPE *get_id)(
21615        ISchemaElement *This,
21616        BSTR *id);
21617
21618    HRESULT (STDMETHODCALLTYPE *get_itemType)(
21619        ISchemaElement *This,
21620        SOMITEMTYPE *itemType);
21621
21622    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
21623        ISchemaElement *This,
21624        IVBSAXAttributes **attributes);
21625
21626    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
21627        ISchemaElement *This,
21628        IUnknown *annotationSink,
21629        VARIANT_BOOL *isWritten);
21630
21631    /*** ISchemaParticle methods ***/
21632    HRESULT (STDMETHODCALLTYPE *get_minOccurs)(
21633        ISchemaElement *This,
21634        VARIANT *minOccurs);
21635
21636    HRESULT (STDMETHODCALLTYPE *get_maxOccurs)(
21637        ISchemaElement *This,
21638        VARIANT *maxOccurs);
21639
21640    /*** ISchemaElement methods ***/
21641    HRESULT (STDMETHODCALLTYPE *get_type)(
21642        ISchemaElement *This,
21643        ISchemaType **type);
21644
21645    HRESULT (STDMETHODCALLTYPE *get_scope)(
21646        ISchemaElement *This,
21647        ISchemaComplexType **scope);
21648
21649    HRESULT (STDMETHODCALLTYPE *get_defaultValue)(
21650        ISchemaElement *This,
21651        BSTR *defaultValue);
21652
21653    HRESULT (STDMETHODCALLTYPE *get_fixedValue)(
21654        ISchemaElement *This,
21655        BSTR *fixedValue);
21656
21657    HRESULT (STDMETHODCALLTYPE *get_isNillable)(
21658        ISchemaElement *This,
21659        VARIANT_BOOL *nillable);
21660
21661    HRESULT (STDMETHODCALLTYPE *get_identityConstraints)(
21662        ISchemaElement *This,
21663        ISchemaItemCollection **constraints);
21664
21665    HRESULT (STDMETHODCALLTYPE *get_substitutionGroup)(
21666        ISchemaElement *This,
21667        ISchemaElement **element);
21668
21669    HRESULT (STDMETHODCALLTYPE *get_substitutionGroupExclusions)(
21670        ISchemaElement *This,
21671        SCHEMADERIVATIONMETHOD *exclusions);
21672
21673    HRESULT (STDMETHODCALLTYPE *get_disallowedSubstitutions)(
21674        ISchemaElement *This,
21675        SCHEMADERIVATIONMETHOD *disallowed);
21676
21677    HRESULT (STDMETHODCALLTYPE *get_isAbstract)(
21678        ISchemaElement *This,
21679        VARIANT_BOOL *abstract);
21680
21681    HRESULT (STDMETHODCALLTYPE *get_isReference)(
21682        ISchemaElement *This,
21683        VARIANT_BOOL *reference);
21684
21685    END_INTERFACE
21686} ISchemaElementVtbl;
21687
21688interface ISchemaElement {
21689    CONST_VTBL ISchemaElementVtbl* lpVtbl;
21690};
21691
21692#ifdef COBJMACROS
21693#ifndef WIDL_C_INLINE_WRAPPERS
21694/*** IUnknown methods ***/
21695#define ISchemaElement_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21696#define ISchemaElement_AddRef(This) (This)->lpVtbl->AddRef(This)
21697#define ISchemaElement_Release(This) (This)->lpVtbl->Release(This)
21698/*** IDispatch methods ***/
21699#define ISchemaElement_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
21700#define ISchemaElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
21701#define ISchemaElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
21702#define ISchemaElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
21703/*** ISchemaItem methods ***/
21704#define ISchemaElement_get_name(This,name) (This)->lpVtbl->get_name(This,name)
21705#define ISchemaElement_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
21706#define ISchemaElement_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
21707#define ISchemaElement_get_id(This,id) (This)->lpVtbl->get_id(This,id)
21708#define ISchemaElement_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
21709#define ISchemaElement_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
21710#define ISchemaElement_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
21711/*** ISchemaParticle methods ***/
21712#define ISchemaElement_get_minOccurs(This,minOccurs) (This)->lpVtbl->get_minOccurs(This,minOccurs)
21713#define ISchemaElement_get_maxOccurs(This,maxOccurs) (This)->lpVtbl->get_maxOccurs(This,maxOccurs)
21714/*** ISchemaElement methods ***/
21715#define ISchemaElement_get_type(This,type) (This)->lpVtbl->get_type(This,type)
21716#define ISchemaElement_get_scope(This,scope) (This)->lpVtbl->get_scope(This,scope)
21717#define ISchemaElement_get_defaultValue(This,defaultValue) (This)->lpVtbl->get_defaultValue(This,defaultValue)
21718#define ISchemaElement_get_fixedValue(This,fixedValue) (This)->lpVtbl->get_fixedValue(This,fixedValue)
21719#define ISchemaElement_get_isNillable(This,nillable) (This)->lpVtbl->get_isNillable(This,nillable)
21720#define ISchemaElement_get_identityConstraints(This,constraints) (This)->lpVtbl->get_identityConstraints(This,constraints)
21721#define ISchemaElement_get_substitutionGroup(This,element) (This)->lpVtbl->get_substitutionGroup(This,element)
21722#define ISchemaElement_get_substitutionGroupExclusions(This,exclusions) (This)->lpVtbl->get_substitutionGroupExclusions(This,exclusions)
21723#define ISchemaElement_get_disallowedSubstitutions(This,disallowed) (This)->lpVtbl->get_disallowedSubstitutions(This,disallowed)
21724#define ISchemaElement_get_isAbstract(This,abstract) (This)->lpVtbl->get_isAbstract(This,abstract)
21725#define ISchemaElement_get_isReference(This,reference) (This)->lpVtbl->get_isReference(This,reference)
21726#else
21727/*** IUnknown methods ***/
21728static inline HRESULT ISchemaElement_QueryInterface(ISchemaElement* This,REFIID riid,void **ppvObject) {
21729    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21730}
21731static inline ULONG ISchemaElement_AddRef(ISchemaElement* This) {
21732    return This->lpVtbl->AddRef(This);
21733}
21734static inline ULONG ISchemaElement_Release(ISchemaElement* This) {
21735    return This->lpVtbl->Release(This);
21736}
21737/*** IDispatch methods ***/
21738static inline HRESULT ISchemaElement_GetTypeInfoCount(ISchemaElement* This,UINT *pctinfo) {
21739    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
21740}
21741static inline HRESULT ISchemaElement_GetTypeInfo(ISchemaElement* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
21742    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
21743}
21744static inline HRESULT ISchemaElement_GetIDsOfNames(ISchemaElement* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
21745    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
21746}
21747static inline HRESULT ISchemaElement_Invoke(ISchemaElement* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
21748    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
21749}
21750/*** ISchemaItem methods ***/
21751static inline HRESULT ISchemaElement_get_name(ISchemaElement* This,BSTR *name) {
21752    return This->lpVtbl->get_name(This,name);
21753}
21754static inline HRESULT ISchemaElement_get_namespaceURI(ISchemaElement* This,BSTR *namespaceURI) {
21755    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
21756}
21757static inline HRESULT ISchemaElement_get_schema(ISchemaElement* This,ISchema **schema) {
21758    return This->lpVtbl->get_schema(This,schema);
21759}
21760static inline HRESULT ISchemaElement_get_id(ISchemaElement* This,BSTR *id) {
21761    return This->lpVtbl->get_id(This,id);
21762}
21763static inline HRESULT ISchemaElement_get_itemType(ISchemaElement* This,SOMITEMTYPE *itemType) {
21764    return This->lpVtbl->get_itemType(This,itemType);
21765}
21766static inline HRESULT ISchemaElement_get_unhandledAttributes(ISchemaElement* This,IVBSAXAttributes **attributes) {
21767    return This->lpVtbl->get_unhandledAttributes(This,attributes);
21768}
21769static inline HRESULT ISchemaElement_writeAnnotation(ISchemaElement* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
21770    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
21771}
21772/*** ISchemaParticle methods ***/
21773static inline HRESULT ISchemaElement_get_minOccurs(ISchemaElement* This,VARIANT *minOccurs) {
21774    return This->lpVtbl->get_minOccurs(This,minOccurs);
21775}
21776static inline HRESULT ISchemaElement_get_maxOccurs(ISchemaElement* This,VARIANT *maxOccurs) {
21777    return This->lpVtbl->get_maxOccurs(This,maxOccurs);
21778}
21779/*** ISchemaElement methods ***/
21780static inline HRESULT ISchemaElement_get_type(ISchemaElement* This,ISchemaType **type) {
21781    return This->lpVtbl->get_type(This,type);
21782}
21783static inline HRESULT ISchemaElement_get_scope(ISchemaElement* This,ISchemaComplexType **scope) {
21784    return This->lpVtbl->get_scope(This,scope);
21785}
21786static inline HRESULT ISchemaElement_get_defaultValue(ISchemaElement* This,BSTR *defaultValue) {
21787    return This->lpVtbl->get_defaultValue(This,defaultValue);
21788}
21789static inline HRESULT ISchemaElement_get_fixedValue(ISchemaElement* This,BSTR *fixedValue) {
21790    return This->lpVtbl->get_fixedValue(This,fixedValue);
21791}
21792static inline HRESULT ISchemaElement_get_isNillable(ISchemaElement* This,VARIANT_BOOL *nillable) {
21793    return This->lpVtbl->get_isNillable(This,nillable);
21794}
21795static inline HRESULT ISchemaElement_get_identityConstraints(ISchemaElement* This,ISchemaItemCollection **constraints) {
21796    return This->lpVtbl->get_identityConstraints(This,constraints);
21797}
21798static inline HRESULT ISchemaElement_get_substitutionGroup(ISchemaElement* This,ISchemaElement **element) {
21799    return This->lpVtbl->get_substitutionGroup(This,element);
21800}
21801static inline HRESULT ISchemaElement_get_substitutionGroupExclusions(ISchemaElement* This,SCHEMADERIVATIONMETHOD *exclusions) {
21802    return This->lpVtbl->get_substitutionGroupExclusions(This,exclusions);
21803}
21804static inline HRESULT ISchemaElement_get_disallowedSubstitutions(ISchemaElement* This,SCHEMADERIVATIONMETHOD *disallowed) {
21805    return This->lpVtbl->get_disallowedSubstitutions(This,disallowed);
21806}
21807static inline HRESULT ISchemaElement_get_isAbstract(ISchemaElement* This,VARIANT_BOOL *abstract) {
21808    return This->lpVtbl->get_isAbstract(This,abstract);
21809}
21810static inline HRESULT ISchemaElement_get_isReference(ISchemaElement* This,VARIANT_BOOL *reference) {
21811    return This->lpVtbl->get_isReference(This,reference);
21812}
21813#endif
21814#endif
21815
21816#endif
21817
21818
21819#endif  /* __ISchemaElement_INTERFACE_DEFINED__ */
21820
21821/*****************************************************************************
21822 * ISchemaType interface
21823 */
21824#ifndef __ISchemaType_INTERFACE_DEFINED__
21825#define __ISchemaType_INTERFACE_DEFINED__
21826
21827DEFINE_GUID(IID_ISchemaType, 0x50ea08b8, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
21828#if defined(__cplusplus) && !defined(CINTERFACE)
21829MIDL_INTERFACE("50ea08b8-dd1b-4664-9a50-c2f40f4bd79a")
21830ISchemaType : public ISchemaItem
21831{
21832    virtual HRESULT STDMETHODCALLTYPE get_baseTypes(
21833        ISchemaItemCollection **baseTypes) = 0;
21834
21835    virtual HRESULT STDMETHODCALLTYPE get_final(
21836        SCHEMADERIVATIONMETHOD *final) = 0;
21837
21838    virtual HRESULT STDMETHODCALLTYPE get_variety(
21839        SCHEMATYPEVARIETY *variety) = 0;
21840
21841    virtual HRESULT STDMETHODCALLTYPE get_derivedBy(
21842        SCHEMADERIVATIONMETHOD *derivedBy) = 0;
21843
21844    virtual HRESULT STDMETHODCALLTYPE isValid(
21845        BSTR data,
21846        VARIANT_BOOL *valid) = 0;
21847
21848    virtual HRESULT STDMETHODCALLTYPE get_minExclusive(
21849        BSTR *minExclusive) = 0;
21850
21851    virtual HRESULT STDMETHODCALLTYPE get_minInclusive(
21852        BSTR *minInclusive) = 0;
21853
21854    virtual HRESULT STDMETHODCALLTYPE get_maxExclusive(
21855        BSTR *maxExclusive) = 0;
21856
21857    virtual HRESULT STDMETHODCALLTYPE get_maxInclusive(
21858        BSTR *maxInclusive) = 0;
21859
21860    virtual HRESULT STDMETHODCALLTYPE get_totalDigits(
21861        VARIANT *totalDigits) = 0;
21862
21863    virtual HRESULT STDMETHODCALLTYPE get_fractionDigits(
21864        VARIANT *fractionDigits) = 0;
21865
21866    virtual HRESULT STDMETHODCALLTYPE get_length(
21867        VARIANT *length) = 0;
21868
21869    virtual HRESULT STDMETHODCALLTYPE get_minLength(
21870        VARIANT *minLength) = 0;
21871
21872    virtual HRESULT STDMETHODCALLTYPE get_maxLength(
21873        VARIANT *maxLength) = 0;
21874
21875    virtual HRESULT STDMETHODCALLTYPE get_enumeration(
21876        ISchemaStringCollection **enumeration) = 0;
21877
21878    virtual HRESULT STDMETHODCALLTYPE get_whitespace(
21879        SCHEMAWHITESPACE *whitespace) = 0;
21880
21881    virtual HRESULT STDMETHODCALLTYPE get_patterns(
21882        ISchemaStringCollection **patterns) = 0;
21883
21884};
21885#ifdef __CRT_UUID_DECL
21886__CRT_UUID_DECL(ISchemaType, 0x50ea08b8, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
21887#endif
21888#else
21889typedef struct ISchemaTypeVtbl {
21890    BEGIN_INTERFACE
21891
21892    /*** IUnknown methods ***/
21893    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21894        ISchemaType *This,
21895        REFIID riid,
21896        void **ppvObject);
21897
21898    ULONG (STDMETHODCALLTYPE *AddRef)(
21899        ISchemaType *This);
21900
21901    ULONG (STDMETHODCALLTYPE *Release)(
21902        ISchemaType *This);
21903
21904    /*** IDispatch methods ***/
21905    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
21906        ISchemaType *This,
21907        UINT *pctinfo);
21908
21909    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
21910        ISchemaType *This,
21911        UINT iTInfo,
21912        LCID lcid,
21913        ITypeInfo **ppTInfo);
21914
21915    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
21916        ISchemaType *This,
21917        REFIID riid,
21918        LPOLESTR *rgszNames,
21919        UINT cNames,
21920        LCID lcid,
21921        DISPID *rgDispId);
21922
21923    HRESULT (STDMETHODCALLTYPE *Invoke)(
21924        ISchemaType *This,
21925        DISPID dispIdMember,
21926        REFIID riid,
21927        LCID lcid,
21928        WORD wFlags,
21929        DISPPARAMS *pDispParams,
21930        VARIANT *pVarResult,
21931        EXCEPINFO *pExcepInfo,
21932        UINT *puArgErr);
21933
21934    /*** ISchemaItem methods ***/
21935    HRESULT (STDMETHODCALLTYPE *get_name)(
21936        ISchemaType *This,
21937        BSTR *name);
21938
21939    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
21940        ISchemaType *This,
21941        BSTR *namespaceURI);
21942
21943    HRESULT (STDMETHODCALLTYPE *get_schema)(
21944        ISchemaType *This,
21945        ISchema **schema);
21946
21947    HRESULT (STDMETHODCALLTYPE *get_id)(
21948        ISchemaType *This,
21949        BSTR *id);
21950
21951    HRESULT (STDMETHODCALLTYPE *get_itemType)(
21952        ISchemaType *This,
21953        SOMITEMTYPE *itemType);
21954
21955    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
21956        ISchemaType *This,
21957        IVBSAXAttributes **attributes);
21958
21959    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
21960        ISchemaType *This,
21961        IUnknown *annotationSink,
21962        VARIANT_BOOL *isWritten);
21963
21964    /*** ISchemaType methods ***/
21965    HRESULT (STDMETHODCALLTYPE *get_baseTypes)(
21966        ISchemaType *This,
21967        ISchemaItemCollection **baseTypes);
21968
21969    HRESULT (STDMETHODCALLTYPE *get_final)(
21970        ISchemaType *This,
21971        SCHEMADERIVATIONMETHOD *final);
21972
21973    HRESULT (STDMETHODCALLTYPE *get_variety)(
21974        ISchemaType *This,
21975        SCHEMATYPEVARIETY *variety);
21976
21977    HRESULT (STDMETHODCALLTYPE *get_derivedBy)(
21978        ISchemaType *This,
21979        SCHEMADERIVATIONMETHOD *derivedBy);
21980
21981    HRESULT (STDMETHODCALLTYPE *isValid)(
21982        ISchemaType *This,
21983        BSTR data,
21984        VARIANT_BOOL *valid);
21985
21986    HRESULT (STDMETHODCALLTYPE *get_minExclusive)(
21987        ISchemaType *This,
21988        BSTR *minExclusive);
21989
21990    HRESULT (STDMETHODCALLTYPE *get_minInclusive)(
21991        ISchemaType *This,
21992        BSTR *minInclusive);
21993
21994    HRESULT (STDMETHODCALLTYPE *get_maxExclusive)(
21995        ISchemaType *This,
21996        BSTR *maxExclusive);
21997
21998    HRESULT (STDMETHODCALLTYPE *get_maxInclusive)(
21999        ISchemaType *This,
22000        BSTR *maxInclusive);
22001
22002    HRESULT (STDMETHODCALLTYPE *get_totalDigits)(
22003        ISchemaType *This,
22004        VARIANT *totalDigits);
22005
22006    HRESULT (STDMETHODCALLTYPE *get_fractionDigits)(
22007        ISchemaType *This,
22008        VARIANT *fractionDigits);
22009
22010    HRESULT (STDMETHODCALLTYPE *get_length)(
22011        ISchemaType *This,
22012        VARIANT *length);
22013
22014    HRESULT (STDMETHODCALLTYPE *get_minLength)(
22015        ISchemaType *This,
22016        VARIANT *minLength);
22017
22018    HRESULT (STDMETHODCALLTYPE *get_maxLength)(
22019        ISchemaType *This,
22020        VARIANT *maxLength);
22021
22022    HRESULT (STDMETHODCALLTYPE *get_enumeration)(
22023        ISchemaType *This,
22024        ISchemaStringCollection **enumeration);
22025
22026    HRESULT (STDMETHODCALLTYPE *get_whitespace)(
22027        ISchemaType *This,
22028        SCHEMAWHITESPACE *whitespace);
22029
22030    HRESULT (STDMETHODCALLTYPE *get_patterns)(
22031        ISchemaType *This,
22032        ISchemaStringCollection **patterns);
22033
22034    END_INTERFACE
22035} ISchemaTypeVtbl;
22036
22037interface ISchemaType {
22038    CONST_VTBL ISchemaTypeVtbl* lpVtbl;
22039};
22040
22041#ifdef COBJMACROS
22042#ifndef WIDL_C_INLINE_WRAPPERS
22043/*** IUnknown methods ***/
22044#define ISchemaType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22045#define ISchemaType_AddRef(This) (This)->lpVtbl->AddRef(This)
22046#define ISchemaType_Release(This) (This)->lpVtbl->Release(This)
22047/*** IDispatch methods ***/
22048#define ISchemaType_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22049#define ISchemaType_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22050#define ISchemaType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22051#define ISchemaType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22052/*** ISchemaItem methods ***/
22053#define ISchemaType_get_name(This,name) (This)->lpVtbl->get_name(This,name)
22054#define ISchemaType_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
22055#define ISchemaType_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
22056#define ISchemaType_get_id(This,id) (This)->lpVtbl->get_id(This,id)
22057#define ISchemaType_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
22058#define ISchemaType_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
22059#define ISchemaType_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
22060/*** ISchemaType methods ***/
22061#define ISchemaType_get_baseTypes(This,baseTypes) (This)->lpVtbl->get_baseTypes(This,baseTypes)
22062#define ISchemaType_get_final(This,final) (This)->lpVtbl->get_final(This,final)
22063#define ISchemaType_get_variety(This,variety) (This)->lpVtbl->get_variety(This,variety)
22064#define ISchemaType_get_derivedBy(This,derivedBy) (This)->lpVtbl->get_derivedBy(This,derivedBy)
22065#define ISchemaType_isValid(This,data,valid) (This)->lpVtbl->isValid(This,data,valid)
22066#define ISchemaType_get_minExclusive(This,minExclusive) (This)->lpVtbl->get_minExclusive(This,minExclusive)
22067#define ISchemaType_get_minInclusive(This,minInclusive) (This)->lpVtbl->get_minInclusive(This,minInclusive)
22068#define ISchemaType_get_maxExclusive(This,maxExclusive) (This)->lpVtbl->get_maxExclusive(This,maxExclusive)
22069#define ISchemaType_get_maxInclusive(This,maxInclusive) (This)->lpVtbl->get_maxInclusive(This,maxInclusive)
22070#define ISchemaType_get_totalDigits(This,totalDigits) (This)->lpVtbl->get_totalDigits(This,totalDigits)
22071#define ISchemaType_get_fractionDigits(This,fractionDigits) (This)->lpVtbl->get_fractionDigits(This,fractionDigits)
22072#define ISchemaType_get_length(This,length) (This)->lpVtbl->get_length(This,length)
22073#define ISchemaType_get_minLength(This,minLength) (This)->lpVtbl->get_minLength(This,minLength)
22074#define ISchemaType_get_maxLength(This,maxLength) (This)->lpVtbl->get_maxLength(This,maxLength)
22075#define ISchemaType_get_enumeration(This,enumeration) (This)->lpVtbl->get_enumeration(This,enumeration)
22076#define ISchemaType_get_whitespace(This,whitespace) (This)->lpVtbl->get_whitespace(This,whitespace)
22077#define ISchemaType_get_patterns(This,patterns) (This)->lpVtbl->get_patterns(This,patterns)
22078#else
22079/*** IUnknown methods ***/
22080static inline HRESULT ISchemaType_QueryInterface(ISchemaType* This,REFIID riid,void **ppvObject) {
22081    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22082}
22083static inline ULONG ISchemaType_AddRef(ISchemaType* This) {
22084    return This->lpVtbl->AddRef(This);
22085}
22086static inline ULONG ISchemaType_Release(ISchemaType* This) {
22087    return This->lpVtbl->Release(This);
22088}
22089/*** IDispatch methods ***/
22090static inline HRESULT ISchemaType_GetTypeInfoCount(ISchemaType* This,UINT *pctinfo) {
22091    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22092}
22093static inline HRESULT ISchemaType_GetTypeInfo(ISchemaType* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22094    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22095}
22096static inline HRESULT ISchemaType_GetIDsOfNames(ISchemaType* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22097    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22098}
22099static inline HRESULT ISchemaType_Invoke(ISchemaType* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22100    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22101}
22102/*** ISchemaItem methods ***/
22103static inline HRESULT ISchemaType_get_name(ISchemaType* This,BSTR *name) {
22104    return This->lpVtbl->get_name(This,name);
22105}
22106static inline HRESULT ISchemaType_get_namespaceURI(ISchemaType* This,BSTR *namespaceURI) {
22107    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
22108}
22109static inline HRESULT ISchemaType_get_schema(ISchemaType* This,ISchema **schema) {
22110    return This->lpVtbl->get_schema(This,schema);
22111}
22112static inline HRESULT ISchemaType_get_id(ISchemaType* This,BSTR *id) {
22113    return This->lpVtbl->get_id(This,id);
22114}
22115static inline HRESULT ISchemaType_get_itemType(ISchemaType* This,SOMITEMTYPE *itemType) {
22116    return This->lpVtbl->get_itemType(This,itemType);
22117}
22118static inline HRESULT ISchemaType_get_unhandledAttributes(ISchemaType* This,IVBSAXAttributes **attributes) {
22119    return This->lpVtbl->get_unhandledAttributes(This,attributes);
22120}
22121static inline HRESULT ISchemaType_writeAnnotation(ISchemaType* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
22122    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
22123}
22124/*** ISchemaType methods ***/
22125static inline HRESULT ISchemaType_get_baseTypes(ISchemaType* This,ISchemaItemCollection **baseTypes) {
22126    return This->lpVtbl->get_baseTypes(This,baseTypes);
22127}
22128static inline HRESULT ISchemaType_get_final(ISchemaType* This,SCHEMADERIVATIONMETHOD *final) {
22129    return This->lpVtbl->get_final(This,final);
22130}
22131static inline HRESULT ISchemaType_get_variety(ISchemaType* This,SCHEMATYPEVARIETY *variety) {
22132    return This->lpVtbl->get_variety(This,variety);
22133}
22134static inline HRESULT ISchemaType_get_derivedBy(ISchemaType* This,SCHEMADERIVATIONMETHOD *derivedBy) {
22135    return This->lpVtbl->get_derivedBy(This,derivedBy);
22136}
22137static inline HRESULT ISchemaType_isValid(ISchemaType* This,BSTR data,VARIANT_BOOL *valid) {
22138    return This->lpVtbl->isValid(This,data,valid);
22139}
22140static inline HRESULT ISchemaType_get_minExclusive(ISchemaType* This,BSTR *minExclusive) {
22141    return This->lpVtbl->get_minExclusive(This,minExclusive);
22142}
22143static inline HRESULT ISchemaType_get_minInclusive(ISchemaType* This,BSTR *minInclusive) {
22144    return This->lpVtbl->get_minInclusive(This,minInclusive);
22145}
22146static inline HRESULT ISchemaType_get_maxExclusive(ISchemaType* This,BSTR *maxExclusive) {
22147    return This->lpVtbl->get_maxExclusive(This,maxExclusive);
22148}
22149static inline HRESULT ISchemaType_get_maxInclusive(ISchemaType* This,BSTR *maxInclusive) {
22150    return This->lpVtbl->get_maxInclusive(This,maxInclusive);
22151}
22152static inline HRESULT ISchemaType_get_totalDigits(ISchemaType* This,VARIANT *totalDigits) {
22153    return This->lpVtbl->get_totalDigits(This,totalDigits);
22154}
22155static inline HRESULT ISchemaType_get_fractionDigits(ISchemaType* This,VARIANT *fractionDigits) {
22156    return This->lpVtbl->get_fractionDigits(This,fractionDigits);
22157}
22158static inline HRESULT ISchemaType_get_length(ISchemaType* This,VARIANT *length) {
22159    return This->lpVtbl->get_length(This,length);
22160}
22161static inline HRESULT ISchemaType_get_minLength(ISchemaType* This,VARIANT *minLength) {
22162    return This->lpVtbl->get_minLength(This,minLength);
22163}
22164static inline HRESULT ISchemaType_get_maxLength(ISchemaType* This,VARIANT *maxLength) {
22165    return This->lpVtbl->get_maxLength(This,maxLength);
22166}
22167static inline HRESULT ISchemaType_get_enumeration(ISchemaType* This,ISchemaStringCollection **enumeration) {
22168    return This->lpVtbl->get_enumeration(This,enumeration);
22169}
22170static inline HRESULT ISchemaType_get_whitespace(ISchemaType* This,SCHEMAWHITESPACE *whitespace) {
22171    return This->lpVtbl->get_whitespace(This,whitespace);
22172}
22173static inline HRESULT ISchemaType_get_patterns(ISchemaType* This,ISchemaStringCollection **patterns) {
22174    return This->lpVtbl->get_patterns(This,patterns);
22175}
22176#endif
22177#endif
22178
22179#endif
22180
22181
22182#endif  /* __ISchemaType_INTERFACE_DEFINED__ */
22183
22184/*****************************************************************************
22185 * ISchemaComplexType interface
22186 */
22187#ifndef __ISchemaComplexType_INTERFACE_DEFINED__
22188#define __ISchemaComplexType_INTERFACE_DEFINED__
22189
22190DEFINE_GUID(IID_ISchemaComplexType, 0x50ea08b9, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
22191#if defined(__cplusplus) && !defined(CINTERFACE)
22192MIDL_INTERFACE("50ea08b9-dd1b-4664-9a50-c2f40f4bd79a")
22193ISchemaComplexType : public ISchemaType
22194{
22195    virtual HRESULT STDMETHODCALLTYPE get_isAbstract(
22196        VARIANT_BOOL *abstract) = 0;
22197
22198    virtual HRESULT STDMETHODCALLTYPE get_anyAttribute(
22199        ISchemaAny **anyAttribute) = 0;
22200
22201    virtual HRESULT STDMETHODCALLTYPE get_attributes(
22202        ISchemaItemCollection **attributes) = 0;
22203
22204    virtual HRESULT STDMETHODCALLTYPE get_contentType(
22205        SCHEMACONTENTTYPE *contentType) = 0;
22206
22207    virtual HRESULT STDMETHODCALLTYPE get_contentModel(
22208        ISchemaModelGroup **contentModel) = 0;
22209
22210    virtual HRESULT STDMETHODCALLTYPE get_prohibitedSubstitutions(
22211        SCHEMADERIVATIONMETHOD *prohibited) = 0;
22212
22213};
22214#ifdef __CRT_UUID_DECL
22215__CRT_UUID_DECL(ISchemaComplexType, 0x50ea08b9, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
22216#endif
22217#else
22218typedef struct ISchemaComplexTypeVtbl {
22219    BEGIN_INTERFACE
22220
22221    /*** IUnknown methods ***/
22222    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22223        ISchemaComplexType *This,
22224        REFIID riid,
22225        void **ppvObject);
22226
22227    ULONG (STDMETHODCALLTYPE *AddRef)(
22228        ISchemaComplexType *This);
22229
22230    ULONG (STDMETHODCALLTYPE *Release)(
22231        ISchemaComplexType *This);
22232
22233    /*** IDispatch methods ***/
22234    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22235        ISchemaComplexType *This,
22236        UINT *pctinfo);
22237
22238    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22239        ISchemaComplexType *This,
22240        UINT iTInfo,
22241        LCID lcid,
22242        ITypeInfo **ppTInfo);
22243
22244    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22245        ISchemaComplexType *This,
22246        REFIID riid,
22247        LPOLESTR *rgszNames,
22248        UINT cNames,
22249        LCID lcid,
22250        DISPID *rgDispId);
22251
22252    HRESULT (STDMETHODCALLTYPE *Invoke)(
22253        ISchemaComplexType *This,
22254        DISPID dispIdMember,
22255        REFIID riid,
22256        LCID lcid,
22257        WORD wFlags,
22258        DISPPARAMS *pDispParams,
22259        VARIANT *pVarResult,
22260        EXCEPINFO *pExcepInfo,
22261        UINT *puArgErr);
22262
22263    /*** ISchemaItem methods ***/
22264    HRESULT (STDMETHODCALLTYPE *get_name)(
22265        ISchemaComplexType *This,
22266        BSTR *name);
22267
22268    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
22269        ISchemaComplexType *This,
22270        BSTR *namespaceURI);
22271
22272    HRESULT (STDMETHODCALLTYPE *get_schema)(
22273        ISchemaComplexType *This,
22274        ISchema **schema);
22275
22276    HRESULT (STDMETHODCALLTYPE *get_id)(
22277        ISchemaComplexType *This,
22278        BSTR *id);
22279
22280    HRESULT (STDMETHODCALLTYPE *get_itemType)(
22281        ISchemaComplexType *This,
22282        SOMITEMTYPE *itemType);
22283
22284    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
22285        ISchemaComplexType *This,
22286        IVBSAXAttributes **attributes);
22287
22288    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
22289        ISchemaComplexType *This,
22290        IUnknown *annotationSink,
22291        VARIANT_BOOL *isWritten);
22292
22293    /*** ISchemaType methods ***/
22294    HRESULT (STDMETHODCALLTYPE *get_baseTypes)(
22295        ISchemaComplexType *This,
22296        ISchemaItemCollection **baseTypes);
22297
22298    HRESULT (STDMETHODCALLTYPE *get_final)(
22299        ISchemaComplexType *This,
22300        SCHEMADERIVATIONMETHOD *final);
22301
22302    HRESULT (STDMETHODCALLTYPE *get_variety)(
22303        ISchemaComplexType *This,
22304        SCHEMATYPEVARIETY *variety);
22305
22306    HRESULT (STDMETHODCALLTYPE *get_derivedBy)(
22307        ISchemaComplexType *This,
22308        SCHEMADERIVATIONMETHOD *derivedBy);
22309
22310    HRESULT (STDMETHODCALLTYPE *isValid)(
22311        ISchemaComplexType *This,
22312        BSTR data,
22313        VARIANT_BOOL *valid);
22314
22315    HRESULT (STDMETHODCALLTYPE *get_minExclusive)(
22316        ISchemaComplexType *This,
22317        BSTR *minExclusive);
22318
22319    HRESULT (STDMETHODCALLTYPE *get_minInclusive)(
22320        ISchemaComplexType *This,
22321        BSTR *minInclusive);
22322
22323    HRESULT (STDMETHODCALLTYPE *get_maxExclusive)(
22324        ISchemaComplexType *This,
22325        BSTR *maxExclusive);
22326
22327    HRESULT (STDMETHODCALLTYPE *get_maxInclusive)(
22328        ISchemaComplexType *This,
22329        BSTR *maxInclusive);
22330
22331    HRESULT (STDMETHODCALLTYPE *get_totalDigits)(
22332        ISchemaComplexType *This,
22333        VARIANT *totalDigits);
22334
22335    HRESULT (STDMETHODCALLTYPE *get_fractionDigits)(
22336        ISchemaComplexType *This,
22337        VARIANT *fractionDigits);
22338
22339    HRESULT (STDMETHODCALLTYPE *get_length)(
22340        ISchemaComplexType *This,
22341        VARIANT *length);
22342
22343    HRESULT (STDMETHODCALLTYPE *get_minLength)(
22344        ISchemaComplexType *This,
22345        VARIANT *minLength);
22346
22347    HRESULT (STDMETHODCALLTYPE *get_maxLength)(
22348        ISchemaComplexType *This,
22349        VARIANT *maxLength);
22350
22351    HRESULT (STDMETHODCALLTYPE *get_enumeration)(
22352        ISchemaComplexType *This,
22353        ISchemaStringCollection **enumeration);
22354
22355    HRESULT (STDMETHODCALLTYPE *get_whitespace)(
22356        ISchemaComplexType *This,
22357        SCHEMAWHITESPACE *whitespace);
22358
22359    HRESULT (STDMETHODCALLTYPE *get_patterns)(
22360        ISchemaComplexType *This,
22361        ISchemaStringCollection **patterns);
22362
22363    /*** ISchemaComplexType methods ***/
22364    HRESULT (STDMETHODCALLTYPE *get_isAbstract)(
22365        ISchemaComplexType *This,
22366        VARIANT_BOOL *abstract);
22367
22368    HRESULT (STDMETHODCALLTYPE *get_anyAttribute)(
22369        ISchemaComplexType *This,
22370        ISchemaAny **anyAttribute);
22371
22372    HRESULT (STDMETHODCALLTYPE *get_attributes)(
22373        ISchemaComplexType *This,
22374        ISchemaItemCollection **attributes);
22375
22376    HRESULT (STDMETHODCALLTYPE *get_contentType)(
22377        ISchemaComplexType *This,
22378        SCHEMACONTENTTYPE *contentType);
22379
22380    HRESULT (STDMETHODCALLTYPE *get_contentModel)(
22381        ISchemaComplexType *This,
22382        ISchemaModelGroup **contentModel);
22383
22384    HRESULT (STDMETHODCALLTYPE *get_prohibitedSubstitutions)(
22385        ISchemaComplexType *This,
22386        SCHEMADERIVATIONMETHOD *prohibited);
22387
22388    END_INTERFACE
22389} ISchemaComplexTypeVtbl;
22390
22391interface ISchemaComplexType {
22392    CONST_VTBL ISchemaComplexTypeVtbl* lpVtbl;
22393};
22394
22395#ifdef COBJMACROS
22396#ifndef WIDL_C_INLINE_WRAPPERS
22397/*** IUnknown methods ***/
22398#define ISchemaComplexType_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22399#define ISchemaComplexType_AddRef(This) (This)->lpVtbl->AddRef(This)
22400#define ISchemaComplexType_Release(This) (This)->lpVtbl->Release(This)
22401/*** IDispatch methods ***/
22402#define ISchemaComplexType_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22403#define ISchemaComplexType_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22404#define ISchemaComplexType_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22405#define ISchemaComplexType_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22406/*** ISchemaItem methods ***/
22407#define ISchemaComplexType_get_name(This,name) (This)->lpVtbl->get_name(This,name)
22408#define ISchemaComplexType_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
22409#define ISchemaComplexType_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
22410#define ISchemaComplexType_get_id(This,id) (This)->lpVtbl->get_id(This,id)
22411#define ISchemaComplexType_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
22412#define ISchemaComplexType_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
22413#define ISchemaComplexType_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
22414/*** ISchemaType methods ***/
22415#define ISchemaComplexType_get_baseTypes(This,baseTypes) (This)->lpVtbl->get_baseTypes(This,baseTypes)
22416#define ISchemaComplexType_get_final(This,final) (This)->lpVtbl->get_final(This,final)
22417#define ISchemaComplexType_get_variety(This,variety) (This)->lpVtbl->get_variety(This,variety)
22418#define ISchemaComplexType_get_derivedBy(This,derivedBy) (This)->lpVtbl->get_derivedBy(This,derivedBy)
22419#define ISchemaComplexType_isValid(This,data,valid) (This)->lpVtbl->isValid(This,data,valid)
22420#define ISchemaComplexType_get_minExclusive(This,minExclusive) (This)->lpVtbl->get_minExclusive(This,minExclusive)
22421#define ISchemaComplexType_get_minInclusive(This,minInclusive) (This)->lpVtbl->get_minInclusive(This,minInclusive)
22422#define ISchemaComplexType_get_maxExclusive(This,maxExclusive) (This)->lpVtbl->get_maxExclusive(This,maxExclusive)
22423#define ISchemaComplexType_get_maxInclusive(This,maxInclusive) (This)->lpVtbl->get_maxInclusive(This,maxInclusive)
22424#define ISchemaComplexType_get_totalDigits(This,totalDigits) (This)->lpVtbl->get_totalDigits(This,totalDigits)
22425#define ISchemaComplexType_get_fractionDigits(This,fractionDigits) (This)->lpVtbl->get_fractionDigits(This,fractionDigits)
22426#define ISchemaComplexType_get_length(This,length) (This)->lpVtbl->get_length(This,length)
22427#define ISchemaComplexType_get_minLength(This,minLength) (This)->lpVtbl->get_minLength(This,minLength)
22428#define ISchemaComplexType_get_maxLength(This,maxLength) (This)->lpVtbl->get_maxLength(This,maxLength)
22429#define ISchemaComplexType_get_enumeration(This,enumeration) (This)->lpVtbl->get_enumeration(This,enumeration)
22430#define ISchemaComplexType_get_whitespace(This,whitespace) (This)->lpVtbl->get_whitespace(This,whitespace)
22431#define ISchemaComplexType_get_patterns(This,patterns) (This)->lpVtbl->get_patterns(This,patterns)
22432/*** ISchemaComplexType methods ***/
22433#define ISchemaComplexType_get_isAbstract(This,abstract) (This)->lpVtbl->get_isAbstract(This,abstract)
22434#define ISchemaComplexType_get_anyAttribute(This,anyAttribute) (This)->lpVtbl->get_anyAttribute(This,anyAttribute)
22435#define ISchemaComplexType_get_attributes(This,attributes) (This)->lpVtbl->get_attributes(This,attributes)
22436#define ISchemaComplexType_get_contentType(This,contentType) (This)->lpVtbl->get_contentType(This,contentType)
22437#define ISchemaComplexType_get_contentModel(This,contentModel) (This)->lpVtbl->get_contentModel(This,contentModel)
22438#define ISchemaComplexType_get_prohibitedSubstitutions(This,prohibited) (This)->lpVtbl->get_prohibitedSubstitutions(This,prohibited)
22439#else
22440/*** IUnknown methods ***/
22441static inline HRESULT ISchemaComplexType_QueryInterface(ISchemaComplexType* This,REFIID riid,void **ppvObject) {
22442    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22443}
22444static inline ULONG ISchemaComplexType_AddRef(ISchemaComplexType* This) {
22445    return This->lpVtbl->AddRef(This);
22446}
22447static inline ULONG ISchemaComplexType_Release(ISchemaComplexType* This) {
22448    return This->lpVtbl->Release(This);
22449}
22450/*** IDispatch methods ***/
22451static inline HRESULT ISchemaComplexType_GetTypeInfoCount(ISchemaComplexType* This,UINT *pctinfo) {
22452    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22453}
22454static inline HRESULT ISchemaComplexType_GetTypeInfo(ISchemaComplexType* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22455    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22456}
22457static inline HRESULT ISchemaComplexType_GetIDsOfNames(ISchemaComplexType* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22458    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22459}
22460static inline HRESULT ISchemaComplexType_Invoke(ISchemaComplexType* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22461    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22462}
22463/*** ISchemaItem methods ***/
22464static inline HRESULT ISchemaComplexType_get_name(ISchemaComplexType* This,BSTR *name) {
22465    return This->lpVtbl->get_name(This,name);
22466}
22467static inline HRESULT ISchemaComplexType_get_namespaceURI(ISchemaComplexType* This,BSTR *namespaceURI) {
22468    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
22469}
22470static inline HRESULT ISchemaComplexType_get_schema(ISchemaComplexType* This,ISchema **schema) {
22471    return This->lpVtbl->get_schema(This,schema);
22472}
22473static inline HRESULT ISchemaComplexType_get_id(ISchemaComplexType* This,BSTR *id) {
22474    return This->lpVtbl->get_id(This,id);
22475}
22476static inline HRESULT ISchemaComplexType_get_itemType(ISchemaComplexType* This,SOMITEMTYPE *itemType) {
22477    return This->lpVtbl->get_itemType(This,itemType);
22478}
22479static inline HRESULT ISchemaComplexType_get_unhandledAttributes(ISchemaComplexType* This,IVBSAXAttributes **attributes) {
22480    return This->lpVtbl->get_unhandledAttributes(This,attributes);
22481}
22482static inline HRESULT ISchemaComplexType_writeAnnotation(ISchemaComplexType* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
22483    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
22484}
22485/*** ISchemaType methods ***/
22486static inline HRESULT ISchemaComplexType_get_baseTypes(ISchemaComplexType* This,ISchemaItemCollection **baseTypes) {
22487    return This->lpVtbl->get_baseTypes(This,baseTypes);
22488}
22489static inline HRESULT ISchemaComplexType_get_final(ISchemaComplexType* This,SCHEMADERIVATIONMETHOD *final) {
22490    return This->lpVtbl->get_final(This,final);
22491}
22492static inline HRESULT ISchemaComplexType_get_variety(ISchemaComplexType* This,SCHEMATYPEVARIETY *variety) {
22493    return This->lpVtbl->get_variety(This,variety);
22494}
22495static inline HRESULT ISchemaComplexType_get_derivedBy(ISchemaComplexType* This,SCHEMADERIVATIONMETHOD *derivedBy) {
22496    return This->lpVtbl->get_derivedBy(This,derivedBy);
22497}
22498static inline HRESULT ISchemaComplexType_isValid(ISchemaComplexType* This,BSTR data,VARIANT_BOOL *valid) {
22499    return This->lpVtbl->isValid(This,data,valid);
22500}
22501static inline HRESULT ISchemaComplexType_get_minExclusive(ISchemaComplexType* This,BSTR *minExclusive) {
22502    return This->lpVtbl->get_minExclusive(This,minExclusive);
22503}
22504static inline HRESULT ISchemaComplexType_get_minInclusive(ISchemaComplexType* This,BSTR *minInclusive) {
22505    return This->lpVtbl->get_minInclusive(This,minInclusive);
22506}
22507static inline HRESULT ISchemaComplexType_get_maxExclusive(ISchemaComplexType* This,BSTR *maxExclusive) {
22508    return This->lpVtbl->get_maxExclusive(This,maxExclusive);
22509}
22510static inline HRESULT ISchemaComplexType_get_maxInclusive(ISchemaComplexType* This,BSTR *maxInclusive) {
22511    return This->lpVtbl->get_maxInclusive(This,maxInclusive);
22512}
22513static inline HRESULT ISchemaComplexType_get_totalDigits(ISchemaComplexType* This,VARIANT *totalDigits) {
22514    return This->lpVtbl->get_totalDigits(This,totalDigits);
22515}
22516static inline HRESULT ISchemaComplexType_get_fractionDigits(ISchemaComplexType* This,VARIANT *fractionDigits) {
22517    return This->lpVtbl->get_fractionDigits(This,fractionDigits);
22518}
22519static inline HRESULT ISchemaComplexType_get_length(ISchemaComplexType* This,VARIANT *length) {
22520    return This->lpVtbl->get_length(This,length);
22521}
22522static inline HRESULT ISchemaComplexType_get_minLength(ISchemaComplexType* This,VARIANT *minLength) {
22523    return This->lpVtbl->get_minLength(This,minLength);
22524}
22525static inline HRESULT ISchemaComplexType_get_maxLength(ISchemaComplexType* This,VARIANT *maxLength) {
22526    return This->lpVtbl->get_maxLength(This,maxLength);
22527}
22528static inline HRESULT ISchemaComplexType_get_enumeration(ISchemaComplexType* This,ISchemaStringCollection **enumeration) {
22529    return This->lpVtbl->get_enumeration(This,enumeration);
22530}
22531static inline HRESULT ISchemaComplexType_get_whitespace(ISchemaComplexType* This,SCHEMAWHITESPACE *whitespace) {
22532    return This->lpVtbl->get_whitespace(This,whitespace);
22533}
22534static inline HRESULT ISchemaComplexType_get_patterns(ISchemaComplexType* This,ISchemaStringCollection **patterns) {
22535    return This->lpVtbl->get_patterns(This,patterns);
22536}
22537/*** ISchemaComplexType methods ***/
22538static inline HRESULT ISchemaComplexType_get_isAbstract(ISchemaComplexType* This,VARIANT_BOOL *abstract) {
22539    return This->lpVtbl->get_isAbstract(This,abstract);
22540}
22541static inline HRESULT ISchemaComplexType_get_anyAttribute(ISchemaComplexType* This,ISchemaAny **anyAttribute) {
22542    return This->lpVtbl->get_anyAttribute(This,anyAttribute);
22543}
22544static inline HRESULT ISchemaComplexType_get_attributes(ISchemaComplexType* This,ISchemaItemCollection **attributes) {
22545    return This->lpVtbl->get_attributes(This,attributes);
22546}
22547static inline HRESULT ISchemaComplexType_get_contentType(ISchemaComplexType* This,SCHEMACONTENTTYPE *contentType) {
22548    return This->lpVtbl->get_contentType(This,contentType);
22549}
22550static inline HRESULT ISchemaComplexType_get_contentModel(ISchemaComplexType* This,ISchemaModelGroup **contentModel) {
22551    return This->lpVtbl->get_contentModel(This,contentModel);
22552}
22553static inline HRESULT ISchemaComplexType_get_prohibitedSubstitutions(ISchemaComplexType* This,SCHEMADERIVATIONMETHOD *prohibited) {
22554    return This->lpVtbl->get_prohibitedSubstitutions(This,prohibited);
22555}
22556#endif
22557#endif
22558
22559#endif
22560
22561
22562#endif  /* __ISchemaComplexType_INTERFACE_DEFINED__ */
22563
22564/*****************************************************************************
22565 * ISchemaAttributeGroup interface
22566 */
22567#ifndef __ISchemaAttributeGroup_INTERFACE_DEFINED__
22568#define __ISchemaAttributeGroup_INTERFACE_DEFINED__
22569
22570DEFINE_GUID(IID_ISchemaAttributeGroup, 0x50ea08ba, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
22571#if defined(__cplusplus) && !defined(CINTERFACE)
22572MIDL_INTERFACE("50ea08ba-dd1b-4664-9a50-c2f40f4bd79a")
22573ISchemaAttributeGroup : public ISchemaItem
22574{
22575    virtual HRESULT STDMETHODCALLTYPE get_anyAttribute(
22576        ISchemaAny **anyAttribute) = 0;
22577
22578    virtual HRESULT STDMETHODCALLTYPE get_attributes(
22579        ISchemaItemCollection **attributes) = 0;
22580
22581};
22582#ifdef __CRT_UUID_DECL
22583__CRT_UUID_DECL(ISchemaAttributeGroup, 0x50ea08ba, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
22584#endif
22585#else
22586typedef struct ISchemaAttributeGroupVtbl {
22587    BEGIN_INTERFACE
22588
22589    /*** IUnknown methods ***/
22590    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22591        ISchemaAttributeGroup *This,
22592        REFIID riid,
22593        void **ppvObject);
22594
22595    ULONG (STDMETHODCALLTYPE *AddRef)(
22596        ISchemaAttributeGroup *This);
22597
22598    ULONG (STDMETHODCALLTYPE *Release)(
22599        ISchemaAttributeGroup *This);
22600
22601    /*** IDispatch methods ***/
22602    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22603        ISchemaAttributeGroup *This,
22604        UINT *pctinfo);
22605
22606    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22607        ISchemaAttributeGroup *This,
22608        UINT iTInfo,
22609        LCID lcid,
22610        ITypeInfo **ppTInfo);
22611
22612    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22613        ISchemaAttributeGroup *This,
22614        REFIID riid,
22615        LPOLESTR *rgszNames,
22616        UINT cNames,
22617        LCID lcid,
22618        DISPID *rgDispId);
22619
22620    HRESULT (STDMETHODCALLTYPE *Invoke)(
22621        ISchemaAttributeGroup *This,
22622        DISPID dispIdMember,
22623        REFIID riid,
22624        LCID lcid,
22625        WORD wFlags,
22626        DISPPARAMS *pDispParams,
22627        VARIANT *pVarResult,
22628        EXCEPINFO *pExcepInfo,
22629        UINT *puArgErr);
22630
22631    /*** ISchemaItem methods ***/
22632    HRESULT (STDMETHODCALLTYPE *get_name)(
22633        ISchemaAttributeGroup *This,
22634        BSTR *name);
22635
22636    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
22637        ISchemaAttributeGroup *This,
22638        BSTR *namespaceURI);
22639
22640    HRESULT (STDMETHODCALLTYPE *get_schema)(
22641        ISchemaAttributeGroup *This,
22642        ISchema **schema);
22643
22644    HRESULT (STDMETHODCALLTYPE *get_id)(
22645        ISchemaAttributeGroup *This,
22646        BSTR *id);
22647
22648    HRESULT (STDMETHODCALLTYPE *get_itemType)(
22649        ISchemaAttributeGroup *This,
22650        SOMITEMTYPE *itemType);
22651
22652    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
22653        ISchemaAttributeGroup *This,
22654        IVBSAXAttributes **attributes);
22655
22656    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
22657        ISchemaAttributeGroup *This,
22658        IUnknown *annotationSink,
22659        VARIANT_BOOL *isWritten);
22660
22661    /*** ISchemaAttributeGroup methods ***/
22662    HRESULT (STDMETHODCALLTYPE *get_anyAttribute)(
22663        ISchemaAttributeGroup *This,
22664        ISchemaAny **anyAttribute);
22665
22666    HRESULT (STDMETHODCALLTYPE *get_attributes)(
22667        ISchemaAttributeGroup *This,
22668        ISchemaItemCollection **attributes);
22669
22670    END_INTERFACE
22671} ISchemaAttributeGroupVtbl;
22672
22673interface ISchemaAttributeGroup {
22674    CONST_VTBL ISchemaAttributeGroupVtbl* lpVtbl;
22675};
22676
22677#ifdef COBJMACROS
22678#ifndef WIDL_C_INLINE_WRAPPERS
22679/*** IUnknown methods ***/
22680#define ISchemaAttributeGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22681#define ISchemaAttributeGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
22682#define ISchemaAttributeGroup_Release(This) (This)->lpVtbl->Release(This)
22683/*** IDispatch methods ***/
22684#define ISchemaAttributeGroup_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22685#define ISchemaAttributeGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22686#define ISchemaAttributeGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22687#define ISchemaAttributeGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22688/*** ISchemaItem methods ***/
22689#define ISchemaAttributeGroup_get_name(This,name) (This)->lpVtbl->get_name(This,name)
22690#define ISchemaAttributeGroup_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
22691#define ISchemaAttributeGroup_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
22692#define ISchemaAttributeGroup_get_id(This,id) (This)->lpVtbl->get_id(This,id)
22693#define ISchemaAttributeGroup_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
22694#define ISchemaAttributeGroup_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
22695#define ISchemaAttributeGroup_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
22696/*** ISchemaAttributeGroup methods ***/
22697#define ISchemaAttributeGroup_get_anyAttribute(This,anyAttribute) (This)->lpVtbl->get_anyAttribute(This,anyAttribute)
22698#define ISchemaAttributeGroup_get_attributes(This,attributes) (This)->lpVtbl->get_attributes(This,attributes)
22699#else
22700/*** IUnknown methods ***/
22701static inline HRESULT ISchemaAttributeGroup_QueryInterface(ISchemaAttributeGroup* This,REFIID riid,void **ppvObject) {
22702    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22703}
22704static inline ULONG ISchemaAttributeGroup_AddRef(ISchemaAttributeGroup* This) {
22705    return This->lpVtbl->AddRef(This);
22706}
22707static inline ULONG ISchemaAttributeGroup_Release(ISchemaAttributeGroup* This) {
22708    return This->lpVtbl->Release(This);
22709}
22710/*** IDispatch methods ***/
22711static inline HRESULT ISchemaAttributeGroup_GetTypeInfoCount(ISchemaAttributeGroup* This,UINT *pctinfo) {
22712    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22713}
22714static inline HRESULT ISchemaAttributeGroup_GetTypeInfo(ISchemaAttributeGroup* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22715    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22716}
22717static inline HRESULT ISchemaAttributeGroup_GetIDsOfNames(ISchemaAttributeGroup* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22718    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22719}
22720static inline HRESULT ISchemaAttributeGroup_Invoke(ISchemaAttributeGroup* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22721    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22722}
22723/*** ISchemaItem methods ***/
22724static inline HRESULT ISchemaAttributeGroup_get_name(ISchemaAttributeGroup* This,BSTR *name) {
22725    return This->lpVtbl->get_name(This,name);
22726}
22727static inline HRESULT ISchemaAttributeGroup_get_namespaceURI(ISchemaAttributeGroup* This,BSTR *namespaceURI) {
22728    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
22729}
22730static inline HRESULT ISchemaAttributeGroup_get_schema(ISchemaAttributeGroup* This,ISchema **schema) {
22731    return This->lpVtbl->get_schema(This,schema);
22732}
22733static inline HRESULT ISchemaAttributeGroup_get_id(ISchemaAttributeGroup* This,BSTR *id) {
22734    return This->lpVtbl->get_id(This,id);
22735}
22736static inline HRESULT ISchemaAttributeGroup_get_itemType(ISchemaAttributeGroup* This,SOMITEMTYPE *itemType) {
22737    return This->lpVtbl->get_itemType(This,itemType);
22738}
22739static inline HRESULT ISchemaAttributeGroup_get_unhandledAttributes(ISchemaAttributeGroup* This,IVBSAXAttributes **attributes) {
22740    return This->lpVtbl->get_unhandledAttributes(This,attributes);
22741}
22742static inline HRESULT ISchemaAttributeGroup_writeAnnotation(ISchemaAttributeGroup* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
22743    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
22744}
22745/*** ISchemaAttributeGroup methods ***/
22746static inline HRESULT ISchemaAttributeGroup_get_anyAttribute(ISchemaAttributeGroup* This,ISchemaAny **anyAttribute) {
22747    return This->lpVtbl->get_anyAttribute(This,anyAttribute);
22748}
22749static inline HRESULT ISchemaAttributeGroup_get_attributes(ISchemaAttributeGroup* This,ISchemaItemCollection **attributes) {
22750    return This->lpVtbl->get_attributes(This,attributes);
22751}
22752#endif
22753#endif
22754
22755#endif
22756
22757
22758#endif  /* __ISchemaAttributeGroup_INTERFACE_DEFINED__ */
22759
22760/*****************************************************************************
22761 * ISchemaModelGroup interface
22762 */
22763#ifndef __ISchemaModelGroup_INTERFACE_DEFINED__
22764#define __ISchemaModelGroup_INTERFACE_DEFINED__
22765
22766DEFINE_GUID(IID_ISchemaModelGroup, 0x50ea08bb, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
22767#if defined(__cplusplus) && !defined(CINTERFACE)
22768MIDL_INTERFACE("50ea08bb-dd1b-4664-9a50-c2f40f4bd79a")
22769ISchemaModelGroup : public ISchemaParticle
22770{
22771    virtual HRESULT STDMETHODCALLTYPE get_particles(
22772        ISchemaItemCollection **particles) = 0;
22773
22774};
22775#ifdef __CRT_UUID_DECL
22776__CRT_UUID_DECL(ISchemaModelGroup, 0x50ea08bb, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
22777#endif
22778#else
22779typedef struct ISchemaModelGroupVtbl {
22780    BEGIN_INTERFACE
22781
22782    /*** IUnknown methods ***/
22783    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22784        ISchemaModelGroup *This,
22785        REFIID riid,
22786        void **ppvObject);
22787
22788    ULONG (STDMETHODCALLTYPE *AddRef)(
22789        ISchemaModelGroup *This);
22790
22791    ULONG (STDMETHODCALLTYPE *Release)(
22792        ISchemaModelGroup *This);
22793
22794    /*** IDispatch methods ***/
22795    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
22796        ISchemaModelGroup *This,
22797        UINT *pctinfo);
22798
22799    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
22800        ISchemaModelGroup *This,
22801        UINT iTInfo,
22802        LCID lcid,
22803        ITypeInfo **ppTInfo);
22804
22805    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
22806        ISchemaModelGroup *This,
22807        REFIID riid,
22808        LPOLESTR *rgszNames,
22809        UINT cNames,
22810        LCID lcid,
22811        DISPID *rgDispId);
22812
22813    HRESULT (STDMETHODCALLTYPE *Invoke)(
22814        ISchemaModelGroup *This,
22815        DISPID dispIdMember,
22816        REFIID riid,
22817        LCID lcid,
22818        WORD wFlags,
22819        DISPPARAMS *pDispParams,
22820        VARIANT *pVarResult,
22821        EXCEPINFO *pExcepInfo,
22822        UINT *puArgErr);
22823
22824    /*** ISchemaItem methods ***/
22825    HRESULT (STDMETHODCALLTYPE *get_name)(
22826        ISchemaModelGroup *This,
22827        BSTR *name);
22828
22829    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
22830        ISchemaModelGroup *This,
22831        BSTR *namespaceURI);
22832
22833    HRESULT (STDMETHODCALLTYPE *get_schema)(
22834        ISchemaModelGroup *This,
22835        ISchema **schema);
22836
22837    HRESULT (STDMETHODCALLTYPE *get_id)(
22838        ISchemaModelGroup *This,
22839        BSTR *id);
22840
22841    HRESULT (STDMETHODCALLTYPE *get_itemType)(
22842        ISchemaModelGroup *This,
22843        SOMITEMTYPE *itemType);
22844
22845    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
22846        ISchemaModelGroup *This,
22847        IVBSAXAttributes **attributes);
22848
22849    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
22850        ISchemaModelGroup *This,
22851        IUnknown *annotationSink,
22852        VARIANT_BOOL *isWritten);
22853
22854    /*** ISchemaParticle methods ***/
22855    HRESULT (STDMETHODCALLTYPE *get_minOccurs)(
22856        ISchemaModelGroup *This,
22857        VARIANT *minOccurs);
22858
22859    HRESULT (STDMETHODCALLTYPE *get_maxOccurs)(
22860        ISchemaModelGroup *This,
22861        VARIANT *maxOccurs);
22862
22863    /*** ISchemaModelGroup methods ***/
22864    HRESULT (STDMETHODCALLTYPE *get_particles)(
22865        ISchemaModelGroup *This,
22866        ISchemaItemCollection **particles);
22867
22868    END_INTERFACE
22869} ISchemaModelGroupVtbl;
22870
22871interface ISchemaModelGroup {
22872    CONST_VTBL ISchemaModelGroupVtbl* lpVtbl;
22873};
22874
22875#ifdef COBJMACROS
22876#ifndef WIDL_C_INLINE_WRAPPERS
22877/*** IUnknown methods ***/
22878#define ISchemaModelGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22879#define ISchemaModelGroup_AddRef(This) (This)->lpVtbl->AddRef(This)
22880#define ISchemaModelGroup_Release(This) (This)->lpVtbl->Release(This)
22881/*** IDispatch methods ***/
22882#define ISchemaModelGroup_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
22883#define ISchemaModelGroup_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
22884#define ISchemaModelGroup_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
22885#define ISchemaModelGroup_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
22886/*** ISchemaItem methods ***/
22887#define ISchemaModelGroup_get_name(This,name) (This)->lpVtbl->get_name(This,name)
22888#define ISchemaModelGroup_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
22889#define ISchemaModelGroup_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
22890#define ISchemaModelGroup_get_id(This,id) (This)->lpVtbl->get_id(This,id)
22891#define ISchemaModelGroup_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
22892#define ISchemaModelGroup_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
22893#define ISchemaModelGroup_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
22894/*** ISchemaParticle methods ***/
22895#define ISchemaModelGroup_get_minOccurs(This,minOccurs) (This)->lpVtbl->get_minOccurs(This,minOccurs)
22896#define ISchemaModelGroup_get_maxOccurs(This,maxOccurs) (This)->lpVtbl->get_maxOccurs(This,maxOccurs)
22897/*** ISchemaModelGroup methods ***/
22898#define ISchemaModelGroup_get_particles(This,particles) (This)->lpVtbl->get_particles(This,particles)
22899#else
22900/*** IUnknown methods ***/
22901static inline HRESULT ISchemaModelGroup_QueryInterface(ISchemaModelGroup* This,REFIID riid,void **ppvObject) {
22902    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22903}
22904static inline ULONG ISchemaModelGroup_AddRef(ISchemaModelGroup* This) {
22905    return This->lpVtbl->AddRef(This);
22906}
22907static inline ULONG ISchemaModelGroup_Release(ISchemaModelGroup* This) {
22908    return This->lpVtbl->Release(This);
22909}
22910/*** IDispatch methods ***/
22911static inline HRESULT ISchemaModelGroup_GetTypeInfoCount(ISchemaModelGroup* This,UINT *pctinfo) {
22912    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
22913}
22914static inline HRESULT ISchemaModelGroup_GetTypeInfo(ISchemaModelGroup* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
22915    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
22916}
22917static inline HRESULT ISchemaModelGroup_GetIDsOfNames(ISchemaModelGroup* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
22918    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
22919}
22920static inline HRESULT ISchemaModelGroup_Invoke(ISchemaModelGroup* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
22921    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
22922}
22923/*** ISchemaItem methods ***/
22924static inline HRESULT ISchemaModelGroup_get_name(ISchemaModelGroup* This,BSTR *name) {
22925    return This->lpVtbl->get_name(This,name);
22926}
22927static inline HRESULT ISchemaModelGroup_get_namespaceURI(ISchemaModelGroup* This,BSTR *namespaceURI) {
22928    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
22929}
22930static inline HRESULT ISchemaModelGroup_get_schema(ISchemaModelGroup* This,ISchema **schema) {
22931    return This->lpVtbl->get_schema(This,schema);
22932}
22933static inline HRESULT ISchemaModelGroup_get_id(ISchemaModelGroup* This,BSTR *id) {
22934    return This->lpVtbl->get_id(This,id);
22935}
22936static inline HRESULT ISchemaModelGroup_get_itemType(ISchemaModelGroup* This,SOMITEMTYPE *itemType) {
22937    return This->lpVtbl->get_itemType(This,itemType);
22938}
22939static inline HRESULT ISchemaModelGroup_get_unhandledAttributes(ISchemaModelGroup* This,IVBSAXAttributes **attributes) {
22940    return This->lpVtbl->get_unhandledAttributes(This,attributes);
22941}
22942static inline HRESULT ISchemaModelGroup_writeAnnotation(ISchemaModelGroup* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
22943    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
22944}
22945/*** ISchemaParticle methods ***/
22946static inline HRESULT ISchemaModelGroup_get_minOccurs(ISchemaModelGroup* This,VARIANT *minOccurs) {
22947    return This->lpVtbl->get_minOccurs(This,minOccurs);
22948}
22949static inline HRESULT ISchemaModelGroup_get_maxOccurs(ISchemaModelGroup* This,VARIANT *maxOccurs) {
22950    return This->lpVtbl->get_maxOccurs(This,maxOccurs);
22951}
22952/*** ISchemaModelGroup methods ***/
22953static inline HRESULT ISchemaModelGroup_get_particles(ISchemaModelGroup* This,ISchemaItemCollection **particles) {
22954    return This->lpVtbl->get_particles(This,particles);
22955}
22956#endif
22957#endif
22958
22959#endif
22960
22961
22962#endif  /* __ISchemaModelGroup_INTERFACE_DEFINED__ */
22963
22964/*****************************************************************************
22965 * ISchemaAny interface
22966 */
22967#ifndef __ISchemaAny_INTERFACE_DEFINED__
22968#define __ISchemaAny_INTERFACE_DEFINED__
22969
22970DEFINE_GUID(IID_ISchemaAny, 0x50ea08bc, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
22971#if defined(__cplusplus) && !defined(CINTERFACE)
22972MIDL_INTERFACE("50ea08bc-dd1b-4664-9a50-c2f40f4bd79a")
22973ISchemaAny : public ISchemaParticle
22974{
22975    virtual HRESULT STDMETHODCALLTYPE get_namespaces(
22976        ISchemaStringCollection **namespaces) = 0;
22977
22978    virtual HRESULT STDMETHODCALLTYPE get_processContents(
22979        SCHEMAPROCESSCONTENTS *processContents) = 0;
22980
22981};
22982#ifdef __CRT_UUID_DECL
22983__CRT_UUID_DECL(ISchemaAny, 0x50ea08bc, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
22984#endif
22985#else
22986typedef struct ISchemaAnyVtbl {
22987    BEGIN_INTERFACE
22988
22989    /*** IUnknown methods ***/
22990    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22991        ISchemaAny *This,
22992        REFIID riid,
22993        void **ppvObject);
22994
22995    ULONG (STDMETHODCALLTYPE *AddRef)(
22996        ISchemaAny *This);
22997
22998    ULONG (STDMETHODCALLTYPE *Release)(
22999        ISchemaAny *This);
23000
23001    /*** IDispatch methods ***/
23002    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
23003        ISchemaAny *This,
23004        UINT *pctinfo);
23005
23006    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
23007        ISchemaAny *This,
23008        UINT iTInfo,
23009        LCID lcid,
23010        ITypeInfo **ppTInfo);
23011
23012    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
23013        ISchemaAny *This,
23014        REFIID riid,
23015        LPOLESTR *rgszNames,
23016        UINT cNames,
23017        LCID lcid,
23018        DISPID *rgDispId);
23019
23020    HRESULT (STDMETHODCALLTYPE *Invoke)(
23021        ISchemaAny *This,
23022        DISPID dispIdMember,
23023        REFIID riid,
23024        LCID lcid,
23025        WORD wFlags,
23026        DISPPARAMS *pDispParams,
23027        VARIANT *pVarResult,
23028        EXCEPINFO *pExcepInfo,
23029        UINT *puArgErr);
23030
23031    /*** ISchemaItem methods ***/
23032    HRESULT (STDMETHODCALLTYPE *get_name)(
23033        ISchemaAny *This,
23034        BSTR *name);
23035
23036    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
23037        ISchemaAny *This,
23038        BSTR *namespaceURI);
23039
23040    HRESULT (STDMETHODCALLTYPE *get_schema)(
23041        ISchemaAny *This,
23042        ISchema **schema);
23043
23044    HRESULT (STDMETHODCALLTYPE *get_id)(
23045        ISchemaAny *This,
23046        BSTR *id);
23047
23048    HRESULT (STDMETHODCALLTYPE *get_itemType)(
23049        ISchemaAny *This,
23050        SOMITEMTYPE *itemType);
23051
23052    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
23053        ISchemaAny *This,
23054        IVBSAXAttributes **attributes);
23055
23056    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
23057        ISchemaAny *This,
23058        IUnknown *annotationSink,
23059        VARIANT_BOOL *isWritten);
23060
23061    /*** ISchemaParticle methods ***/
23062    HRESULT (STDMETHODCALLTYPE *get_minOccurs)(
23063        ISchemaAny *This,
23064        VARIANT *minOccurs);
23065
23066    HRESULT (STDMETHODCALLTYPE *get_maxOccurs)(
23067        ISchemaAny *This,
23068        VARIANT *maxOccurs);
23069
23070    /*** ISchemaAny methods ***/
23071    HRESULT (STDMETHODCALLTYPE *get_namespaces)(
23072        ISchemaAny *This,
23073        ISchemaStringCollection **namespaces);
23074
23075    HRESULT (STDMETHODCALLTYPE *get_processContents)(
23076        ISchemaAny *This,
23077        SCHEMAPROCESSCONTENTS *processContents);
23078
23079    END_INTERFACE
23080} ISchemaAnyVtbl;
23081
23082interface ISchemaAny {
23083    CONST_VTBL ISchemaAnyVtbl* lpVtbl;
23084};
23085
23086#ifdef COBJMACROS
23087#ifndef WIDL_C_INLINE_WRAPPERS
23088/*** IUnknown methods ***/
23089#define ISchemaAny_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
23090#define ISchemaAny_AddRef(This) (This)->lpVtbl->AddRef(This)
23091#define ISchemaAny_Release(This) (This)->lpVtbl->Release(This)
23092/*** IDispatch methods ***/
23093#define ISchemaAny_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
23094#define ISchemaAny_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
23095#define ISchemaAny_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
23096#define ISchemaAny_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
23097/*** ISchemaItem methods ***/
23098#define ISchemaAny_get_name(This,name) (This)->lpVtbl->get_name(This,name)
23099#define ISchemaAny_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
23100#define ISchemaAny_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
23101#define ISchemaAny_get_id(This,id) (This)->lpVtbl->get_id(This,id)
23102#define ISchemaAny_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
23103#define ISchemaAny_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
23104#define ISchemaAny_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
23105/*** ISchemaParticle methods ***/
23106#define ISchemaAny_get_minOccurs(This,minOccurs) (This)->lpVtbl->get_minOccurs(This,minOccurs)
23107#define ISchemaAny_get_maxOccurs(This,maxOccurs) (This)->lpVtbl->get_maxOccurs(This,maxOccurs)
23108/*** ISchemaAny methods ***/
23109#define ISchemaAny_get_namespaces(This,namespaces) (This)->lpVtbl->get_namespaces(This,namespaces)
23110#define ISchemaAny_get_processContents(This,processContents) (This)->lpVtbl->get_processContents(This,processContents)
23111#else
23112/*** IUnknown methods ***/
23113static inline HRESULT ISchemaAny_QueryInterface(ISchemaAny* This,REFIID riid,void **ppvObject) {
23114    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
23115}
23116static inline ULONG ISchemaAny_AddRef(ISchemaAny* This) {
23117    return This->lpVtbl->AddRef(This);
23118}
23119static inline ULONG ISchemaAny_Release(ISchemaAny* This) {
23120    return This->lpVtbl->Release(This);
23121}
23122/*** IDispatch methods ***/
23123static inline HRESULT ISchemaAny_GetTypeInfoCount(ISchemaAny* This,UINT *pctinfo) {
23124    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
23125}
23126static inline HRESULT ISchemaAny_GetTypeInfo(ISchemaAny* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
23127    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
23128}
23129static inline HRESULT ISchemaAny_GetIDsOfNames(ISchemaAny* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
23130    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
23131}
23132static inline HRESULT ISchemaAny_Invoke(ISchemaAny* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
23133    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
23134}
23135/*** ISchemaItem methods ***/
23136static inline HRESULT ISchemaAny_get_name(ISchemaAny* This,BSTR *name) {
23137    return This->lpVtbl->get_name(This,name);
23138}
23139static inline HRESULT ISchemaAny_get_namespaceURI(ISchemaAny* This,BSTR *namespaceURI) {
23140    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
23141}
23142static inline HRESULT ISchemaAny_get_schema(ISchemaAny* This,ISchema **schema) {
23143    return This->lpVtbl->get_schema(This,schema);
23144}
23145static inline HRESULT ISchemaAny_get_id(ISchemaAny* This,BSTR *id) {
23146    return This->lpVtbl->get_id(This,id);
23147}
23148static inline HRESULT ISchemaAny_get_itemType(ISchemaAny* This,SOMITEMTYPE *itemType) {
23149    return This->lpVtbl->get_itemType(This,itemType);
23150}
23151static inline HRESULT ISchemaAny_get_unhandledAttributes(ISchemaAny* This,IVBSAXAttributes **attributes) {
23152    return This->lpVtbl->get_unhandledAttributes(This,attributes);
23153}
23154static inline HRESULT ISchemaAny_writeAnnotation(ISchemaAny* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
23155    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
23156}
23157/*** ISchemaParticle methods ***/
23158static inline HRESULT ISchemaAny_get_minOccurs(ISchemaAny* This,VARIANT *minOccurs) {
23159    return This->lpVtbl->get_minOccurs(This,minOccurs);
23160}
23161static inline HRESULT ISchemaAny_get_maxOccurs(ISchemaAny* This,VARIANT *maxOccurs) {
23162    return This->lpVtbl->get_maxOccurs(This,maxOccurs);
23163}
23164/*** ISchemaAny methods ***/
23165static inline HRESULT ISchemaAny_get_namespaces(ISchemaAny* This,ISchemaStringCollection **namespaces) {
23166    return This->lpVtbl->get_namespaces(This,namespaces);
23167}
23168static inline HRESULT ISchemaAny_get_processContents(ISchemaAny* This,SCHEMAPROCESSCONTENTS *processContents) {
23169    return This->lpVtbl->get_processContents(This,processContents);
23170}
23171#endif
23172#endif
23173
23174#endif
23175
23176
23177#endif  /* __ISchemaAny_INTERFACE_DEFINED__ */
23178
23179/*****************************************************************************
23180 * ISchemaIdentityConstraint interface
23181 */
23182#ifndef __ISchemaIdentityConstraint_INTERFACE_DEFINED__
23183#define __ISchemaIdentityConstraint_INTERFACE_DEFINED__
23184
23185DEFINE_GUID(IID_ISchemaIdentityConstraint, 0x50ea08bd, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
23186#if defined(__cplusplus) && !defined(CINTERFACE)
23187MIDL_INTERFACE("50ea08bd-dd1b-4664-9a50-c2f40f4bd79a")
23188ISchemaIdentityConstraint : public ISchemaItem
23189{
23190    virtual HRESULT STDMETHODCALLTYPE get_selector(
23191        BSTR *selector) = 0;
23192
23193    virtual HRESULT STDMETHODCALLTYPE get_fields(
23194        ISchemaStringCollection **fields) = 0;
23195
23196    virtual HRESULT STDMETHODCALLTYPE get_referencedKey(
23197        ISchemaIdentityConstraint **key) = 0;
23198
23199};
23200#ifdef __CRT_UUID_DECL
23201__CRT_UUID_DECL(ISchemaIdentityConstraint, 0x50ea08bd, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
23202#endif
23203#else
23204typedef struct ISchemaIdentityConstraintVtbl {
23205    BEGIN_INTERFACE
23206
23207    /*** IUnknown methods ***/
23208    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
23209        ISchemaIdentityConstraint *This,
23210        REFIID riid,
23211        void **ppvObject);
23212
23213    ULONG (STDMETHODCALLTYPE *AddRef)(
23214        ISchemaIdentityConstraint *This);
23215
23216    ULONG (STDMETHODCALLTYPE *Release)(
23217        ISchemaIdentityConstraint *This);
23218
23219    /*** IDispatch methods ***/
23220    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
23221        ISchemaIdentityConstraint *This,
23222        UINT *pctinfo);
23223
23224    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
23225        ISchemaIdentityConstraint *This,
23226        UINT iTInfo,
23227        LCID lcid,
23228        ITypeInfo **ppTInfo);
23229
23230    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
23231        ISchemaIdentityConstraint *This,
23232        REFIID riid,
23233        LPOLESTR *rgszNames,
23234        UINT cNames,
23235        LCID lcid,
23236        DISPID *rgDispId);
23237
23238    HRESULT (STDMETHODCALLTYPE *Invoke)(
23239        ISchemaIdentityConstraint *This,
23240        DISPID dispIdMember,
23241        REFIID riid,
23242        LCID lcid,
23243        WORD wFlags,
23244        DISPPARAMS *pDispParams,
23245        VARIANT *pVarResult,
23246        EXCEPINFO *pExcepInfo,
23247        UINT *puArgErr);
23248
23249    /*** ISchemaItem methods ***/
23250    HRESULT (STDMETHODCALLTYPE *get_name)(
23251        ISchemaIdentityConstraint *This,
23252        BSTR *name);
23253
23254    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
23255        ISchemaIdentityConstraint *This,
23256        BSTR *namespaceURI);
23257
23258    HRESULT (STDMETHODCALLTYPE *get_schema)(
23259        ISchemaIdentityConstraint *This,
23260        ISchema **schema);
23261
23262    HRESULT (STDMETHODCALLTYPE *get_id)(
23263        ISchemaIdentityConstraint *This,
23264        BSTR *id);
23265
23266    HRESULT (STDMETHODCALLTYPE *get_itemType)(
23267        ISchemaIdentityConstraint *This,
23268        SOMITEMTYPE *itemType);
23269
23270    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
23271        ISchemaIdentityConstraint *This,
23272        IVBSAXAttributes **attributes);
23273
23274    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
23275        ISchemaIdentityConstraint *This,
23276        IUnknown *annotationSink,
23277        VARIANT_BOOL *isWritten);
23278
23279    /*** ISchemaIdentityConstraint methods ***/
23280    HRESULT (STDMETHODCALLTYPE *get_selector)(
23281        ISchemaIdentityConstraint *This,
23282        BSTR *selector);
23283
23284    HRESULT (STDMETHODCALLTYPE *get_fields)(
23285        ISchemaIdentityConstraint *This,
23286        ISchemaStringCollection **fields);
23287
23288    HRESULT (STDMETHODCALLTYPE *get_referencedKey)(
23289        ISchemaIdentityConstraint *This,
23290        ISchemaIdentityConstraint **key);
23291
23292    END_INTERFACE
23293} ISchemaIdentityConstraintVtbl;
23294
23295interface ISchemaIdentityConstraint {
23296    CONST_VTBL ISchemaIdentityConstraintVtbl* lpVtbl;
23297};
23298
23299#ifdef COBJMACROS
23300#ifndef WIDL_C_INLINE_WRAPPERS
23301/*** IUnknown methods ***/
23302#define ISchemaIdentityConstraint_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
23303#define ISchemaIdentityConstraint_AddRef(This) (This)->lpVtbl->AddRef(This)
23304#define ISchemaIdentityConstraint_Release(This) (This)->lpVtbl->Release(This)
23305/*** IDispatch methods ***/
23306#define ISchemaIdentityConstraint_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
23307#define ISchemaIdentityConstraint_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
23308#define ISchemaIdentityConstraint_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
23309#define ISchemaIdentityConstraint_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
23310/*** ISchemaItem methods ***/
23311#define ISchemaIdentityConstraint_get_name(This,name) (This)->lpVtbl->get_name(This,name)
23312#define ISchemaIdentityConstraint_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
23313#define ISchemaIdentityConstraint_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
23314#define ISchemaIdentityConstraint_get_id(This,id) (This)->lpVtbl->get_id(This,id)
23315#define ISchemaIdentityConstraint_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
23316#define ISchemaIdentityConstraint_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
23317#define ISchemaIdentityConstraint_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
23318/*** ISchemaIdentityConstraint methods ***/
23319#define ISchemaIdentityConstraint_get_selector(This,selector) (This)->lpVtbl->get_selector(This,selector)
23320#define ISchemaIdentityConstraint_get_fields(This,fields) (This)->lpVtbl->get_fields(This,fields)
23321#define ISchemaIdentityConstraint_get_referencedKey(This,key) (This)->lpVtbl->get_referencedKey(This,key)
23322#else
23323/*** IUnknown methods ***/
23324static inline HRESULT ISchemaIdentityConstraint_QueryInterface(ISchemaIdentityConstraint* This,REFIID riid,void **ppvObject) {
23325    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
23326}
23327static inline ULONG ISchemaIdentityConstraint_AddRef(ISchemaIdentityConstraint* This) {
23328    return This->lpVtbl->AddRef(This);
23329}
23330static inline ULONG ISchemaIdentityConstraint_Release(ISchemaIdentityConstraint* This) {
23331    return This->lpVtbl->Release(This);
23332}
23333/*** IDispatch methods ***/
23334static inline HRESULT ISchemaIdentityConstraint_GetTypeInfoCount(ISchemaIdentityConstraint* This,UINT *pctinfo) {
23335    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
23336}
23337static inline HRESULT ISchemaIdentityConstraint_GetTypeInfo(ISchemaIdentityConstraint* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
23338    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
23339}
23340static inline HRESULT ISchemaIdentityConstraint_GetIDsOfNames(ISchemaIdentityConstraint* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
23341    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
23342}
23343static inline HRESULT ISchemaIdentityConstraint_Invoke(ISchemaIdentityConstraint* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
23344    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
23345}
23346/*** ISchemaItem methods ***/
23347static inline HRESULT ISchemaIdentityConstraint_get_name(ISchemaIdentityConstraint* This,BSTR *name) {
23348    return This->lpVtbl->get_name(This,name);
23349}
23350static inline HRESULT ISchemaIdentityConstraint_get_namespaceURI(ISchemaIdentityConstraint* This,BSTR *namespaceURI) {
23351    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
23352}
23353static inline HRESULT ISchemaIdentityConstraint_get_schema(ISchemaIdentityConstraint* This,ISchema **schema) {
23354    return This->lpVtbl->get_schema(This,schema);
23355}
23356static inline HRESULT ISchemaIdentityConstraint_get_id(ISchemaIdentityConstraint* This,BSTR *id) {
23357    return This->lpVtbl->get_id(This,id);
23358}
23359static inline HRESULT ISchemaIdentityConstraint_get_itemType(ISchemaIdentityConstraint* This,SOMITEMTYPE *itemType) {
23360    return This->lpVtbl->get_itemType(This,itemType);
23361}
23362static inline HRESULT ISchemaIdentityConstraint_get_unhandledAttributes(ISchemaIdentityConstraint* This,IVBSAXAttributes **attributes) {
23363    return This->lpVtbl->get_unhandledAttributes(This,attributes);
23364}
23365static inline HRESULT ISchemaIdentityConstraint_writeAnnotation(ISchemaIdentityConstraint* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
23366    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
23367}
23368/*** ISchemaIdentityConstraint methods ***/
23369static inline HRESULT ISchemaIdentityConstraint_get_selector(ISchemaIdentityConstraint* This,BSTR *selector) {
23370    return This->lpVtbl->get_selector(This,selector);
23371}
23372static inline HRESULT ISchemaIdentityConstraint_get_fields(ISchemaIdentityConstraint* This,ISchemaStringCollection **fields) {
23373    return This->lpVtbl->get_fields(This,fields);
23374}
23375static inline HRESULT ISchemaIdentityConstraint_get_referencedKey(ISchemaIdentityConstraint* This,ISchemaIdentityConstraint **key) {
23376    return This->lpVtbl->get_referencedKey(This,key);
23377}
23378#endif
23379#endif
23380
23381#endif
23382
23383
23384#endif  /* __ISchemaIdentityConstraint_INTERFACE_DEFINED__ */
23385
23386/*****************************************************************************
23387 * ISchemaNotation interface
23388 */
23389#ifndef __ISchemaNotation_INTERFACE_DEFINED__
23390#define __ISchemaNotation_INTERFACE_DEFINED__
23391
23392DEFINE_GUID(IID_ISchemaNotation, 0x50ea08be, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a);
23393#if defined(__cplusplus) && !defined(CINTERFACE)
23394MIDL_INTERFACE("50ea08be-dd1b-4664-9a50-c2f40f4bd79a")
23395ISchemaNotation : public ISchemaItem
23396{
23397    virtual HRESULT STDMETHODCALLTYPE get_systemIdentifier(
23398        BSTR *uri) = 0;
23399
23400    virtual HRESULT STDMETHODCALLTYPE get_publicIdentifier(
23401        BSTR *uri) = 0;
23402
23403};
23404#ifdef __CRT_UUID_DECL
23405__CRT_UUID_DECL(ISchemaNotation, 0x50ea08be, 0xdd1b, 0x4664, 0x9a,0x50, 0xc2,0xf4,0x0f,0x4b,0xd7,0x9a)
23406#endif
23407#else
23408typedef struct ISchemaNotationVtbl {
23409    BEGIN_INTERFACE
23410
23411    /*** IUnknown methods ***/
23412    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
23413        ISchemaNotation *This,
23414        REFIID riid,
23415        void **ppvObject);
23416
23417    ULONG (STDMETHODCALLTYPE *AddRef)(
23418        ISchemaNotation *This);
23419
23420    ULONG (STDMETHODCALLTYPE *Release)(
23421        ISchemaNotation *This);
23422
23423    /*** IDispatch methods ***/
23424    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
23425        ISchemaNotation *This,
23426        UINT *pctinfo);
23427
23428    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
23429        ISchemaNotation *This,
23430        UINT iTInfo,
23431        LCID lcid,
23432        ITypeInfo **ppTInfo);
23433
23434    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
23435        ISchemaNotation *This,
23436        REFIID riid,
23437        LPOLESTR *rgszNames,
23438        UINT cNames,
23439        LCID lcid,
23440        DISPID *rgDispId);
23441
23442    HRESULT (STDMETHODCALLTYPE *Invoke)(
23443        ISchemaNotation *This,
23444        DISPID dispIdMember,
23445        REFIID riid,
23446        LCID lcid,
23447        WORD wFlags,
23448        DISPPARAMS *pDispParams,
23449        VARIANT *pVarResult,
23450        EXCEPINFO *pExcepInfo,
23451        UINT *puArgErr);
23452
23453    /*** ISchemaItem methods ***/
23454    HRESULT (STDMETHODCALLTYPE *get_name)(
23455        ISchemaNotation *This,
23456        BSTR *name);
23457
23458    HRESULT (STDMETHODCALLTYPE *get_namespaceURI)(
23459        ISchemaNotation *This,
23460        BSTR *namespaceURI);
23461
23462    HRESULT (STDMETHODCALLTYPE *get_schema)(
23463        ISchemaNotation *This,
23464        ISchema **schema);
23465
23466    HRESULT (STDMETHODCALLTYPE *get_id)(
23467        ISchemaNotation *This,
23468        BSTR *id);
23469
23470    HRESULT (STDMETHODCALLTYPE *get_itemType)(
23471        ISchemaNotation *This,
23472        SOMITEMTYPE *itemType);
23473
23474    HRESULT (STDMETHODCALLTYPE *get_unhandledAttributes)(
23475        ISchemaNotation *This,
23476        IVBSAXAttributes **attributes);
23477
23478    HRESULT (STDMETHODCALLTYPE *writeAnnotation)(
23479        ISchemaNotation *This,
23480        IUnknown *annotationSink,
23481        VARIANT_BOOL *isWritten);
23482
23483    /*** ISchemaNotation methods ***/
23484    HRESULT (STDMETHODCALLTYPE *get_systemIdentifier)(
23485        ISchemaNotation *This,
23486        BSTR *uri);
23487
23488    HRESULT (STDMETHODCALLTYPE *get_publicIdentifier)(
23489        ISchemaNotation *This,
23490        BSTR *uri);
23491
23492    END_INTERFACE
23493} ISchemaNotationVtbl;
23494
23495interface ISchemaNotation {
23496    CONST_VTBL ISchemaNotationVtbl* lpVtbl;
23497};
23498
23499#ifdef COBJMACROS
23500#ifndef WIDL_C_INLINE_WRAPPERS
23501/*** IUnknown methods ***/
23502#define ISchemaNotation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
23503#define ISchemaNotation_AddRef(This) (This)->lpVtbl->AddRef(This)
23504#define ISchemaNotation_Release(This) (This)->lpVtbl->Release(This)
23505/*** IDispatch methods ***/
23506#define ISchemaNotation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
23507#define ISchemaNotation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
23508#define ISchemaNotation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
23509#define ISchemaNotation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
23510/*** ISchemaItem methods ***/
23511#define ISchemaNotation_get_name(This,name) (This)->lpVtbl->get_name(This,name)
23512#define ISchemaNotation_get_namespaceURI(This,namespaceURI) (This)->lpVtbl->get_namespaceURI(This,namespaceURI)
23513#define ISchemaNotation_get_schema(This,schema) (This)->lpVtbl->get_schema(This,schema)
23514#define ISchemaNotation_get_id(This,id) (This)->lpVtbl->get_id(This,id)
23515#define ISchemaNotation_get_itemType(This,itemType) (This)->lpVtbl->get_itemType(This,itemType)
23516#define ISchemaNotation_get_unhandledAttributes(This,attributes) (This)->lpVtbl->get_unhandledAttributes(This,attributes)
23517#define ISchemaNotation_writeAnnotation(This,annotationSink,isWritten) (This)->lpVtbl->writeAnnotation(This,annotationSink,isWritten)
23518/*** ISchemaNotation methods ***/
23519#define ISchemaNotation_get_systemIdentifier(This,uri) (This)->lpVtbl->get_systemIdentifier(This,uri)
23520#define ISchemaNotation_get_publicIdentifier(This,uri) (This)->lpVtbl->get_publicIdentifier(This,uri)
23521#else
23522/*** IUnknown methods ***/
23523static inline HRESULT ISchemaNotation_QueryInterface(ISchemaNotation* This,REFIID riid,void **ppvObject) {
23524    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
23525}
23526static inline ULONG ISchemaNotation_AddRef(ISchemaNotation* This) {
23527    return This->lpVtbl->AddRef(This);
23528}
23529static inline ULONG ISchemaNotation_Release(ISchemaNotation* This) {
23530    return This->lpVtbl->Release(This);
23531}
23532/*** IDispatch methods ***/
23533static inline HRESULT ISchemaNotation_GetTypeInfoCount(ISchemaNotation* This,UINT *pctinfo) {
23534    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
23535}
23536static inline HRESULT ISchemaNotation_GetTypeInfo(ISchemaNotation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
23537    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
23538}
23539static inline HRESULT ISchemaNotation_GetIDsOfNames(ISchemaNotation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
23540    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
23541}
23542static inline HRESULT ISchemaNotation_Invoke(ISchemaNotation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
23543    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
23544}
23545/*** ISchemaItem methods ***/
23546static inline HRESULT ISchemaNotation_get_name(ISchemaNotation* This,BSTR *name) {
23547    return This->lpVtbl->get_name(This,name);
23548}
23549static inline HRESULT ISchemaNotation_get_namespaceURI(ISchemaNotation* This,BSTR *namespaceURI) {
23550    return This->lpVtbl->get_namespaceURI(This,namespaceURI);
23551}
23552static inline HRESULT ISchemaNotation_get_schema(ISchemaNotation* This,ISchema **schema) {
23553    return This->lpVtbl->get_schema(This,schema);
23554}
23555static inline HRESULT ISchemaNotation_get_id(ISchemaNotation* This,BSTR *id) {
23556    return This->lpVtbl->get_id(This,id);
23557}
23558static inline HRESULT ISchemaNotation_get_itemType(ISchemaNotation* This,SOMITEMTYPE *itemType) {
23559    return This->lpVtbl->get_itemType(This,itemType);
23560}
23561static inline HRESULT ISchemaNotation_get_unhandledAttributes(ISchemaNotation* This,IVBSAXAttributes **attributes) {
23562    return This->lpVtbl->get_unhandledAttributes(This,attributes);
23563}
23564static inline HRESULT ISchemaNotation_writeAnnotation(ISchemaNotation* This,IUnknown *annotationSink,VARIANT_BOOL *isWritten) {
23565    return This->lpVtbl->writeAnnotation(This,annotationSink,isWritten);
23566}
23567/*** ISchemaNotation methods ***/
23568static inline HRESULT ISchemaNotation_get_systemIdentifier(ISchemaNotation* This,BSTR *uri) {
23569    return This->lpVtbl->get_systemIdentifier(This,uri);
23570}
23571static inline HRESULT ISchemaNotation_get_publicIdentifier(ISchemaNotation* This,BSTR *uri) {
23572    return This->lpVtbl->get_publicIdentifier(This,uri);
23573}
23574#endif
23575#endif
23576
23577#endif
23578
23579
23580#endif  /* __ISchemaNotation_INTERFACE_DEFINED__ */
23581
23582/*****************************************************************************
23583 * SAXXMLReader30 coclass
23584 */
23585
23586DEFINE_GUID(CLSID_SAXXMLReader30, 0x3124c396, 0xfb13, 0x4836, 0xa6,0xad, 0x13,0x17,0xf1,0x71,0x36,0x88);
23587
23588#ifdef __cplusplus
23589class DECLSPEC_UUID("3124c396-fb13-4836-a6ad-1317f1713688") SAXXMLReader30;
23590#ifdef __CRT_UUID_DECL
23591__CRT_UUID_DECL(SAXXMLReader30, 0x3124c396, 0xfb13, 0x4836, 0xa6,0xad, 0x13,0x17,0xf1,0x71,0x36,0x88)
23592#endif
23593#endif
23594
23595/*****************************************************************************
23596 * SAXXMLReader40 coclass
23597 */
23598
23599DEFINE_GUID(CLSID_SAXXMLReader40, 0x7c6e29bc, 0x8b8b, 0x4c3d, 0x85,0x9e, 0xaf,0x6c,0xd1,0x58,0xbe,0x0f);
23600
23601#ifdef __cplusplus
23602class DECLSPEC_UUID("7c6e29bc-8b8b-4c3d-859e-af6cd158be0f") SAXXMLReader40;
23603#ifdef __CRT_UUID_DECL
23604__CRT_UUID_DECL(SAXXMLReader40, 0x7c6e29bc, 0x8b8b, 0x4c3d, 0x85,0x9e, 0xaf,0x6c,0xd1,0x58,0xbe,0x0f)
23605#endif
23606#endif
23607
23608/*****************************************************************************
23609 * SAXXMLReader60 coclass
23610 */
23611
23612DEFINE_GUID(CLSID_SAXXMLReader60, 0x88d96a0c, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23613
23614#ifdef __cplusplus
23615class DECLSPEC_UUID("88d96a0c-f192-11d4-a65f-0040963251e5") SAXXMLReader60;
23616#ifdef __CRT_UUID_DECL
23617__CRT_UUID_DECL(SAXXMLReader60, 0x88d96a0c, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23618#endif
23619#endif
23620
23621/*****************************************************************************
23622 * SAXXMLReader coclass
23623 */
23624
23625DEFINE_GUID(CLSID_SAXXMLReader, 0x079aa557, 0x4a18, 0x424a, 0x8e,0xee, 0xe3,0x9f,0x0a,0x8d,0x41,0xb9);
23626
23627#ifdef __cplusplus
23628class DECLSPEC_UUID("079aa557-4a18-424a-8eee-e39f0a8d41b9") SAXXMLReader;
23629#ifdef __CRT_UUID_DECL
23630__CRT_UUID_DECL(SAXXMLReader, 0x079aa557, 0x4a18, 0x424a, 0x8e,0xee, 0xe3,0x9f,0x0a,0x8d,0x41,0xb9)
23631#endif
23632#endif
23633
23634/*****************************************************************************
23635 * MXHTMLWriter coclass
23636 */
23637
23638DEFINE_GUID(CLSID_MXHTMLWriter, 0xa4c23ec3, 0x6b70, 0x4466, 0x91,0x27, 0x55,0x00,0x77,0x23,0x99,0x78);
23639
23640#ifdef __cplusplus
23641class DECLSPEC_UUID("a4c23ec3-6b70-4466-9127-550077239978") MXHTMLWriter;
23642#ifdef __CRT_UUID_DECL
23643__CRT_UUID_DECL(MXHTMLWriter, 0xa4c23ec3, 0x6b70, 0x4466, 0x91,0x27, 0x55,0x00,0x77,0x23,0x99,0x78)
23644#endif
23645#endif
23646
23647/*****************************************************************************
23648 * MXHTMLWriter30 coclass
23649 */
23650
23651DEFINE_GUID(CLSID_MXHTMLWriter30, 0x853d1540, 0xc1a7, 0x4aa9, 0xa2,0x26, 0x4d,0x3b,0xd3,0x01,0x14,0x6d);
23652
23653#ifdef __cplusplus
23654class DECLSPEC_UUID("853d1540-c1a7-4aa9-a226-4d3bd301146d") MXHTMLWriter30;
23655#ifdef __CRT_UUID_DECL
23656__CRT_UUID_DECL(MXHTMLWriter30, 0x853d1540, 0xc1a7, 0x4aa9, 0xa2,0x26, 0x4d,0x3b,0xd3,0x01,0x14,0x6d)
23657#endif
23658#endif
23659
23660/*****************************************************************************
23661 * MXHTMLWriter40 coclass
23662 */
23663
23664DEFINE_GUID(CLSID_MXHTMLWriter40, 0x88d969c9, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23665
23666#ifdef __cplusplus
23667class DECLSPEC_UUID("88d969c9-f192-11d4-a65f-0040963251e5") MXHTMLWriter40;
23668#ifdef __CRT_UUID_DECL
23669__CRT_UUID_DECL(MXHTMLWriter40, 0x88d969c9, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23670#endif
23671#endif
23672
23673/*****************************************************************************
23674 * MXHTMLWriter60 coclass
23675 */
23676
23677DEFINE_GUID(CLSID_MXHTMLWriter60, 0x88d96a10, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23678
23679#ifdef __cplusplus
23680class DECLSPEC_UUID("88d96a10-f192-11d4-a65f-0040963251e5") MXHTMLWriter60;
23681#ifdef __CRT_UUID_DECL
23682__CRT_UUID_DECL(MXHTMLWriter60, 0x88d96a10, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23683#endif
23684#endif
23685
23686/*****************************************************************************
23687 * MXXMLWriter30 coclass
23688 */
23689
23690DEFINE_GUID(CLSID_MXXMLWriter30, 0x3d813dfe, 0x6c91, 0x4a4e, 0x8f,0x41, 0x04,0x34,0x6a,0x84,0x1d,0x9c);
23691
23692#ifdef __cplusplus
23693class DECLSPEC_UUID("3d813dfe-6c91-4a4e-8f41-04346a841d9c") MXXMLWriter30;
23694#ifdef __CRT_UUID_DECL
23695__CRT_UUID_DECL(MXXMLWriter30, 0x3d813dfe, 0x6c91, 0x4a4e, 0x8f,0x41, 0x04,0x34,0x6a,0x84,0x1d,0x9c)
23696#endif
23697#endif
23698
23699/*****************************************************************************
23700 * MXXMLWriter40 coclass
23701 */
23702
23703DEFINE_GUID(CLSID_MXXMLWriter40, 0x88d969c8, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23704
23705#ifdef __cplusplus
23706class DECLSPEC_UUID("88d969c8-f192-11d4-a65f-0040963251e5") MXXMLWriter40;
23707#ifdef __CRT_UUID_DECL
23708__CRT_UUID_DECL(MXXMLWriter40, 0x88d969c8, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23709#endif
23710#endif
23711
23712/*****************************************************************************
23713 * MXXMLWriter60 coclass
23714 */
23715
23716DEFINE_GUID(CLSID_MXXMLWriter60, 0x88d96a0f, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23717
23718#ifdef __cplusplus
23719class DECLSPEC_UUID("88d96a0f-f192-11d4-a65f-0040963251e5") MXXMLWriter60;
23720#ifdef __CRT_UUID_DECL
23721__CRT_UUID_DECL(MXXMLWriter60, 0x88d96a0f, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23722#endif
23723#endif
23724
23725/*****************************************************************************
23726 * MXXMLWriter coclass
23727 */
23728
23729DEFINE_GUID(CLSID_MXXMLWriter, 0xfc220ad8, 0xa72a, 0x4ee8, 0x92,0x6e, 0x0b,0x7a,0xd1,0x52,0xa0,0x20);
23730
23731#ifdef __cplusplus
23732class DECLSPEC_UUID("fc220ad8-a72a-4ee8-926e-0b7ad152a020") MXXMLWriter;
23733#ifdef __CRT_UUID_DECL
23734__CRT_UUID_DECL(MXXMLWriter, 0xfc220ad8, 0xa72a, 0x4ee8, 0x92,0x6e, 0x0b,0x7a,0xd1,0x52,0xa0,0x20)
23735#endif
23736#endif
23737
23738/*****************************************************************************
23739 * MXNamespaceManager coclass
23740 */
23741
23742DEFINE_GUID(CLSID_MXNamespaceManager, 0x88d969d5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23743
23744#ifdef __cplusplus
23745class DECLSPEC_UUID("88d969d5-f192-11d4-a65f-0040963251e5") MXNamespaceManager;
23746#ifdef __CRT_UUID_DECL
23747__CRT_UUID_DECL(MXNamespaceManager, 0x88d969d5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23748#endif
23749#endif
23750
23751/*****************************************************************************
23752 * MXNamespaceManager40 coclass
23753 */
23754
23755DEFINE_GUID(CLSID_MXNamespaceManager40, 0x88d969d6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23756
23757#ifdef __cplusplus
23758class DECLSPEC_UUID("88d969d6-f192-11d4-a65f-0040963251e5") MXNamespaceManager40;
23759#ifdef __CRT_UUID_DECL
23760__CRT_UUID_DECL(MXNamespaceManager40, 0x88d969d6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23761#endif
23762#endif
23763
23764/*****************************************************************************
23765 * MXNamespaceManager60 coclass
23766 */
23767
23768DEFINE_GUID(CLSID_MXNamespaceManager60, 0x88d96a11, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23769
23770#ifdef __cplusplus
23771class DECLSPEC_UUID("88d96a11-f192-11d4-a65f-0040963251e5") MXNamespaceManager60;
23772#ifdef __CRT_UUID_DECL
23773__CRT_UUID_DECL(MXNamespaceManager60, 0x88d96a11, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23774#endif
23775#endif
23776
23777/*****************************************************************************
23778 * SAXAttributes30 coclass
23779 */
23780
23781DEFINE_GUID(CLSID_SAXAttributes30, 0x3e784a01, 0xf3ae, 0x4dc0, 0x93,0x54, 0x95,0x26,0xb9,0x37,0x0e,0xba);
23782
23783#ifdef __cplusplus
23784class DECLSPEC_UUID("3e784a01-f3ae-4dc0-9354-9526b9370eba") SAXAttributes30;
23785#ifdef __CRT_UUID_DECL
23786__CRT_UUID_DECL(SAXAttributes30, 0x3e784a01, 0xf3ae, 0x4dc0, 0x93,0x54, 0x95,0x26,0xb9,0x37,0x0e,0xba)
23787#endif
23788#endif
23789
23790/*****************************************************************************
23791 * SAXAttributes40 coclass
23792 */
23793
23794DEFINE_GUID(CLSID_SAXAttributes40, 0x88d969ca, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23795
23796#ifdef __cplusplus
23797class DECLSPEC_UUID("88d969ca-f192-11d4-a65f-0040963251e5") SAXAttributes40;
23798#ifdef __CRT_UUID_DECL
23799__CRT_UUID_DECL(SAXAttributes40, 0x88d969ca, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23800#endif
23801#endif
23802
23803/*****************************************************************************
23804 * SAXAttributes60 coclass
23805 */
23806
23807DEFINE_GUID(CLSID_SAXAttributes60, 0x88d96a0e, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23808
23809#ifdef __cplusplus
23810class DECLSPEC_UUID("88d96a0e-f192-11d4-a65f-0040963251e5") SAXAttributes60;
23811#ifdef __CRT_UUID_DECL
23812__CRT_UUID_DECL(SAXAttributes60, 0x88d96a0e, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23813#endif
23814#endif
23815
23816/*****************************************************************************
23817 * SAXAttributes coclass
23818 */
23819
23820DEFINE_GUID(CLSID_SAXAttributes, 0x4dd441ad, 0x526d, 0x4a77, 0x9f,0x1b, 0x98,0x41,0xed,0x80,0x2f,0xb0);
23821
23822#ifdef __cplusplus
23823class DECLSPEC_UUID("4dd441ad-526d-4a77-9f1b-9841ed802fb0") SAXAttributes;
23824#ifdef __CRT_UUID_DECL
23825__CRT_UUID_DECL(SAXAttributes, 0x4dd441ad, 0x526d, 0x4a77, 0x9f,0x1b, 0x98,0x41,0xed,0x80,0x2f,0xb0)
23826#endif
23827#endif
23828
23829#define E_XML_NOTWF              0xC00CE223
23830#define E_XML_NODTD              0xC00CE224
23831#define E_XML_INVALID            0xC00CE225
23832#define E_XML_BUFFERTOOSMALL     0xC00CE226
23833#endif /* __MSXML2_LIBRARY_DEFINED__ */
23834/* Begin additional prototypes for all interfaces */
23835
23836ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
23837unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
23838unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
23839void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
23840ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
23841unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
23842unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
23843void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
23844
23845/* End additional prototypes */
23846
23847#ifdef __cplusplus
23848}
23849#endif
23850
23851#endif /* __msxml2_h__ */