Sync with trunk r64509.
[reactos.git] / dll / win32 / msxml2 / msxml2_tlb.idl
1 /*
2 * Copyright (C) 2005 Vijay Kiran Kamuju
3 * Copyright (C) 2008 Alistair Leslie-Hughes
4 * Copyright (C) 2010 Nikolay Sivov for CodeWeavers
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21 #pragma makedep regtypelib
22
23 #include <msxml2did.h>
24 #include <idispids.h>
25
26 import "unknwn.idl";
27 import "objidl.idl";
28 import "oaidl.idl";
29
30 [
31 uuid(f5078f18-c551-11d3-89b9-0000f81fe221),
32 version(2.6),
33 helpstring("Microsoft XML, v2.6")
34 ]
35 library MSXML2
36 {
37
38 importlib("stdole2.tlb");
39
40 interface IXMLDOMImplementation;
41 interface IXMLDOMNode;
42 interface IXMLDOMDocumentFragment;
43 interface IXMLDOMDocument;
44 interface IXMLDOMSchemaCollection;
45 interface IXMLDOMDocument2;
46 interface IXMLDOMNodeList;
47 interface IXMLDOMNamedNodeMap;
48 interface IXMLDOMCharacterData;
49 interface IXMLDOMAttribute;
50 interface IXMLDOMElement;
51 interface IXMLDOMText;
52 interface IXMLDOMComment;
53 interface IXMLDOMProcessingInstruction;
54 interface IXMLDOMCDATASection;
55 interface IXMLDOMDocumentType;
56 interface IXMLDOMNotation;
57 interface IXMLDOMEntity;
58 interface IXMLDOMEntityReference;
59 interface IXMLDOMParseError;
60 interface IXTLRuntime;
61 interface IXSLTemplate;
62 interface IXSLProcessor;
63
64 typedef enum tagDOMNodeType
65 {
66 NODE_INVALID = 0,
67 NODE_ELEMENT = 1,
68 NODE_ATTRIBUTE = 2,
69 NODE_TEXT = 3,
70 NODE_CDATA_SECTION = 4,
71 NODE_ENTITY_REFERENCE = 5,
72 NODE_ENTITY = 6,
73 NODE_PROCESSING_INSTRUCTION = 7,
74 NODE_COMMENT = 8,
75 NODE_DOCUMENT = 9,
76 NODE_DOCUMENT_TYPE = 10,
77 NODE_DOCUMENT_FRAGMENT = 11,
78 NODE_NOTATION = 12
79 } DOMNodeType;
80
81 [
82 local,
83 object,
84 dual,
85 oleautomation,
86 uuid (2933BF80-7B36-11d2-B20E-00C04F983E60)
87 ]
88 interface IXMLDOMNode : IDispatch
89 {
90 [propget, id(DISPID_DOM_NODE_NODENAME)]
91 HRESULT nodeName([retval, out] BSTR *p);
92
93 [propget, id(DISPID_DOM_NODE_NODEVALUE)]
94 HRESULT nodeValue([retval, out] VARIANT *var1);
95
96 [propput, id(DISPID_DOM_NODE_NODEVALUE)]
97 HRESULT nodeValue([in] VARIANT var1);
98
99 [propget, id(DISPID_DOM_NODE_NODETYPE)]
100 HRESULT nodeType([retval, out] DOMNodeType *domNodeType);
101
102 [propget, id(DISPID_DOM_NODE_PARENTNODE)]
103 HRESULT parentNode([retval, out] IXMLDOMNode **parent);
104
105 [propget, id(DISPID_DOM_NODE_CHILDNODES)]
106 HRESULT childNodes([retval, out] IXMLDOMNodeList **outList);
107
108 [propget, id(DISPID_DOM_NODE_FIRSTCHILD)]
109 HRESULT firstChild([retval, out] IXMLDOMNode **domNode);
110
111 [propget, id(DISPID_DOM_NODE_LASTCHILD)]
112 HRESULT lastChild([retval, out] IXMLDOMNode **domNode);
113
114 [propget, id(DISPID_DOM_NODE_PREVIOUSSIBLING)]
115 HRESULT previousSibling([retval, out] IXMLDOMNode **domNode);
116
117 [propget, id(DISPID_DOM_NODE_NEXTSIBLING)]
118 HRESULT nextSibling([retval, out] IXMLDOMNode **domNode);
119
120 [propget, id(DISPID_DOM_NODE_ATTRIBUTES)]
121 HRESULT attributes([retval, out] IXMLDOMNamedNodeMap **attributeMap);
122
123 [id(DISPID_DOM_NODE_INSERTBEFORE)]
124 HRESULT insertBefore(
125 [in] IXMLDOMNode *newNode,
126 [in] VARIANT var1,
127 [retval, out] IXMLDOMNode **outOldNode);
128
129 [id(DISPID_DOM_NODE_REPLACECHILD)]
130 HRESULT replaceChild(
131 [in] IXMLDOMNode *newNode,
132 [in] IXMLDOMNode *oldNode,
133 [retval, out] IXMLDOMNode **outOldNode);
134
135 [id(DISPID_DOM_NODE_REMOVECHILD)]
136 HRESULT removeChild(
137 [in] IXMLDOMNode *domNode,
138 [retval, out] IXMLDOMNode **oldNode);
139
140 [id(DISPID_DOM_NODE_APPENDCHILD)]
141 HRESULT appendChild(
142 [in] IXMLDOMNode *newNode,
143 [retval, out] IXMLDOMNode **outNewNode);
144
145 [id(DISPID_DOM_NODE_HASCHILDNODES)]
146 HRESULT hasChildNodes(
147 [retval, out] VARIANT_BOOL *pbool);
148
149 [propget, id(DISPID_DOM_NODE_OWNERDOC)]
150 HRESULT ownerDocument([retval, out] IXMLDOMDocument **domDocument);
151
152 [id(DISPID_DOM_NODE_CLONENODE)]
153 HRESULT cloneNode(
154 [in] VARIANT_BOOL pbool,
155 [retval, out] IXMLDOMNode **outNode);
156
157 [propget, id(DISPID_XMLDOM_NODE_STRINGTYPE)]
158 HRESULT nodeTypeString([retval, out] BSTR *p);
159
160 [propget, id(DISPID_XMLDOM_NODE_TEXT)]
161 HRESULT text([retval, out] BSTR *p);
162
163 [propput, id(DISPID_XMLDOM_NODE_TEXT)]
164 HRESULT text([in] BSTR p);
165
166 [propget, id(DISPID_XMLDOM_NODE_SPECIFIED)]
167 HRESULT specified([retval, out] VARIANT_BOOL *pbool);
168
169 [propget, id(DISPID_XMLDOM_NODE_DEFINITION)]
170 HRESULT definition([retval,out] IXMLDOMNode **domNode);
171
172 [propget, id(DISPID_XMLDOM_NODE_NODETYPEDVALUE)]
173 HRESULT nodeTypedValue([retval, out] VARIANT *var1);
174
175 [propput, id(DISPID_XMLDOM_NODE_NODETYPEDVALUE)]
176 HRESULT nodeTypedValue([in] VARIANT var1);
177
178 [propget, id(DISPID_XMLDOM_NODE_DATATYPE)]
179 HRESULT dataType([retval, out] VARIANT *var1);
180
181 [propput, id(DISPID_XMLDOM_NODE_DATATYPE)]
182 HRESULT dataType([in] BSTR p);
183
184 [propget, id(DISPID_XMLDOM_NODE_XML)]
185 HRESULT xml([retval, out] BSTR *p);
186
187 [id(DISPID_XMLDOM_NODE_TRANSFORMNODE)]
188 HRESULT transformNode(
189 [in] IXMLDOMNode *domNode,
190 [retval, out] BSTR *p);
191
192 [id(DISPID_XMLDOM_NODE_SELECTNODES)]
193 HRESULT selectNodes(
194 [in] BSTR p,
195 [retval, out] IXMLDOMNodeList **outList);
196
197 [id(DISPID_XMLDOM_NODE_SELECTSINGLENODE)]
198 HRESULT selectSingleNode(
199 [in] BSTR p,
200 [retval, out] IXMLDOMNode **outNode);
201
202 [propget,id(DISPID_XMLDOM_NODE_PARSED)]
203 HRESULT parsed([retval, out] VARIANT_BOOL *pbool);
204
205 [propget, id(DISPID_XMLDOM_NODE_NAMESPACE)]
206 HRESULT namespaceURI([retval, out] BSTR *p);
207
208 [propget, id(DISPID_XMLDOM_NODE_PREFIX)]
209 HRESULT prefix([retval, out] BSTR *p);
210
211 [propget, id(DISPID_XMLDOM_NODE_BASENAME)]
212 HRESULT baseName([retval, out] BSTR *p);
213
214 [id(DISPID_XMLDOM_NODE_TRANSFORMNODETOOBJECT)]
215 HRESULT transformNodeToObject(
216 [in] IXMLDOMNode *domNode,
217 [in] VARIANT var1);
218 }
219
220 [
221 local,
222 object,
223 dual,
224 oleautomation,
225 uuid (2933BF81-7B36-11d2-B20E-00C04F983E60)
226 ]
227 interface IXMLDOMDocument : IXMLDOMNode
228 {
229 [propget, id(DISPID_DOM_DOCUMENT_DOCTYPE)]
230 HRESULT doctype([retval, out] IXMLDOMDocumentType **docType);
231
232 [propget, id(DISPID_DOM_DOCUMENT_IMPLEMENTATION)]
233 HRESULT implementation([retval, out] IXMLDOMImplementation **impl);
234
235 [propget, id(DISPID_DOM_DOCUMENT_DOCUMENTELEMENT)]
236 HRESULT documentElement([retval, out] IXMLDOMElement **domElement);
237
238 [propputref, id(DISPID_DOM_DOCUMENT_DOCUMENTELEMENT)]
239 HRESULT documentElement([in] IXMLDOMElement *domElement);
240
241 [id(DISPID_DOM_DOCUMENT_CREATEELEMENT)]
242 HRESULT createElement(
243 [in] BSTR p,
244 [retval, out] IXMLDOMElement **domElement);
245
246 [id(DISPID_DOM_DOCUMENT_CREATEDOCUMENTFRAGMENT)]
247 HRESULT createDocumentFragment(
248 [retval, out] IXMLDOMDocumentFragment **docFrag);
249
250 [id(DISPID_DOM_DOCUMENT_CREATETEXTNODE)]
251 HRESULT createTextNode(
252 [in] BSTR p,
253 [retval, out] IXMLDOMText **text);
254
255 [id(DISPID_DOM_DOCUMENT_CREATECOMMENT)]
256 HRESULT createComment(
257 [in] BSTR p,
258 [retval, out] IXMLDOMComment **comment);
259
260 [id(DISPID_DOM_DOCUMENT_CREATECDATASECTION)]
261 HRESULT createCDATASection(
262 [in] BSTR p,
263 [retval, out] IXMLDOMCDATASection **cdata);
264
265 [id(DISPID_DOM_DOCUMENT_CREATEPROCESSINGINSTRUCTION)]
266 HRESULT createProcessingInstruction(
267 [in] BSTR target,
268 [in] BSTR data,
269 [retval, out] IXMLDOMProcessingInstruction **pi);
270
271 [id(DISPID_DOM_DOCUMENT_CREATEATTRIBUTE)]
272 HRESULT createAttribute(
273 [in] BSTR p,
274 [retval, out] IXMLDOMAttribute **attribute);
275
276 [id(DISPID_DOM_DOCUMENT_CREATEENTITYREFERENCE)]
277 HRESULT createEntityReference(
278 [in] BSTR p,
279 [retval, out] IXMLDOMEntityReference **entityRef);
280
281 [id(DISPID_DOM_DOCUMENT_GETELEMENTSBYTAGNAME)]
282 HRESULT getElementsByTagName(
283 [in] BSTR p,
284 [retval, out] IXMLDOMNodeList **resultList);
285
286 [id(DISPID_XMLDOM_DOCUMENT_CREATENODE)]
287 HRESULT createNode(
288 [in] VARIANT var,
289 [in] BSTR name,
290 [in] BSTR uri,
291 [retval, out] IXMLDOMNode **node);
292
293 [id(DISPID_XMLDOM_DOCUMENT_NODEFROMID)]
294 HRESULT nodeFromID(
295 [in] BSTR id,
296 [retval, out] IXMLDOMNode **node);
297
298 [id(DISPID_XMLDOM_DOCUMENT_LOAD)]
299 HRESULT load(
300 [in] VARIANT var1,
301 [retval, out] VARIANT_BOOL *pbool);
302
303 [propget, id(DISPID_READYSTATE)]
304 HRESULT readyState([retval, out] LONG *value);
305
306 [propget, id(DISPID_XMLDOM_DOCUMENT_PARSEERROR)]
307 HRESULT parseError([retval, out] IXMLDOMParseError **err);
308
309 [propget, id(DISPID_XMLDOM_DOCUMENT_URL)]
310 HRESULT url([retval, out] BSTR *p);
311
312 [propget, id(DISPID_XMLDOM_DOCUMENT_ASYNC)]
313 HRESULT async([retval, out] VARIANT_BOOL *pbool);
314
315 [propput, id(DISPID_XMLDOM_DOCUMENT_ASYNC)]
316 HRESULT async([in] VARIANT_BOOL pbool);
317
318 [id(DISPID_XMLDOM_DOCUMENT_ABORT)]
319 HRESULT abort();
320
321 [id(DISPID_XMLDOM_DOCUMENT_LOADXML)]
322 HRESULT loadXML(
323 [in] BSTR p,
324 [out, retval] VARIANT_BOOL *pbool);
325
326 [id(DISPID_XMLDOM_DOCUMENT_SAVE)]
327 HRESULT save(
328 [in] VARIANT var1);
329
330 [propget, id(DISPID_XMLDOM_DOCUMENT_VALIDATE)]
331 HRESULT validateOnParse([retval, out] VARIANT_BOOL *pbool);
332
333 [propput, id(DISPID_XMLDOM_DOCUMENT_VALIDATE)]
334 HRESULT validateOnParse([in] VARIANT_BOOL pbool);
335
336 [propget, id(DISPID_XMLDOM_DOCUMENT_RESOLVENAMESPACE)]
337 HRESULT resolveExternals([retval,out] VARIANT_BOOL *pbool);
338
339 [propput, id(DISPID_XMLDOM_DOCUMENT_RESOLVENAMESPACE)]
340 HRESULT resolveExternals([in] VARIANT_BOOL pbool);
341
342 [propget, id(DISPID_XMLDOM_DOCUMENT_PRESERVEWHITESPACE)]
343 HRESULT preserveWhiteSpace([retval,out] VARIANT_BOOL *pbool);
344
345 [propput, id(DISPID_XMLDOM_DOCUMENT_PRESERVEWHITESPACE)]
346 HRESULT preserveWhiteSpace([in] VARIANT_BOOL pbool);
347
348 [propput, id(DISPID_XMLDOM_DOCUMENT_ONREADYSTATECHANGE)]
349 HRESULT onreadystatechange([in] VARIANT var1);
350
351 [propput, id(DISPID_XMLDOM_DOCUMENT_ONDATAAVAILABLE)]
352 HRESULT ondataavailable([in] VARIANT var1);
353
354 [propput, id(DISPID_XMLDOM_DOCUMENT_ONTRANSFORMNODE)]
355 HRESULT ontransformnode([in] VARIANT var1);
356 }
357
358 [
359 local,
360 object,
361 dual,
362 oleautomation,
363 uuid (373984c8-b845-449b-91e7-45ac83036ade)
364 ]
365 interface IXMLDOMSchemaCollection : IDispatch
366 {
367 [id(DISPID_XMLDOM_SCHEMACOLLECTION_ADD)]
368 HRESULT add(
369 [in] BSTR uri,
370 [in] VARIANT var);
371
372 [id(DISPID_XMLDOM_SCHEMACOLLECTION_GET)]
373 HRESULT get(
374 [in] BSTR uri,
375 [retval, out] IXMLDOMNode **node);
376
377 [id(DISPID_XMLDOM_SCHEMACOLLECTION_REMOVE)]
378 HRESULT remove(
379 [in] BSTR uri);
380
381 [propget, id(DISPID_XMLDOM_SCHEMACOLLECTION_LENGTH)]
382 HRESULT length(
383 [retval, out] LONG *length);
384
385 [propget, id(DISPID_VALUE)]
386 HRESULT namespaceURI([in] LONG index, [out, retval] BSTR *len);
387
388 [id(DISPID_XMLDOM_SCHEMACOLLECTION_ADDCOLLECTION)]
389 HRESULT addCollection(
390 [in] IXMLDOMSchemaCollection *otherCollection);
391
392 [propget, id(DISPID_NEWENUM)]
393 HRESULT _newEnum([retval, out] IUnknown **ppUnk);
394 }
395
396 [
397 local,
398 object,
399 dual,
400 oleautomation,
401 uuid (2933BF95-7B36-11d2-B20E-00C04F983E60)
402 ]
403 interface IXMLDOMDocument2 : IXMLDOMDocument
404 {
405 [propget, id(DISPID_XMLDOM_DOCUMENT2_NAMESPACES)]
406 HRESULT namespaces([retval, out] IXMLDOMSchemaCollection **schemaCollection);
407
408 [propget, id(DISPID_XMLDOM_DOCUMENT2_SCHEMAS)]
409 HRESULT schemas([retval, out] VARIANT *var1);
410
411 [propputref, id(DISPID_XMLDOM_DOCUMENT2_SCHEMAS)]
412 HRESULT schemas([in] VARIANT var1);
413
414 [id(DISPID_XMLDOM_DOCUMENT2_VALIDATE)]
415 HRESULT validate(
416 [retval, out] IXMLDOMParseError **err);
417
418 [id(DISPID_XMLDOM_DOCUMENT2_SETPROPERTY)]
419 HRESULT setProperty(
420 [in] BSTR p,
421 [in] VARIANT var);
422
423 [id(DISPID_XMLDOM_DOCUMENT2_GETPROPERTY)]
424 HRESULT getProperty(
425 [in] BSTR p,
426 [retval, out] VARIANT *var);
427 }
428
429 [
430 local,
431 object,
432 dual,
433 oleautomation,
434 uuid (2933BF82-7B36-11d2-B20E-00C04F983E60)
435 ]
436 interface IXMLDOMNodeList : IDispatch
437 {
438 [propget, id(DISPID_VALUE)]
439 HRESULT item([in] LONG lIndex, [retval, out] IXMLDOMNode **outNode);
440
441 [propget, id(DISPID_DOM_NODELIST_LENGTH)]
442 HRESULT length([retval, out] LONG *lLength);
443
444 [id(DISPID_XMLDOM_NODELIST_NEXTNODE)]
445 HRESULT nextNode(
446 [retval, out] IXMLDOMNode **outNode);
447
448 [id(DISPID_XMLDOM_NODELIST_RESET)]
449 HRESULT reset();
450
451 [propget, id(DISPID_NEWENUM)]
452 HRESULT _newEnum([retval, out] IUnknown **ppUnk);
453 }
454
455 [
456 local,
457 object,
458 dual,
459 oleautomation,
460 uuid (AA634FC7-5888-44a7-A257-3A47150D3A0E)
461 ]
462 interface IXMLDOMSelection : IXMLDOMNodeList
463 {
464 [propget, id(DISPID_XMLDOM_SELECTION_EXPR)]
465 HRESULT expr([retval, out] BSTR *p);
466
467 [propput, id(DISPID_XMLDOM_SELECTION_EXPR)]
468 HRESULT expr([in] BSTR p);
469
470 [propget, id(DISPID_XMLDOM_SELECTION_CONTEXT)]
471 HRESULT context([retval, out] IXMLDOMNode **ppNode);
472
473 [propputref, id(DISPID_XMLDOM_SELECTION_CONTEXT)]
474 HRESULT context([in] IXMLDOMNode * pNode);
475
476 [id(DISPID_XMLDOM_SELECTION_PEEKNODE)]
477 HRESULT peekNode(
478 [retval, out] IXMLDOMNode **ppNode);
479
480 [id(DISPID_XMLDOM_SELECTION_MATCHES)]
481 HRESULT matches(
482 [in] IXMLDOMNode *pNode,
483 [retval, out] IXMLDOMNode **ppNode);
484
485 [id(DISPID_XMLDOM_SELECTION_REMOVENEXT)]
486 HRESULT removeNext(
487 [retval, out] IXMLDOMNode **ppNode);
488
489 [id(DISPID_XMLDOM_SELECTION_REMOVEALL)]
490 HRESULT removeAll();
491
492 [id(DISPID_XMLDOM_SELECTION_CLONE)]
493 HRESULT clone(
494 [retval, out] IXMLDOMSelection **ppNode);
495
496 [id(DISPID_XMLDOM_SELECTION_GETPROPERTY)]
497 HRESULT getProperty(
498 [in] BSTR p,
499 [retval, out] VARIANT * var);
500
501 [id(DISPID_XMLDOM_SELECTION_SETPROPERTY)]
502 HRESULT setProperty(
503 [in] BSTR p,
504 [in] VARIANT var);
505 }
506
507 [
508 local,
509 object,
510 dual,
511 oleautomation,
512 uuid (2933BF83-7B36-11d2-B20E-00C04F983E60)
513 ]
514 interface IXMLDOMNamedNodeMap : IDispatch
515 {
516 [id(DISPID_DOM_NAMEDNODEMAP_GETNAMEDITEM)]
517 HRESULT getNamedItem(
518 [in] BSTR p,
519 [retval, out] IXMLDOMNode **outNode);
520
521 [id(DISPID_DOM_NAMEDNODEMAP_SETNAMEDITEM)]
522 HRESULT setNamedItem(
523 [in] IXMLDOMNode *newNode,
524 [retval, out] IXMLDOMNode **outNode);
525
526 [id(DISPID_DOM_NAMEDNODEMAP_REMOVENAMEDITEM)]
527 HRESULT removeNamedItem(
528 [in] BSTR p,
529 [retval, out] IXMLDOMNode **outNode);
530
531 [propget, id(DISPID_VALUE)]
532 HRESULT item([in] LONG lIndex, [retval, out] IXMLDOMNode **outNode);
533
534 [propget, id(DISPID_DOM_NODELIST_LENGTH)]
535 HRESULT length([retval, out] LONG *lLength);
536
537 [id(DISPID_XMLDOM_NAMEDNODEMAP_GETQUALIFIEDITEM)]
538 HRESULT getQualifiedItem(
539 [in] BSTR name,
540 [in] BSTR uri,
541 [retval, out] IXMLDOMNode **outNode);
542
543 [id(DISPID_XMLDOM_NAMEDNODEMAP_REMOVEQUALIFIEDITEM)]
544 HRESULT removeQualifiedItem(
545 [in] BSTR name,
546 [in] BSTR uri,
547 [retval, out] IXMLDOMNode **outNode);
548
549 [id(DISPID_XMLDOM_NAMEDNODEMAP_NEXTNODE)]
550 HRESULT nextNode(
551 [retval, out] IXMLDOMNode **outNode);
552
553 [id(DISPID_XMLDOM_NAMEDNODEMAP_RESET)]
554 HRESULT reset();
555
556 [propget, id(DISPID_NEWENUM)]
557 HRESULT _newEnum([retval, out] IUnknown **ppUnk);
558 }
559
560 [
561 local,
562 object,
563 dual,
564 oleautomation,
565 uuid (3efaa413-272f-11d2-836f-0000f87a7782)
566 ]
567 interface IXMLDOMDocumentFragment : IXMLDOMNode
568 {
569 }
570
571 [
572 local,
573 object,
574 dual,
575 oleautomation,
576 uuid (2933BF84-7B36-11d2-B20E-00C04F983E60)
577 ]
578 interface IXMLDOMCharacterData : IXMLDOMNode
579 {
580 [propget, id(DISPID_DOM_DATA_DATA)]
581 HRESULT data([retval, out] BSTR *p);
582
583 [propput, id(DISPID_DOM_DATA_DATA)]
584 HRESULT data([in] BSTR data);
585
586 [propget, id(DISPID_DOM_DATA_LENGTH)]
587 HRESULT length([retval, out] LONG *len);
588
589 [id(DISPID_DOM_DATA_SUBSTRING)]
590 HRESULT substringData(
591 [in] LONG offset,
592 [in] LONG count,
593 [retval, out] BSTR *p);
594
595 [id(DISPID_DOM_DATA_APPEND)]
596 HRESULT appendData(
597 [in] BSTR p);
598
599 [id(DISPID_DOM_DATA_INSERT)]
600 HRESULT insertData(
601 [in] LONG offset,
602 [in] BSTR p);
603
604 [id(DISPID_DOM_DATA_DELETE)]
605 HRESULT deleteData(
606 [in] LONG offset,
607 [in] LONG count);
608
609 [id(DISPID_DOM_DATA_REPLACE)]
610 HRESULT replaceData(
611 [in] LONG offset,
612 [in] LONG count,
613 [in] BSTR p);
614 }
615
616 [
617 local,
618 object,
619 dual,
620 oleautomation,
621 uuid (2933BF85-7B36-11d2-B20E-00C04F983E60)
622 ]
623 interface IXMLDOMAttribute : IXMLDOMNode
624 {
625 [propget, id(DISPID_DOM_ATTRIBUTE_GETNAME)]
626 HRESULT name([retval, out] BSTR *p);
627
628 [propget, id(DISPID_DOM_ATTRIBUTE_VALUE)]
629 HRESULT value([retval, out] VARIANT *var1);
630
631 [propput, id(DISPID_DOM_ATTRIBUTE_VALUE)]
632 HRESULT value([in] VARIANT var1);
633 }
634
635 [
636 local,
637 object,
638 dual,
639 oleautomation,
640 uuid (2933BF86-7B36-11d2-B20E-00C04F983E60)
641 ]
642 interface IXMLDOMElement : IXMLDOMNode
643 {
644 [propget, id(DISPID_DOM_ELEMENT_GETTAGNAME)]
645 HRESULT tagName([retval, out] BSTR *p);
646
647 [id(DISPID_DOM_ELEMENT_GETATTRIBUTE)]
648 HRESULT getAttribute(
649 [in] BSTR p,
650 [retval, out] VARIANT *var);
651
652 [id(DISPID_DOM_ELEMENT_SETATTRIBUTE)]
653 HRESULT setAttribute(
654 [in] BSTR p,
655 [in] VARIANT var);
656
657 [id(DISPID_DOM_ELEMENT_REMOVEATTRIBUTE)]
658 HRESULT removeAttribute(
659 [in] BSTR p);
660
661 [id(DISPID_DOM_ELEMENT_GETATTRIBUTENODE)]
662 HRESULT getAttributeNode(
663 [in] BSTR p,
664 [retval, out] IXMLDOMAttribute **attributeNode);
665
666 [id(DISPID_DOM_ELEMENT_SETATTRIBUTENODE)]
667 HRESULT setAttributeNode(
668 [in] IXMLDOMAttribute *domAttribute,
669 [retval, out] IXMLDOMAttribute **attributeNode);
670
671 [id(DISPID_DOM_ELEMENT_REMOVEATTRIBUTENODE)]
672 HRESULT removeAttributeNode(
673 [in] IXMLDOMAttribute *domAttribute,
674 [retval, out] IXMLDOMAttribute **attributeNode);
675
676 [id(DISPID_DOM_ELEMENT_GETELEMENTSBYTAGNAME)]
677 HRESULT getElementsByTagName(
678 [in] BSTR p,
679 [retval, out] IXMLDOMNodeList **resultList);
680
681 [id(DISPID_DOM_ELEMENT_NORMALIZE)]
682 HRESULT normalize();
683 }
684
685 [
686 local,
687 object,
688 dual,
689 oleautomation,
690 uuid (2933BF87-7B36-11d2-B20E-00C04F983E60)
691 ]
692 interface IXMLDOMText : IXMLDOMCharacterData
693 {
694 [id(DISPID_DOM_TEXT_SPLITTEXT)]
695 HRESULT splitText(
696 [in] LONG offset,
697 [retval, out] IXMLDOMText **txtNode);
698 }
699
700 [
701 local,
702 object,
703 dual,
704 oleautomation,
705 uuid (2933BF88-7B36-11d2-B20E-00C04F983E60)
706 ]
707 interface IXMLDOMComment : IXMLDOMCharacterData
708 {
709 }
710
711 [
712 local,
713 object,
714 dual,
715 oleautomation,
716 uuid (2933BF89-7B36-11d2-B20E-00C04F983E60)
717 ]
718 interface IXMLDOMProcessingInstruction : IXMLDOMNode
719 {
720 [propget, id(DISPID_DOM_PI_TARGET)]
721 HRESULT target([retval, out] BSTR *p);
722
723 [propget, id(DISPID_DOM_PI_DATA)]
724 HRESULT data([retval, out] BSTR *p);
725
726 [propput, id(DISPID_DOM_PI_DATA)]
727 HRESULT data([in] BSTR p);
728 }
729
730 [
731 local,
732 object,
733 dual,
734 oleautomation,
735 uuid (2933BF8A-7B36-11d2-B20E-00C04F983E60)
736 ]
737 interface IXMLDOMCDATASection : IXMLDOMText
738 {
739 }
740
741 [
742 local,
743 object,
744 dual,
745 oleautomation,
746 uuid (2933BF8B-7B36-11d2-B20E-00C04F983E60)
747 ]
748 interface IXMLDOMDocumentType : IXMLDOMNode
749 {
750 [propget, id(DISPID_DOM_DOCUMENTTYPE_NAME)]
751 HRESULT name([retval, out] BSTR *p);
752
753 [propget, id(DISPID_DOM_DOCUMENTTYPE_ENTITIES)]
754 HRESULT entities([retval, out] IXMLDOMNamedNodeMap **entityMap);
755
756 [propget, id(DISPID_DOM_DOCUMENTTYPE_NOTATIONS)]
757 HRESULT notations([retval, out] IXMLDOMNamedNodeMap **notationMap);
758 }
759
760 [
761 local,
762 object,
763 dual,
764 oleautomation,
765 uuid (2933BF8C-7B36-11d2-B20E-00C04F983E60)
766 ]
767 interface IXMLDOMNotation : IXMLDOMNode
768 {
769 [propget, id(DISPID_DOM_NOTATION_PUBLICID)]
770 HRESULT publicId([retval, out] VARIANT *id);
771
772 [propget, id(DISPID_DOM_NOTATION_SYSTEMID)]
773 HRESULT systemId([retval, out] VARIANT *id);
774 }
775
776 [
777 local,
778 object,
779 dual,
780 oleautomation,
781 uuid (2933BF8D-7B36-11d2-B20E-00C04F983E60)
782 ]
783 interface IXMLDOMEntity : IXMLDOMNode
784 {
785 [propget, id(DISPID_DOM_ENTITY_PUBLICID)]
786 HRESULT publicId([retval, out] VARIANT *id1);
787
788 [propget, id(DISPID_DOM_ENTITY_SYSTEMID)]
789 HRESULT systemId([retval, out] VARIANT *id1);
790
791 [propget, id(DISPID_DOM_ENTITY_NOTATIONNAME)]
792 HRESULT notationName([retval, out] BSTR *p);
793 }
794
795 [
796 local,
797 object,
798 dual,
799 oleautomation,
800 uuid (2933BF8E-7B36-11d2-B20E-00C04F983E60)
801 ]
802 interface IXMLDOMEntityReference : IXMLDOMNode
803 {
804 }
805
806 [
807 local,
808 object,
809 dual,
810 oleautomation,
811 uuid (2933BF8F-7B36-11d2-B20E-00C04F983E60)
812 ]
813 interface IXMLDOMImplementation : IDispatch
814 {
815 [id(DISPID_DOM_IMPLEMENTATION_HASFEATURE)]
816 HRESULT hasFeature(
817 [in] BSTR feature,
818 [in] BSTR version,
819 [retval, out] VARIANT_BOOL *pbool);
820 }
821
822 [
823 local,
824 object,
825 dual,
826 oleautomation,
827 uuid (3efaa425-272f-11d2-836f-0000f87a7782)
828 ]
829 interface IXTLRuntime : IXMLDOMNode
830 {
831 [id(DISPID_XTLRUNTIME_UNIQUEID)]
832 HRESULT uniqueID(
833 [in]IXMLDOMNode *pNode,
834 [retval, out]LONG *pID);
835
836 [id(DISPID_XTLRUNTIME_DEPTH)]
837 HRESULT depth(
838 [in] IXMLDOMNode *pNode,
839 [retval, out]LONG * pDepth);
840
841 [id(DISPID_XTLRUNTIME_CHILDNUMBER)]
842 HRESULT childNumber(
843 [in]IXMLDOMNode *pNode,
844 [retval, out] LONG *pNumber);
845
846 [id(DISPID_XTLRUNTIME_ANCESTORCHILDNUMBER)]
847 HRESULT ancestorChildNumber(
848 [in]BSTR bstr,
849 [in]IXMLDOMNode *pNode,
850 [retval, out]LONG *pNumber);
851
852 [id(DISPID_XTLRUNTIME_ABSOLUTECHILDNUMBER)]
853 HRESULT absoluteChildNumber(
854 [in]IXMLDOMNode *pNode,
855 [retval, out]LONG *pNumber);
856
857 [id(DISPID_XTLRUNTIME_FORMATINDEX)]
858 HRESULT formatIndex(
859 [in] LONG lIndex,
860 [in] BSTR bstr,
861 [retval, out]BSTR *pbstr);
862
863 [id(DISPID_XTLRUNTIME_FORMATNUMBER)]
864 HRESULT formatNumber(
865 [in] double dblNumber,
866 [in] BSTR bstr,
867 [retval, out]BSTR *pbstr);
868
869 [id(DISPID_XTLRUNTIME_FORMATDATE)]
870 HRESULT formatDate(
871 [in] VARIANT var1,
872 [in] BSTR bstr,
873 [optional, in] VARIANT var2,
874 [retval, out]BSTR *pbstr);
875
876 [id(DISPID_XTLRUNTIME_FORMATTIME)]
877 HRESULT formatTime(
878 [in] VARIANT var1,
879 [in] BSTR bstr,
880 [optional, in] VARIANT var2,
881 [retval, out]BSTR *pbstr);
882
883 }
884
885 [
886 uuid(3efaa427-272f-11d2-836f-0000f87a7782)
887 ]
888 dispinterface XMLDOMDocumentEvents
889 {
890 properties:
891 methods:
892 [id (DISPID_XMLDOMEVENT_ONDATAAVAILABLE)]
893 HRESULT ondataavailable();
894
895 [id (DISPID_XMLDOMEVENT_ONREADYSTATECHANGE)]
896 HRESULT onreadystatechange();
897 }
898
899 [
900 local,
901 object,
902 dual,
903 oleautomation,
904 uuid (2933BF92-7B36-11d2-B20E-00C04F983E60)
905 ]
906 interface IXSLProcessor : IDispatch
907 {
908 [propput, id(DISPID_XMLDOM_PROCESSOR_INPUT)]
909 HRESULT input([in] VARIANT var);
910
911 [propget, id(DISPID_XMLDOM_PROCESSOR_INPUT)]
912 HRESULT input([retval, out] VARIANT *var);
913
914 [propget, id(DISPID_XMLDOM_PROCESSOR_XSLTEMPLATE)]
915 HRESULT ownerTemplate([retval, out] IXSLTemplate **ppTemplate);
916
917 [id(DISPID_XMLDOM_PROCESSOR_SETSTARTMODE)]
918 HRESULT setStartMode(
919 [in] BSTR p,
920 [in, defaultvalue("")] BSTR uri);
921
922 [propget, id(DISPID_XMLDOM_PROCESSOR_STARTMODE)]
923 HRESULT startMode([retval, out] BSTR *p);
924
925 [propget, id(DISPID_XMLDOM_PROCESSOR_STARTMODEURI)]
926 HRESULT startModeURI([retval, out] BSTR *uri);
927
928 [propput, id(DISPID_XMLDOM_PROCESSOR_OUTPUT)]
929 HRESULT output([in] VARIANT var);
930
931 [propget, id(DISPID_XMLDOM_PROCESSOR_OUTPUT)]
932 HRESULT output([retval, out] VARIANT *var);
933
934 [id(DISPID_XMLDOM_PROCESSOR_TRANSFORM)]
935 HRESULT transform(
936 [retval, out] VARIANT_BOOL *pbool);
937
938 [id(DISPID_XMLDOM_PROCESSOR_RESET)]
939 HRESULT reset();
940
941 [propget, id(DISPID_XMLDOM_PROCESSOR_READYSTATE)]
942 HRESULT readyState([retval, out] LONG *pstate);
943
944 [id(DISPID_XMLDOM_PROCESSOR_ADDPARAMETER)]
945 HRESULT addParameter(
946 [in] BSTR p,
947 [in] VARIANT var,
948 [in, defaultvalue("")] BSTR uri);
949
950 [id(DISPID_XMLDOM_PROCESSOR_ADDOBJECT)]
951 HRESULT addObject(
952 [in] IDispatch* obj,
953 [in] BSTR uri);
954
955 [propget, id(DISPID_XMLDOM_PROCESSOR_STYLESHEET)]
956 HRESULT stylesheet([retval, out] IXMLDOMNode **node);
957 }
958
959 [
960 local,
961 object,
962 dual,
963 oleautomation,
964 uuid (2933BF93-7B36-11d2-B20E-00C04F983E60)
965 ]
966 interface IXSLTemplate : IDispatch
967 {
968 [propputref, id(DISPID_XMLDOM_TEMPLATE_STYLESHEET)]
969 HRESULT stylesheet([in] IXMLDOMNode *node);
970
971 [propget, id(DISPID_XMLDOM_TEMPLATE_STYLESHEET)]
972 HRESULT stylesheet([retval, out] IXMLDOMNode **node);
973
974 [id(DISPID_XMLDOM_TEMPLATE_CREATEPROCESSOR)]
975 HRESULT createProcessor(
976 [retval, out] IXSLProcessor **ppProcessor);
977 }
978
979 [
980 object,
981 uuid(ED8C108D-4349-11D2-91A4-00C04F7969E8),
982 odl,
983 dual,
984 oleautomation,
985 pointer_default(unique)
986 ]
987 interface IXMLHTTPRequest : IDispatch
988 {
989 [id(1)]
990 HRESULT open([in] BSTR bstrMethod, [in] BSTR bstrUrl, [in, optional] VARIANT varAsync,
991 [in,optional] VARIANT username, [in,optional] VARIANT password);
992
993 [id(2)]
994 HRESULT setRequestHeader([in] BSTR bstrHeader, [in] BSTR bstrValue);
995
996 [id(3)]
997 HRESULT getResponseHeader([in] BSTR bstrHeader, [out, retval] BSTR * value);
998
999 [id(4)]
1000 HRESULT getAllResponseHeaders([out, retval] BSTR * pbstrHeaders);
1001
1002 [id(5)]
1003 HRESULT send([in, optional] VARIANT body);
1004
1005 [id(6)]
1006 HRESULT abort();
1007
1008 [propget, id(7)]
1009 HRESULT status([out, retval] LONG *pStatus);
1010
1011 [propget, id(8)]
1012 HRESULT statusText([out, retval] BSTR *pStatus);
1013
1014 [propget, id(9)]
1015 HRESULT responseXML([out, retval] IDispatch **pBody);
1016
1017 [propget, id(10)]
1018 HRESULT responseText([out, retval] BSTR *pBody);
1019
1020 [propget, id(11)]
1021 HRESULT responseBody([out, retval] VARIANT *pBody);
1022
1023 [propget, id(12)]
1024 HRESULT responseStream([out, retval] VARIANT *pBody);
1025
1026 [propget, id(13)]
1027 HRESULT readyState([out, retval] LONG *pState);
1028
1029 [propput, id(14)]
1030 HRESULT onreadystatechange([in] IDispatch *pReadyStateSink);
1031 }
1032
1033 [
1034 local,
1035 object,
1036 dual,
1037 oleautomation,
1038 uuid (3efaa426-272f-11d2-836f-0000f87a7782)
1039 ]
1040 interface IXMLDOMParseError : IDispatch
1041 {
1042 [propget, id(DISPID_VALUE)]
1043 HRESULT errorCode([retval, out] LONG *errCode);
1044
1045 [propget, id(DISPID_DOM_ERROR_URL)]
1046 HRESULT url([retval, out] BSTR *p);
1047
1048 [propget, id(DISPID_DOM_ERROR_REASON)]
1049 HRESULT reason([retval, out] BSTR *p);
1050
1051 [propget, id(DISPID_DOM_ERROR_SRCTEXT)]
1052 HRESULT srcText([retval, out] BSTR *p);
1053
1054 [propget, id(DISPID_DOM_ERROR_LINE)]
1055 HRESULT line([retval, out] LONG *lineNo);
1056
1057 [propget, id(DISPID_DOM_ERROR_LINEPOS)]
1058 HRESULT linepos([retval, out] LONG * linePos);
1059
1060 [propget, id(DISPID_DOM_ERROR_FILEPOS)]
1061 HRESULT filepos([retval, out] LONG * filePos);
1062 }
1063
1064 [
1065 uuid(F6D90F11-9C73-11D3-B32E-00C04F990BB4)
1066 ]
1067 coclass DOMDocument
1068 {
1069 [default] interface IXMLDOMDocument2;
1070 [default, source] dispinterface XMLDOMDocumentEvents;
1071 }
1072
1073 [
1074 helpstring("XML DOM Document 2.6"),
1075 progid("Msxml2.DOMDocument.2.6"),
1076 vi_progid("Msxml2.DOMDocument"),
1077 threading(both),
1078 uuid(f5078f1b-c551-11d3-89b9-0000f81fe221)
1079 ]
1080 coclass DOMDocument26
1081 {
1082 [default] interface IXMLDOMDocument2;
1083 [default, source] dispinterface XMLDOMDocumentEvents;
1084 }
1085
1086 [
1087 uuid(F6D90F12-9C73-11D3-B32E-00C04F990BB4)
1088 ]
1089 coclass FreeThreadedDOMDocument
1090 {
1091 [default] interface IXMLDOMDocument2;
1092 [default, source] dispinterface XMLDOMDocumentEvents;
1093 }
1094
1095 [
1096 helpstring("Free Threaded XML DOM Document 2.6"),
1097 progid("Msxml2.FreeThreadedDOMDocument.2.6"),
1098 vi_progid("Msxml2.FreeThreadedDOMDocument"),
1099 threading(both),
1100 uuid(f5078f1c-c551-11d3-89b9-0000f81fe221)
1101 ]
1102 coclass FreeThreadedDOMDocument26
1103 {
1104 [default] interface IXMLDOMDocument2;
1105 [default, source] dispinterface XMLDOMDocumentEvents;
1106 }
1107
1108 [
1109 uuid(f6d90f16-9c73-11d3-b32e-00c04f990bb4)
1110 ]
1111 coclass XMLHTTP
1112 {
1113 [default] interface IXMLHTTPRequest;
1114 }
1115
1116 [
1117 helpstring("XML HTTP 2.6"),
1118 progid("Msxml2.XMLHTTP.2.6"),
1119 vi_progid("Msxml2.XMLHTTP"),
1120 threading(apartment),
1121 uuid(f5078f1e-c551-11d3-89b9-0000f81fe221)
1122 ]
1123 coclass XMLHTTP26
1124 {
1125 [default] interface IXMLHTTPRequest;
1126 }
1127
1128 [
1129 uuid(373984c9-b845-449b-91e7-45ac83036ade)
1130 ]
1131 coclass XMLSchemaCache
1132 {
1133 [default] interface IXMLDOMSchemaCollection;
1134 }
1135
1136 [
1137 helpstring("XML Schema Cache 2.6"),
1138 progid("Msxml2.XMLSchemaCache.2.6"),
1139 vi_progid("Msxml2.XMLSchemaCache"),
1140 threading(both),
1141 uuid(f5078f1d-c551-11d3-89b9-0000f81fe221)
1142 ]
1143 coclass XMLSchemaCache26
1144 {
1145 [default] interface IXMLDOMSchemaCollection;
1146 }
1147
1148 [
1149 uuid(2933BF94-7B36-11d2-B20E-00C04F983E60)
1150 ]
1151 coclass XSLTemplate
1152 {
1153 [default] interface IXSLTemplate;
1154 }
1155
1156 [
1157 helpstring("XSL Template 2.6"),
1158 progid("Msxml2.XSLTemplate.2.6"),
1159 vi_progid("Msxml2.XSLTemplate"),
1160 threading(both),
1161 uuid(f5078f21-c551-11d3-89b9-0000f81fe221)
1162 ]
1163 coclass XSLTemplate26
1164 {
1165 [default] interface IXSLTemplate;
1166 }
1167
1168 } /* Library MSXML */