e0e1987d723d6d8fe7a46bd4bc4d22eb64d7f609
[WebKit-https.git] / WebKit / COM / Interfaces / DOMCore.idl
1 /*
2  * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
24  */
25 \r
26 cpp_quote("/*")\r
27 cpp_quote(" * Copyright (C) 2006 Apple Computer, Inc.  All rights reserved.")\r
28 cpp_quote(" *")\r
29 cpp_quote(" * Redistribution and use in source and binary forms, with or without")\r
30 cpp_quote(" * modification, are permitted provided that the following conditions")\r
31 cpp_quote(" * are met:")\r
32 cpp_quote(" * 1. Redistributions of source code must retain the above copyright")\r
33 cpp_quote(" *    notice, this list of conditions and the following disclaimer.")\r
34 cpp_quote(" * 2. Redistributions in binary form must reproduce the above copyright")\r
35 cpp_quote(" *    notice, this list of conditions and the following disclaimer in the")\r
36 cpp_quote(" *    documentation and/or other materials provided with the distribution.")\r
37 cpp_quote(" *")\r
38 cpp_quote(" * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY")\r
39 cpp_quote(" * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE")\r
40 cpp_quote(" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR")\r
41 cpp_quote(" * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR")\r
42 cpp_quote(" * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,")\r
43 cpp_quote(" * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,")\r
44 cpp_quote(" * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR")\r
45 cpp_quote(" * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY")\r
46 cpp_quote(" * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT")\r
47 cpp_quote(" * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE")\r
48 cpp_quote(" * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ")\r
49 cpp_quote(" */")\r
50 \r
51 import "oaidl.idl";\r
52 import "ocidl.idl";\r
53 import "IWebScriptObject.idl";\r
54 \r
55 interface IWebScriptObject;\r
56 interface IDOMNodeList;\r
57 interface IDOMNamedNodeMap;\r
58 interface IDOMDocumentType;\r
59 interface IDOMElement;\r
60 interface IDOMDocumentFragment;\r
61 interface IDOMText;\r
62 interface IDOMComment;\r
63 interface IDOMCDATASection;\r
64 interface IDOMProcessingInstruction;\r
65 interface IDOMAttr;\r
66 interface IDOMEntityReference;\r
67 interface IDOMDocument;\r
68 \r
69 /*\r
70     @interface DOMObject : WebScriptObject <NSCopying>
71 */
72 [\r
73     local,\r
74     object,\r
75     uuid(A27FA225-F34E-425d-88EB-A35BD105A527),\r
76     pointer_default(unique)\r
77 ]\r
78 interface IDOMObject : IWebScriptObject\r
79 {\r
80 }\r
81 \r
82 /*
83     @interface DOMImplementation : DOMObject
84 */
85 [\r
86     local,\r
87     object,\r
88     uuid(6E48C25D-E542-4d1a-BC73-ACDC21E39C56),\r
89     pointer_default(unique)\r
90 ]\r
91 interface IDOMImplementation : IDOMObject\r
92 {\r
93     /*\r
94         - (BOOL)hasFeature:(NSString *)feature :(NSString *)version;
95     */
96     HRESULT hasFeature([in] BSTR feature, [in] BSTR version, [out, retval] BOOL* result);
97
98     /*
99         - (DOMDocumentType *)createDocumentType:(NSString *)qualifiedName :(NSString *)publicId :(NSString *)systemId;
100     */
101     HRESULT createDocumentType([in] BSTR qualifiedName, [in] BSTR publicId, [in] BSTR systemId, [out, retval] IDOMDocumentType** result);
102
103     /*
104         - (DOMDocument *)createDocument:(NSString *)namespaceURI :(NSString *)qualifiedName :(DOMDocumentType *)doctype;
105     */
106     HRESULT createDocument([in] BSTR namespaceURI, [in] BSTR qualifiedName, [in] IDOMDocumentType* doctype, [out, retval] IDOMDocument** result);
107 }
108
109 /*
110     @interface DOMNode : DOMObject <DOMEventTarget>
111 */
112 [\r
113     local,\r
114     object,\r
115     uuid(3EEA3E20-72DA-4be7-954F-79B5A14AD726),\r
116     pointer_default(unique)\r
117 ]\r
118 interface IDOMNode : IDOMObject\r
119 {\r
120     /*\r
121         - (NSString *)nodeName;
122     */
123     HRESULT nodeName([out, retval] BSTR* result);
124
125     /*
126         - (NSString *)nodeValue;
127     */
128     HRESULT nodeValue([out, retval] BSTR* result);
129
130     /*
131         - (void)setNodeValue:(NSString *)string;
132     */
133     HRESULT setNodeValue([in] BSTR value);
134
135     /*
136         - (unsigned short)nodeType;
137     */
138     HRESULT nodeType([out, retval] unsigned short* result);
139
140     /*
141         - (DOMNode *)parentNode;
142     */
143     HRESULT parentNode([out, retval] IDOMNode** result);
144
145     /*
146         - (DOMNodeList *)childNodes;
147     */
148     HRESULT childNodes([out, retval] IDOMNodeList** result);
149
150     /*
151         - (DOMNode *)firstChild;
152     */
153     HRESULT firstChild([out, retval] IDOMNode** result);
154
155     /*
156         - (DOMNode *)lastChild;
157     */
158     HRESULT lastChild([out, retval] IDOMNode** result);
159
160     /*
161         - (DOMNode *)previousSibling;
162     */
163     HRESULT previousSibling([out, retval] IDOMNode** result);
164
165     /*
166         - (DOMNode *)nextSibling;
167     */
168     HRESULT nextSibling([out, retval] IDOMNode** result);
169
170     /*
171         - (DOMNamedNodeMap *)attributes;
172     */
173     HRESULT attributes([out, retval] IDOMNamedNodeMap** result);
174
175     /*
176         - (DOMDocument *)ownerDocument;
177     */
178     HRESULT ownerDocument([out, retval] IDOMDocument** result);
179
180     /*
181         - (DOMNode *)insertBefore:(DOMNode *)newChild :(DOMNode *)refChild;
182     */
183     HRESULT insertBefore([in] IDOMNode* newChild, [in] IDOMNode* refChild, [out, retval] IDOMNode** result);
184
185     /*
186         - (DOMNode *)replaceChild:(DOMNode *)newChild :(DOMNode *)oldChild;
187     */
188     HRESULT replaceChild([in] IDOMNode* newChild, [in] IDOMNode* oldChild, [out, retval] IDOMNode** result);
189
190     /*
191         - (DOMNode *)removeChild:(DOMNode *)oldChild;
192     */
193     HRESULT removeChild([in] IDOMNode* oldChild, [out, retval] IDOMNode** result);
194
195     /*
196         - (DOMNode *)appendChild:(DOMNode *)newChild;
197     */
198     HRESULT appendChild([in] IDOMNode* oldChild, [out, retval] IDOMNode** result);
199
200     /*
201         - (BOOL)hasChildNodes;
202     */
203     HRESULT hasChildNodes([out, retval] BOOL* result);
204
205     /*
206         - (DOMNode *)cloneNode:(BOOL)deep;
207     */
208     HRESULT cloneNode([in] BOOL deep, [out, retval] IDOMNode** result);
209
210     /*
211         - (void)normalize;
212     */
213     HRESULT normalize();
214
215     /*
216         - (BOOL)isSupported:(NSString *)feature :(NSString *)version;
217     */
218     HRESULT isSupported([in] BSTR feature, [in] BSTR version, [out, retval] BOOL* result);
219
220     /*
221         - (NSString *)namespaceURI;
222     */
223     HRESULT namespaceURI([out, retval] BSTR* result);
224
225     /*
226         - (NSString *)prefix;
227     */
228     HRESULT prefix([out, retval] BSTR* result);
229
230     /*
231         - (void)setPrefix:(NSString *)prefix;
232     */
233     HRESULT setPrefix([in] BSTR prefix);
234
235     /*
236         - (NSString *)localName;
237     */
238     HRESULT localName([out, retval] BSTR* result);
239
240     /*
241         - (BOOL)hasAttributes;
242     */\r
243     HRESULT hasAttributes([out, retval] BOOL* result);\r
244 }\r
245 \r
246 /*
247     @interface DOMNodeList : DOMObject
248 */
249 [\r
250     local,\r
251     object,\r
252     uuid(10A05A96-CBD9-4493-83AD-FAFB952615CE),\r
253     pointer_default(unique)\r
254 ]\r
255 interface IDOMNodeList : IDOMObject\r
256 {\r
257     /*\r
258         - (DOMNode *)item:(unsigned)index;
259     */
260     HRESULT item([in] UINT index, [out, retval] IDOMNode** result);
261
262     /*
263         - (unsigned)length;
264     */
265     HRESULT length([out, retval] UINT* result);
266 }\r
267 \r
268 /*\r
269     @interface DOMNamedNodeMap : DOMObject
270 */\r
271 [\r
272     local,\r
273     object,\r
274     uuid(E6CBF396-C9F9-431b-A8D6-BCB525067E9F),\r
275     pointer_default(unique)\r
276 ]\r
277 interface IDOMNamedNodeMap : IDOMObject\r
278 {\r
279     /*\r
280         - (DOMNode *)getNamedItem:(NSString *)name;
281     */
282     HRESULT getNamedItem([in] BSTR name, [out, retval] IDOMNode** result);
283
284     /*
285         - (DOMNode *)setNamedItem:(DOMNode *)arg;
286     */
287     HRESULT setNamedItem([in] IDOMNode* arg, [out, retval] IDOMNode** result);
288
289     /*
290         - (DOMNode *)removeNamedItem:(NSString *)name;
291     */
292     HRESULT removeNamedItem([in] BSTR name, [out, retval] IDOMNode** result);
293
294     /*
295         - (DOMNode *)item:(unsigned)index;
296     */
297     HRESULT item([in] UINT index, [out, retval] IDOMNode** result);
298
299     /*
300         - (unsigned)length;
301     */
302     HRESULT length([out, retval] UINT* result);
303
304     /*
305         - (DOMNode *)getNamedItemNS:(NSString *)namespaceURI :(NSString *)localName;
306     */
307     HRESULT getNamedItemNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] IDOMNode** result);
308
309     /*
310         - (DOMNode *)setNamedItemNS:(DOMNode *)arg;
311     */
312     HRESULT setNamedItemNS([in] IDOMNode* arg, [out, retval] IDOMNode** result);
313
314     /*
315         - (DOMNode *)removeNamedItemNS:(NSString *)namespaceURI :(NSString *)localName;
316     */
317     HRESULT removeNamedItemNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] IDOMNode** result);
318 }\r
319 \r
320 /*\r
321     @interface DOMDocument : IDOMNode
322 */\r
323 [\r
324     local,\r
325     object,\r
326     uuid(A83C2C44-0BAC-45c7-8E17-6A49975D5CCA),\r
327     pointer_default(unique)\r
328 ]\r
329 interface IDOMDocument : IDOMNode\r
330 {\r
331     /*\r
332         - (DOMDocumentType *)doctype;
333     */
334     HRESULT doctype([out, retval] IDOMDocumentType** result);
335
336     /*
337         - (DOMImplementation *)implementation;
338     */
339     HRESULT implementation([out, retval] IDOMImplementation** result);
340
341     /*
342         - (DOMElement *)documentElement;
343     */
344     HRESULT documentElement([out, retval] IDOMElement** result);
345
346     /*
347         - (DOMElement *)createElement:(NSString *)tagName;
348     */
349     HRESULT createElement([in] BSTR tagName, [out, retval] IDOMElement** result);
350
351     /*
352         - (DOMDocumentFragment *)createDocumentFragment;
353     */
354     HRESULT createDocumentFragment([out, retval] IDOMDocumentFragment** result);
355
356     /*
357         - (DOMText *)createTextNode:(NSString *)data;
358     */
359     HRESULT createTextNode([in] BSTR data, [out, retval] IDOMText** result);
360
361     /*
362         - (DOMComment *)createComment:(NSString *)data;
363     */
364     HRESULT createComment([in] BSTR data, [out, retval] IDOMComment** result);
365
366     /*
367         - (DOMCDATASection *)createCDATASection:(NSString *)data;
368     */
369     HRESULT createCDATASection([in] BSTR data, [out, retval] IDOMCDATASection** result);
370
371     /*
372         - (DOMProcessingInstruction *)createProcessingInstruction:(NSString *)target :(NSString *)data;
373     */
374     HRESULT createProcessingInstruction([in] BSTR target, [in] BSTR data, [out, retval] IDOMProcessingInstruction** result);
375
376     /*
377         - (DOMAttr *)createAttribute:(NSString *)name;
378     */
379     HRESULT createAttribute([in] BSTR name, [out, retval] IDOMAttr** result);
380
381     /*
382         - (DOMEntityReference *)createEntityReference:(NSString *)name;
383     */
384     HRESULT createEntityReference([in] BSTR name, [out, retval] IDOMEntityReference** result);
385
386     /*
387         - (DOMNodeList *)getElementsByTagName:(NSString *)tagname;
388     */
389     HRESULT getElementsByTagName([in] BSTR tagName, [out, retval] IDOMNodeList** result);
390
391     /*
392         - (DOMNode *)importNode:(DOMNode *)importedNode :(BOOL)deep;
393     */
394     HRESULT importNode([in] IDOMNode* importedNode, [in] BOOL deep, [out, retval] IDOMNode** result);
395
396     /*
397         - (DOMElement *)createElementNS:(NSString *)namespaceURI :(NSString *)qualifiedName;
398     */
399     HRESULT createElementNS([in] BSTR namespaceURI, [in] BSTR qualifiedName, [out, retval] IDOMElement** result);
400
401     /*
402         - (DOMAttr *)createAttributeNS:(NSString *)namespaceURI :(NSString *)qualifiedName;
403     */
404     HRESULT createAttributeNS([in] BSTR namespaceURI, [in] BSTR qualifiedName, [out, retval] IDOMAttr** result);
405
406     /*
407         - (DOMNodeList *)getElementsByTagNameNS:(NSString *)namespaceURI :(NSString *)localName;
408     */
409     HRESULT getElementsByTagNameNS([in] BSTR namespaceURI, [in] BSTR lcoalName, [out, retval] IDOMNodeList** result);
410
411     /*
412         - (DOMElement *)getElementById:(NSString *)elementId;
413     */
414     HRESULT getElementById([in] BSTR elementId, [out, retval] IDOMElement** result);
415 }\r
416 \r
417 /*\r
418     @interface DOMCharacterData : IDOMNode
419 */\r
420 [\r
421     local,\r
422     object,\r
423     uuid(F4DED047-FE61-461a-BDBD-BB87F79DB713),\r
424     pointer_default(unique)\r
425 ]\r
426 interface IDOMCharacterData : IDOMNode\r
427 {\r
428     /*\r
429         - (NSString *)data;
430     */
431     HRESULT data([out, retval] BSTR* result);
432
433     /*
434         - (void)setData:(NSString *)data;
435     */
436     HRESULT setData([in] BSTR data);
437
438     /*
439         - (unsigned)length;
440     */
441     HRESULT length([out, retval] UINT* result);
442
443     /*
444         - (NSString *)substringData:(unsigned)offset :(unsigned)count;
445     */
446     HRESULT substringData([in] UINT offset, [in] UINT count, [out, retval] BSTR* result);
447
448     /*
449         - (void)appendData:(NSString *)arg;
450     */
451     HRESULT appendData([in] BSTR arg);
452
453     /*
454         - (void)insertData:(unsigned)offset :(NSString *)arg;
455     */
456     HRESULT insertData([in] UINT offset, [in] BSTR arg);
457
458     /*
459         - (void)deleteData:(unsigned)offset :(unsigned) count;
460     */
461     HRESULT deleteData([in] UINT offset, [in] UINT count);
462
463     /*
464         - (void)replaceData:(unsigned)offset :(unsigned)count :(NSString *)arg;
465     */\r
466     HRESULT replaceData([in] UINT offset, [in] UINT count, [in] BSTR arg);\r
467 }\r
468
469 /*\r
470     @interface DOMAttr : IDOMNode
471 */\r
472 [\r
473     local,\r
474     object,\r
475     uuid(B587E098-8206-4b5a-A7DB-422F218571A0),\r
476     pointer_default(unique)\r
477 ]\r
478 interface IDOMAttr : IDOMNode\r
479 {\r
480     /*
481         - (NSString *)name;
482     */
483     HRESULT name([out, retval] BSTR* result);
484
485     /*
486         - (BOOL)specified;
487     */
488     HRESULT specified([out, retval] BOOL* result);
489
490     /*
491         - (NSString *)value;
492     */
493     HRESULT value([out, retval] BSTR* value);
494
495     /*
496         - (void)setValue:(NSString *)value;
497     */
498     HRESULT setValue([in] BSTR value);
499
500     /*
501         - (DOMElement *)ownerElement;
502     */
503     HRESULT ownerElement([out, retval] IDOMElement** result);
504 }
505 \r
506 /*\r
507     @interface DOMElement : IDOMNode
508 */\r
509 [\r
510     local,\r
511     object,\r
512     uuid(E053A35B-7775-4859-80EA-C35D02D145A2),\r
513     pointer_default(unique)\r
514 ]\r
515 interface IDOMElement : IDOMNode\r
516 {\r
517     /*
518         - (NSString *)tagName;
519     */
520     HRESULT tagName([out, retval] BSTR* result);
521
522     /*
523         - (NSString *)getAttribute:(NSString *)name;
524     */
525     HRESULT getAttribute([in] BSTR name, [out, retval] BSTR* result);
526
527     /*
528         - (void)setAttribute:(NSString *)name :(NSString *)value;
529     */
530     HRESULT setResult([in] BSTR name, [in] BSTR value);
531
532     /*
533         - (void)removeAttribute:(NSString *)name;
534     */
535     HRESULT removeAttribute([in] BSTR name);
536
537     /*
538         - (DOMAttr *)getAttributeNode:(NSString *)name;
539     */
540     HRESULT getAttributeNode([in] BSTR name, [out, retval] IDOMAttr** result);
541
542     /*
543         - (DOMAttr *)setAttributeNode:(DOMAttr *)newAttr;
544     */
545     HRESULT setAttributeNode([in] IDOMAttr* newAttr, [out, retval] IDOMAttr** result);
546
547     /*
548         - (DOMAttr *)removeAttributeNode:(DOMAttr *)oldAttr;
549     */
550     HRESULT removeAttributeNode([in] IDOMAttr* oldAttr, [out, retval] IDOMAttr** result);
551
552     /*
553         - (DOMNodeList *)getElementsByTagName:(NSString *)name;
554     */
555     HRESULT getElementsByTagName([in] BSTR name, [out, retval] IDOMNodeList** result);
556
557     /*
558         - (NSString *)getAttributeNS:(NSString *)namespaceURI :(NSString *)localName;
559     */
560     HRESULT getAttributeNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] BSTR* result);
561
562     /*
563         - (void)setAttributeNS:(NSString *)namespaceURI :(NSString *)qualifiedName :(NSString *)value;
564     */
565     HRESULT setAttributeNS([in] BSTR namespaceURI, [in] BSTR qualifiedName, [in] BSTR value);
566
567     /*
568         - (void)removeAttributeNS:(NSString *)namespaceURI :(NSString *)localName;
569     */
570     HRESULT removeAttributeNS([in] BSTR namespaceURI, [in] BSTR localName);
571
572     /*
573         - (DOMAttr *)getAttributeNodeNS:(NSString *)namespaceURI :(NSString *)localName;
574     */
575     HRESULT getAttributeNodeNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] IDOMAttr** result);
576
577     /*
578         - (DOMAttr *)setAttributeNodeNS:(DOMAttr *)newAttr;
579     */
580     HRESULT setAttributeNodeNS([in] IDOMAttr* newAttr, [out, retval] IDOMAttr** result);
581
582     /*
583         - (DOMNodeList *)getElementsByTagNameNS:(NSString *)namespaceURI :(NSString *)localName;
584     */
585     HRESULT getElementsByTagNameNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] IDOMNodeList** result);
586
587     /*
588         - (BOOL)hasAttribute:(NSString *)name;
589     */
590     HRESULT hasAttribute([in] BSTR name, [out, retval] BOOL* result);
591
592     /*
593         - (BOOL)hasAttributeNS:(NSString *)namespaceURI :(NSString *)localName;
594     */
595     HRESULT hasAttributeNS([in] BSTR namespaceURI, [in] BSTR localName, [out, retval] BOOL* result);
596 }
597
598 /*\r
599     @interface DOMText : DOMCharacterData
600 */\r
601 [\r
602     local,\r
603     object,\r
604     uuid(74638F45-1AA0-4db5-958C-82066E00BD2B),\r
605     pointer_default(unique)\r
606 ]\r
607 interface IDOMText : IDOMCharacterData\r
608 {\r
609     /*\r
610         - (DOMText *)splitText:(unsigned)offset;
611     */\r
612     HRESULT splitText([in] UINT offset, [out, retval] IDOMText** result);\r
613 }
614
615 /*\r
616     @interface DOMComment : DOMCharacterData
617 */\r
618 [\r
619     local,\r
620     object,\r
621     uuid(118002E8-847F-4b1a-968C-B25A6AC7B128),\r
622     pointer_default(unique)\r
623 ]\r
624 interface IDOMComment : IDOMCharacterData\r
625 {\r
626 }\r
627 \r
628 /*\r
629     @interface DOMCDATASection : DOMText
630 */\r
631 [\r
632     local,\r
633     object,\r
634     uuid(31B506C1-45A3-4d72-815A-311B0A897E58),\r
635     pointer_default(unique)\r
636 ]\r
637 interface IDOMCDATASection : IDOMText\r
638 {\r
639 }\r
640 \r
641 /*\r
642     @interface DOMDocumentType : IDOMNode
643 */\r
644 [\r
645     local,\r
646     object,\r
647     uuid(17FCE6EA-4164-4bd4-9DBF-0395FBF37FD3),\r
648     pointer_default(unique)\r
649 ]\r
650 interface IDOMDocumentType : IDOMNode\r
651 {\r
652     /*\r
653         - (NSString *)name;
654     */
655     HRESULT name([out, retval] BSTR* result);
656
657     /*
658         - (DOMNamedNodeMap *)entities;
659     */
660     HRESULT entities([out, retval] IDOMNamedNodeMap** result);
661
662     /*
663         - (DOMNamedNodeMap *)notations;
664     */
665     HRESULT notations([out, retval] IDOMNamedNodeMap** result);
666
667     /*
668         - (NSString *)publicId;
669     */
670     HRESULT publicId([out, retval] BSTR* result);
671
672     /*
673         - (NSString *)systemId;
674     */
675     HRESULT systemId([out, retval] BSTR* result);
676
677     /*
678         - (NSString *)internalSubset;
679     */
680     HRESULT internalSubset([out, retval] BSTR* result);
681 }\r
682 \r
683 /*\r
684     @interface DOMEntityReference : IDOMNode
685 */\r
686 [\r
687     local,\r
688     object,\r
689     uuid(0593CE45-15B2-44af-BBD0-5A1654F8240E),\r
690     pointer_default(unique)\r
691 ]\r
692 interface IDOMEntityReference : IDOMNode\r
693 {\r
694 }\r
695 \r
696 /*\r
697     @interface DOMProcessingInstruction : IDOMNode
698 */\r
699 [\r
700     local,\r
701     object,\r
702     uuid(D99D2F48-ABF3-426a-9339-54681E1AFCA9),\r
703     pointer_default(unique)\r
704 ]\r
705 interface IDOMProcessingInstruction : IDOMNode\r
706 {\r
707     /*\r
708         - (NSString *)target;
709     */
710     HRESULT target([out, retval] BSTR* result);
711
712     /*
713         - (NSString *)data;
714     */
715     HRESULT data([out, retval] BSTR* result);
716
717     /*
718         - (void)setData:(NSString *)data;
719     */
720     HRESULT setData([in] BSTR data);
721 }\r
722 \r
723 /*\r
724     @interface DOMDocumentFragment : IDOMNode
725 */\r
726 [\r
727     local,\r
728     object,\r
729     uuid(09D35665-8396-4868-949E-8AA2407A6E10),\r
730     pointer_default(unique)\r
731 ]\r
732 interface IDOMDocumentFragment : IDOMNode\r
733 {\r
734 }\r