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