/[suikacvs]/messaging/manakai/lib/Message/DOM/DOMHTML.dis
Suika

Contents of /messaging/manakai/lib/Message/DOM/DOMHTML.dis

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.14 - (hide annotations) (download)
Thu Aug 18 12:50:49 2005 UTC (19 years, 3 months ago) by wakaba
Branch: MAIN
Changes since 1.13: +44 -39 lines
DOMCore, DOMHTML: Use new ManakaiNode lightweight class; DISDump: New module

1 wakaba 1.1 Module:
2 wakaba 1.4 @QName:
3     MDOM:DOMHTML
4 wakaba 1.1 @Namespace:
5 wakaba 1.2 http://suika.fam.cx/~wakaba/archive/2004/dom/html#
6 wakaba 1.7
7 wakaba 1.4 @AppName:
8 wakaba 1.1 @@@: html
9 wakaba 1.4 @@ContentType:
10 wakaba 1.1 lang:IDL-DOM
11     @@prefix: dom.w3c.org
12 wakaba 1.4 @@For:
13     ManakaiDOM:IDL ManakaiDOM:DOM1
14     @AppName:
15 wakaba 1.1 @@@: html2
16 wakaba 1.4 @@ContentType:
17 wakaba 1.1 lang:IDL-DOM
18     @@prefix: dom.w3c.org
19 wakaba 1.4 @@For:
20     ManakaiDOM:IDL ManakaiDOM:DOM2
21 wakaba 1.7
22 wakaba 1.1 @FullName:
23     @@lang:en
24     @@@: DOM HTML Module
25 wakaba 1.4
26 wakaba 1.1 @Description:
27     @@lang:en
28     @@@:
29     The DOM HTML Module provides objects and methods specific
30 wakaba 1.7 to HTML 4 documents and XHTML 1.0 documents. The HTML
31 wakaba 1.1 DOM exposes a number of convinience methods and attributes
32     that are more appropriate to script writers. These
33     enhancements rely on transitional or frameset DTDs
34 wakaba 1.7 of HTML 4.0 <SRC::DOM Level 1 HTML> or HTML 4.01
35     <SRC::DOM Level 2 HTML> and XHTML 1.0 <SRC::DOM Level 2 HTML>.
36     \
37     Form related interfaces are provided by a separate
38     module, <Module::DOMWebForms>.
39 wakaba 1.1
40     @Author:
41     @@FullName: Wakaba
42     @@Mail: w@suika.fam.cx
43     @License:
44     license:Perl+MPL
45 wakaba 1.4 @Date:
46     @@@:
47 wakaba 1.14 $Date: 2005/08/15 07:59:41 $
48 wakaba 1.4 @@ContentType:
49     dis:Date.RCS
50    
51     @DefaultFor:
52     ManakaiDOM:ManakaiDOMLatest
53    
54     @Require:
55     @@Module:
56 wakaba 1.7 @@@QName:
57     DISlib:DISMarkup
58     @@@WithFor:
59     ManakaiDOM:all
60 wakaba 1.4 @@Module:
61     @@@Name: DOMXML
62 wakaba 1.7 @@@WithFor:
63     ManakaiDOM:ManakaiDOMLatest
64 wakaba 1.4 @@Module:
65     @@@Name: DOMWebForms
66     @@Module:
67     @@@Name: DOMHTML
68     @@@WithFor:
69     ManakaiDOM:ManakaiDOM
70     @@Module:
71     @@@Name: DOMHTML
72     @@@WithFor:
73     ManakaiDOM:ManakaiDOM1
74     @@Module:
75     @@@Name: DOMHTML
76     @@@WithFor:
77     ManakaiDOM:ManakaiDOM2
78     @@Module:
79     @@@Name: DOMHTML
80     @@@WithFor:
81     ManakaiDOM:ManakaiDOMLatest
82     @@Module:
83     @@@Name: DOMHTML
84     @@@WithFor:
85     DOMHTML:ForHTML40SE
86     @@Module:
87     @@@Name: DOMHTML
88     @@@WithFor:
89     DOMHTML:ForHTML401
90     @@Module:
91     @@@Name: DOMHTML
92     @@@WithFor:
93     DOMHTML:ForXHTML10SE
94 wakaba 1.11 @@Module:
95     @@@Name: DOMHTML
96     @@@WithFor:
97     DOMHTML:ForHTML5
98 wakaba 1.4
99     Namespace:
100     @dis:
101     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#dis--
102     @dis2pm:
103     http://suika.fam.cx/~wakaba/archive/2004/11/8/dis2pm#
104 wakaba 1.7 @DISlib:
105     http://suika.fam.cx/~wakaba/archive/2004/dis/
106 wakaba 1.4 @DOMHTML:
107     http://suika.fam.cx/~wakaba/archive/2004/dom/html#
108     @DOMMain:
109     http://suika.fam.cx/~wakaba/archive/2004/dom/main#
110     @infoset:
111     http://www.w3.org/2001/04/infoset#
112     @lang:
113     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#
114     @license:
115     http://suika.fam.cx/~wakaba/archive/2004/8/18/license#
116     @ManakaiDOM:
117     http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#
118     @ManakaiDOMCore:
119     http://suika.fam.cx/~wakaba/archive/2004/mdom-core#
120     @ManakaiDOMHTML:
121     http://suika.fam.cx/~wakaba/archive/2004/mdom/html#
122     @MDOM:
123     http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#ManakaiDOM.
124     @MDOMX:
125     http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#
126     @null:
127     http://suika.fam.cx/~wakaba/-temp/2003/09/27/null
128     @Perl:
129     http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#Perl--
130     @rdf:
131     http://www.w3.org/1999/02/22-rdf-syntax-ns#
132     @rdfs:
133     http://www.w3.org/2000/01/rdf-schema#
134     @s:
135     http://suika.fam.cx/~wakaba/archive/2004/dis/Markup#
136     @TreeCore:\
137     @xhtml1:
138     http://www.w3.org/1999/xhtml
139 wakaba 1.7 @xml:
140     http://www.w3.org/XML/1998/namespace
141     @xmlns:
142     http://www.w3.org/2000/xmlns/
143    
144     ImplNote:
145     @lang:en
146     @@:
147     {TODO:: Lowercase'ize Perl method/attribute names.
148     \
149     ISSUE: Should createTHead be createThead?
150     \
151     }
152 wakaba 1.4
153     ## -- "For HTML"
154    
155     ForDef:
156     @QName:
157     DOMHTML:ForHTML
158     @ISA:
159     s:ForML
160     @FullName:
161     @@lang:en
162     @@@:
163 wakaba 1.7 For Hypertext Markup Language (HTML), any version
164 wakaba 1.4
165     ForDef:
166     @QName:
167     DOMHTML:ForClassicHTML
168     @ISA:
169     DOMHTML:ForHTML
170     @FullName:
171     @@lang:en
172     @@@:
173 wakaba 1.7 For non-XML-based HTML, any version
174 wakaba 1.4
175     ForDef:
176     @QName:
177     DOMHTML:ForHTML4
178     @ISA:
179     DOMHTML:ForHTML
180     @FullName:
181     @@lang:en
182     @@@: For HTML 4
183    
184     ForDef:
185     @QName:
186     DOMHTML:ForHTML40
187     @ISA:
188     DOMHTML:ForHTML4
189     @FullName:
190     @@lang:en
191     @@@: For HTML 4.0
192    
193     ForDef:
194     @QName:
195     DOMHTML:ForHTML40FE
196     @ISA:
197     DOMHTML:ForHTML40
198     @FullName:
199     @@lang:en
200     @@@: For HTML 4.0 first edition
201    
202     ForDef:
203     @QName:
204     DOMHTML:ForHTML40SE
205     @ISA:
206     DOMHTML:ForHTML40
207     @FullName:
208     @@lang:en
209     @@@:
210     For HTML 4.0 second edition
211    
212     ForDef:
213     @QName:
214     DOMHTML:ForHTML401
215     @ISA:
216     DOMHTML:ForHTML4
217     @FullName:
218     @@lang:en
219     @@@:
220     For HTML 4.01
221    
222     ForDef:
223     @QName:
224     DOMHTML:ForXHTML
225     @ISA:
226     DOMHTML:ForHTML
227     @FullName:
228     @@lang:en
229     @@@:
230 wakaba 1.7 For XHTML, compatible with W3C XHTML 1, any version
231 wakaba 1.4
232     ForDef:
233     @QName:
234     DOMHTML:ForXHTML1
235     @ISA:
236     DOMHTML:ForXHTML
237     @FullName:
238     @@lang:en
239     @@@:
240     For XHTML 1
241    
242     ForDef:
243     @QName:
244     DOMHTML:ForXHTML10
245     @ISA:
246     DOMHTML:ForXHTML1
247     @FullName:
248     @@lang:en
249     @@@:
250     For XHTML 1.0
251    
252     ForDef:
253     @QName:
254     DOMHTML:ForXHTML10FE
255     @ISA:
256     DOMHTML:ForXHTML10
257     @FullName:
258     @@lang:en
259     @@@: For XHTML 1.0 First Edition
260    
261     ForDef:
262     @QName:
263     DOMHTML:ForXHTML10SE
264     @ISA:
265     DOMHTML:ForXHTML10
266     @FullName:
267     @@lang:en
268     @@@: For XHTML 1.0 Second Edition
269    
270     ForDef:
271     @QName:
272     DOMHTML:ForXHTML1m12n
273     @ISA:
274     DOMHTML:ForXHTML1
275     @FullName:
276     @@lang:en
277     @@@:
278     For modularized XHTML 1
279    
280     ## TODO: FE and SE required
281    
282     ForDef:
283     @QName:
284     DOMHTML:ForXHTML11
285     @ISA:
286     DOMHTML:ForXHTML1m12n
287     @FullName:
288     @@lang:en
289     @@@: For XHTML 1.1
290    
291 wakaba 1.11 ForDef:
292     @QName: DOMHTML|ForHTML5
293     @FullName:
294     @@lang:en
295     @@@:
296     For HTML 5 (Work in progress)
297     @ISA: DOMHTML|ForHTML
298    
299 wakaba 1.4 ## -- Features
300 wakaba 1.1
301 wakaba 1.4 ElementTypeBinding:
302     @Name: FeatureDef
303     @ElementType:
304     dis:ResourceDef
305     @ShadowContent:
306     @@rdf:type:
307     DOMMain:DOMFeature
308 wakaba 1.7 @@ForCheck:
309     ManakaiDOM:all
310    
311 wakaba 1.4 ElementTypeBinding:
312     @Name: FeatureVerDef
313     @ElementType:
314     dis:ResourceDef
315     @ShadowContent:
316     @@rdf:type:
317     DOMMain:DOMFeature
318    
319     ElementTypeBinding:
320     @Name: featureName
321     @ElementType:
322     dis:AppName
323     @ShadowContent:
324     @@ContentType:
325     dis:String
326    
327 wakaba 1.11 ElementTypeBinding:
328     @Name: featureQName
329     @ElementType:
330     dis:AppName
331     @ShadowContent:
332     @@ContentType:
333     dis:TypeQName
334    
335 wakaba 1.4 FeatureDef:
336     @featureName: HTML
337     @QName: HTMLFeature
338     @FeatureVerDef:
339 wakaba 1.1 @@Version:1.0
340 wakaba 1.4 @@QName: HTMLFeature10
341 wakaba 1.7 @@DOMMetaImpl:instanceFeatureOf: HTMLFeature
342     @@FullName:
343     @@@@: DOM Level 1 HTML
344     @@@lang:en
345 wakaba 1.1 @@ImplNote:
346     @@@lang:en
347     @@@@:
348     The DOM Level 2 HTML Specification does not say DOM Level 2
349     HTML implementations to answer to <M:hasFeature> of
350     <FeatureVer:1.0> as <DOM:true>.
351 wakaba 1.4 @@DOMMain:requireFeature:
352     DOMCore:CoreFeature10
353     @FeatureVerDef:
354 wakaba 1.1 @@Version:2.0
355 wakaba 1.4 @@QName: HTMLFeature20
356 wakaba 1.7 @@DOMMetaImpl:instanceFeatureOf: HTMLFeature
357     @@FullName:
358     @@@@: DOM Level 2 HTML
359     @@@lang:en
360 wakaba 1.4 @@DOMMain:requireFeature:
361     DOMCore:CoreFeature20
362    
363     FeatureDef:
364     @featureName: XHTML
365     @QName: XHTMLFeature
366     @FeatureVerDef:
367 wakaba 1.1 @@Version:2.0
368 wakaba 1.7 @@FullName:
369     @@@@: DOM Level 2 HTML (with XHTML support)
370     @@@lang:en
371 wakaba 1.4 @@QName: XHTMLFeature20
372 wakaba 1.7 @@DOMMetaImpl:instanceFeatureOf: XHTMLFeature
373     @@DOMMain:extendFeature: HTMLFeature20
374     @@DOMMain:extendFeature:
375 wakaba 1.4 DOMXML:XMLFeature20
376     @@Description:
377 wakaba 1.1 @@@lang:en
378     @@@@:
379 wakaba 1.4 DOM Level 2 HTML with XHTML support.
380     It is equal to <Feature::XML> / <FeatureVer::2.0> and
381     <Feature::HTML> / <FeatureVer::2.0>.
382    
383 wakaba 1.11 ## -- Datatypes
384    
385 wakaba 1.4 ElementTypeBinding:
386     @Name: DataTypeAlias
387     @ElementType:
388     dis:ResourceDef
389     @ShadowContent:
390     @@rdf:type:
391     ManakaiDOM:DataType
392     @@ForCheck:
393     ManakaiDOM:DOM
394 wakaba 1.1
395     DataTypeAlias:
396     @Name: DOMString
397 wakaba 1.4 @AliasFor:
398     @@@:
399     DOMMain:DOMString
400     @@For:
401     !ManakaiDOM:IDL
402     @Def:
403     @@For:
404     ManakaiDOM:IDL
405     @@ContentType:
406     lang:dis
407     @@DISLang:dataTypeAliasFor:
408     DOMMain:DOMString
409 wakaba 1.7
410 wakaba 1.1 DataTypeAlias:
411     @Name: Node
412 wakaba 1.4 @AliasFor:
413     @@@:
414     DOMCore:Node
415     @@For:
416     !ManakaiDOM:IDL
417     @Def:
418     @@For:
419     ManakaiDOM:IDL
420     @@ContentType:
421     lang:dis
422     @@DISLang:dataTypeAliasFor:
423     DOMCore:Node
424 wakaba 1.7
425 wakaba 1.1 DataTypeAlias:
426     @Name: Document
427 wakaba 1.4 @AliasFor:
428     @@@:
429     DOMCore:Document
430     @@For:
431     !ManakaiDOM:IDL
432     @Def:
433     @@For:
434     ManakaiDOM:IDL
435     @@ContentType:
436     lang:dis
437     @@DISLang:dataTypeAliasFor:
438     DOMCore:Document
439 wakaba 1.7
440 wakaba 1.1 DataTypeAlias:
441     @Name: NodeList
442 wakaba 1.4 @AliasFor:
443     @@@:
444     DOMCore:NodeList
445     @@For:
446     !ManakaiDOM:IDL
447     @Def:
448     @@For:
449     ManakaiDOM:IDL
450     @@ContentType:
451     lang:dis
452     @@DISLang:dataTypeAliasFor:
453     DOMCore:NodeList
454 wakaba 1.7
455 wakaba 1.1 DataTypeAlias:
456     @Name: Element
457 wakaba 1.4 @AliasFor:
458     @@@:
459     DOMCore:Element
460     @@For:
461     !ManakaiDOM:IDL
462     @Def:
463     @@For:
464     ManakaiDOM:IDL
465     @@ContentType:
466     lang:dis
467     @@DISLang:dataTypeAliasFor:
468     DOMCore:Element
469 wakaba 1.1
470 wakaba 1.11 ElementTypeBinding:
471     @Name: ReflectTypeDef
472     @ElementType:
473     dis:ResourceDef
474     @ShadowContent:
475     @@rdf:type: ManakaiDOM|DataType
476     @@ForCheck: !ManakaiDOM|IDL
477    
478     ReflectTypeDef:
479     @QName: CDATADOMString
480     @enDesc:
481     <IF::DOMMain:DOMString> for DOM attributes reflecting
482     <SGML::CDATA> element attributes.
483     @rdfs:subClassOf: DOMString
484     @ResourceDef:
485     @@rdf:type: DOMMain|ReflectGet
486     @@DefaultValue: \
487     @@enDesc:
488     The DOM attribute returns the current value of the element attribute
489     in a transparent, case-sensitive manner.
490     \
491     If the element attribute is absent, the default value, if any,
492     or the empty string is returned.
493     @@PerlDef:
494     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
495     ->{<Q::null:>}->{$LOCAL_NAME} ||
496     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
497     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
498     if ($ao) {
499     my $attr;
500     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
501     $object => $ao, $ref => $attr,
502     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
503     }__;
504     __DEEP{
505     $r = $ao-><AG::DOMCore:Attr.value>;
506     }__;
507     }
508     @ResourceDef:
509     @@QName: CDATADOMStringSet
510     @@rdf:type: DOMMain|ReflectSet
511     @@enDesc:
512     The corresponding element attribute is set to the given value,
513     in a transparent, case-sensitive manner.
514     @@ImplNote:
515     @@@lang:en
516     @@@@:
517     What will happen if the <DOM::null> value is given?
518     @@PerlDef:
519     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
520     ->{<Q::null:>}->{$LOCAL_NAME} ||
521     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
522     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
523     if ($ao) {
524     my $attr;
525     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
526     $object => $ao, $ref => $attr,
527     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
528     }__;
529     __DEEP{
530     $ao-><AS::DOMCore:Attr.value> ($given);
531     }__;
532     } else {
533     __DEEP{
534     __FOR{ManakaiDOM|DOM2::
535     $self-><M::DOMCore:Element.setAttributeNS>
536     (null, $LOCAL_NAME => $given);
537     }__;
538     __FOR{!ManakaiDOM|DOM2::
539     $self-><M::DOMCore:Element.setAttribute> ($LOCAL_NAME => $given);
540     }__;
541     }__;
542     }
543    
544     ReflectTypeDef:
545     @QName: EnumDOMString
546     @enDesc:
547     <IF::DOMMain:DOMString> for DOM attributes reflecting
548     element attributes which is defined to only allow a specific
549     set of values.
550     @rdfs:subClassOf: DOMString
551     @ResourceDef:
552     @@rdf:type: DOMMain|ReflectGet
553     @@DefaultValue: \
554     @@enDesc:
555     The DOM attribute returns the current value of the element attribute
556     in lowercase.
557     \
558     If the element attribute is absent, the default value, if any,
559     or the empty string is returned.
560     @@PerlDef:
561     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
562     ->{<Q::null:>}->{$LOCAL_NAME} ||
563     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
564     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
565     if ($ao) {
566     my $attr;
567     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
568     $object => $ao, $ref => $attr,
569     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
570     }__;
571     __DEEP{
572     $r = lc $ao-><AG::DOMCore:Attr.value>;
573     }__;
574     }
575     @ResourceDef:
576     @@rdf:type: DOMMain|ReflectSet
577     @@enDesc:
578     The corresponding element attribute is set to the given value,
579     in a transparent, case-sensitive manner.
580     @@ImplNote:
581     @@@lang:en
582     @@@@:
583     What will happen if the <DOM::null> value is given?
584     @@disDef:
585     @@@DISPerl:cloneCode: CDATADOMStringSet
586    
587     ReflectTypeDef:
588     @QName: URIDOMString
589     @enDesc:
590     <IF::DOMMain:DOMString> for DOM attributes reflecting
591     element attributes defined to contain a IRI.
592     @rdfs:subClassOf: DOMString
593     @ResourceDef:
594     @@rdf:type: DOMMain|ReflectGet
595     @@DefaultValue: \
596     @@enDesc:
597     The DOM attribute returns the current value of the element attribute,
598     resolved to an absolute IRI.
599     \
600     If the element attribute is absent, the default value, if any,
601     or the empty string is returned.
602     @@ImplNote:
603     @@@lang:en
604     @@@@:
605     {TODO:: Resolving.
606     \
607     }
608     @@PerlDef:
609     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
610     ->{<Q::null:>}->{$LOCAL_NAME} ||
611     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
612     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
613     if ($ao) {
614     my $attr;
615     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
616     $object => $ao, $ref => $attr,
617     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
618     }__;
619     __DEEP{
620     $r = $ao-><AG::DOMCore:Attr.value>;
621     }__;
622     }
623     @ResourceDef:
624     @@rdf:type: DOMMain|ReflectSet
625     @@enDesc:
626     The corresponding element attribute is set to the given literal value.
627     @@ImplNote:
628     @@@lang:en
629     @@@@:
630     What will happen if the <DOM::null> value is given?
631     @@disDef:
632     @@@DISPerl:cloneCode: CDATADOMStringSet
633    
634     ReflectTypeDef:
635     @QName: Boolean
636     @enDesc:
637     <IF::DOMMain:boolean::ManakaiDOM:all> for DOM attributes reflecting
638     boolean element attributes.
639     @rdfs:subClassOf: DOMMain|boolean||ManakaiDOM|all
640     @ResourceDef:
641     @@rdf:type: DOMMain|ReflectGet
642     @@DefaultValue: false
643     @@enDesc:
644     The DOM attribute returns <DOM::true> if the element attribute
645     is set and <DOM::false> if it is absent.
646     @@PerlDef:
647     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
648     ->{<Q::null:>}->{$LOCAL_NAME} ||
649     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
650     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
651     $r = $ao ? true : false;
652     @ResourceDef:
653     @@rdf:type: DOMMain|ReflectSet
654     @@enDesc:
655     The element attribute is removed if the DOM attribute
656     is set to <DOM::false> and is set to have the same
657     value as its local name if the DOM attribute is set to <DOM::true>.
658     @@PerlDef:
659     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
660     ->{<Q::null:>}->{$LOCAL_NAME} ||
661     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
662     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
663     if ($ao) {
664     if ($given) {
665     my $attr;
666     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
667     $object => $ao, $ref => $attr,
668     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
669     }__;
670     __DEEP{
671     $ao-><AS::DOMCore:Attr.value> ($LOCAL_NAME);
672     }__;
673     } else {
674     if ($self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
675     ->{<Q::null:>}->{$LOCAL_NAME}) {
676     CORE::delete $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
677     ->{<Q::null:>}->{$LOCAL_NAME};
678     } else {
679     CORE::delete $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
680     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
681     }
682     CORE::delete $ao->{<Q::infoset:ownerElement>};
683 wakaba 1.14 $ao-><M::NodeStem.orphanate>;
684 wakaba 1.11 }
685     } else {
686     if ($given) {
687     __DEEP{
688     __FOR{ManakaiDOM|DOM2::
689     $self-><M::DOMCore:Element.setAttributeNS>
690     (null, $LOCAL_NAME => $LOCAL_NAME);
691     }__;
692     __FOR{!ManakaiDOM|DOM2::
693     $self-><M::DOMCore:Element.setAttribute>
694     ($LOCAL_NAME => $LOCAL_NAME);
695     }__;
696     }__;
697     }
698     }
699    
700     ReflectTypeDef:
701     @QName: Numeric
702     @enDesc:
703     <IF::DOMMain:long::ManakaiDOM:all> for DOM attributes reflecting
704     number element attributes.
705     @rdfs:subClassOf: DOMMain|long||ManakaiDOM|all
706     @ResourceDef:
707     @@rdf:type: DOMMain|ReflectGet
708     @@DefaultValue: 0
709     @@enDesc:
710     The DOM attribute returns a numeric type value converted
711     from the element attribute value. If the convertion
712     fails or if the element attribute is absent, then
713     the default value is returned or <DOM::0> if there is
714     no default value.
715     @@PerlDef:
716     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
717     ->{<Q::null:>}->{$LOCAL_NAME} ||
718     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
719     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
720     if ($ao) {
721     my $attr;
722     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
723     $object => $ao, $ref => $attr,
724     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
725     }__;
726     __DEEP{
727     $r = $ao-><AG::DOMCore:Attr.value>;
728     }__;
729     __CODE{convertToNumericType::
730     $original => $r,
731     $result => $r,
732     $default => {0},
733     }__;
734     }
735     @@ImplNote:
736     @@@lang:en
737     @@@@:
738     {TODO:: Default value other than 0.
739     \
740     }
741     @ResourceDef:
742     @@rdf:type: DOMMain|ReflectSet
743     @@enDesc:
744     The given value is converted to a string representing
745     the number in decimal (base ten) and then that
746     string is set to the element attribute.
747     @@QName: NumericSet
748     @@PerlDef:
749     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
750     ->{<Q::null:>}->{$LOCAL_NAME} ||
751     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
752     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
753     if ($ao) {
754     my $attr;
755     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
756     $object => $ao, $ref => $attr,
757     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
758     }__;
759     __DEEP{
760     $ao-><AS::DOMCore:Attr.value> (0 + $given);
761     }__;
762     } else {
763     __DEEP{
764     __FOR{ManakaiDOM|DOM2::
765     $self-><M::DOMCore:Element.setAttributeNS>
766     (null, $LOCAL_NAME => 0 + $given);
767     }__;
768     __FOR{!ManakaiDOM|DOM2::
769     $self-><M::DOMCore:Element.setAttribute> ($LOCAL_NAME => 0 + $given);
770    
771     }__;
772     }__;
773     }
774    
775     @ResourceDef:
776     @@rdf:type: dis2pm|BlockCode
777     @@QName: convertToNumericType
778     @@enDesc:
779     Converts a string to a number.
780     \
781     When an HTML 5 (work in progress) user agent needs to
782     convert a string to a number, algorithms equivalent
783     to those specified in ECMA 262 section 9.3.1
784     <sw010:csection::ToNumber Applied to the String Type> and
785     8.5 <sw010:csection::The Number type> should be used
786     (possibly after suitably altering the algorithms to handle
787     numbers of the range that the user agent can support).
788     @@ImplNote:
789     @@@lang:en
790     @@@@:
791     - StringNumericLiteral := [StrWhiteSpace]
792     [StrNumericLiteral [StrWhiteSpace]]
793     \
794     - StrWhiteSpace := 1*StrWhiteSpaceChar
795     \
796     - StrWhiteSpaceChar := TAB / SP / NBSP / FF / VT / CR / LF / LS / PS / USP
797     ;; U+0009 / U+0020 / U+00A0 / U+000C / U+000D /
798     U+000A / U+2028 / U+2029 / Zs
799     \
800     - StrNumericLiteral := StrDecimalLiteral / HexIntegerLiteral
801     \
802     - StrDecimalLiteral := ["+" / "-"] StrUnsignedDecimalLiteral
803     \
804     - StrUnsignedDecimalLiteral := 'Infinity' /
805     1*DIGIT ["." 0*DIGIT] [ExponentPart] /
806     "." 1*DIGIT [ExponentPart]
807     \
808     - ExponentPart := "E" SignedInteger
809     \
810     - SignedInteger := ["+" / "-"] 1*DIGIT
811     \
812     - HexIntegerLiteral := "0x" 1*HEXDIGIT
813     @@ImplNote:
814     @@@lang:en
815     @@@@:
816     ECMA 262 3rd edition (1999) references Unicode 2.1
817     and section 7.2 <sw10:csection::White Space>
818     cites Unicode without version number, while section 6
819     <sw10:csection::Source Text> refers Unicode 2.1 or later.
820     @@PerlDef:
821     if ($original =~ m{
822     \A [\x09\x0A\x0C\x0D\x20\u{00A0}\u{2028}\u{2029}\pZs]*
823    
824     (?: (
825    
826     ## Decimal
827    
828     [+-] (?: [0-9]+(?:\.[0-9]*)?([eE][+-][0-9]+)? |
829     \.[0-9]+ ([eE][+-][0-9]+)? |
830     Infinity ) |
831    
832     ## Hex
833    
834     0[xX][0-9A-Fa-f]+
835    
836     )
837    
838     [\x09\x0A\x0C\x0D\x20\u{00A0}\u{2028}\u{2029}\pZs]* )? \z
839     }s) {
840     my $__str = $1;
841     if (defined $__str) {
842     if (lc substr ($__str, 0, 2) eq '0x') {
843     $result = hex $__str;
844     } else {
845     $result = 0 + $__str;
846     }
847     ## BUG: Infinity is not supported
848     } else {
849     $result = +0;
850     }
851     } else { ## NaN
852     $result = $default;
853     }
854    
855     ReflectTypeDef:
856     @QName: UnsignedNumeric
857     @enDesc:
858     <IF::DOMMain:unsigned-long::ManakaiDOM:all> for DOM attributes reflecting
859     number element attributes.
860     @rdfs:subClassOf: DOMMain|unsigned-long||ManakaiDOM|all
861     @ResourceDef:
862     @@rdf:type: DOMMain|ReflectGet
863     @@DefaultValue: 0
864     @@enDesc:
865     The DOM attribute returns a numeric type value converted
866     from the element attribute value. If the convertion
867     fails or if the element attribute is absent, then
868     the default value is returned or <DOM::0> if there is
869     no default value.
870     @@PerlDef:
871     my $ao = $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
872     ->{<Q::null:>}->{$LOCAL_NAME} ||
873     $self->{<Q::TreeCore:node>}->{<Q::infoset:attributes>}
874     ->{<Q::ManakaiDOM:noNS>}->{$LOCAL_NAME};
875     if ($ao) {
876     my $attr;
877     __CODE{ManakaiNode:getWeakReference||ManakaiDOM:Perl::
878     $object => $ao, $ref => $attr,
879     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
880     }__;
881     __DEEP{
882     $r = $ao-><AG::DOMCore:Attr.value>;
883     }__;
884     __CODE{convertToNumericType::
885     $original => $r,
886     $result => $r,
887     $default => {0},
888     }__;
889     $r = 0 if $r < 0;
890     }
891     @@ImplNote:
892     @@@lang:en
893     @@@@:
894     {TODO:: What should be returned if negative value?
895     \
896     }
897     @ResourceDef:
898     @@rdf:type: DOMMain|ReflectSet
899     @@enDesc:
900     The given value is converted to a string representing
901     the number in decimal (base ten) and then that
902     string is set to the element attribute.
903     @@disDef:
904     @@@DISPerl:cloneCode: NumericSet
905    
906 wakaba 1.1 ImplNote:
907     @lang:en
908     @@:
909     The DOM Level 2 HTML Specification does not intend to define
910     exactly how a UA will respond to a change to any
911     attribute on an element that directly or indirectly refers
912     external data, such elements are <IF:HTMLAppletElement>,
913     <IF:HTMLFrameElement>, <IF:HTMLFrameSetElement>,
914     <IF:HTMLIFrameElement>, <IF:HTMLImageElement>, <IF:HTMLLinkElement>,
915     <IF:HTMLObjectElement>, <IF:HTMLParamElement> and
916     <IF:HTMLScriptElement>.
917 wakaba 1.4 @@For:
918     ManakaiDOM:DOM
919    
920     ElementTypeBinding:
921     @Name: L1
922     @ElementType:
923     DOMMain:implementFeature
924     @ShadowContent:
925     @@@: HTMLFeature10
926     @@For:
927     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
928     @ShadowSibling:
929     @@DOMMain:implementFeature:
930     @@@@: HTMLFeature20
931     @@@For:
932     ManakaiDOM:DOM2
933    
934     ElementTypeBinding:
935     @Name: L1IF
936     @ElementType:
937     DOMMain:implementFeature
938     @ShadowContent:
939     @@@: HTMLFeature10
940     @@For:
941     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
942     @ShadowSibling:
943     @@DOMMain:implementFeature:
944     @@@@: HTMLFeature20
945     @@@For:
946     ManakaiDOM:DOM2
947     @@For:
948     ManakaiDOM:DOM1
949     @@For:
950     =ManakaiDOM:ManakaiDOM
951 wakaba 1.7 @@For: ForHTML
952 wakaba 1.9 @@ISA:
953     @@@@: ||ManakaiDOM|ManakaiDOM2||ManakaiDOM|ForIF
954     @@@ForCheck: ManakaiDOM|ForIF ManakaiDOM|ManakaiDOMLatest
955     @@@ContentType: DISCore|TFPQNames
956 wakaba 1.8 ## NOTE: A Level 2 interface is not always upward-compatible with Level 1 i.f.
957 wakaba 1.4
958     ElementTypeBinding:
959     @Name: L2
960     @ElementType:
961     DOMMain:implementFeature
962     @ShadowContent:
963     @@@: HTMLFeature20
964     @@For:
965     ManakaiDOM:DOM2
966    
967     ElementTypeBinding:
968 wakaba 1.8 @Name: L2ISAL1
969     @ElementType:
970     dis:ISA
971     @ShadowContent:
972     @@@: ||ManakaiDOM|ManakaiDOM1||ManakaiDOM|ForIF
973     @@ForCheck: ManakaiDOM|ForIF ManakaiDOM|ManakaiDOM
974     @@ContentType: DISCore|TFPQNames
975    
976     ElementTypeBinding:
977 wakaba 1.4 @Name: L2IF
978     @ElementType:
979     DOMMain:implementFeature
980     @ShadowContent:
981     @@@: HTMLFeature20
982     @@For:
983     ManakaiDOM:DOM2
984     @ShadowSibling:
985     @@For:
986     ManakaiDOM:DOM2
987     @@For:
988     =ManakaiDOM:ManakaiDOM
989 wakaba 1.7 @@For: ForHTML
990 wakaba 1.4
991     ElementTypeBinding:
992     @Name: PerlDef
993     @ElementType:
994     dis:Def
995     @ShadowContent:
996     @@ContentType:
997     lang:Perl
998    
999     ElementTypeBinding:
1000     @Name: IF
1001     @ElementType:
1002     dis:ResourceDef
1003     @ShadowContent:
1004     @@rdf:type:
1005     @@@@:
1006     dis:MultipleResource
1007     @@@ForCheck:
1008     !ManakaiDOM:ForClass !ManakaiDOM:ForIF !ForHTML
1009     @@rdf:type:
1010     @@@@:
1011     ManakaiDOM:IF
1012     @@@ForCheck:
1013     ManakaiDOM:ForIF
1014     @@rdf:type:
1015     @@@@:
1016     ManakaiDOM:Class
1017     @@@ForCheck:
1018     ManakaiDOM:ForClass
1019     @@resourceFor:
1020     @@@@:
1021     ManakaiDOM:ForIF
1022     @@@For:
1023     ManakaiDOM:DOMHTMLFeature
1024     @@@For:
1025     =ManakaiDOM:ManakaiDOM
1026     @@@ForCheck: !ForHTML
1027     @@resourceFor:
1028     @@@@:
1029     ManakaiDOM:ForClass
1030     @@@ForCheck:
1031     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
1032     ManakaiDOM:DOMHTMLFeature !ForHTML
1033     @@ISA:
1034     @@@@:
1035     ManakaiDOM:ManakaiDOMObject
1036     @@@ForCheck:
1037     ManakaiDOM:ForClass
1038     @@ISA:
1039     @@@@:
1040 wakaba 1.8 ::ManakaiDOM:ManakaiDOM||ManakaiDOM:ForIF
1041 wakaba 1.4 @@@ForCheck:
1042 wakaba 1.7 ManakaiDOM:ForIF ManakaiDOM:ManakaiDOM1
1043 wakaba 1.8 @@@ContentType: DISCore|TFPQNames
1044     @@Implement:
1045     @@@@: ||+||ManakaiDOM|ForIF
1046     @@@ForCheck: ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM1
1047     @@@ContentType: DISCore|TFPQNames
1048 wakaba 1.4
1049     ElementTypeBinding:
1050 wakaba 1.11 @Name: ClsOnly
1051     @ElementType:
1052     dis:ResourceDef
1053     @ShadowContent:
1054     @@rdf:type:
1055     @@@@:
1056     dis:MultipleResource
1057     @@@ForCheck:
1058     !ManakaiDOM:ForClass !ManakaiDOM:ForIF !ForHTML
1059     @@rdf:type:
1060     @@@@:
1061     ManakaiDOM:Class
1062     @@@ForCheck:
1063     ManakaiDOM:ForClass
1064     @@resourceFor:
1065     @@@@:
1066     ManakaiDOM:ForClass
1067     @@@ForCheck:
1068     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
1069     ManakaiDOM:DOMHTMLFeature !ForHTML
1070     @@ISA:
1071     @@@@:
1072     ManakaiDOM:ManakaiDOMObject
1073     @@@ForCheck:
1074     ManakaiDOM:ForClass
1075    
1076     ElementTypeBinding:
1077 wakaba 1.4 @Name: ET
1078     @ElementType:
1079     dis:ResourceDef
1080     @ShadowContent:
1081     @@rdf:type:
1082     @@@@:
1083     dis:MultipleResource
1084     @@@ForCheck:
1085     !ManakaiDOM:ForClass !ManakaiDOM:ForIF !ForHTML
1086     @@rdf:type:
1087     @@@@:
1088     ManakaiDOM:IF
1089     @@@ForCheck:
1090     ManakaiDOM:ForIF
1091     @@rdf:type:
1092     @@@@:
1093     ManakaiDOM:Class
1094     @@@ForCheck:
1095     ManakaiDOM:ForClass
1096     @@resourceFor:
1097     @@@@:
1098     ManakaiDOM:ForIF
1099     @@@ForCheck:
1100     ManakaiDOM:DOM
1101     @@@For:
1102     ManakaiDOM:DOMHTMLFeature
1103     @@@For:
1104     =ManakaiDOM:ManakaiDOM
1105     @@resourceFor:
1106     @@@@:
1107     ManakaiDOM:ForClass
1108     @@@ForCheck:
1109     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM ManakaiDOM:DOMHTMLFeature
1110    
1111     @@rdf:type:
1112     @@@@:
1113     s:ElementType
1114     @@@ForCheck:
1115     ForHTML
1116    
1117     @@ISA:
1118     @@@@:
1119 wakaba 1.8 ::ManakaiDOM:ManakaiDOM||ManakaiDOM:ForIF
1120 wakaba 1.4 @@@ForCheck:
1121 wakaba 1.7 ManakaiDOM:ForIF ManakaiDOM:ManakaiDOM1
1122 wakaba 1.8 @@@ContentType: DISCore|TFPQNames
1123     @@Implement:
1124     @@@@: ||+||ManakaiDOM|ForIF
1125     @@@ForCheck: ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM1
1126     @@@ContentType: DISCore|TFPQNames
1127    
1128 wakaba 1.4 @@DISMarkup:elementType:
1129     @@@@:
1130     ::ForHTML40SE
1131     @@@ForCheck:
1132     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
1133     @@@ImplNote:
1134     @@@@lang:en
1135     @@@@@:
1136     DOM Level 1 First Edition refers the latest version of
1137     HTML 4.0 while Second Edition refers the second edition of
1138     HTML 4.0.
1139 wakaba 1.12 @@@DISCore:stopISARecursive:1
1140 wakaba 1.4 @@DISMarkup:elementType:
1141     @@@@:
1142     ::ForHTML401
1143     @@@ForCheck:
1144     ManakaiDOM:DOM2
1145     @@DISMarkup:elementType:
1146     @@@@:
1147     ::ForXHTML10SE
1148     @@@ForCheck:
1149     ManakaiDOM:DOM2
1150 wakaba 1.12 @@@DISCore:stopISARecursive:1
1151 wakaba 1.11
1152     ElementTypeBinding:
1153     @Name: H5ETX
1154     @ElementType:
1155     dis:ResourceDef
1156     @ShadowContent:
1157     @@rdf:type:
1158     @@@@:
1159     dis:MultipleResource
1160     @@@ForCheck:
1161     !ManakaiDOM:ForClass !ManakaiDOM:ForIF !ForHTML
1162     @@rdf:type:
1163     @@@@:
1164     ManakaiDOM:IF
1165     @@@ForCheck:
1166     ManakaiDOM:ForIF
1167     @@rdf:type:
1168     @@@@:
1169     ManakaiDOM:Class
1170     @@@ForCheck:
1171     ManakaiDOM:ForClass
1172     @@resourceFor:
1173     @@@@:
1174     ManakaiDOM:ForIF
1175     @@@ForCheck:
1176     ManakaiDOM:DOM
1177     @@@For:
1178     ManakaiDOM:DOMHTMLFeature
1179     @@@For:
1180     =ManakaiDOM:ManakaiDOM
1181     @@resourceFor:
1182     @@@@:
1183     ManakaiDOM:ForClass
1184     @@@ForCheck:
1185     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM ManakaiDOM:DOMHTMLFeature
1186    
1187     @@rdf:type:
1188     @@@@:
1189     s:ElementType
1190     @@@ForCheck:
1191     ForHTML
1192    
1193     @@ISA:
1194     @@@@:
1195     ::ManakaiDOM:ManakaiDOM||ManakaiDOM:ForIF
1196     @@@ForCheck:
1197     ManakaiDOM:ForIF ManakaiDOM:ManakaiDOM1
1198     @@@ContentType: DISCore|TFPQNames
1199     @@Implement:
1200     @@@@: ||+||ManakaiDOM|ForIF
1201     @@@ForCheck: ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM1
1202     @@@ContentType: DISCore|TFPQNames
1203    
1204     @@DISMarkup:elementType:
1205     @@@@: ||ForHTML5
1206     @@@ForCheck: ManakaiDOM|ManakaiDOMLatest
1207 wakaba 1.12 @@@DISCore:stopISARecursive:1
1208 wakaba 1.11
1209     @@DOMMain:implementFeature: HTMLExtendedFeature30
1210    
1211     @@For: =ManakaiDOM|ManakaiDOM
1212     @@For: ManakaiDOM|ManakaiDOMLatest
1213     @@For: ForHTML5
1214 wakaba 1.4
1215     ElementTypeBinding:
1216     @Name: Method
1217     @ElementType:
1218     dis:ResourceDef
1219     @ShadowContent:
1220     @@rdf:type:
1221     ManakaiDOM:DOMMethod
1222     @@ForCheck:
1223     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
1224     ElementTypeBinding:
1225     @Name: IntMethod
1226     @ElementType:
1227     dis:ResourceDef
1228     @ShadowContent:
1229     @@rdf:type:
1230     ManakaiDOM:DOMMethod
1231     @@ForCheck:
1232     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
1233     @@ManakaiDOM:isForInternal: 1
1234     ElementTypeBinding:
1235     @Name: ReMethod
1236     @ElementType:
1237     dis:ResourceDef
1238     @ShadowContent:
1239     @@rdf:type:
1240     ManakaiDOM:DOMMethod
1241     @@ForCheck:
1242     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
1243     @@ManakaiDOM:isRedefining: 1
1244     ElementTypeBinding:
1245     @Name: Param
1246     @ElementType:
1247     dis:ResourceDef
1248     @ShadowContent:
1249     @@rdf:type:
1250     ManakaiDOM:DOMMethodParameter
1251     ElementTypeBinding:
1252     @Name: Exception
1253     @ElementType:
1254     ManakaiDOM:raises
1255    
1256     ElementTypeBinding:
1257     @Name: Return
1258     @ElementType:
1259     dis:ResourceDef
1260     @ShadowContent:
1261     @@rdf:type:
1262     ManakaiDOM:DOMMethodReturn
1263    
1264     ElementTypeBinding:
1265     @Name: Attr
1266     @ElementType:
1267     dis:ResourceDef
1268     @ShadowContent:
1269     @@rdf:type:
1270     ManakaiDOM:DOMAttribute
1271     @@ForCheck:
1272     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
1273    
1274     ElementTypeBinding:
1275 wakaba 1.11 @Name: Attrs
1276     @ElementType:
1277     dis:ResourceDef
1278     @ShadowContent:
1279     @@rdf:type:
1280     @@@@: ManakaiDOM|DOMAttribute
1281     @@@ForCheck: ManakaiDOM|DOM
1282     @@ForCheck: !=ManakaiDOM|ManakaiDOM
1283     @@For: ManakaiDOM|ManakaiDOM
1284     @@For: ForHTML
1285     @@rdf:type:
1286     @@@@: s|Attribute
1287     @@@ForCheck: ForHTML
1288    
1289     ElementTypeBinding:
1290 wakaba 1.4 @Name: ATTR
1291     @ElementType:
1292     dis:ResourceDef
1293     @ShadowContent:
1294     @@ForCheck:
1295     !=ManakaiDOM:ManakaiDOM
1296     @@rdf:type:
1297     @@@@:
1298     ManakaiDOM:DOMAttribute
1299     @@@ForCheck:
1300     ManakaiDOM:DOM
1301     @@rdf:type:
1302     @@@@:
1303     s:Attribute
1304     @@@ForCheck:
1305     ForHTML
1306     @@DocAttr:
1307     @@@@:
1308     ::ForHTML40SE
1309     @@@ForCheck:
1310     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
1311     @@@ImplNote:
1312     @@@@lang:en
1313     @@@@@:
1314     DOM Level 1 First Edition refers the latest version of
1315     HTML 4.0 while Second Edition refers the second edition of
1316     HTML 4.0.
1317     @@DocAttr:
1318     @@@@:
1319     ::ForHTML401
1320     @@@ForCheck:
1321     ManakaiDOM:DOM2
1322     @@DocAttr:
1323     @@@@:
1324     ::ForXHTML10SE
1325     @@@ForCheck:
1326     ManakaiDOM:DOM2
1327    
1328     ElementTypeBinding:
1329     @Name: ReAttr
1330     @ElementType:
1331     dis:ResourceDef
1332     @ShadowContent:
1333     @@rdf:type:
1334     ManakaiDOM:DOMAttribute
1335     @@ForCheck:
1336     ManakaiDOM:ManakaiDOM !=ManakaiDOM:ManakaiDOM
1337     @@ManakaiDOM:isRedefining: 1
1338     ElementTypeBinding:
1339     @Name: Get
1340     @ElementType:
1341     dis:ResourceDef
1342     @ShadowContent:
1343     @@rdf:type:
1344     ManakaiDOM:DOMAttrGet
1345     @@ForCheck:
1346     ManakaiDOM:DOM
1347     ElementTypeBinding:
1348     @Name: Set
1349     @ElementType:
1350     dis:ResourceDef
1351     @ShadowContent:
1352     @@rdf:type:
1353     ManakaiDOM:DOMAttrSet
1354     @@ForCheck:
1355     ManakaiDOM:DOM
1356     ElementTypeBinding:
1357     @Name: InCase
1358     @ElementType:
1359     dis:ResourceDef
1360     @ShadowContent:
1361     @@rdf:type:
1362     ManakaiDOM:InCase
1363    
1364     ElementTypeBinding:
1365     @Name: ConstGroup
1366     @ElementType:
1367     dis:ResourceDef
1368     @ShadowContent:
1369     @@rdf:type:
1370     ManakaiDOM:ConstGroup
1371     @@ForCheck:
1372     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
1373    
1374     ElementTypeBinding:
1375     @Name: Const
1376     @ElementType:
1377     dis:ResourceDef
1378     @ShadowContent:
1379     @@rdf:type:
1380     ManakaiDOM:Const
1381     @@ForCheck:
1382     ManakaiDOM:DOM !=ManakaiDOM:ManakaiDOM
1383    
1384     ElementTypeBinding:
1385     @Name: Deprecated
1386     @ElementType:
1387     DOMHTML:isDeprecatedByHTML4
1388     @ShadowContent: 1
1389     @ShadowSibling:
1390     @@ForCheck: !ForXHTML11
1391    
1392     PropDef:
1393     @QName: isDeprecatedByHTML4
1394     @Description:
1395     @@lang:en
1396     @@@:
1397     Whether a subject resource is deprecated by HTML 4 or not.
1398     @dataType:
1399     dis:Boolean
1400 wakaba 1.1
1401     IF:
1402 wakaba 1.4 @Name:
1403     @@@: HTMLCollection
1404     @@ForCheck:
1405     ManakaiDOM:ForIF
1406    
1407     @QName:
1408     @@@: ManakaiDOMHTMLCollection
1409     @@ForCheck:
1410     ManakaiDOM:ForClass
1411 wakaba 1.6 @ISA:
1412 wakaba 1.14 @@@: NodeRef
1413 wakaba 1.6 @@ForCheck:
1414     ManakaiDOM:ForClass
1415 wakaba 1.9 @L2ISAL1:
1416 wakaba 1.4
1417 wakaba 1.1 @Description:
1418     @@lang:en
1419     @@@:
1420     A list of nodes. An individual node may be accessed
1421     by either ordinal index or the <HA:name> or <HA:id>
1422     of the node.
1423     \
1424     <IF:HTMLCollection> objects are <EM:live>; they are
1425     automatically updated when the underlying document
1426     is changed.
1427    
1428 wakaba 1.4 @L1IF:
1429 wakaba 1.1
1430     @Attr:
1431     @@Name: length
1432     @@Description:
1433     @@@lang:en
1434     @@@@: The length of the list.
1435     @@Get:
1436     @@@Type:
1437     DOMMain:unsigned-long
1438 wakaba 1.4 @@@PerlDef:
1439     my $l = $self->{<Q::TreeCore:node>}
1440     -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1441     .getElementsBy>
1442     ($self->{<Q::ManakaiDOMCore:nodeMatch>});
1443     $r = @$l;
1444 wakaba 1.1 @Method:
1445     @@Name: item
1446     @@Description:
1447     @@@lang:en
1448     @@@@:
1449     Retrieve a node specified by ordinal index.
1450     @@Param:
1451     @@@Name: index
1452     @@@Type:
1453     DOMMain:unsigned-long
1454     @@@Description:
1455     @@@@lang:en
1456     @@@@@:
1457     The index of the node to retrieve, in the document order.
1458     The index origin is <DOM:0>.
1459     @@Return:
1460 wakaba 1.4 @@@Type:
1461     DOMCore:Node
1462 wakaba 1.1 @@@Description:
1463     @@@@lang:en
1464     @@@@@:
1465     The <P:index>th node.
1466     @@@InCase:
1467     @@@@Value:
1468     @@@@@is-null:1
1469     @@@@Description:
1470     @@@@@lang:en
1471     @@@@@@:
1472     The <P:index> is out of range.
1473 wakaba 1.4 @@@PerlDef:
1474     $r = $self->{<Q::TreeCore:node>}
1475     -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1476     .getElementBy>
1477     ($self->{<Q::ManakaiDOMCore:nodeMatch>}, \$index);
1478     if (defined $r) {
1479 wakaba 1.11 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($r);
1480 wakaba 1.4 }
1481 wakaba 1.1 @Method:
1482     @@Name: namedItem
1483     @@Description:
1484     @@@lang:en
1485     @@@@:
1486     Retrieve a node using a name.
1487     \
1488     With HTML 4 documents,
1489     it first searches for an <IF:Element> with a matching
1490     <HA:name> attribute and if it does not find one,
1491     it searches for an <IF:Element> (that is allowed to specify a
1492     <HA:name> attribute) with a matching <HA:name> attribute.
1493     The matching is case-insensitive.
1494     \
1495     With XHTML 1.0 documents, it only searches for
1496     an <IF:Element> with a matching <HA:id> attribute.
1497     The matching is case-sensitive.
1498 wakaba 1.4 @@ImplNote:
1499     @@@lang:en
1500     @@@@:
1501     XHTML <HA::id> local attributes? XML <XML::ID> attributes?
1502     Any local <XA::id> attributes?
1503 wakaba 1.1 @@Param:
1504     @@@Name: name
1505 wakaba 1.4 @@@Type:
1506     DOMMain:DOMString
1507 wakaba 1.1 @@@Description:
1508     @@@@lang:en
1509     @@@@@:
1510     The name of the <IF:Node> to retrieve.
1511     @@Return:
1512 wakaba 1.4 @@@Type:
1513     DOMCore:Node
1514 wakaba 1.1 @@@Description:
1515     @@@@lang:en
1516     @@@@@:
1517     The <IF:Node> with a <HA:name> or <HA:id> whose
1518     value matches with <P:name>.
1519     @@@InCase:
1520     @@@@Value:
1521     @@@@@is-null:1
1522     @@@@Description:
1523     @@@@@lang:en
1524     @@@@@@:
1525     There is no node with such a <P:name>.
1526 wakaba 1.4 @@@PerlDef:
1527     my $node = $self->{<Q::TreeCore:node>};
1528     $name = "$name";
1529     my $index = 0;
1530     if (not $node->{<Q::DOMCore:ownerDocument>}
1531     ->{<Q::DOMCore:hasFeature>}->{XML}) {
1532     $r = $self->{<Q::TreeCore:node>}
1533     -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1534     .getElementBy>
1535     (sub ($) {
1536 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#1"
1537 wakaba 1.4 my $node = shift;
1538     if ($self->{<Q::ManakaiDOMCore:nodeMatch>}->($node)) {
1539     my $attr = $node->{<Q::infoset:attributes>}
1540     ->{<Q::null:>}->{name} ||
1541     $node->{<Q::infoset:attributes>}
1542     ->{<Q::ManakaiDOM:noNS>}->{name};
1543 wakaba 1.7 if ($attr) {
1544     my $attrn;
1545     __CODE{ManakaiNode:getWeakReference
1546     ||ManakaiDOM:Perl::
1547     $object => $attr, $ref => $attrn,
1548     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
1549     }__;
1550     __FOR{ManakaiDOM:DOM3::
1551     if ($attrn-><AG::DOMCore:Node.textContent>
1552     eq $name) {
1553     return true;
1554     }
1555     }__;
1556     __FOR{!ManakaiDOM:DOM3::
1557     if ($attrn-><AG::DOMCore:ManakaiDOMNode
1558     .textContent> eq $name) {
1559     return true;
1560     }
1561     }__;
1562 wakaba 1.4 }
1563     }
1564     return false;
1565 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#2"
1566 wakaba 1.4 }, \$index);
1567     }
1568     $index = 0;
1569     $r ||= $self->{<Q::TreeCore:node>}
1570     -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1571     .getElementBy>
1572     (sub ($) {
1573 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#3"
1574 wakaba 1.4 my $node = shift;
1575     if ($self->{<Q::ManakaiDOMCore:nodeMatch>}->($node)) {
1576     my $attr = $node->{<Q::infoset:attributes>}
1577     ->{<Q::null:>}->{id} ||
1578     $node->{<Q::infoset:attributes>}
1579     ->{<Q::ManakaiDOM:noNS>}->{id};
1580 wakaba 1.7 if ($attr) {
1581     my $attrn;
1582     __CODE{ManakaiNode:getWeakReference
1583     ||ManakaiDOM:Perl::
1584     $object => $attr, $ref => $attrn,
1585     $class => {<ClassName::DOMCore:ManakaiDOMAttr>},
1586     }__;
1587     __FOR{ManakaiDOM:DOM3::
1588     if ($attrn-><AG::DOMCore:Node.textContent>
1589     eq $name) {
1590     return true;
1591     }
1592     }__;
1593     __FOR{!ManakaiDOM:DOM3::
1594     if ($attrn-><AG::DOMCore:ManakaiDOMNode
1595     .textContent> eq $name) {
1596     return true;
1597     }
1598     }__;
1599 wakaba 1.4 }
1600     }
1601     return false;
1602 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#4"
1603 wakaba 1.4 }, \$index);
1604     if (defined $r) {
1605 wakaba 1.11 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($r);
1606 wakaba 1.4 }
1607 wakaba 1.1
1608 wakaba 1.2 ImplNote:
1609     @@lang:en
1610     @@@:
1611     <IF:HTMLOptionCollection>: See <Module:DOMWebForms>.
1612 wakaba 1.1
1613     IF:
1614 wakaba 1.4 @Name:
1615 wakaba 1.7 @@@: ManakaiDOMHTMLDOMImplementationIF
1616 wakaba 1.5 @@ForCheck:
1617     ManakaiDOM:ForIF
1618     @ISA:
1619     @@@:
1620     DOMCore:DOMImplementation
1621     @@ForCheck:
1622     ManakaiDOM:ForIF
1623    
1624     @Name:
1625     @@@: ManakaiDOMHTMLDOMImplementation
1626     @@ForCheck:
1627     ManakaiDOM:ForClass
1628     @ISA:
1629     @@@:
1630     DOMCore:ManakaiDOMImplementation
1631     @@ForCheck:
1632     ManakaiDOM:ForClass
1633    
1634     @For:
1635     ManakaiDOM:ManakaiDOMLatest
1636     @For:
1637     =ManakaiDOM:ManakaiDOM
1638     @DOMMain:implementFeature: HTMLFeature20
1639 wakaba 1.11 @DOMMain:implementFeature: HTMLExtendedFeature30
1640 wakaba 1.5
1641 wakaba 1.7 @DOMMetaImpl:provideFeature: HTMLFeature20
1642 wakaba 1.11 @DOMMetaImpl:provideFeature: HTMLExtendedFeature30
1643 wakaba 1.7
1644 wakaba 1.5 @Description:
1645     @@lang:en
1646     @@@:
1647     A DOM implementation with HTML-specific methods.
1648     \
1649     {NOTE:: The <IF::HTMLDOMImplementation> was part of
1650     the W3C's DOM Level 2 HTML Candicate Recommendation
1651     but later removed. The manakai DOM implementation
1652     has been decided to include this interface since
1653     there are a number of implementations supporting
1654     the <M::HTMLDOMImplementation.createHTMLDocument> method
1655     and the DOM Level 3 Core Specification belives:-) that
1656     there is a <M::createHTMLDocument> method.
1657     \
1658     }
1659    
1660     @Method:
1661     @@Name: createHTMLDocument
1662     @@Description:
1663     @@@lang:en
1664     @@@@:
1665     Creates an <IF::HTMLDocument> object with the minimal tree
1666     made of <HE::html>, <HE::head>, <HE::title> and <HE::body> elements.
1667     \
1668     {NOTE:: This method creates a (non-XML) HTML document. To create
1669     a XHTML document, use <M::DOMCore:DOMImplementation.
1670     createDocument> with a root element type
1671     <Q::xhtml1:html> or with an appropriate document type
1672     node.
1673     \
1674     }
1675    
1676     @@For:
1677     ManakaiDOM:ManakaiDOMLatest
1678    
1679     @@Param:
1680     @@@Name:title
1681     @@@Type:
1682     DOMMain:DOMString
1683     @@@actualType:
1684     DOMMain:ManakaiDOMString
1685     @@@Description:
1686     @@@@lang:en
1687     @@@@@:
1688     The title of the document to create. It is set as the content of
1689     the <HE::title> element, through a child <IF::DOMCore:Text> node.
1690     @@Return:
1691     @@@Type: HTMLDocument
1692     @@@actualType: ManakaiDOMHTMLDocument
1693     @@@Description:
1694     @@@@lang:en
1695     @@@@@:
1696     A newly created HTML document.
1697     @@@PerlDef:
1698 wakaba 1.8 my $node = <ClassM::DOMCore:ManakaiDOMDocument.newObject>;
1699 wakaba 1.5 $node->{<Q::DOMCore:implementation>} = $self;
1700     $node->{<Q::ManakaiDOM:implID>}
1701     = $self->{<Q::TreeCore:node>}->{<Q::ManakaiDOM:implID>};
1702     $node->{<Q::DOMCore:hasFeature>}->{HTML} = 1;
1703 wakaba 1.9 my $cls = <ClassName::DOMCore:ManakaiDOMDocument>;
1704     $r = <Code::getWeakRef:: $object = $node, $class = $cls>;
1705 wakaba 1.5 $r-><M::DOMCore:Node.appendChild>
1706     (my $html = $r-><M::DOMCore:Document.createElement>
1707     ('HTML'));
1708     $html-><M::DOMCore:Node.appendChild>
1709     (my $head = $r-><M::DOMCore:Document.createElement>
1710     ('HEAD'));
1711     $head-><M::DOMCore:Node.appendChild>
1712     (my $titleEl = $r-><M::DOMCore:Document.createElement>
1713     ('TITLE'));
1714     if (length $title) {
1715     $titleEl-><M::DOMCore:Node.appendChild>
1716     ($r-><M::DOMCore:Document.createTextNode> ($title));
1717     }
1718     $html-><M::DOMCore:Node.appendChild>
1719     ($r-><M::DOMCore:Document.createElement>
1720     ('BODY'));
1721 wakaba 1.9 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($node);
1722 wakaba 1.5
1723 wakaba 1.7
1724     @Method:
1725     @@Name: createXHTMLDocument
1726     @@Description:
1727     @@@lang:en
1728     @@@@:
1729     Creates an <IF::HTMLDocument> object with the minimal tree
1730     made of <HE::html>, <HE::head>, <HE::title> and <HE::body> elements
1731     and with the <Feature::XHTML> feature.
1732     \
1733     {NOTE:: This method is <EM::manakai extension>.
1734     \
1735     }
1736    
1737     @@For:
1738     ManakaiDOM:ManakaiDOMLatest
1739    
1740     @@Param:
1741     @@@Name:title
1742     @@@Type:
1743     DOMMain:DOMString
1744     @@@Description:
1745     @@@@lang:en
1746     @@@@@:
1747     The title of the document to create. It is set as the content of
1748     the <HE::title> element, through a child <IF::DOMCore:Text> node.
1749     @@Return:
1750     @@@Type: HTMLDocument
1751     @@@actualType: ManakaiDOMHTMLDocument
1752     @@@Description:
1753     @@@@lang:en
1754     @@@@@:
1755     A newly created HTML document.
1756     @@@PerlDef:
1757     __DEEP{
1758 wakaba 1.8 my $node = <ClassM::DOMCore:ManakaiDOMDocument.newObject>;
1759 wakaba 1.7 $node->{<Q::DOMCore:implementation>} = $self;
1760     $node->{<Q::ManakaiDOM:implID>}
1761     = $self->{<Q::TreeCore:node>}->{<Q::ManakaiDOM:implID>};
1762     $node->{<Q::DOMCore:hasFeature>}->{HTML} = 1;
1763     $node->{<Q::DOMCore:hasFeature>}->{XML} = 1;
1764 wakaba 1.9 my $cls = <ClassName::DOMCore:ManakaiDOMDocument>;
1765     $r = <Code::getWeakRef:: $object = $node, $class = $cls>;
1766 wakaba 1.7 $r-><M::DOMCore:Node.appendChild>
1767     (my $html = $r-><M::DOMCore:Document.createElementNS>
1768     (<Q::xhtml1:>, 'html'));
1769     $html-><M::DOMCore:Element.setAttributeNS>
1770     (<Q::xmlns:>, 'xmlns', <Q::xhtml1:>);
1771     $html-><M::DOMCore:Node.appendChild>
1772     (my $head = $r-><M::DOMCore:Document.createElementNS>
1773     (<Q::xhtml1:>, 'head'));
1774     $head-><M::DOMCore:Node.appendChild>
1775     (my $titleEl = $r-><M::DOMCore:Document.createElementNS>
1776     (<Q::xhtml1:>, 'title'));
1777     if (length $title) {
1778     $titleEl-><M::DOMCore:Node.appendChild>
1779     ($r-><M::DOMCore:Document.createTextNode> ($title));
1780     }
1781     $html-><M::DOMCore:Node.appendChild>
1782     ($r-><M::DOMCore:Document.createElementNS>
1783     (<Q::xhtml1:>, 'body'));
1784 wakaba 1.9 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($node);
1785 wakaba 1.7 }__;
1786    
1787 wakaba 1.9 ResourceDef:
1788     @QName: getWeakRef
1789     @AliasFor:
1790     ManakaiNode:getWeakRef::ManakaiDOM:Perl
1791    
1792 wakaba 1.5 IF:
1793     @Name:
1794 wakaba 1.4 @@@: HTMLDocument
1795     @@ForCheck:
1796     ManakaiDOM:ForIF
1797     @ISA:
1798     @@@:
1799     DOMCore:Document
1800     @@ForCheck:
1801     ManakaiDOM:ForIF
1802    
1803     @QName:
1804     @@@: ManakaiDOMHTMLDocument
1805     @@ForCheck:
1806     ManakaiDOM:ForClass
1807     @ISA:
1808     @@@:
1809     DOMCore:ManakaiDOMDocument
1810     @@ForCheck:
1811     ManakaiDOM:ForClass
1812    
1813     @L1IF:
1814    
1815 wakaba 1.1 @Description:
1816     @@lang:en
1817     @@@:
1818     The root of the HTML document and holds the entire content.
1819    
1820 wakaba 1.9 @s:rootElementType:
1821     @@@: html||ForHTML40SE
1822     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
1823     @s:rootElementType:
1824     @@@: html||ForHTML401
1825     @@ForCheck: ManakaiDOM|DOM2
1826     @s:rootElementType:
1827     @@@: html||ForXHTML10SE
1828     @@ForCheck: ManakaiDOM|DOM2
1829    
1830 wakaba 1.4 @ImplNote:
1831 wakaba 1.1 @@doctype-public:
1832     -//W3C//DTD HTML 4.0//EN
1833     @@doctype-public:
1834     -//W3C//DTD HTML 4.0 Transitional//EN
1835     @@doctype-public:
1836     -//W3C//DTD HTML 4.0 Frameset//EN
1837     @@doctype-public:
1838     -//W3C//DTD HTML 4.01//EN
1839     @@doctype-public:
1840     -//W3C//DTD HTML 4.01 Transitional//EN
1841     @@doctype-public:
1842     -//W3C//DTD HTML 4.01 Frameset//EN
1843     @@doctype-public:
1844     -//W3C//DTD XHTML 1.0 Strict//EN
1845     @@doctype-public:
1846     -//W3C//DTD XHTML 1.0 Transitional//EN
1847     @@doctype-public:
1848     -//W3C//DTD XHTML 1.0 Frameset//EN
1849     @@ImplNote:
1850     @@@lang:en
1851     @@@@:
1852     TODO: doctype-system required
1853    
1854 wakaba 1.4 mediatype : text/html, text/x-html
1855    
1856 wakaba 1.1 @Attr:
1857     @@Name: title
1858     @@Description:
1859     @@@lang:en
1860     @@@@:
1861 wakaba 1.7 The title of a document, as specified by the <HE::title> element.
1862 wakaba 1.1 @@Get:
1863     @@@Type: DOMString
1864 wakaba 1.7 @@@PerlDef:
1865     __DEEP{
1866     DOC: for my $child (@{$self-><AG::DOMCore:Node.childNodes>}) {
1867     if ($child-><AG::DOMCore:Node.nodeType> ==
1868     <C::DOMCore:Node.ELEMENT_NODE> and
1869     <Code::isHTMLElement:: $elementNode = $child,
1870     $elementType = 'html'>) {
1871     for my $child (@{$child-><AG::DOMCore:Node.childNodes>}) {
1872     if ($child-><AG::DOMCore:Node.nodeType> ==
1873     <C::DOMCore:Node.ELEMENT_NODE> and
1874     <Code::isHTMLElement:: $elementNode = $child,
1875     $elementType = 'head'>) {
1876     for my $child (@{$child-><AG::DOMCore:Node.childNodes>}) {
1877     if ($child-><AG::DOMCore:Node.nodeType> ==
1878     <C::DOMCore:Node.ELEMENT_NODE> and
1879     <Code::isHTMLElement:: $elementNode = $child,
1880     $elementType = 'title'>) {
1881     __CODE{DOMCore:getNodeTextContent::
1882     $node => $child,
1883     $result => $r}__;
1884     last DOC;
1885     }
1886     }
1887     last DOC; # xhtml1:title not found
1888     }
1889     }
1890     last DOC; # xhtml1:head not found
1891     }
1892     }
1893     }__;
1894 wakaba 1.1 @@Set:
1895 wakaba 1.7 @@@Exception:
1896     @@@@@:
1897     DOMCore:DOMException.NO_MODIFICATION_ALLOWED_ERR
1898     @@@@enDesc:
1899     Either the <HE::title> element is read-only,
1900     there is no <HE::title> element and the <HE::head>
1901     element is read-only, there is no <HE::head>
1902     element and the <HE::html> element is read-only,
1903     or there is no <HE::html> element and the document
1904     node is read-only.
1905     @@@@ForCheck:
1906     ManakaiDOM:ManakaiDOM
1907     @@@Exception:
1908     @@@@@:
1909     MDOMX:MDOM_SECOND_DOC_ELEMENT
1910     @@@@enDesc:
1911     The document element (root element) of the document
1912     is not an <HE::html> element.
1913     @@@@ForCheck:
1914     ManakaiDOM:ManakaiDOM
1915     @@@ImplNote:
1916     @@@@lang:en
1917     @@@@@:
1918     The Spec. does not specify what has occured if
1919     there is no <HE::title> element.
1920 wakaba 1.1 @@@Type: DOMString
1921 wakaba 1.7 @@@PerlDef:
1922     __DEEP{
1923     my $html;
1924     for my $child (@{$self-><AG::DOMCore:Node.childNodes>}) {
1925     if ($child-><AG::DOMCore:Node.nodeType> ==
1926     <C::DOMCore:Node.ELEMENT_NODE> and
1927     <Code::isHTMLElement:: $elementNode = $child,
1928     $elementType = 'html'>) {
1929     $html = $child;
1930     last;
1931     }
1932     }
1933     unless ($html) {
1934     $html = $self-><M::DOMCore:Node.appendChild>
1935     ($self-><M::DOMCore:Document.createElementNS>
1936     (<Q::xhtml1:>, 'html'));
1937     }
1938    
1939     my $head;
1940     for my $child (@{$html-><AG::DOMCore:Node.childNodes>}) {
1941     if ($child-><AG::DOMCore:Node.nodeType> ==
1942     <C::DOMCore:Node.ELEMENT_NODE> and
1943     <Code::isHTMLElement:: $elementNode = $child,
1944     $elementType = 'head'>) {
1945     $head = $child;
1946     last;
1947     }
1948     }
1949     unless ($head) {
1950     $head = $html-><M::DOMCore:Node.appendChild>
1951     ($self-><M::DOMCore:Document.createElementNS>
1952     (<Q::xhtml1:>, 'head'));
1953     }
1954    
1955     my $title;
1956     for my $child (@{$head-><AG::DOMCore:Node.childNodes>}) {
1957     if ($child-><AG::DOMCore:Node.nodeType> ==
1958     <C::DOMCore:Node.ELEMENT_NODE> and
1959     <Code::isHTMLElement:: $elementNode = $child,
1960     $elementType = 'title'>) {
1961     $title = $child;
1962     last;
1963     }
1964     }
1965     unless ($title) {
1966     $title = $head-><M::DOMCore:Node.appendChild>
1967     ($self-><M::DOMCore:Document.createElementNS>
1968     (<Q::xhtml1:>, 'title'));
1969     }
1970    
1971     __CODE{DOMCore:setNodeTextContent::
1972     $node => $title, $given => $given}__;
1973     }__;
1974 wakaba 1.1 @Attr:
1975     @@Name: referrer
1976     @@Description:
1977     @@@lang:en
1978     @@@@:
1979     The page that linked to this page.
1980 wakaba 1.4 @@Type:
1981     DOMMain:DOMString
1982     @@actualType:
1983     DOMMain:RFC2396URI
1984 wakaba 1.1 @@Get:
1985     @@@Description:
1986     @@@@lang:en
1987     @@@@@:
1988     The RFC 2396 URI of the page.
1989     @@@InCase:
1990     @@@@Value:\
1991     @@@@Description:
1992     @@@@@lang:en
1993     @@@@@@:
1994     The user navigated to the page directly (not through a
1995     link, but for example via bookmark).
1996     @@@Def:
1997 wakaba 1.4 @@@@ContentType:
1998 wakaba 1.1 lang:dis
1999     @@@@GetProp:
2000 wakaba 1.4 DOMHTML:referrer
2001 wakaba 1.1 @Attr:
2002     @@Name: domain
2003     @@Description:
2004     @@@lang:en
2005     @@@@:
2006     The domain name of the server that served the document.
2007     @@Get:
2008     @@@Type: DOMString
2009     @@@InCase:
2010     @@@@Value:
2011     @@@@@is-null:1
2012     @@@@Description:
2013     @@@@@lang:en
2014     @@@@@@:
2015     The server cannot be identified by a domain name.
2016     @@@ImplNote:
2017     @@@@lang:en
2018     @@@@@:
2019     ISSUE: What is allowed? FQDNs? Non-FQ domain names?
2020     IPv4 addresses? IPv6 addresses with or without
2021     brackets?
2022 wakaba 1.4 @@@PerlDef:
2023 wakaba 1.1 $r = null;
2024 wakaba 1.4 if (defined $self->{<Q::TreeCore:node>}
2025     ->{<Q::DOMCore:documentURI>}) {
2026 wakaba 1.1 require URI;
2027 wakaba 1.4 my $uri = URI->new ($self->{<Q::TreeCore:node>}
2028     ->{<Q::DOMCore:documentURI>});
2029 wakaba 1.1 if ($uri->can ('host')) {
2030     $r = $uri->host;
2031     undef $r if defined $r and
2032     (length $r == 0 or
2033     substr ($r, 0, 1) eq '[');
2034     }
2035     }
2036     @Attr:
2037     @@Name: URL
2038     @@Description:
2039     @@@lang:en
2040     @@@@:
2041     The absolute URI <SRC:RFC 2396> of the document.
2042     @@Get:
2043     @@@Type: DOMString
2044 wakaba 1.4 @@@actualType:
2045     DOMMain:RFC2396AbsoluteURI
2046 wakaba 1.1 @@@Def:
2047 wakaba 1.4 @@@@ContentType:
2048 wakaba 1.1 lang:dis
2049     @@@@GetProp:
2050 wakaba 1.4 DOMCore:documentURI
2051 wakaba 1.1 @Attr:
2052     @@Name: body
2053     @@Description:
2054     @@@lang:en
2055     @@@@:
2056     The element that contains the content for the document.
2057     @@ImplNote:
2058     @@@lang:en
2059     @@@@:
2060     ISSUE: Is returning <HA:frameset> is DOM Level 0 compatible?
2061     @@Get:
2062     @@@Type: HTMLElement
2063     @@@Description:
2064     @@@@lang:en
2065     @@@@@:
2066     The <HA:body> element or the outermost <HA:frameset> element.
2067 wakaba 1.7 @@@nullCase:
2068     @@@@enDesc:
2069     The document does not have the <HA::body> element
2070     nor a <HA::frameset> element.
2071     @@@PerlDef:
2072     __DEEP{
2073     DOC: for my $child (@{$self-><AG::DOMCore:Node.childNodes>}) {
2074     if ($child-><AG::DOMCore:Node.nodeType> ==
2075     <C::DOMCore:Node.ELEMENT_NODE> and
2076     <Code::isHTMLElement:: $elementNode = $child,
2077     $elementType = 'html'>) {
2078     for my $child (@{$child-><AG::DOMCore:Node.childNodes>}) {
2079     if ($child-><AG::DOMCore:Node.nodeType> ==
2080     <C::DOMCore:Node.ELEMENT_NODE>) {
2081     if (<Code::isHTMLElement:: $elementNode = $child,
2082     $elementType = 'body'> or
2083     <Code::isHTMLElement:: $elementNode = $child,
2084     $elementType = 'frameset'>) {
2085     $r = $child;
2086     last DOC;
2087     }
2088     }
2089     }
2090     last DOC; # xhtml1:html not found
2091     }
2092     }
2093     }__;
2094 wakaba 1.1 @@Set:
2095     @@@Type: HTMLElement
2096     @@@ImplNote:
2097     @@@@lang:en
2098     @@@@@:
2099     ISSUE: Why this attribute is writable? No exception?
2100 wakaba 1.7 @@@ImplNote:
2101     @@@@lang:en
2102     @@@@@:
2103     What should be happen if non-<HE::body> and non-<HE::frameset>
2104     element is attempted to set? A <C::DOMCore:DOMException
2105     .HIERARCHY_ERR>? The current implementation
2106     does no check.
2107     @@@Exception:
2108     @@@@@:
2109     DOMCore:DOMException.NO_MODIFICATION_ALLOWED_ERR
2110     @@@@enDesc:
2111     Either the <HE::html> element is read-only,
2112     or there is no <HE::html> element and the document
2113     node is read-only.
2114     @@@@ForCheck:
2115     ManakaiDOM:ManakaiDOM
2116     @@@Exception:
2117     @@@@@:
2118     MDOMX:MDOM_SECOND_DOC_ELEMENT
2119     @@@@enDesc:
2120     The document element (root element) of the document
2121     is not an <HE::html> element.
2122     @@@@ForCheck:
2123     ManakaiDOM:ManakaiDOM
2124     @@@ImplNote:
2125     @@@@lang:en
2126     @@@@@:
2127     The Spec. does not specify what has occured if
2128     there is no <HE::html> element.
2129     @@@PerlDef:
2130     __DEEP{
2131     my $html;
2132     for my $child (@{$self-><AG::DOMCore:Node.childNodes>}) {
2133     if ($child-><AG::DOMCore:Node.nodeType> ==
2134     <C::DOMCore:Node.ELEMENT_NODE> and
2135     <Code::isHTMLElement:: $elementNode = $child,
2136     $elementType = 'html'>) {
2137     $html = $child;
2138     last;
2139     }
2140     }
2141     unless ($html) {
2142     $html = $self-><M::DOMCore:Node.appendChild>
2143     ($self-><M::DOMCore:Document.createElementNS>
2144     (<Q::xhtml1:>, 'html'));
2145     }
2146    
2147     my $body;
2148     for my $child (@{$html-><AG::DOMCore:Node.childNodes>}) {
2149     if ($child-><AG::DOMCore:Node.nodeType> ==
2150     <C::DOMCore:Node.ELEMENT_NODE>) {
2151     if (<Code::isHTMLElement:: $elementNode = $child,
2152     $elementType = 'body'> or
2153     <Code::isHTMLElement:: $elementNode = $child,
2154     $elementType = 'frameset'>) {
2155 wakaba 1.8 $body = $child;
2156     last;
2157     }
2158 wakaba 1.7 }
2159     }
2160     if ($body) {
2161     $html-><M::DOMCore:Node.replaceChild> ($body => $given);
2162     } else {
2163     $html-><M::DOMCore:Node.appendChild> ($given);
2164     }
2165     }__;
2166 wakaba 1.1 @Attr:
2167     @@Name: images
2168     @@Description:
2169     @@@lang:en
2170     @@@@:
2171     A collection of all the <HA:img> elements in a document.
2172     \
2173     {NOTE:: Only <HA:img> elements are contained for
2174     backward compatibility.
2175     \
2176     }
2177     @@Get:
2178     @@@Type: HTMLCollection
2179 wakaba 1.4 @@@actualType:
2180     ManakaiDOMHTMLCollection
2181     @@@PerlDef:
2182     my $chk;
2183     $chk = sub {
2184 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getImages.#1"
2185 wakaba 1.4 my ($self) = @_;
2186 wakaba 1.7 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2187     $elementType = 'img'>) {
2188     return true;
2189 wakaba 1.4 } else {
2190 wakaba 1.7 return false;
2191 wakaba 1.4 }
2192 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getImages.#2"
2193 wakaba 1.4 };
2194 wakaba 1.14 __CODE{getNodeRef::
2195     $object => {$self->{<Q::TreeCore:node>}},
2196     $ref => $r,
2197     $class => {<ClassName::ManakaiDOMHTMLCollection>},
2198 wakaba 1.4 }__;
2199     $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2200    
2201 wakaba 1.1 @Attr:
2202     @@Name: applets
2203     @@Description:
2204     @@@lang:en
2205     @@@@:
2206     A collection of all <HA:object> elements that include
2207     applets and <HA:applet> elements in the document.
2208     @@ImplNote:
2209     @@@lang:en
2210     @@@@:
2211     There might be compatibility problems, since
2212     the two element types has different attribute sets.
2213     Old (DOM Level 0) applications might not take
2214     <HA:object> elements into consideration.
2215     @@Get:
2216     @@@Type: HTMLCollection
2217 wakaba 1.4 @@@actualType:
2218     ManakaiDOMHTMLCollection
2219     @@@PerlDef:
2220     my $chk;
2221 wakaba 1.7 $chk = sub {
2222     \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getApplets.#1"
2223 wakaba 1.4 my ($self) = @_;
2224 wakaba 1.7 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2225     $elementType = 'applet'>) {
2226     return true;
2227     } elsif (<Code::isHTMLElemento:: $elementNodeo = $self,
2228     $elementType = 'object'> and
2229     $self->{<Q::DOMHTML:isApplet>}) {
2230     return true;
2231 wakaba 1.4 } else {
2232 wakaba 1.7 return false;
2233 wakaba 1.4 }
2234 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getApplets.#2"
2235     };
2236 wakaba 1.14 __CODE{getNodeRef::
2237     $object => {$self->{<Q::TreeCore:node>}},
2238     $ref => $r,
2239     $class => {<ClassName::ManakaiDOMHTMLCollection>},
2240 wakaba 1.4 }__;
2241     $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2242 wakaba 1.7
2243 wakaba 1.1 @Attr:
2244     @@Name: links
2245     @@Description:
2246     @@@lang:en
2247     @@@@:
2248     A collection of all <HA:a> and <HA:area> elements
2249     in a document with a value for the <HA:href> attribute.
2250     @@Get:
2251     @@@Type: HTMLCollection
2252 wakaba 1.4 @@@actualType:
2253     ManakaiDOMHTMLCollection
2254     @@@PerlDef:
2255     my $chk;
2256 wakaba 1.7 $chk = sub {
2257     \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getLinks.#1"
2258 wakaba 1.4 my ($self) = @_;
2259 wakaba 1.7 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2260     $elementType = 'a'>) {
2261     return true
2262 wakaba 1.4 if $self->{<Q::infoset:attributes>}
2263     ->{<Q::null:>}->{href} or
2264     $self->{<Q::infoset:attributes>}
2265     ->{<Q::ManakaiDOM:noNS>}->{href};
2266 wakaba 1.7 } elsif (<Code::isHTMLElemento:: $elementNodeo = $self,
2267     $elementType = 'area'>) {
2268     return true
2269 wakaba 1.4 if $self->{<Q::infoset:attributes>}
2270     ->{<Q::null:>}->{href} or
2271     $self->{<Q::infoset:attributes>}
2272     ->{<Q::ManakaiDOM:noNS>}->{href};
2273     }
2274     return false;
2275 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getLinks.#2"
2276     };
2277 wakaba 1.14 __CODE{getNodeRef::
2278     $object => {$self->{<Q::TreeCore:node>}},
2279     $ref => $r,
2280     $class => {<ClassName::ManakaiDOMHTMLCollection>},
2281 wakaba 1.4 }__;
2282     $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2283 wakaba 1.7
2284 wakaba 1.1 @Attr:
2285     @@Name: forms
2286     @@Description:
2287     @@@lang:en
2288     @@@@:
2289     A collection of all the forms of a document.
2290     @@ImplNote:
2291     @@@lang:en
2292     @@@@:
2293     It should be restricted for HTML <HA:form> elements.
2294     Neither <HA:isindex> elements nor non-HTML form elements
2295     should be contained.
2296     @@Get:
2297     @@@Type: HTMLCollection
2298 wakaba 1.4 @@@actualType:
2299     ManakaiDOMHTMLCollection
2300     @@@PerlDef:
2301     my $chk;
2302 wakaba 1.7 $chk = sub {
2303     \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getForms.#1"
2304 wakaba 1.4 my ($self) = @_;
2305 wakaba 1.7 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2306     $elementType = 'form'>) {
2307     return true;
2308 wakaba 1.4 } else {
2309 wakaba 1.7 return false;
2310 wakaba 1.4 }
2311 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getForms.#2"
2312     };
2313 wakaba 1.14 __CODE{getNodeRef::
2314     $object => {$self->{<Q::TreeCore:node>}},
2315     $ref => $r,
2316     $class => {<ClassName::ManakaiDOMHTMLCollection>},
2317 wakaba 1.4 }__;
2318     $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2319 wakaba 1.1 @Attr:
2320     @@Name: anchors
2321     @@Description:
2322     @@@lang:en
2323     @@@@:
2324     A collection of all the <HA:a> elements with a value
2325     for the <HA:name> attribute in the document.
2326     \
2327     {NOTE:: The collection of this attribute only contains
2328     those anchors with <HA:name> attributes,
2329     not with the <HA:id> attributes, for backward
2330     compatibility. XHTML 1.0 deprecates the use
2331     of the <HA:name> attribute.
2332     \
2333     }
2334     @@Get:
2335     @@@Type: HTMLCollection
2336 wakaba 1.4 @@@actualType:
2337     ManakaiDOMHTMLCollection
2338     @@@PerlDef:
2339     my $chk;
2340 wakaba 1.7 $chk = sub {
2341     \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getAnchors.#1"
2342 wakaba 1.4 my ($self) = @_;
2343 wakaba 1.7 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2344     $elementType = 'a'>) {
2345     return true
2346 wakaba 1.4 if $self->{<Q::infoset:attributes>}
2347     ->{<Q::null:>}->{name} or
2348     $self->{<Q::infoset:attributes>}
2349     ->{<Q::ManakaiDOM:noNS>}->{name};
2350     }
2351     return false;
2352 wakaba 1.7 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getAnchors.#2"
2353     };
2354 wakaba 1.14 __CODE{getNodeRef::
2355     $object => {$self->{<Q::TreeCore:node>}},
2356     $ref => $r,
2357     $class => {<ClassName::ManakaiDOMHTMLCollection>},
2358 wakaba 1.4 }__;
2359     $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2360 wakaba 1.7
2361 wakaba 1.1 @Attr:
2362     @@Name: cookie
2363     @@Description:
2364     @@@lang:en
2365     @@@@:
2366     The cookie, persistent state information associated
2367     with the current frame or document <SRC:RFC 2965>.
2368     \
2369     {NOTE:: The precise nature of a UA session is not
2370     defined.
2371     \
2372     }
2373     @@Get:
2374     @@@Type: DOMString
2375 wakaba 1.4 @@@actualType: RFC2965Cookies
2376 wakaba 1.1 @@@Description:
2377     @@@@lang:en
2378     @@@@@:
2379     A single string with each cookie's name-value pair
2380     separated by a <CHAR:SEMICOLON>.
2381     @@@ImplNote:
2382     @@@@lang:en
2383     @@@@@:
2384     It is maybe RFC 2965 <CODE:cookies>.
2385     @@@InCase:
2386     @@@@Value:\
2387     @@@@Description:
2388     @@@@@lang:en
2389     @@@@@@:
2390     No cookie is available for the current frame or document.
2391     @@Set:
2392     @@@Type: DOMString
2393 wakaba 1.4 @@@actualType: RFC2965Cookie
2394 wakaba 1.1 @@@Description:
2395     @@@@lang:en
2396     @@@@@:
2397     A single name-value pair followed by zero or more
2398     cookie attribute values (RFC 2965 <CODE:cookie>).
2399     \
2400     If no <CODE:domain> attribute is specified,
2401     it defaults to the <CODE:host> portion of an
2402     RFC 2396 absolute URI of the current frame or document.
2403     \
2404     If no <CODE:path> attribute is specified, it defaults
2405     to the absolute <CODE:path> portion of an
2406     RFC 2396 absolute URI of the current frame or document.
2407     \
2408     If no <CODE:max-age> attribute is specified, it
2409     defaults to a UA defined value.
2410     \
2411     If a <CODE:cookie> with the specified name is already
2412     associated, the new value as well as the new attributes
2413     replace the old ones. If the <CODE:max-age> attribute
2414     value is <CODE:0>, any existing cookies of the specified
2415     name are removed.
2416     @@@Exception:
2417 wakaba 1.4 @@@@@:
2418     ManakaiDOMHTML:MDOMHTML_BAD_COOKIE
2419     @@@@Description:
2420     @@@@@lang:en
2421     @@@@@@:
2422     The new value does not adhere to the
2423     RFC 2965 <CODE:cookie>.
2424 wakaba 1.1 @Method:
2425     @@Name: open
2426     @@Description:
2427     @@@lang:en
2428     @@@@:
2429     Open a document stream for writing. If a document
2430     exists in the target, this method clears it.
2431     @@Return:
2432     @Method:
2433     @@Name: close
2434     @@Description:
2435     @@@lang:en
2436     @@@@:
2437     Close a document stream opened by the <M:open> method
2438     and force rendering.
2439     @@Return:
2440     @Method:
2441     @@Name: write
2442     @@Description:
2443     @@@lang:en
2444     @@@@:
2445     Write a string to a document stream opened by <M:open>.
2446     @@ImplNote:
2447     @@@lang:en
2448     @@@@:
2449     This method might produce a document that is invalid.
2450     @@Param:
2451     @@@Name: text
2452     @@@Type: DOMString
2453     @@@Description:
2454     @@@@lang:en
2455     @@@@@:
2456     The string to be parsed into some structure in
2457     the document structure model.
2458     @@Return:
2459     @Method:
2460     @@Name: writeln
2461 wakaba 1.4 @@Description:
2462 wakaba 1.1 @@@lang:en
2463     @@@@:
2464     Write a string followed by a newline character
2465     to a document stream opened by the <M:open> method.
2466     @@Param:
2467     @@@Name: text
2468     @@@Type: DOMString
2469     @@@Description:
2470     @@@@lang:en
2471     @@@@@:
2472     The string to be parsed into some structure in
2473     the document structure model.
2474     @@Return:
2475     @Method:
2476     @@Name: getElementsByName
2477     @@Description:
2478     @@@lang:en
2479     @@@@:
2480     With HTML 4 documents: return a collection of elements
2481     with matching name.
2482     \
2483     With XHTML 1 documents: return a collection of form controls
2484     with matching name.
2485     @@Param:
2486     @@@Name: elementName
2487     @@@Type: DOMString
2488     @@@Description:
2489     @@@@lang:en
2490     @@@@@:
2491     The <HA:name> of the element. The matching is
2492     case-sensitive.
2493     @@Return:
2494     @@@Type: NodeList
2495     @@@Description:
2496     @@@@lang:en
2497     @@@@@:
2498     A collection of the element whose <HA:name> matches
2499     with <P:elementName>.
2500 wakaba 1.3 @Method:
2501     @@Name:getElementById
2502     @@Description:
2503     @@@lang:en
2504     @@@@:
2505     Return the <IF:Element> whose <A:id> is given by
2506     <P:elementId>. Behavior is not defined if more than
2507     one elements has this <P:elementId>.
2508     \
2509     {NOTE:: This method was first defined in the <IF:HTMLDocument>
2510     interface of DOM Level 1 but it has moved to
2511     the <Module:DOMCore> module in DOM Level 2.
2512     \
2513     }
2514     @@Param:
2515     @@@Name:elementId
2516     @@@Type:
2517     DOMMain:DOMString
2518     @@@Description:
2519     @@@@lang:en
2520     @@@@@:
2521     The unique identifier of the element to retrieve.
2522     @@Return:
2523     @@@Type:
2524     DOMCore:Element
2525     @@@Description:
2526     @@@@lang:en
2527     @@@@@:The matching element.
2528 wakaba 1.7 @@@disDef:
2529     @@@@DISPerl:cloneCode:
2530     DOMCore:ManakaiDOMElement::ManakaiDOM:ManakaiDOMLatest.getElementById
2531 wakaba 1.4 @@DOMMain:implementFeature:
2532     HTMLFeature10
2533     @@For:
2534     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
2535 wakaba 1.1 @ImplNote:
2536     @@lang:en
2537     @@@:
2538 wakaba 1.3 {P:: The following properties in DOM Level 0 have been deprecated
2539     by DOM HTML Specifications in favor of the corresponding
2540     attributes in <IF:HTMLBodyElement> interface:
2541     \
2542     - <A:alinkColor>
2543     \
2544     - <A:background>
2545     \
2546     - <A:bgColor>
2547     \
2548     - <A:fgColor>
2549     \
2550     - <A:linkColor>
2551     \
2552     - <A:vlinkColor>
2553     \
2554     }
2555 wakaba 1.9 ##HTMLDocument
2556 wakaba 1.1
2557 wakaba 1.4 ElementTypeBinding:
2558     @Name: PropDef
2559     @ElementType:
2560     dis:ResourceDef
2561     @ShadowContent:
2562     @@rdf:type:
2563 wakaba 1.5 rdf:Property
2564 wakaba 1.4 @@AliasFor:
2565     @@@@:
2566     ::ManakaiDOM:all
2567     @@@For:
2568     !=ManakaiDOM:all
2569    
2570     PropDef:
2571     @QName: isApplet
2572     @FullName:
2573     @@lang:en
2574     @@@: Is a Java applet
2575     @rdfs:domain:
2576     xhtml:object
2577     @Description:
2578     @@lang:en
2579     @@@:
2580     Whether an <HA::object> element is a Java applet or not.
2581    
2582     ElementTypeBinding:
2583     @Name: StringDataTypeDef
2584     @ElementType:
2585     dis:ResourceDef
2586     @ShadowContent:
2587     @@rdf:type:
2588     ManakaiDOM:DataType
2589     @@AliasFor:
2590     @@@@:
2591     ::ManakaiDOM:all
2592     @@@For:
2593     !=ManakaiDOM:all
2594    
2595     StringDataTypeDef:
2596     @QName: RFC2965Cookies
2597     @FullName:
2598     @@lang:en
2599     @@@:
2600     RFC 2965 <CODE::cookies>
2601    
2602     StringDataTypeDef:
2603     @QName: RFC2965Cookie
2604     @FullName:
2605     @@lang:en
2606     @@@:
2607     RFC 2965 <CODE::cookie>
2608    
2609 wakaba 1.1 ImplNote:
2610     @lang:en
2611     @@:
2612     DOM attributes corresponding to HTML attributes have
2613     the semantic (including case-sensitivity) given in
2614     the HTML 4 and XHTML 1.0 specifications.
2615     \
2616     Exposing HTML attributes is for compatibility with DOM Level 0;
2617     this usage is deprecated by DOM Level 1 and 2 HTML specitications.
2618     \
2619     {FIG: HTML Data Types and DOM Data Types
2620     \
2621     - <SGML:CDATA>:: <TYPE:DOMString>.
2622     (Default of default: an empty string)
2623     \
2624     - Enumerated values:: <TYPE:DOMString>.
2625     (Normalized to lowercase in HTML.
2626     Default of default: an empty string)
2627     \
2628     - Boolean:: <TYPE:boolean>. (Default of default: <DOM:false>.
2629     \
2630     - <SGML:NUMBER>:: <TYPE:long>. (Default of default: <DOM:0>.)
2631     \
2632     }
2633     \
2634     Element type names in HTML 4 documents (exposed through
2635     such as <A:Element.tagName>) are normalized in
2636     uppercase. No specification for attribute names - it maybe
2637     should be in lowercase for compatibility.
2638    
2639     IF:
2640 wakaba 1.4 @Name:
2641     @@@: HTMLElement
2642     @@ForCheck:
2643     ManakaiDOM:ForIF
2644     @ISA:
2645     @@@:
2646     DOMCore:Element
2647     @@ForCheck:
2648     ManakaiDOM:ForIF
2649    
2650     @L1IF:
2651    
2652     @QName:
2653     @@@: ManakaiDOMHTMLElement
2654     @@ForCheck:
2655     ManakaiDOM:ForClass
2656     @ISA:
2657     @@@:
2658     DOMCore:ManakaiDOMElement
2659     @@ForCheck:
2660     ManakaiDOM:ForClass
2661    
2662 wakaba 1.1 @Description:
2663     @@lang:en
2664     @@@:
2665     An HTML element. All specific HTML element interfaces
2666     are derived from this interface.
2667    
2668 wakaba 1.7 @s:elementType:
2669     @@@:
2670     AnyHTMLElement::ForHTML40SE
2671     @@ForCheck:
2672     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
2673     @s:elementType:
2674     @@@:
2675     AnyHTMLElement::ForHTML401
2676     @@ForCheck:
2677     ManakaiDOM:DOM2
2678     @s:elementType:
2679     @@@:
2680     AnyHTMLElement::ForXHTML10SE
2681     @@ForCheck:
2682     ManakaiDOM:DOM2
2683    
2684     @ImplNote:
2685 wakaba 1.3 @@QName:
2686     xhtml1:sub
2687     \##TODO: rewrite this
2688 wakaba 1.1 @@html-element-type:sup
2689     @@html-element-type:span
2690     @@html-element-type:bdo
2691     @@html-element-type:tt
2692     @@html-element-type:i
2693     @@html-element-type:b
2694     @@html-element-type:u
2695     @@html-element-type:s
2696     @@html-element-type:strike
2697     @@html-element-type:big
2698     @@html-element-type:small
2699     @@html-element-type:em
2700     @@html-element-type:strong
2701     @@html-element-type:dfn
2702     @@html-element-type:code
2703     @@html-element-type:samp
2704     @@html-element-type:kbd
2705     @@html-element-type:var
2706     @@html-element-type:cite
2707     @@html-element-type:acronym
2708     @@html-element-type:abbr
2709     @@html-element-type:dd
2710     @@html-element-type:dt
2711     @@html-element-type:noframes
2712     @@html-element-type:noscript
2713     @@html-element-type:address
2714     @@html-element-type:center
2715 wakaba 1.7
2716 wakaba 1.3 @ImplNote:
2717     @@lang:en
2718     @@@:
2719     The DOM Level 1 First and Second Editions said that the <HE:head>
2720     element belongs to this category - it is considered as
2721     an error, since there is the <IF:HTMLHeadElement>.
2722 wakaba 1.1
2723     @Attr:
2724     @@Name: id
2725 wakaba 1.7 @@DocAttr1:
2726 wakaba 1.11 id::ForHTML40SE
2727 wakaba 1.7 @@DocAttr2S:
2728 wakaba 1.11 id::ForHTML401
2729 wakaba 1.7 @@DocAttr2X:
2730 wakaba 1.11 id::ForXHTML10SE
2731     @@ReflectCDATA:
2732 wakaba 1.1 @@Get:
2733     @@Set:
2734     @@ImplNote:
2735     @@@lang:en
2736     @@@@:
2737     Some element in HTML 4/XHTML 1.0 does not have <HA:class> attribute.
2738     @Attr:
2739     @@Name: title
2740 wakaba 1.7 @@DocAttr1:
2741 wakaba 1.11 title::ForHTML40SE
2742 wakaba 1.7 @@DocAttr2S:
2743 wakaba 1.11 title::ForHTML401
2744 wakaba 1.7 @@DocAttr2X:
2745 wakaba 1.11 title::ForXHTML10SE
2746     @@ReflectCDATA:
2747 wakaba 1.1 @@Get:
2748     @@Set:
2749     @@ImplNote:
2750     @@@lang:en
2751     @@@@:
2752     Some element in HTML 4/XHTML 1.0 does not have <HA:class> attribute.
2753     @Attr:
2754     @@Name: lang
2755 wakaba 1.7 @@DocAttr1:
2756 wakaba 1.11 lang::ForHTML40SE
2757 wakaba 1.7 @@DocAttr2S:
2758 wakaba 1.11 lang::ForHTML401
2759 wakaba 1.7 @@DocAttr2X:
2760 wakaba 1.11 lang::ForXHTML10SE
2761     @@ReflectCDATA:
2762 wakaba 1.1 @@Get:
2763     @@Set:
2764     @@ImplNote:
2765     @@@lang:en
2766     @@@@:
2767     Some element in HTML 4/XHTML 1.0 does not have <HA:class> attribute.
2768     @Attr:
2769     @@Name: dir
2770 wakaba 1.7 @@DocAttr1:
2771 wakaba 1.11 dir::ForHTML40SE
2772 wakaba 1.7 @@DocAttr2S:
2773 wakaba 1.11 dir::ForHTML401
2774 wakaba 1.7 @@DocAttr2X:
2775 wakaba 1.11 dir::ForXHTML10SE
2776     @@ReflectCDATA:
2777 wakaba 1.1 @@Get:
2778     @@Set:
2779     @@ImplNote:
2780     @@@lang:en
2781     @@@@:
2782     Some element in HTML 4/XHTML 1.0 does not have <HA:class> attribute.
2783     @Attr:
2784     @@Name: className
2785 wakaba 1.7 @@DocAttr1:
2786 wakaba 1.11 class::ForHTML40SE
2787 wakaba 1.7 @@DocAttr2S:
2788 wakaba 1.11 class::ForHTML401
2789 wakaba 1.7 @@DocAttr2X:
2790 wakaba 1.11 class::ForXHTML10SE
2791     @@ReflectCDATA:
2792 wakaba 1.1 @@Get:
2793     @@Set:
2794     @@ImplNote:
2795     @@@lang:en
2796     @@@@:
2797     Some element in HTML 4/XHTML 1.0 does not have <HA:class> attribute.
2798 wakaba 1.3
2799     @ImplNote:
2800     @@lang:en
2801     @@@:
2802     The <A:HTMLElement.style> is reserved by DOM Level 1 First Edition
2803     for future use. It is used later in DOM Level 2 CSS Module.
2804 wakaba 1.11 ##HTMLElement
2805 wakaba 1.1
2806 wakaba 1.7 ElementTypeBinding:
2807 wakaba 1.11 @Name: ReflectCDATA
2808 wakaba 1.7 @ElementType:
2809 wakaba 1.11 dis:Type
2810 wakaba 1.7 @ShadowContent:
2811 wakaba 1.11 @@@: DOMString
2812     @ShadowSibling:
2813     @@actualType: CDATADOMString
2814    
2815 wakaba 1.7 ElementTypeBinding:
2816 wakaba 1.11 @Name: ReflectURI
2817 wakaba 1.7 @ElementType:
2818 wakaba 1.11 dis:Type
2819 wakaba 1.7 @ShadowContent:
2820 wakaba 1.11 @@@: DOMString
2821     @ShadowSibling:
2822     @@actualType: URIDOMString
2823    
2824 wakaba 1.7 ElementTypeBinding:
2825 wakaba 1.11 @Name: ReflectEnum
2826 wakaba 1.7 @ElementType:
2827 wakaba 1.11 dis:Type
2828 wakaba 1.7 @ShadowContent:
2829 wakaba 1.11 @@@: DOMString
2830     @ShadowSibling:
2831     @@actualType: EnumDOMString
2832    
2833     ElementTypeBinding:
2834     @Name: ReflectBoolean
2835     @ElementType:
2836     dis:Type
2837     @ShadowContent:
2838     @@@: DOMMain|boolean||ManakaiDOM|all
2839     @ShadowSibling:
2840     @@actualType: Boolean
2841    
2842     ElementTypeBinding:
2843     @Name: ReflectNumeric
2844     @ElementType:
2845     dis:Type
2846     @ShadowContent:
2847     @@@: DOMMain|long||ManakaiDOM|all
2848     @ShadowSibling:
2849     @@actualType: Numeric
2850    
2851     ElementTypeBinding:
2852     @Name: DocAttr1
2853     @ElementType:
2854     dis:DocAttr
2855     @ShadowContent:
2856     @@ForCheck:
2857     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
2858     ElementTypeBinding:
2859     @Name: DocAttr2S
2860     @ElementType:
2861     dis:DocAttr
2862     @ShadowContent:
2863     @@ForCheck:
2864     ManakaiDOM:DOM2
2865     ElementTypeBinding:
2866     @Name: DocAttr2X
2867     @ElementType:
2868     dis:DocAttr
2869     @ShadowContent:
2870     @@ForCheck:
2871     ManakaiDOM:DOM2
2872 wakaba 1.7
2873     ResourceDef:
2874     @QName: AnyHTMLElement
2875     @enDesc:
2876     Any HTML element types.
2877     @rdf:type:
2878     s:AnyElementInNS
2879     @AppName:
2880     @@@:
2881     xhtml1:*
2882     @@ContentType:
2883     dis:TypeQName
2884     @ForCheck: ForHTML
2885    
2886     ## TODO: Move to attribute set
2887    
2888     @AttrDef:
2889     @@QName: dir
2890     @AttrDef:
2891     @@QName: id
2892     @AttrDef:
2893     @@QName: lang
2894     @@DeprecatedBy:
2895     DOMHTML:XHTML1.0
2896     @AttrDef:
2897     @@QName: class
2898     @AttrDef:
2899     @@QName: title
2900    
2901     ElementTypeBinding:
2902     @Name: AttrDef
2903     @ElementType:
2904     dis:ResourceDef
2905     @ShadowContent:
2906     @@rdf:type:
2907     s:Attribute
2908    
2909     ResourceDef:
2910     @QName: isHTMLElement
2911     @rdf:type:
2912     dis2pm:InlineCode
2913     @enDesc:
2914     Tests whether this is an HTML element of the given type or not.
2915     @Param:
2916     @@Name: elementNode
2917     @@Type:
2918     DOMCore:Element
2919     @@enDesc:
2920     The element node to test.
2921     @Param:
2922     @@Name: elementType
2923     @@Type:
2924     DOMMain:DOMString
2925     @@enDesc:
2926     The element type name to test.
2927     @PerlDef:
2928     do {
2929     my $__ln = $elementNode->{<Q::TreeCore:node>}
2930     ->{<Q::infoset:localName>};
2931     if (defined $__ln) { ## Namespace-aware node
2932     my $__ns = $elementNode->{<Q::TreeCore:node>}
2933     ->{<Q::infoset:namespaceName>};
2934     if ($__ns eq <Q::xhtml1:> or
2935     (not defined $__ns and
2936 wakaba 1.10 $elementNode->{<Q::TreeCore:node>}
2937     ->{<Q::DOMCore:ownerDocument>}
2938     ->{<Q::DOMCore:hasFeature>}
2939 wakaba 1.7 ->{HTML})) {
2940     $elementType eq $__ln ? true : false;
2941     } else {
2942     false;
2943     }
2944 wakaba 1.10 } elsif ($elementNode->{<Q::TreeCore:node>}
2945     ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
2946 wakaba 1.7 ->{HTML}) {
2947 wakaba 1.10 if ($elementNode->{<Q::TreeCore:node>}
2948     ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
2949 wakaba 1.7 ->{XML}) {
2950     $elementType eq $elementNode-><AG::DOMCore:Node.nodeName>
2951     ? true : false;
2952     } else {
2953     $elementType eq lc ($elementNode-><AG::DOMCore:Node.nodeName>)
2954     ? true : false;
2955     }
2956     } else {
2957     false;
2958     }
2959     }
2960    
2961     ResourceDef:
2962 wakaba 1.14 @QName: NodeStem
2963     @AliasFor: ManakaiNode|NodeStem||ManakaiDOM|Perl
2964     @For: ManakaiDOM|Perl
2965    
2966     ResourceDef:
2967     @QName: NodeRef
2968     @AliasFor: ManakaiNode|NodeRef||ManakaiDOM|Perl
2969     @For: ManakaiDOM|Perl
2970    
2971     ResourceDef:
2972     @QName: getNodeRef
2973     @AliasFor: ManakaiNode|getNewReference||ManakaiDOM|Perl
2974     @For: ManakaiDOM|Perl
2975    
2976     ResourceDef:
2977 wakaba 1.7 @QName: isHTMLElemento
2978     @rdf:type:
2979     dis2pm:InlineCode
2980     @enDesc:
2981     Tests whether this is an HTML element of the given type or not.
2982     @Param:
2983     @@Name: elementNodeo
2984 wakaba 1.14 @@Type: NodeStem
2985 wakaba 1.7 @@enDesc:
2986     The element node to test.
2987     @Param:
2988     @@Name: elementType
2989     @@Type:
2990     DOMMain:DOMString
2991     @@enDesc:
2992     The element type name to test.
2993     @PerlDef:
2994     do {
2995     my $__ln = $elementNodeo->{<Q::infoset:localName>};
2996     if (defined $__ln) { ## Namespace-aware node
2997     my $__ns = $elementNodeo->{<Q::infoset:namespaceName>};
2998     if ($__ns eq <Q::xhtml1:> or
2999     (not defined $__ns and
3000 wakaba 1.10 $elementNodeo->{<Q::DOMCore:ownerDocument>}
3001     ->{<Q::DOMCore:hasFeature>}
3002 wakaba 1.7 ->{HTML})) {
3003     $elementType eq $__ln ? true : false;
3004     } else {
3005     false;
3006     }
3007 wakaba 1.10 } elsif ($elementNodeo
3008     ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3009 wakaba 1.7 ->{HTML}) {
3010     my $elClass = <ClassName::DOMCore:ManakaiDOMElement>;
3011     my $elementNode = <Code::ManakaiNode:getWeakRef
3012     ||ManakaiDOM:Perl::
3013     $object = $elementNodeo,
3014     $class = $elClass,
3015     >;
3016 wakaba 1.10 if ($elementNodeo
3017     ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3018 wakaba 1.7 ->{XML}) {
3019     $elementType eq $elementNode-><AG::DOMCore:Node.nodeName>
3020     ? true : false;
3021     } else {
3022     $elementType eq lc ($elementNode-><AG::DOMCore:Node.nodeName>)
3023     ? true : false;
3024     }
3025     } else {
3026     false;
3027     }
3028     }
3029    
3030    
3031     ElementTypeBinding:
3032     @Name: enDesc
3033     @ElementType:
3034     dis:Description
3035     @ShadowContent:
3036     @@lang:en
3037    
3038 wakaba 1.4 ET:
3039     @ETQName:
3040     xhtml1:html
3041 wakaba 1.9 @QName:
3042     @@@: html
3043     @@ForCheck: s|ForML
3044 wakaba 1.4
3045     @IFQName:
3046     @@@: HTMLHtmlElement
3047     @ClsQName:
3048     @@@: ManakaiDOMHTMLHtmlElement
3049     @ISAHTMLElement:
3050     @L1IF:
3051 wakaba 1.1
3052 wakaba 1.4 @ATTR:
3053 wakaba 1.1 @@Name: version
3054 wakaba 1.4 @@Deprecated:
3055 wakaba 1.11 @@ReflectCDATA:
3056 wakaba 1.1 @@Get:
3057     @@Set:
3058    
3059 wakaba 1.4 ET:
3060     @ETQName:
3061     xhtml1:head
3062     @IFQName:
3063     @@@: HTMLHeadElement
3064     @ClsQName:
3065     @@@: ManakaiDOMHTMLHeadElement
3066     @ISAHTMLElement:
3067     @L1IF:
3068 wakaba 1.1
3069 wakaba 1.4 @ATTR:
3070 wakaba 1.1 @@Name: profile
3071 wakaba 1.11 @@ReflectCDATA:
3072 wakaba 1.1 @@Get:
3073     @@Set:
3074    
3075 wakaba 1.4 ET:
3076     @ETQName:
3077     xhtml1:link
3078     @IFQName:
3079     @@@: HTMLLinkElement
3080     @ClsQName:
3081     @@@: ManakaiDOMHTMLLinkElement
3082     @ISAHTMLElement:
3083     @L1IF:
3084 wakaba 1.1
3085     @Attr:
3086     @@Name: disabled
3087     @@Description:
3088     @@@lang:en
3089     @@@@:
3090     Whether the link is enabled or not. This is currently
3091     only used for style sheet links and may be used to
3092     activate or deactivate the style sheet.
3093     @@Get:
3094     @@@Type:
3095     DOMMain:boolean
3096     @@@InCase:
3097     @@@@Value: true
3098     @@@@Description:
3099     @@@@@lang:en
3100     @@@@@@:
3101     The link is disabled.
3102     @@@InCase:
3103     @@@@Value: false
3104     @@@@Description:
3105     @@@@@lang:en
3106     @@@@@@:
3107     The link is enabled.
3108     @@@Def:
3109 wakaba 1.4 @@@@ContentType:
3110 wakaba 1.1 lang:dis
3111     @@@@GetProp:
3112     DOMHTML:disabled
3113     @@Set:
3114     @@@Type:
3115     DOMMain:boolean
3116     @@@InCase:
3117     @@@@Value: true
3118     @@@@Description:
3119     @@@@@lang:en
3120     @@@@@@:
3121     The link is disabled.
3122     @@@InCase:
3123     @@@@Value: false
3124     @@@@Description:
3125     @@@@@lang:en
3126     @@@@@@:
3127     The link is enabled.
3128     @@@Def:
3129 wakaba 1.4 @@@@ContentType:
3130 wakaba 1.1 lang:dis
3131     @@@@SetProp:
3132     DOMHTML:disabled
3133 wakaba 1.4 @@ImplNote:
3134     @@@lang:en
3135     @@@@:
3136     A version of WinIE 3 has a <HA::disable> attribute by mistake.
3137     @ATTR:
3138 wakaba 1.1 @@Name: charset
3139 wakaba 1.11 @@ReflectCDATA:
3140 wakaba 1.1 @@Get:
3141     @@Set:
3142 wakaba 1.4 @ATTR:
3143 wakaba 1.1 @@Name: href
3144 wakaba 1.11 @@ReflectURI:
3145 wakaba 1.1 @@Get:
3146     @@Set:
3147 wakaba 1.4 @ATTR:
3148 wakaba 1.1 @@Name: hreflang
3149 wakaba 1.11 @@ReflectCDATA:
3150 wakaba 1.1 @@Get:
3151     @@Set:
3152 wakaba 1.4 @ATTR:
3153 wakaba 1.1 @@Name: media
3154 wakaba 1.11 @@ReflectCDATA:
3155 wakaba 1.1 @@Get:
3156     @@Set:
3157 wakaba 1.4 @ATTR:
3158 wakaba 1.1 @@Name: rel
3159 wakaba 1.11 @@ReflectCDATA:
3160 wakaba 1.1 @@Get:
3161     @@Set:
3162 wakaba 1.4 @ATTR:
3163 wakaba 1.1 @@Name: rev
3164 wakaba 1.11 @@ReflectCDATA:
3165 wakaba 1.1 @@Get:
3166     @@Set:
3167 wakaba 1.4 @ATTR:
3168 wakaba 1.1 @@Name: target
3169 wakaba 1.11 @@ReflectCDATA:
3170 wakaba 1.1 @@Get:
3171     @@Set:
3172 wakaba 1.4 @ATTR:
3173 wakaba 1.1 @@Name: type
3174 wakaba 1.11 @@ReflectCDATA:
3175 wakaba 1.1 @@Get:
3176     @@Set:
3177     ##IF:HTMLLinkElement
3178    
3179 wakaba 1.4 ET:
3180     @ETQName:
3181     xhtml1:title
3182     @IFQName:
3183     @@@: HTMLTitleElement
3184     @ClsQName:
3185     @@@: ManakaiDOMHTMLTitleElement
3186     @ISAHTMLElement:
3187     @L1IF:
3188    
3189 wakaba 1.1 @Attr:
3190     @@Name: text
3191     @@Description:
3192     @@@lang:en
3193     @@@@:
3194     The title.
3195     @@Get:
3196     @@@Type: DOMString
3197     @@@Def:
3198 wakaba 1.4 @@@@ContentType:
3199     lang:dis
3200     @@@@DISPerl:cloneCode:
3201 wakaba 1.7 DOMCore:ManakaiDOMNode::ManakaiDOM:ManakaiDOMLatest.textContent.get
3202 wakaba 1.1 @@Set:
3203     @@@Type: DOMString
3204     @@@Def:
3205 wakaba 1.4 @@@@ContentType:
3206     lang:dis
3207     @@@@DISPerl:cloneCode:
3208 wakaba 1.7 DOMCore:ManakaiDOMNode::ManakaiDOM:ManakaiDOMLatest.textContent.set
3209 wakaba 1.1 ##IF:HTMLTitleElement
3210    
3211 wakaba 1.4 ET:
3212     @ETQName:
3213     xhtml1:meta
3214     @IFQName:
3215     @@@: HTMLMetaElement
3216     @ClsQName:
3217     @@@: ManakaiDOMHTMLMetaElement
3218     @ISAHTMLElement:
3219     @L1IF:
3220    
3221     @ATTR:
3222 wakaba 1.1 @@Name: content
3223 wakaba 1.11 @@ReflectCDATA:
3224 wakaba 1.1 @@Get:
3225     @@Set:
3226 wakaba 1.4 @ATTR:
3227     @@AName:
3228     @@@@: http-equiv
3229     @@DOMAName:
3230     @@@@: httpEquiv
3231 wakaba 1.11 @@ReflectCDATA:
3232 wakaba 1.1 @@Get:
3233     @@Set:
3234 wakaba 1.4 @ATTR:
3235 wakaba 1.1 @@Name: name
3236 wakaba 1.11 @@ReflectCDATA:
3237 wakaba 1.1 @@Get:
3238     @@Set:
3239 wakaba 1.4 @ATTR:
3240 wakaba 1.1 @@Name: scheme
3241 wakaba 1.11 @@ReflectCDATA:
3242 wakaba 1.1 @@Get:
3243     @@Set:
3244    
3245 wakaba 1.4 ET:
3246     @ETQName:
3247     xhtml1:base
3248     @IFQName:
3249     @@@: HTMLBaseElement
3250     @ClsQName:
3251     @@@: ManakaiDOMHTMLBaseElement
3252     @ISAHTMLElement:
3253     @L1IF:
3254    
3255     @ATTR:
3256 wakaba 1.1 @@Name: href
3257 wakaba 1.11 @@ReflectURI:
3258 wakaba 1.1 @@Get:
3259     @@Set:
3260 wakaba 1.4 @ATTR:
3261 wakaba 1.1 @@Name: target
3262 wakaba 1.11 @@ReflectCDATA:
3263 wakaba 1.1 @@Get:
3264     @@Set:
3265    
3266 wakaba 1.4 ElementTypeBinding:
3267     @Name: ISAHTMLElement
3268 wakaba 1.1 @ElementType:
3269 wakaba 1.4 dis:ISA
3270     @ShadowContent:
3271     @@@: HTMLElement
3272     @@ForCheck:
3273     ManakaiDOM:ForIF
3274     @ShadowSibling:
3275     @@ISA:
3276     @@@@: ManakaiDOMHTMLElement
3277     @@@ForCheck:
3278     ManakaiDOM:ForClass
3279    
3280     ET:
3281     @ETQName:
3282     xhtml1:isindex
3283     @IFQName:
3284     @@@: HTMLIsIndexElement
3285     @ClsQName:
3286     @@@: ManakaiDOMHTMLIsIndexElement
3287     @ISAHTMLElement:
3288     @L1IF:
3289    
3290     @ForCheck: !ForXHTML11
3291    
3292 wakaba 1.1 @Attr:
3293     @@Name: form
3294     @@Description:
3295     @@@lang:en
3296     @@@@:
3297     The <HE:form> element containing this element.
3298     \
3299     {NOTE:: Although DOM has this attribute, the <HE:isindex>
3300     is independent from any <HE:form> by definition.
3301     \
3302     }
3303     @@Get:
3304 wakaba 1.2 @@@Type:
3305 wakaba 1.4 DOMHTML:HTMLFormElement
3306 wakaba 1.1 @@@InCase:
3307     @@@@Value:
3308     @@@@@is-null:1
3309     @@@@Description:
3310     @@@@@lang:en
3311     @@@@@@:
3312     This element is not within the context of a form.
3313 wakaba 1.7 @@@disDef:
3314     @@@@DISLang:nop:
3315 wakaba 1.4 @ATTR:
3316 wakaba 1.1 @@Name: prompt
3317 wakaba 1.4 @@Deprecated:
3318 wakaba 1.11 @@ReflectCDATA:
3319 wakaba 1.1 @@Get:
3320     @@Set:
3321    
3322 wakaba 1.4 ElementTypeBinding:
3323 wakaba 1.7 @Name: disDef
3324     @ElementType:
3325     dis:Def
3326     @ShadowContent:
3327     @@ContentType:
3328     lang:dis
3329    
3330     ElementTypeBinding:
3331 wakaba 1.4 @Name: ETQName
3332     @ElementType:
3333 wakaba 1.7 dis:AppName
3334 wakaba 1.4 @ShadowContent:
3335     @@ForCheck:
3336     s:ForML
3337 wakaba 1.7 @@ContentType:
3338     dis:TypeQName
3339    
3340 wakaba 1.4 ElementTypeBinding:
3341     @Name: IFQName
3342     @ElementType:
3343     dis:QName
3344     @ShadowContent:
3345     @@ForCheck:
3346     ManakaiDOM:ForIF
3347     ElementTypeBinding:
3348     @Name: ClsQName
3349 wakaba 1.1 @ElementType:
3350 wakaba 1.4 dis:QName
3351     @ShadowContent:
3352     @@ForCheck:
3353     ManakaiDOM:ForClass
3354    
3355     ET:
3356     @ETQName:
3357     xhtml1:style
3358     @IFQName: HTMLStyleElement
3359     @ClsQName: ManakaiDOMHTMLStyleElement
3360     @ISAHTMLElement:
3361     @L1IF:
3362    
3363 wakaba 1.1 @Attr:
3364     @@Name: disabled
3365     @@Description:
3366     @@@lang:en
3367     @@@@:
3368     Whether the style sheet is enabled or not.
3369     @@Get:
3370     @@@Type:
3371     DOMMain:boolean
3372     @@@InCase:
3373     @@@@Value: true
3374     @@@@Description:
3375     @@@@@lang:en
3376     @@@@@@:The style sheet is disabled.
3377     @@@InCase:
3378     @@@@Value: false
3379     @@@@Description:
3380     @@@@@lang:en
3381     @@@@@@:The style sheet is enabled.
3382     @@@Def:
3383 wakaba 1.4 @@@@ContentType:
3384 wakaba 1.1 lang:dis
3385     @@@@GetProp:
3386     DOMHTML:disabled
3387     @@Set:
3388     @@@Type:
3389     DOMMain:boolean
3390     @@@InCase:
3391     @@@@Value: true
3392     @@@@Description:
3393     @@@@@lang:en
3394     @@@@@@:The style sheet is disabled.
3395     @@@InCase:
3396     @@@@Value: false
3397     @@@@Description:
3398     @@@@@lang:en
3399     @@@@@@:The style sheet is enabled.
3400     @@@Def:
3401 wakaba 1.4 @@@@ContentType:
3402 wakaba 1.1 lang:dis
3403     @@@@SetProp:
3404     DOMHTML:disabled
3405 wakaba 1.4 @ATTR:
3406 wakaba 1.1 @@Name: media
3407 wakaba 1.11 @@ReflectCDATA:
3408 wakaba 1.1 @@Get:
3409     @@Set:
3410 wakaba 1.4 @ATTR:
3411 wakaba 1.1 @@Name: type
3412 wakaba 1.11 @@ReflectCDATA:
3413 wakaba 1.1 @@Get:
3414     @@Set:
3415    
3416 wakaba 1.7 PropDef:
3417     @QName: disabled
3418     @enDesc:
3419     <A::.disabled>.
3420    
3421 wakaba 1.4 ElementTypeBinding:
3422     @Name: DOMAName
3423 wakaba 1.1 @ElementType:
3424 wakaba 1.4 dis:Name
3425     @ShadowContent:
3426     @@ForCheck:
3427     ManakaiDOM:DOM
3428     ElementTypeBinding:
3429     @Name: AName
3430     @ElementType:
3431     dis:Name
3432     @ShadowContent:
3433     @@ForCheck:
3434     s:ForML
3435    
3436 wakaba 1.11 IF:
3437     @IFQName: HTMLStrictlyInlineContainerExtended
3438     @ClsQName: ManakaiDOMHTMLStrictlyInlineContainerExtended
3439     @DOMMain:implementFeature: HTMLExtendedFeature30
3440    
3441     @Method:
3442     @@Name: appendNewAnchor
3443     @@enDesc:
3444     Appends a new <HE::a> element.
3445     @@Param:
3446     @@@Name: hrefArg
3447     @@@Type: DOMString
3448     @@@enDesc:
3449     A URI reference to be set to the <HA::href> attribute
3450     of the newly created element.
3451     @@Param:
3452     @@@Name: textArg
3453     @@@Type: DOMString
3454     @@@enDesc:
3455     Text content of the newly created element.
3456     @@@nullCase:
3457     @@@@enDesc: No text node is added.
3458     @@Param:
3459     @@@Name: classArg
3460     @@@Type: DOMString
3461     @@@enDesc:
3462     A space-separeted list of classes to be set to
3463     the <HA::class> attribute of the newly created element.
3464     @@@nullCase:
3465     @@@@enDesc:
3466     No class is set.
3467 wakaba 1.13 @@@ImplNote:
3468     @@@@lang:en
3469     @@@@@:
3470     <IF::DOMTokenString> and <IF::DOMStringList> shuld also be supported.
3471 wakaba 1.11 @@Return:
3472     @@@Type: HTMLAnchorElement
3473     @@@enDesc:
3474     The newly created <HE::a> element.
3475     @@@RaiseException:
3476     @@@@@: MDOMX|NOMOD_THIS
3477     @@@@enDesc:
3478     This node is read-only.
3479     @@@PerlDef:
3480     __DEEP{
3481     $self-><M::DOMCore:Node.appendChild>
3482     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3483     -><M::DOMCore:Document.createElementNS>
3484     (<Q::xhtml1:>, 'a'));
3485     $r-><AS::HTMLAnchorElement.href> ($hrefArg);
3486     if (defined $textArg) {
3487     $r-><AS::DOMCore:Node.textContent> ($textArg);
3488     }
3489     if (defined $classArg) {
3490     $r-><AS::HTMLElement.className> ($classArg);
3491     }
3492     }__;
3493    
3494     @Method:
3495     @@Name: appendNewAbbr
3496     @@enDesc:
3497     Appends a new <HE::abbr> element.
3498     @@Param:
3499     @@@Name: shortForm
3500     @@@Type: DOMString
3501     @@@enDesc:
3502     Text content of the newly created element.
3503     @@@nullCase:
3504     @@@@enDesc: No text node is added.
3505     @@Param:
3506     @@@Name: longForm
3507     @@@Type: DOMString
3508     @@@enDesc:
3509     A text to be set to the <HA::title> attribute
3510     of the newly created element.
3511     @@@nullCase:
3512     @@@@enDesc: No long form.
3513     @@Param:
3514     @@@Name: classArg
3515     @@@Type: DOMString
3516     @@@enDesc:
3517     A space-separeted list of classes to be set to
3518     the <HA::class> attribute of the newly created element.
3519     @@@nullCase:
3520     @@@@enDesc:
3521     No class is set.
3522     @@Return:
3523     @@@Type: HTMLElement
3524     @@@enDesc:
3525     The newly created <HE::abbr> element.
3526     @@@RaiseException:
3527     @@@@@: MDOMX|NOMOD_THIS
3528     @@@@enDesc:
3529     This node is read-only.
3530     @@@PerlDef:
3531     __DEEP{
3532     $self-><M::DOMCore:Node.appendChild>
3533     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3534     -><M::DOMCore:Document.createElementNS>
3535     (<Q::xhtml1:>, 'abbr'));
3536     if (defined $shortForm) {
3537     $r-><AS::DOMCore:Node.textContent> ($shortForm);
3538     }
3539     if (defined $longForm) {
3540     $r-><AS::HTMLElement.title> ($longForm);
3541     }
3542     if (defined $classArg) {
3543     $r-><AS::HTMLElement.className> ($classArg);
3544     }
3545     }__;
3546    
3547     @Method:
3548     @@Name: appendNewDfn
3549     @@enDesc:
3550     Appends a new <HE::dfn> element.
3551     @@Param:
3552     @@@Name: textArg
3553     @@@Type: DOMString
3554     @@@enDesc:
3555     Text content of the newly created element.
3556     @@@nullCase:
3557     @@@@enDesc: No text node is added.
3558     @@Param:
3559     @@@Name: titleArg
3560     @@@Type: DOMString
3561     @@@enDesc:
3562     A definitive word to be set to
3563     the <HA::title> attribute of the newly created element.
3564     @@@nullCase:
3565     @@@@enDesc:
3566     No title is set.
3567     @@Param:
3568     @@@Name: classArg
3569     @@@Type: DOMString
3570     @@@enDesc:
3571     A space-separeted list of classes to be set to
3572     the <HA::class> attribute of the newly created element.
3573     @@@nullCase:
3574     @@@@enDesc:
3575     No class is set.
3576     @@Return:
3577     @@@Type: HTMLElement
3578     @@@enDesc:
3579     The newly created <HE::dfn> element.
3580     @@@RaiseException:
3581     @@@@@: MDOMX|NOMOD_THIS
3582     @@@@enDesc:
3583     This node is read-only.
3584     @@@PerlDef:
3585     __DEEP{
3586     $self-><M::DOMCore:Node.appendChild>
3587     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3588     -><M::DOMCore:Document.createElementNS>
3589     (<Q::xhtml1:>, 'dfn'));
3590     if (defined $textArg) {
3591     $r-><AS::DOMCore:Node.textContent> ($textArg);
3592     }
3593     if (defined $titleArg) {
3594     $r-><AS::HTMLElement.title> ($titleArg);
3595     }
3596     if (defined $classArg) {
3597     $r-><AS::HTMLElement.className> ($classArg);
3598     }
3599     }__;
3600    
3601     @enImplNote:
3602 wakaba 1.13 {TODO::
3603     <P::classArg>s should also accept <IF::DOMTokenString> (HTML5)
3604     and <IF::DOMStringList> (DOM3) and any Perl array references.
3605     (Pending until the publication of a fixed draft of HTML5)
3606     }
3607 wakaba 1.11
3608     @Method:
3609     @@Name: appendNewPhrase
3610     @@enDesc:
3611     Appends a new phrase element or text.
3612     @@Param:
3613     @@@Name: namespaceNameArg
3614     @@@Type: DOMString
3615     @@@enDesc:
3616     Element type namespace URI.
3617     @@@nullCase:
3618     @@@@enDesc:
3619 wakaba 1.13 The HTML namespace URI, <URI::http://www.w3.org/1999/xhtml>,
3620     is assumed.
3621     \
3622     {NOTE:: The <DOM::null> namespace is not supported.
3623     }
3624 wakaba 1.11 @@Param:
3625     @@@Name: localNameArg
3626     @@@Type: DOMString
3627     @@@enDesc:
3628     Element type local name.
3629     @@@nullCase:
3630     @@@@enDesc:
3631 wakaba 1.13 No element is added and the <P::namespaceNameArg> is ignored.
3632 wakaba 1.11 @@Param:
3633     @@@Name: textArg
3634     @@@Type: DOMString
3635     @@@enDesc:
3636     Text content of the newly created element.
3637     If <P::localNameArg> is <DOM::null>, the <P::textArg>
3638 wakaba 1.13 is directly appended to this element as a new <IF::Text> node.
3639 wakaba 1.11 @@@nullCase:
3640     @@@@enDesc: No text node is added.
3641     @@Param:
3642     @@@Name: classArg
3643     @@@Type: DOMString
3644     @@@enDesc:
3645     A space-separeted list of classes to be set to
3646     the <HA::class> attribute of the newly created element.
3647     If the <P::localNameArg> is <DOM::null>, this parameter
3648     is ignored.
3649     @@@nullCase:
3650     @@@@enDesc:
3651     No class is set.
3652     @@Return:
3653     @@@Type: HTMLElement
3654     @@@enDesc:
3655     The newly created element.
3656     @@@nullCase:
3657     @@@@enDesc:
3658     If <P::localNameArg>
3659     is <DOM::null>.
3660     @@@RaiseException:
3661     @@@@@: MDOMX|NOMOD_THIS
3662     @@@@enDesc:
3663     This node is read-only.
3664     @@@RaiseException:
3665     @@@@@: DOMCore|DOMException.INVALID_CHARACTER_ERR
3666     @@@@enDesc:
3667     <P::localNameArg> is not a legal <CODE::Name>
3668     of the markup language in use.
3669     @@@RaiseException:
3670     @@@@@: DOMCore|DOMException.NAMESPACE_ERR
3671     @@@@enDesc:
3672     <P::localNameArg> is not a legal <CODE::NCName>
3673     of the XML version in use.
3674     @@@PerlDef:
3675     __DEEP{
3676     if (defined $localNameArg) {
3677     $self-><M::DOMCore:Node.appendChild>
3678     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3679     -><M::DOMCore:Document.createElementNS>
3680     (defined $namespaceNameArg
3681     ? $namespaceNameArg : <Q::xhtml1:>,
3682     $localNameArg));
3683     if (defined $textArg) {
3684     $r-><AS::DOMCore:Node.textContent> ($textArg);
3685     }
3686     if (defined $classArg) {
3687     $r-><AS::HTMLElement.className> ($classArg);
3688     }
3689     } else {
3690     $self-><M::DOMCore:Node.appendChild>
3691     ($self-><AG::DOMCore:Node.ownerDocument>
3692     -><M::DOMCore:Document.createTextNode> ($textArg));
3693     }
3694     }__;
3695     ##HTMLStrictlyInlineContainerExtended
3696    
3697     ClsOnly:
3698     @For: ManakaiDOM|ManakaiDOMLatest
3699     @ClsQName: ManakaiDOMHTMLStrictlyInlineElementExtended
3700     @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
3701     @ClsISA: ManakaiDOMHTMLElement
3702    
3703     @enDesc:
3704     Strictly inline-level content elements whose content
3705     is also strictly inline-level content.
3706    
3707     @enImplNote:
3708     Future version of manakai might split this class into
3709     indivisual element type classes.
3710    
3711     @s:elementType: em||ForHTML5
3712     @s:elementType: small||ForHTML5
3713     @s:elementType: i||ForHTML5
3714     @s:elementType: var||ForHTML5
3715     @s:elementType: kbd||ForHTML5
3716     @s:elementType: sup||ForHTML5
3717     @s:elementType: sub||ForHTML5
3718     @s:elementType: cite||ForHTML5
3719     @s:elementType: abbr||ForHTML5
3720     @s:elementType: dfn||ForHTML5
3721     ##HTMLStrictlyInlineElementExtended
3722    
3723     ResourceDef:
3724     @QName: em
3725     @rdf:type: s|ElementType
3726     @For: ForHTML
3727     @ETQName: xhtml1|em
3728    
3729     ResourceDef:
3730     @QName: small
3731     @rdf:type: s|ElementType
3732     @For: ForHTML
3733     @ETQName: xhtml1|small
3734    
3735     ResourceDef:
3736     @QName: i
3737     @rdf:type: s|ElementType
3738     @For: ForHTML
3739     @ETQName: xhtml1|i
3740    
3741     ResourceDef:
3742     @QName: var
3743     @rdf:type: s|ElementType
3744     @For: ForHTML
3745     @ETQName: xhtml1|var
3746    
3747     ResourceDef:
3748     @QName: kbd
3749     @rdf:type: s|ElementType
3750     @For: ForHTML
3751     @ETQName: xhtml1|kbd
3752    
3753     ResourceDef:
3754     @QName: sup
3755     @rdf:type: s|ElementType
3756     @For: ForHTML
3757     @ETQName: xhtml1|sup
3758    
3759     ResourceDef:
3760     @QName: sub
3761     @rdf:type: s|ElementType
3762     @For: ForHTML
3763     @ETQName: xhtml1|sub
3764    
3765     ResourceDef:
3766     @QName: cite
3767     @rdf:type: s|ElementType
3768     @For: ForHTML
3769     @ETQName: xhtml1|cite
3770    
3771     ResourceDef:
3772     @QName: abbr
3773     @rdf:type: s|ElementType
3774     @For: ForHTML
3775     @ETQName: xhtml1|abbr
3776    
3777     ResourceDef:
3778     @QName: dfn
3779     @rdf:type: s|ElementType
3780     @For: ForHTML
3781     @ETQName: xhtml1|dfn
3782    
3783     IF:
3784     @IFQName: HTMLStructuredInlineContainerExtended
3785     @ClsQName: ManakaiDOMHTMLStructuredInlineContainerExtended
3786     @DOMMain:implementFeature: HTMLExtendedFeature30
3787    
3788     @Method:
3789     @@Name: appendNewUl
3790     @@enDesc:
3791     Appends a new empty <HE::ul> element.
3792     @@enImplNote:
3793     Array containing items should be accepted as a parameter?
3794     @@Return:
3795     @@@Type: HTMLUListElement
3796     @@@enDesc:
3797     The newly created <HE::ul> element.
3798     @@@RaiseException:
3799     @@@@@: MDOMX|NOMOD_THIS
3800     @@@@enDesc:
3801     This node is read-only.
3802     @@@PerlDef:
3803     __DEEP{
3804     $self-><M::DOMCore:Node.appendChild>
3805     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3806     -><M::DOMCore:Document.createElementNS>
3807     (<Q::xhtml1:>, 'ul'));
3808     }__;
3809    
3810     @Method:
3811     @@Name: appendNewDl
3812     @@enDesc:
3813     Appends a new empty <HE::dl> element.
3814     @@enImplNote:
3815     Array containing items should be accepted as a parameter?
3816     @@Return:
3817     @@@Type: HTMLDListElement
3818     @@@enDesc:
3819     The newly created <HE::dl> element.
3820     @@@RaiseException:
3821     @@@@@: MDOMX|NOMOD_THIS
3822     @@@@enDesc:
3823     This node is read-only.
3824     @@@PerlDef:
3825     __DEEP{
3826     $self-><M::DOMCore:Node.appendChild>
3827     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3828     -><M::DOMCore:Document.createElementNS>
3829     (<Q::xhtml1:>, 'dl'));
3830     }__;
3831    
3832    
3833     @Method:
3834     @@Name: appendNewTable
3835     @@enDesc:
3836     Appends a new empty table whose only child is a <HE::tbody> element.
3837     @@enImplNote:
3838     Array containing items should be accepted as a parameter?
3839     Caption? Row & Col number?
3840     @@Return:
3841     @@@Type: HTMLTableElement
3842     @@@enDesc:
3843     The newly created <HE::table> element.
3844     @@@RaiseException:
3845     @@@@@: MDOMX|NOMOD_THIS
3846     @@@@enDesc:
3847     This node is read-only.
3848     @@@PerlDef:
3849     __DEEP{
3850     my $od = $self-><AG::DOMCore:Node.ownerDocument>;
3851     $self-><M::DOMCore:Node.appendChild>
3852     ($r = $od-><M::DOMCore:Document.createElementNS>
3853     (<Q::xhtml1:>, 'table'));
3854     $r-><M::DOMCore:Node.appendChild>
3855     ($od-><M::DOMCore:Document.createElementNS>
3856     (<Q::xhtml1:>, 'tbody'));
3857     }__;
3858     ##StructuredInlineContainerExtended
3859    
3860     IF:
3861     @IFQName: HTMLInlineContainerExtended
3862     @ClsQName: ManakaiDOMHTMLInlineContainerExtended
3863     @DOMMain:implementFeature: HTMLExtendedFeature30
3864    
3865     @IFISA: HTMLStrictlyInlineContainerExtended
3866     @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
3867    
3868     @IFISA: HTMLStructuredInlineContainerExtended
3869     @ClsISA: ManakaiDOMHTMLStructuredInlineContainerExtended
3870     ##HTMLInlineContainerExtended
3871    
3872     ClsOnly:
3873     @For: ManakaiDOM|ManakaiDOMLatest
3874     @ClsQName: ManakaiDOMHTMLInlineElementExtended
3875     @ClsISA: ManakaiDOMHTMLInlineContainerExtended
3876     @ClsISA: ManakaiDOMHTMLElement
3877    
3878     @enDesc:
3879     Strictly inline-level content elements whose content
3880     is conditionally either strictly inline-level content or
3881     any inline-level content.
3882    
3883     @enImplNote:
3884     Future version of manakai might split this class into
3885     indivisual element type classes.
3886    
3887     @s:elementType: code||ForHTML5
3888     @s:elementType: samp||ForHTML5
3889     @s:elementType: span||ForHTML5
3890     ##HTMLInlineElementExtended
3891    
3892     ResourceDef:
3893     @QName: code
3894     @rdf:type: s|ElementType
3895     @For: ForHTML
3896     @ETQName: xhtml1|code
3897    
3898     ResourceDef:
3899     @QName: samp
3900     @rdf:type: s|ElementType
3901     @For: ForHTML
3902     @ETQName: xhtml1|samp
3903    
3904     ResourceDef:
3905     @QName: span
3906     @rdf:type: s|ElementType
3907     @For: ForHTML
3908     @ETQName: xhtml1|span
3909    
3910     IF:
3911     @IFQName: HTMLBlockContainerExtended
3912     @ClsQName: ManakaiDOMHTMLBlockContainerExtended
3913     @DOMMain:implementFeature: HTMLExtendedFeature30
3914    
3915     @IFISA: HTMLStructuredInlineContainerExtended
3916     @ClsISA: ManakaiDOMHTMLStructuredInlineContainerExtended
3917    
3918     @Method:
3919     @@Name: appendNewParagraph
3920     @@enDesc:
3921     Appends a new <HE::p> element.
3922     @@Return:
3923     @@@Type: HTMLParagraphElement
3924     @@@enDesc:
3925     The newly created <HE::p> element.
3926     @@@RaiseException:
3927     @@@@@: MDOMX|NOMOD_THIS
3928     @@@@enDesc:
3929     This node is read-only.
3930     @@@PerlDef:
3931     __DEEP{
3932     $self-><M::DOMCore:Node.appendChild>
3933     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3934     -><M::DOMCore:Document.createElementNS>
3935     (<Q::xhtml1:>, 'p'));
3936     }__;
3937     ##HTMLBlockContainerExtended
3938    
3939     IF:
3940     @IFQName: HTMLSectioningElementExtended
3941     @ClsQName: ManakaiDOMHTMLSectioningElementExtended
3942     @DOMMain:implementFeature: HTMLExtendedFeature30
3943    
3944     @IFISA: HTMLBlockContainerExtended
3945     @ClsISA: ManakaiDOMHTMLBlockContainerExtended
3946    
3947     @Method:
3948     @@Name: appendNewSection
3949     @@enDesc:
3950     Appends a new <HE::section> element.
3951     @@ImplNote:
3952     @@@lang:en
3953     @@@@:
3954     Better method name?
3955     @@Param:
3956     @@@Name: title
3957     @@@Type: DOMString
3958     @@@enDesc:
3959     The title text of the section. If this parameter is
3960     specified, the newly created <HE::section> element
3961     has a newly created heading element with a
3962     text node whose <A::DOMCore:CharacterData.data> is set to <P::title>.
3963     @@@nullCase:
3964     @@@@enDesc:
3965     The newly created section does not have an initial
3966     heading element.
3967     @@Return:
3968     @@@Type: HTMLSectionElementExtended
3969     @@@actualType: ManakaiDOMHTMLSectionElementExtended
3970     @@@enDesc:
3971     The newly created <HE::section> element.
3972     @@@RaiseException:
3973     @@@@@: MDOMX|NOMOD_THIS
3974     @@@@enDesc:
3975     This node is read-only.
3976     @@@PerlDef:
3977     __DEEP{
3978     $self-><M::DOMCore:Node.appendChild>
3979     ($r = $self-><AG::DOMCore:Node.ownerDocument>
3980     -><M::DOMCore:Document.createElementNS>
3981     (<Q::xhtml1:>, 'section'));
3982     if (defined $title) {
3983     $r-><M::DOMCore:Node.appendChild>
3984     ($self-><AG::DOMCore:Node.ownerDocument>
3985     -><M::DOMCore:Document.createElementNS>
3986     (<Q::xhtml1:>, 'h1'))
3987     ## TODO: Rank
3988     -><AS::DOMCore:Node.textContent> ($title);
3989     }
3990     }__;
3991    
3992     @Attr:
3993     @@Name: heading
3994     @@enDesc:
3995     The heading element for this section.
3996     @@enImplNote:
3997     {TODO:: Update as in Web Applications 1.0.
3998     \
3999     }
4000     @@Type: HTMLElement
4001     @@Get:
4002     @@@nullCase:
4003     @@@@enDesc:
4004     This sectioning element does not have a heading.
4005     @@@PerlDef:
4006     for my $co (@{$self->{<Q::TreeCore:node>}->{<Q::infoset:children>}}) {
4007     if ($co->{<Q::DOMCore:nodeType>} eq <Q::infoset:Element> and
4008     (<Code::isHTMLElemento:: $elementNodeo = $co,
4009     $elementType = 'h1'> or
4010     <Code::isHTMLElemento:: $elementNodeo = $co,
4011     $elementType = 'h2'> or
4012     <Code::isHTMLElemento:: $elementNodeo = $co,
4013     $elementType = 'h3'> or
4014     <Code::isHTMLElemento:: $elementNodeo = $co,
4015     $elementType = 'h4'> or
4016     <Code::isHTMLElemento:: $elementNodeo = $co,
4017     $elementType = 'h5'> or
4018     <Code::isHTMLElemento:: $elementNodeo = $co,
4019     $elementType = 'h6'>)) {
4020     $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($co);
4021     last;
4022     }
4023     }
4024     @@enImplNote: Should setter be defined as e.g. caption?
4025    
4026     @Method:
4027     @@Name: createHeading
4028     @@enDesc:
4029     Creates a heading element and preprends as the first
4030     child node of this element or returns an existing one.
4031     @@enImplNote:
4032     Should prepend or append? Rank?
4033     @@Return:
4034     @@@Type: HTMLHeadingElement
4035     @@@enDesc:
4036     A heading element.
4037     @@@RaiseException:
4038     @@@@@: MDOMX|NOMOD_THIS
4039     @@@@enDesc:
4040     This node is read-only.
4041     @@@PerlDef:
4042     A: {
4043     for my $co (@{$self->{<Q::TreeCore:node>}->{<Q::infoset:children>}}) {
4044     if ($co->{<Q::DOMCore:nodeType>} eq <Q::infoset:Element> and
4045     (<Code::isHTMLElemento:: $elementNodeo = $co,
4046     $elementType = 'h1'> or
4047     <Code::isHTMLElemento:: $elementNodeo = $co,
4048     $elementType = 'h2'> or
4049     <Code::isHTMLElemento:: $elementNodeo = $co,
4050     $elementType = 'h3'> or
4051     <Code::isHTMLElemento:: $elementNodeo = $co,
4052     $elementType = 'h4'> or
4053     <Code::isHTMLElemento:: $elementNodeo = $co,
4054     $elementType = 'h5'> or
4055     <Code::isHTMLElemento:: $elementNodeo = $co,
4056     $elementType = 'h6'>)) {
4057     $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($co);
4058     last A;
4059     }
4060     }
4061    
4062     ## Not found
4063     __DEEP{
4064     $r = $self-><M::DOMCore:Node.insertBefore>
4065     ($self-><AG::DOMCore:Node.ownerDocument>
4066     -><M::DOMCore:Document.createElementNS>
4067     (<Q::xhtml1:>, 'h1'),
4068     $self-><AG::DOMCore:Node.firstChild>);
4069     }__;
4070     }
4071     ##HTMLSectioningElementExtended
4072    
4073     ElementTypeBinding:
4074     @Name: enImplNote
4075     @ElementType:
4076     dis:ImplNote
4077     @ShadowContent:
4078     @@lang:en
4079    
4080     H5ETX:
4081     @ETQName: xhtml1|section
4082     @IFQName: HTMLSectionElementExtended
4083     @ClsQName: ManakaiDOMHTMLSectionElementExtended
4084    
4085     @IFISA: HTMLSectioningElementExtended
4086     @ClsISA: ManakaiDOMHTMLSectioningElementExtended
4087     @ISAHTMLElement:
4088     ##HTMLSectionElementExtended
4089    
4090     ElementTypeBinding:
4091     @Name: nullCase
4092     @ElementType:
4093     dis:ResourceDef
4094     @ShadowContent:
4095     @@rdf:type: ManakaiDOM|InCase
4096     @@Value:
4097     @@@is-null:1
4098    
4099 wakaba 1.4 ET:
4100     @ETQName:
4101     xhtml1:body
4102     @IFQName: HTMLBodyElement
4103     @ClsQName: ManakaiDOMHTMLBodyElement
4104     @ISAHTMLElement:
4105     @L1IF:
4106    
4107     @ATTR:
4108     @@AName: alink
4109     @@DOMAName: aLink
4110     @@Deprecated:
4111 wakaba 1.11 @@ReflectCDATA:
4112 wakaba 1.1 @@Get:
4113     @@Set:
4114 wakaba 1.4 @ATTR:
4115 wakaba 1.1 @@Name: background
4116 wakaba 1.4 @@Deprecated:
4117 wakaba 1.11 @@ReflectURI:
4118 wakaba 1.1 @@Get:
4119     @@Set:
4120 wakaba 1.4 @ATTR:
4121     @@DOMAName: bgColor
4122     @@AName: bgcolor
4123     @@Deprecated:
4124 wakaba 1.11 @@ReflectCDATA:
4125 wakaba 1.1 @@Get:
4126     @@Set:
4127 wakaba 1.4 @ATTR:
4128 wakaba 1.1 @@Name: link
4129 wakaba 1.4 @@Deprecated:
4130 wakaba 1.11 @@ReflectCDATA:
4131     @@Get:
4132     @@Set:
4133     @ATTR:
4134     @@Name: text
4135     @@Deprecated:
4136     @@ReflectCDATA:
4137     @@Get:
4138     @@Set:
4139     @Attr:
4140     @@DOMAName: vLink
4141     @@AName: vlink
4142     @@Deprecated:
4143     @@ReflectCDATA:
4144     @@Get:
4145     @@Set:
4146     ##HTMLBodyElement
4147    
4148     IF:
4149     @IFQName: HTMLBodyElementExtended
4150     @ClsQName: ManakaiDOMHTMLBodyElementExtended
4151    
4152     @IFISA: HTMLSectioningElementExtended
4153     @ClsISA: ManakaiDOMHTMLSectioningElementExtended
4154     @ClsISA: ManakaiDOMHTMLBodyElement
4155     ##HTMLBodyElementExtended
4156    
4157     ImplNote:
4158     @@lang:en
4159     @@@:
4160     <IF:HTMLFormElement>, <IF:HTMLSelectElement>,
4161     <IF:HTMLOptionElement>, <IF:HTMLOptGroupElement>,
4162     <IF:HTMLInputElement>, <IF:HTMLTextAreaElement>,
4163     <IF:HTMLButtonElement>, <IF:HTMLFieldSetElement>,
4164     <IF:HTMLLegendElement>: See <Module:WebForms>.
4165    
4166     FeatureDef:
4167     @QName: HTMLExtendedFeature
4168     @featureQName: ManakaiDOM|HTML
4169     @FeatureVerDef:
4170     @@QName: HTMLExtendedFeature30
4171     @@enDesc:
4172     Extended interfaces.
4173     @@DOMMain:requireFeature: HTMLFeature20
4174     @@DOMMain:requireFeature: DOMCore|CoreFeature30
4175     @@DOMMetaImpl:instanceFeatureOf: HTMLExtendedFeature
4176     @@Version: 3.0
4177    
4178     IF:
4179     @IFQName: HTMLListElementExtended
4180     @ClsQName: ManakaiDOMHTMLListElementExtended
4181     @DOMMain:implementFeature: HTMLExtendedFeature30
4182    
4183     @Method:
4184     @@Name: insertItem
4185     @@enDesc:
4186     Inserts a new empty item in the list. The new item is
4187     inserted immediately before the current <P::index>th
4188     item in the list.
4189     \
4190     If this node is a <HE::dl> element, a pair of
4191     <HE::dt> element and <HE::dd> element is
4192     inserted immediately before the <P::index>th <HE::dt> element.
4193     Otherwise, a <HE::li> element is inserted
4194     immediately before the <P::index>th <HE::li> element.
4195 wakaba 1.13 @@enImplNote:
4196     This behaviour may be changed if the HTML5 introduces
4197     the <QUOTE::di> element type which contains pair of <HE::dt>
4198     and <HE::dd> elements.
4199 wakaba 1.11 @@Param:
4200     @@@Name:index
4201     @@@Type:DOMMain|long||ManakaiDOM|all
4202     @@@enDesc:
4203     The item number where to insert a new item.
4204     The index starts from <DOM::0>.
4205     @@@InCase:
4206     @@@@enLabel:
4207     <DOM::-1> or equal to the number of items
4208     @@@@enDesc:
4209     The new item is appended.
4210     @@Return:
4211     @@@Type: HTMLElement
4212     @@@actualType: ManakaiDOMHTMLElement
4213     @@@enDesc:
4214     The newly created element. If this node is a <HE::dl>
4215     element, the newly created <HE::dt> element is returned.
4216     Otherwise, the <HE::li> element is returned.
4217     @@@RaiseException:
4218     @@@@@: MDOMX|NOMOD_THIS
4219     @@@@enDesc:
4220     This node is read-only.
4221     @@@RaiseException:
4222     @@@@@: DOMCore|DOMException.INDEX_SIZE_ERR
4223     @@@@enDesc:
4224     If the specified <P::index> is greater than
4225     the number of rows or if the <P::index> is a negative
4226     number other than <DOM::-1>.
4227     @@@PerlDef:
4228     @@@@ImplNote:
4229     @@@@@lang:en
4230     @@@@@@:
4231     For non-<HE::dl> elements.
4232     @@@@@:
4233     if ($self->{<Q::TreeCore:node>}->{<Q::DOMCore:read-only>}) {
4234     __EXCEPTION{
4235     MDOMX:NOMOD_THIS::
4236     }__;
4237     }
4238    
4239     my $before;
4240     my $after;
4241     __CODE{splitChildrenByElementIndex::
4242     $children => {[@{$self->{<Q::TreeCore:node>}
4243     ->{<Q::infoset:children>}}]},
4244     $before => $before, $after => $after,
4245     $elementType => 'li', $index => $index,
4246     }__;
4247    
4248     __DEEP{
4249     $r = $self-><AG::DOMCore:Node.ownerDocument>
4250     -><M::DOMCore:Document.createElementNS>
4251     (<Q::xhtml1:>, 'li');
4252     }__;
4253 wakaba 1.14 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4254 wakaba 1.11 ($r->{<Q::TreeCore:node>});
4255     $r->{<Q::TreeCore:node>}->{<Q::infoset:parent>}
4256     = $self->{<Q::TreeCore:node>};
4257     $self->{<Q::TreeCore:node>}->{<Q::infoset:children>}
4258     = [@$before, $r->{<Q::TreeCore:node>}, @$after];
4259    
4260     ##HTMLListElementExtended
4261    
4262     ElementTypeBinding:
4263     @Name: IFISA
4264     @ElementType:
4265     dis:ISA
4266     @ShadowContent:
4267     @@ForCheck: ManakaiDOM|ForIF
4268    
4269     ElementTypeBinding:
4270     @Name: ClsISA
4271     @ElementType:
4272     dis:ISA
4273     @ShadowContent:
4274     @@ForCheck: ManakaiDOM|ForClass
4275    
4276     IF:
4277     @IFQName: HTMLUListElementExtended
4278     @ClsQName: ManakaiDOMHTMLUListElementExtended
4279     @DOMMain:implementFeature: HTMLExtendedFeature30
4280    
4281     @IFISA: HTMLListElementExtended
4282    
4283     @ClsISA: ManakaiDOMHTMLListElementExtended
4284     @ClsISA: ManakaiDOMHTMLUListElement
4285     ##HTMLUListElementExtended
4286    
4287     IF:
4288     @IFQName: HTMLOListElementExtended
4289     @ClsQName: ManakaiDOMHTMLOListElementExtended
4290     @DOMMain:implementFeature: HTMLExtendedFeature30
4291    
4292     @IFISA: HTMLListElementExtended
4293    
4294     @ClsISA: ManakaiDOMHTMLListElementExtended
4295     @ClsISA: ManakaiDOMHTMLOListElement
4296     ##HTMLOListElementExtended
4297    
4298     IF:
4299     @IFQName: HTMLDListElementExtended
4300     @ClsQName: ManakaiDOMHTMLDListElementExtended
4301     @DOMMain:implementFeature: HTMLExtendedFeature30
4302    
4303     @IFISA: HTMLListElementExtended
4304    
4305     @ClsISA: ManakaiDOMHTMLListElementExtended
4306     @ClsISA: ManakaiDOMHTMLDListElement
4307    
4308     @Method:
4309     @@Name: insertItem
4310     @@ManakaiDOM:isRedefining:1
4311     @@ForCheck: ManakaiDOM|ForClass
4312     @@enDesc:
4313     Inserts a new empty pair of <HE::dt> and
4314     <HE::dd> elements in the list. The new item is
4315     inserted immediately before the current <P::index>th
4316     <HE::dt> element in the list.
4317     @@Param:
4318     @@@Name:index
4319     @@@Type:DOMMain|long||ManakaiDOM|all
4320     @@@enDesc:
4321     The item number where to insert a new item.
4322     The index starts from <DOM::0>.
4323     @@@InCase:
4324     @@@@enLabel:
4325     <DOM::-1> or equal to the number of items
4326     @@@@enDesc:
4327     The new item is appended.
4328     @@Return:
4329     @@@Type: HTMLElement
4330     @@@actualType: ManakaiDOMHTMLElement
4331     @@@enDesc:
4332     The newly created <HE::dt> element. Note that
4333     the new <HE::dd> element can be obtained by
4334     <AG::DOMCore:Node.nextSibling> attribute of the returned
4335     node.
4336     @@@RaiseException:
4337     @@@@@: MDOMX|NOMOD_THIS
4338     @@@@enDesc:
4339     This node is read-only.
4340     @@@RaiseException:
4341     @@@@@: DOMCore|DOMException.INDEX_SIZE_ERR
4342     @@@@enDesc:
4343     If the specified <P::index> is greater than
4344     the number of rows or if the <P::index> is a negative
4345     number other than <DOM::-1>.
4346     @@@PerlDef:
4347     @@@@ImplNote:
4348     @@@@@lang:en
4349     @@@@@@:
4350     For non-<HE::dl> elements.
4351     @@@@@:
4352     if ($self->{<Q::TreeCore:node>}->{<Q::DOMCore:read-only>}) {
4353     __EXCEPTION{
4354     MDOMX:NOMOD_THIS::
4355     }__;
4356     }
4357    
4358     my $before;
4359     my $after;
4360     __CODE{splitChildrenByElementIndex::
4361     $children => {[@{$self->{<Q::TreeCore:node>}
4362     ->{<Q::infoset:children>}}]},
4363     $before => $before, $after => $after,
4364     $elementType => 'dt', $index => $index,
4365     }__;
4366    
4367     my $dd;
4368     __DEEP{
4369     my $od = $self-><AG::DOMCore:Node.ownerDocument>;
4370     $r = $od-><M::DOMCore:Document.createElementNS>
4371     (<Q::xhtml1:>, 'dt');
4372     $dd = $od-><M::DOMCore:Document.createElementNS>
4373     (<Q::xhtml1:>, 'dd');
4374     }__;
4375 wakaba 1.14 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4376 wakaba 1.11 ($r->{<Q::TreeCore:node>});
4377     $r->{<Q::TreeCore:node>}->{<Q::infoset:parent>}
4378     = $self->{<Q::TreeCore:node>};
4379 wakaba 1.14 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4380 wakaba 1.11 ($dd->{<Q::TreeCore:node>});
4381     $dd->{<Q::TreeCore:node>}->{<Q::infoset:parent>}
4382     = $self->{<Q::TreeCore:node>};
4383     $self->{<Q::TreeCore:node>}->{<Q::infoset:children>}
4384     = [@$before, $r->{<Q::TreeCore:node>},
4385     $dd->{<Q::TreeCore:node>}, @$after];
4386    
4387     ##HTMLDListElementExtended
4388    
4389     ResourceDef:
4390     @QName: splitChildrenByElementIndex
4391     @rdf:type: dis2pm|BlockCode
4392     @enDesc:
4393     Splits a child node list into two groups: nodes before
4394     <P::index>th <P::elementType> element node (not inclusive) and
4395     any remind nodes.
4396     @PerlDef:
4397     my $__i = 0;
4398 wakaba 1.12 $before = [];
4399 wakaba 1.11 $after = $children;
4400     FIND: {
4401 wakaba 1.12 if ($index == -1) {
4402     $before = $after;
4403     $after = [];
4404     last FIND;
4405     }
4406 wakaba 1.11 while (my $__co = shift @$after) {
4407     if ($__co->{<Q::DOMCore:nodeType>} eq <Q::infoset:Element> and
4408     <Code::isHTMLElemento:: $elementNodeo = $__co,
4409     $elementType = $elementType>) {
4410     if ($index == $__i++) { ## Position found
4411     unshift @$after, $__co;
4412     last FIND;
4413     } else {
4414     push @$before, $__co;
4415     }
4416     } else {
4417     push @$before, $__co;
4418     }
4419     }
4420     last FIND if $index == $__i; ## Equal to number
4421    
4422     __EXCEPTION{DOMCore:ManakaiDOMException.INDEX_SIZE_ERR::
4423     MDOMX:param-name => 'index',
4424     }__
4425     } # FIND
4426    
4427 wakaba 1.1
4428 wakaba 1.11 ElementTypeBinding:
4429     @Name: enLabel
4430     @ElementType:
4431     dis:Label
4432     @ShadowContent:
4433     @@lang:en
4434 wakaba 1.2
4435 wakaba 1.4 ET:
4436     @ETQName:
4437     xhtml1:ul
4438     @IFQName: HTMLUListElement
4439     @ClsQName: ManakaiDOMHTMLUListElement
4440     @ISAHTMLElement:
4441     @L1IF:
4442    
4443     @ATTR:
4444 wakaba 1.2 @@Name: compact
4445 wakaba 1.4 @@Deprecated:
4446 wakaba 1.11 @@ReflectBoolean:
4447 wakaba 1.1 @@Get:
4448 wakaba 1.2 @@@InCase:
4449     @@@@Value: true
4450     @@@InCase:
4451     @@@@Value: false
4452     @@Set:
4453     @@@InCase:
4454     @@@@Value: true
4455     @@@InCase:
4456     @@@@Value: false
4457 wakaba 1.4 @ATTR:
4458 wakaba 1.2 @@Name: type
4459 wakaba 1.4 @@Deprecated:
4460 wakaba 1.11 @@ReflectCDATA:
4461 wakaba 1.1 @@Get:
4462     @@Set:
4463 wakaba 1.2
4464 wakaba 1.4 ET:
4465     @ETQName:
4466     xhtml1:ol
4467     @IFQName: HTMLOListElement
4468     @ClsQName:ManakaiDOMHTMLOListElement
4469     @ISAHTMLElement:
4470     @L1IF:
4471    
4472     @ATTR:
4473 wakaba 1.2 @@Name: compact
4474 wakaba 1.4 @@Deprecated:
4475 wakaba 1.11 @@ReflectBoolean:
4476 wakaba 1.1 @@Get:
4477 wakaba 1.2 @@@InCase:
4478     @@@@Value: true
4479     @@@InCase:
4480     @@@@Value: false
4481 wakaba 1.1 @@Set:
4482 wakaba 1.2 @@@InCase:
4483     @@@@Value: true
4484     @@@InCase:
4485     @@@@Value: false
4486 wakaba 1.4 @ATTR:
4487 wakaba 1.2 @@Name: start
4488 wakaba 1.4 @@Deprecated:
4489 wakaba 1.11 @@ReflectNumeric:
4490 wakaba 1.1 @@Get:
4491     @@Set:
4492     @Attr:
4493 wakaba 1.2 @@Name: type
4494 wakaba 1.4 @@Deprecated:
4495 wakaba 1.11 @@ReflectCDATA:
4496 wakaba 1.1 @@Get:
4497     @@Set:
4498 wakaba 1.2
4499 wakaba 1.4 ET:
4500     @ETQName:
4501     xhtml1:dl
4502     @IFQName: HTMLDListElement
4503     @ClsQName: ManakaiDOMHTMLDListElement
4504     @ISAHTMLElement:
4505     @L1IF:
4506    
4507     @ATTR:
4508 wakaba 1.2 @@Name: compact
4509 wakaba 1.4 @@Deprecated:
4510 wakaba 1.11 @@ReflectBoolean:
4511 wakaba 1.1 @@Get:
4512 wakaba 1.2 @@@InCase:
4513     @@@@Value: true
4514     @@@InCase:
4515     @@@@Value: false
4516 wakaba 1.1 @@Set:
4517 wakaba 1.2 @@@InCase:
4518     @@@@Value: true
4519     @@@InCase:
4520     @@@@Value: false
4521    
4522 wakaba 1.4 ET:
4523     @ETQName:
4524     xhtml1:dir
4525     @IFQName: HTMLDirectoryElement
4526     @ClsQName: ManakaiDOMHTMLDirectoryElement
4527     @ISAHTMLElement:
4528     @L1IF:
4529     @Deprecated:
4530    
4531 wakaba 1.1 @Attr:
4532 wakaba 1.2 @@Name: compact
4533 wakaba 1.4 @@Deprecated:
4534 wakaba 1.11 @@ReflectBoolean:
4535 wakaba 1.1 @@Get:
4536 wakaba 1.2 @@@InCase:
4537     @@@@Value: true
4538     @@@InCase:
4539     @@@@Value: false
4540 wakaba 1.1 @@Set:
4541 wakaba 1.2 @@@InCase:
4542     @@@@Value: true
4543     @@@InCase:
4544     @@@@Value: false
4545 wakaba 1.1
4546 wakaba 1.4 ET:
4547     @ETQName:
4548     xhtml1:menu
4549     @IFQName: HTMLMenuElement
4550     @ClsQName: ManakaiDOMHTMLMenuElement
4551     @ISAHTMLElement:
4552     @L1IF:
4553     @Deprecated:
4554    
4555     @ATTR:
4556 wakaba 1.2 @@Name: compact
4557 wakaba 1.4 @@Deprecated:
4558 wakaba 1.11 @@ReflectBoolean:
4559 wakaba 1.1 @@Get:
4560     @@@InCase:
4561 wakaba 1.2 @@@@Value: true
4562 wakaba 1.1 @@@InCase:
4563 wakaba 1.2 @@@@Value: false
4564     @@Set:
4565 wakaba 1.1 @@@InCase:
4566     @@@@Value: true
4567     @@@InCase:
4568     @@@@Value: false
4569 wakaba 1.2
4570 wakaba 1.4 ET:
4571     @ETQName:
4572     xhtml1:li
4573     @IFQName: HTMLLIElement
4574     @ClsQName: ManakaiDOMHTMLLIElement
4575     @ISAHTMLElement:
4576     @L1IF:
4577    
4578     @ATTR:
4579 wakaba 1.1 @@Name: type
4580 wakaba 1.4 @@Deprecated:
4581 wakaba 1.11 @@ReflectCDATA:
4582 wakaba 1.1 @@Get:
4583     @@Set:
4584     @Attr:
4585     @@Name: value
4586 wakaba 1.4 @@Deprecated:
4587 wakaba 1.11 @@ReflectNumeric:
4588 wakaba 1.1 @@Get:
4589     @@Set:
4590 wakaba 1.2
4591 wakaba 1.4 ET:
4592     @ETQName:
4593     xhtml1:div
4594     @IFQName: HTMLDivElement
4595     @ClsQName: ManakaiDOMHTMLDivElement
4596     @ISAHTMLElement:
4597     @L1IF:
4598    
4599     @ATTR:
4600 wakaba 1.1 @@Name: align
4601 wakaba 1.4 @@Deprecated:
4602 wakaba 1.11 @@ReflectEnum:
4603 wakaba 1.1 @@Get:
4604     @@Set:
4605 wakaba 1.2
4606 wakaba 1.4 ET:
4607     @ETQName:
4608     xhtml1:p
4609     @IFQName: HTMLParagraphElement
4610     @ClsQName: ManakaiDOMHTMLParagraphElement
4611     @ISAHTMLElement:
4612     @L1IF:
4613    
4614     @ATTR:
4615 wakaba 1.1 @@Name: align
4616 wakaba 1.4 @@Deprecated:
4617 wakaba 1.11 @@ReflectEnum:
4618 wakaba 1.1 @@Get:
4619     @@Set:
4620 wakaba 1.2
4621 wakaba 1.4 ForDef:
4622     @QName:
4623     DOMHTML:ForH1
4624     ForDef:
4625     @QName:
4626     DOMHTML:ForH2
4627     ForDef:
4628     @QName:
4629     DOMHTML:ForH3
4630     ForDef:
4631     @QName:
4632     DOMHTML:ForH4
4633     ForDef:
4634     @QName:
4635     DOMHTML:ForH5
4636     ForDef:
4637     @QName:
4638     DOMHTML:ForH6
4639    
4640 wakaba 1.1 IF:
4641 wakaba 1.11 @IFQName: HTMLParagraphElementExtended
4642     @ClsQName: ManakaiDOMHTMLParagraphElementExtended
4643     @DOMMain:implementFeature: HTMLExtendedFeature30
4644    
4645     @IFISA: HTMLBlockContainerExtended
4646     @IFISA: HTMLParagraphElement
4647    
4648     @ClsISA: ManakaiDOMHTMLBlockContainerExtended
4649     @ClsISA: ManakaiDOMHTMLParagraphElement
4650     ##HTMLParagraphElementExtended
4651    
4652     IF:
4653     @IFQName: HTMLHeadingElementExtended
4654     @ClsQName: ManakaiDOMHTMLHeadingElementExtended
4655     @DOMMain:implementFeature: HTMLExtendedFeature30
4656    
4657 wakaba 1.14 @IFISA: HTMLStrictlyInlineContainerExtended
4658 wakaba 1.11 @IFISA: HTMLHeadingElement
4659    
4660 wakaba 1.14 @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
4661 wakaba 1.11 @ClsISA: ManakaiDOMHTMLHeadingElement
4662     ##HTMLHeadingElementExtended
4663    
4664     IF:
4665 wakaba 1.4 @For: ForHTML
4666     @rdf:type:
4667     @@@:
4668     dis:MultipleResource
4669     @@For: ForHTML
4670     @@ForCheck:
4671     !ManakaiDOM:ForIF !ManakaiDOM:ForClass
4672     !ForH1 !ForH2 !ForH3 !ForH4 !ForH5 !ForH6
4673     @resourceFor:
4674     @@@: ForH1
4675     @@For: ForHTML
4676     @resourceFor:
4677     @@@: ForH2
4678     @@For: ForHTML
4679     @resourceFor:
4680     @@@: ForH3
4681     @@For: ForHTML
4682     @resourceFor:
4683     @@@: ForH4
4684     @@For: ForHTML
4685     @resourceFor:
4686     @@@: ForH5
4687     @@For: ForHTML
4688     @resourceFor:
4689     @@@: ForH6
4690     @@For: ForHTML
4691     @rdf:type:
4692     @@@:
4693     s:ElementType
4694     @@For:ForHTML
4695    
4696 wakaba 1.8 @ETQName:
4697 wakaba 1.4 @@@:
4698 wakaba 1.2 xhtml1:h1
4699 wakaba 1.4 @@ForCheck: ForH1
4700 wakaba 1.8 @ETQName:
4701 wakaba 1.4 @@@:
4702 wakaba 1.2 xhtml1:h2
4703 wakaba 1.4 @@ForCheck: ForH2
4704 wakaba 1.8 @ETQName:
4705 wakaba 1.4 @@@:
4706 wakaba 1.2 xhtml1:h3
4707 wakaba 1.4 @@ForCheck: ForH3
4708 wakaba 1.8 @ETQName:
4709 wakaba 1.4 @@@:
4710 wakaba 1.2 xhtml1:h4
4711 wakaba 1.4 @@ForCheck: ForH4
4712 wakaba 1.8 @ETQName:
4713 wakaba 1.4 @@@:
4714 wakaba 1.2 xhtml1:h5
4715 wakaba 1.4 @@ForCheck: ForH5
4716 wakaba 1.8 @ETQName:
4717 wakaba 1.4 @@@:
4718 wakaba 1.2 xhtml1:h6
4719 wakaba 1.4 @@ForCheck: ForH6
4720 wakaba 1.8
4721     @s:elementType:
4722     @@@: ||ForHTML40SE||ForH1
4723     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4724     @@ContentType: DISCore|TFPQName
4725     @@DISCore:stopISARecursive:1
4726     @s:elementType:
4727     @@@: ||ForHTML401||ForH1
4728     @@ForCheck: ManakaiDOM|DOM2
4729     @@ContentType: DISCore|TFPQNames
4730     @@DISCore:stopISARecursive:1
4731     @s:elementType:
4732     @@@: ||ForXHTML10SE||ForH1
4733     @@ForCheck: ManakaiDOM|DOM2
4734     @@ContentType: DISCore|TFPQNames
4735     @@DISCore:stopISARecursive:1
4736     @s:elementType:
4737     @@@: ||ForHTML40SE||ForH2
4738     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4739     @@ContentType: DISCore|TFPQNames
4740     @s:elementType:
4741     @@@: ||ForHTML401||ForH2
4742     @@ForCheck: ManakaiDOM|DOM2
4743     @@ContentType: DISCore|TFPQNames
4744     @s:elementType:
4745     @@@: ||ForXHTML10SE||ForH2
4746     @@ForCheck: ManakaiDOM|DOM2
4747     @@ContentType: DISCore|TFPQNames
4748     @s:elementType:
4749     @@@: ||ForHTML40SE||ForH3
4750     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4751     @@ContentType: DISCore|TFPQNames
4752     @s:elementType:
4753     @@@: ||ForHTML401||ForH3
4754     @@ForCheck: ManakaiDOM|DOM2
4755     @@ContentType: DISCore|TFPQNames
4756     @s:elementType:
4757     @@@: ||ForXHTML10SE||ForH3
4758     @@ForCheck: ManakaiDOM|DOM2
4759     @@ContentType: DISCore|TFPQNames
4760     @s:elementType:
4761     @@@: ||ForHTML40SE||ForH4
4762     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4763     @@ContentType: DISCore|TFPQNames
4764     @s:elementType:
4765     @@@: ||ForHTML401||ForH4
4766     @@ForCheck: ManakaiDOM|DOM2
4767     @@ContentType: DISCore|TFPQNames
4768     @s:elementType:
4769     @@@: ||ForXHTML10SE||ForH4
4770     @@ForCheck: ManakaiDOM|DOM2
4771     @@ContentType: DISCore|TFPQNames
4772     @s:elementType:
4773     @@@: ||ForHTML40SE||ForH5
4774     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4775     @@ContentType: DISCore|TFPQNames
4776     @s:elementType:
4777     @@@: ||ForHTML401||ForH5
4778     @@ForCheck: ManakaiDOM|DOM2
4779     @@ContentType: DISCore|TFPQNames
4780     @s:elementType:
4781     @@@: ||ForXHTML10SE||ForH5
4782     @@ForCheck: ManakaiDOM|DOM2
4783     @@ContentType: DISCore|TFPQNames
4784     @s:elementType:
4785     @@@: ||ForHTML40SE||ForH6
4786     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4787     @@ContentType: DISCore|TFPQNames
4788     @s:elementType:
4789     @@@: ||ForHTML401||ForH6
4790     @@ForCheck: ManakaiDOM|DOM2
4791     @@ContentType: DISCore|TFPQNames
4792     @s:elementType:
4793     @@@: ||ForXHTML10SE||ForH6
4794     @@ForCheck: ManakaiDOM|DOM2
4795     @@ContentType: DISCore|TFPQNames
4796 wakaba 1.4
4797     @IFQName: HTMLHeadingElement
4798     @ClsQName: ManakaiDOMHTMLHeadingElement
4799     @ISAHTMLElement:
4800     @L1IF:
4801    
4802 wakaba 1.11 @Attrs:
4803 wakaba 1.1 @@Name: align
4804 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForH1
4805     @@docAttrP2S: ||ForHTML401||ForH1
4806     @@docAttrP2X: ||ForXHTML10SE||ForH1
4807     @@docAttrP1S: ||ForHTML40SE||ForH2
4808     @@docAttrP2S: ||ForHTML401||ForH2
4809     @@docAttrP2X: ||ForXHTML10SE||ForH2
4810     @@docAttrP1S: ||ForHTML40SE||ForH3
4811     @@docAttrP2S: ||ForHTML401||ForH3
4812     @@docAttrP2X: ||ForXHTML10SE||ForH3
4813     @@docAttrP1S: ||ForHTML40SE||ForH4
4814     @@docAttrP2S: ||ForHTML401||ForH4
4815     @@docAttrP2X: ||ForXHTML10SE||ForH4
4816     @@docAttrP1S: ||ForHTML40SE||ForH5
4817     @@docAttrP2S: ||ForHTML401||ForH5
4818     @@docAttrP2X: ||ForXHTML10SE||ForH5
4819     @@docAttrP1S: ||ForHTML40SE||ForH6
4820     @@docAttrP2S: ||ForHTML401||ForH6
4821     @@docAttrP2X: ||ForXHTML10SE||ForH6
4822 wakaba 1.4 @@Deprecated:
4823 wakaba 1.11 @@ReflectEnum:
4824 wakaba 1.1 @@Get:
4825     @@Set:
4826 wakaba 1.11
4827     ElementTypeBinding:
4828     @Name: docAttrP1S
4829     @ElementType:
4830     dis:DocAttr
4831     @ShadowContent:
4832     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4833     @@ContentType: DISCore|TFPQNames
4834     ElementTypeBinding:
4835     @Name: docAttrP2
4836     @ElementType:
4837     dis:DocAttr
4838     @ShadowContent:
4839     @@ForCheck: ManakaiDOM|DOM2
4840     @@ContentType: DISCore|TFPQNames
4841     ElementTypeBinding:
4842     @Name: docAttrP2X
4843     @ElementType:
4844     dis:DocAttr
4845     @ShadowContent:
4846     @@ForCheck: ManakaiDOM|DOM2
4847     @@ContentType: DISCore|TFPQNames
4848 wakaba 1.2
4849 wakaba 1.4 ElementTypeBinding:
4850     @Name: IFDef
4851     @ElementType:
4852     dis:ResourceDef
4853     @ShadowContent:
4854     @@rdf:type:
4855     ManakaiDOM:IF
4856     @@ISA:
4857     @@@@:
4858     ::ManakaiDOM:ManakaiDOM
4859     @@@For:
4860     ManakaiDOM:ManakaiDOM1
4861    
4862     IFDef:
4863 wakaba 1.3 @Name:HTMLBlockquoteElement
4864     @ISA:HTMLElement
4865     @Description:
4866     @@lang:en
4867     @@@:
4868     The <IF:HTMLBlockquoteElement> interface was contained
4869     in the DOM Level 1 First Edition by error. The
4870     <IF:HTMLQuoteElement> interface should must used instead.
4871     <SRC:DOM Level 1 Errata>
4872     @Attr:
4873     @@Name:cite
4874     @@Get:
4875     @@@Type:
4876     DOMMain:DOMString
4877     @@Set:
4878     @@@Type:
4879     DOMMain:DOMString
4880 wakaba 1.4 @ForCheck:
4881     =ManakaiDOM:DOM1
4882    
4883     ForDef:
4884     @QName:
4885     DOMHTML:ForBlockquote
4886     ForDef:
4887     @QName:
4888     DOMHTML:ForQ
4889 wakaba 1.3
4890     IF:
4891 wakaba 1.4 @For:ForHTML
4892     @rdf:type:
4893     @@@:
4894     dis:MultipleResource
4895     @@ForCheck: ForHTML
4896     @@ForCheck:
4897     !ManakaiDOM:ForIF !ManakaiDOM:ForClass
4898     !ForBlockquote !ForQ
4899     @resourceFor:
4900     @@@:ForBlockquote
4901     @@ForCheck:ForHTML
4902     @resourceFor:
4903     @@@:ForQ
4904     @@ForCheck:ForHTML
4905     @rdf:type:
4906     @@@:
4907     s:ElementType
4908     @@For:ForHTML
4909    
4910     @ETQName:
4911     @@@:
4912 wakaba 1.2 xhtml1:blockquote
4913 wakaba 1.4 @@ForCheck:ForBlockquote
4914     @ETQName:
4915     @@@:
4916 wakaba 1.2 xhtml1:q
4917 wakaba 1.4 @@ForCheck:ForQ
4918    
4919     @IFQName: HTMLQuoteElement
4920     @ClsQName: ManakaiDOMHTMLQuoteElement
4921     @ISAHTMLElement:
4922     @L1IF:
4923    
4924 wakaba 1.8 @s:elementType:
4925     @@@: ||ForHTML40SE||ForBlockquote
4926     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4927     @@ContentType: DISCore|TFPQNames
4928     @@DISCore:stopISARecursive:1
4929     @s:elementType:
4930     @@@: ||ForHTML401||ForBlockquote
4931     @@ForCheck: ManakaiDOM|DOM2
4932     @@ContentType: DISCore|TFPQNames
4933     @@DISCore:stopISARecursive:1
4934     @s:elementType:
4935     @@@: ||ForXHTML10SE||ForBlockquote
4936     @@ForCheck: ManakaiDOM|DOM2
4937     @@ContentType: DISCore|TFPQNames
4938     @@DISCore:stopISARecursive:1
4939    
4940     @s:elementType:
4941     @@@: ||ForHTML40SE||ForQ
4942     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
4943     @@ContentType: DISCore|TFPQNames
4944     @s:elementType:
4945     @@@: ||ForHTML401||ForQ
4946     @@ForCheck: ManakaiDOM|DOM2
4947     @@ContentType: DISCore|TFPQNames
4948     @s:elementType:
4949     @@@: ||ForXHTML10SE||ForQ
4950     @@ForCheck: ManakaiDOM|DOM2
4951     @@ContentType: DISCore|TFPQNames
4952    
4953 wakaba 1.11 @Attrs:
4954 wakaba 1.1 @@Name: cite
4955 wakaba 1.11 @@ReflectURI:
4956     @@docAttrP1S: ||ForHTML40SE||ForQ
4957     @@docAttrP2S: ||ForHTML401||ForQ
4958     @@docAttrP2X: ||ForXHTML10SE||ForQ
4959     @@docAttrP1S: ||ForHTML40SE||ForBlockquote
4960     @@docAttrP2S: ||ForHTML401||ForBlockquote
4961     @@docAttrP2X: ||ForXHTML10SE||ForBlockquote
4962 wakaba 1.1 @@Get:
4963     @@Set:
4964 wakaba 1.2
4965 wakaba 1.8 ElementTypeBinding:
4966     @Name: elementType
4967     @ElementType:
4968     s:elementType
4969     @ShadowContent:
4970     @@DISCore:stopISARecursive:1
4971    
4972 wakaba 1.4 ET:
4973     @ETQName:
4974     xhtml1:pre
4975     @IFQName: HTMLPreElement
4976     @ClsQName: ManakaiDOMHTMLPreElement
4977     @ISAHTMLElement:
4978     @L1IF:
4979    
4980     @ATTR:
4981 wakaba 1.1 @@Name: width
4982 wakaba 1.4 @@Deprecated:1
4983 wakaba 1.11 @@ReflectNumeric:
4984 wakaba 1.1 @@Get:
4985     @@Set:
4986 wakaba 1.2
4987 wakaba 1.4 ET:
4988     @ETQName:
4989     xhtml1:br
4990     @IFQName: HTMLBRElement
4991     @ClsQName:ManakaiDOMHTMLBRElement
4992     @ISAHTMLElement:
4993     @L1IF:
4994    
4995     @ATTR:
4996 wakaba 1.1 @@Name: clear
4997 wakaba 1.4 @@Deprecated:1
4998 wakaba 1.11 @@ReflectCDATA:
4999 wakaba 1.1 @@Get:
5000     @@Set:
5001 wakaba 1.2
5002 wakaba 1.4 ET:
5003     @ETQName:
5004     xhtml1:basefont
5005     @IFQName: HTMLBaseFontElement
5006     @ClsQName:ManakaiDOMHTMLBaseFontElement
5007     @ISAHTMLElement:
5008     @L1IF:
5009     @Deprecated:
5010    
5011     @ATTR:
5012 wakaba 1.1 @@Name: color
5013 wakaba 1.4 @@Deprecated:
5014 wakaba 1.11 @@ReflectCDATA:
5015 wakaba 1.1 @@Get:
5016     @@Set:
5017 wakaba 1.7 @ATTR:
5018 wakaba 1.1 @@Name: face
5019 wakaba 1.4 @@Deprecated:
5020 wakaba 1.11 @@ReflectCDATA:
5021 wakaba 1.1 @@Get:
5022     @@Set:
5023 wakaba 1.4 @ATTR:
5024 wakaba 1.1 @@Name: size
5025 wakaba 1.2 @@Description:
5026     @@@lang:en
5027     @@@@:Computed font size.
5028 wakaba 1.4 @@@For:
5029     ManakaiDOM:DOM2
5030     @@Deprecated:
5031 wakaba 1.11 @@Type:
5032     @@@@:
5033     DOMMain:long
5034     @@@For:
5035     ManakaiDOM:DOM2
5036     @@actualType:
5037     @@@@: Numeric
5038     @@@For: ManakaiDOM|DOM2
5039     @@Type:
5040     @@@@:
5041     DOMMain:DOMString
5042     @@@For:
5043     ManakaiDOM:DOM1 !ManakaiDOM:DOM2
5044     @@actualType:
5045     @@@@: CDATADOMString
5046     @@@For: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
5047 wakaba 1.1 @@Get:
5048 wakaba 1.11 @@@ImplNote:
5049     @@@@lang:en
5050     @@@@@:
5051     TODO: Computed value should be returned.
5052     In DOM Level 1, it was <EM:not> the computed value
5053     and the type was <TYPE:DOMString>.
5054 wakaba 1.1 @@Set:
5055     @@Level[list]:
5056 wakaba 1.2 1
5057 wakaba 1.1 2
5058     @@SpecLevel[list]:
5059 wakaba 1.2 1
5060 wakaba 1.1 2
5061 wakaba 1.2
5062 wakaba 1.4 ET:
5063     @ETQName:
5064     xhtml1:font
5065     @IFQName: HTMLFontElement
5066     @ClsQName:ManakaiDOMHTMLFontElement
5067     @ISAHTMLElement:
5068     @Deprecated:
5069     @L1IF:
5070    
5071     @ATTR:
5072 wakaba 1.1 @@Name: color
5073 wakaba 1.4 @@Deprecated:
5074 wakaba 1.11 @@ReflectCDATA:
5075 wakaba 1.1 @@Get:
5076     @@Set:
5077 wakaba 1.7 @ATTR:
5078 wakaba 1.1 @@Name: face
5079 wakaba 1.4 @@Deprecated:
5080 wakaba 1.11 @@ReflectCDATA:
5081 wakaba 1.1 @@Get:
5082     @@Set:
5083 wakaba 1.7 @ATTR:
5084 wakaba 1.1 @@Name: size
5085 wakaba 1.4 @@Deprecated:
5086 wakaba 1.2 @@ImplNote:
5087     @@@lang:en
5088     @@@@:
5089     This is <EM:not> the computed size.
5090 wakaba 1.11 @@ReflectCDATA:
5091 wakaba 1.1 @@Get:
5092     @@Set:
5093 wakaba 1.2
5094 wakaba 1.4 ET:
5095     @ETQName:
5096     xhtml1:hr
5097     @IFQName: HTMLHRElement
5098     @ClsQName:ManakaiDOMHTMLHRElement
5099     @ISAHTMLElement:
5100     @L1IF:
5101    
5102     @ATTR:
5103 wakaba 1.1 @@Name: align
5104 wakaba 1.4 @@Deprecated:
5105 wakaba 1.11 @@ReflectEnum:
5106 wakaba 1.1 @@Get:
5107     @@Set:
5108 wakaba 1.4 @ATTR:
5109     @@AName:noshade
5110     @@DOMAName: noShade
5111     @@Deprecated:
5112 wakaba 1.11 @@ReflectBoolean:
5113 wakaba 1.1 @@Get:
5114     @@@InCase:
5115     @@@@Value: true
5116     @@@InCase:
5117     @@@@Value: false
5118     @@Set:
5119     @@@InCase:
5120     @@@@Value: true
5121     @@@InCase:
5122     @@@@Value: false
5123 wakaba 1.4 @ATTR:
5124 wakaba 1.1 @@Name: size
5125 wakaba 1.4 @@Deprecated:
5126 wakaba 1.11 @@ReflectCDATA:
5127 wakaba 1.1 @@Get:
5128     @@Set:
5129 wakaba 1.4 @ATTR:
5130 wakaba 1.1 @@Name: width
5131 wakaba 1.4 @@Deprecated:
5132 wakaba 1.11 @@ReflectCDATA:
5133 wakaba 1.1 @@Get:
5134     @@Set:
5135 wakaba 1.2
5136 wakaba 1.4 ForDef:
5137     @QName:
5138     DOMHTML:ForIns
5139     ForDef:
5140     @QName:
5141     DOMHTML:ForDel
5142    
5143     IF:
5144     @For:ForHTML
5145     @rdf:type:
5146     @@@:
5147     dis:MultipleResource
5148     @@ForCheck:
5149     !ManakaiDOM:ForIF !ManakaiDOM:ForClass
5150     !ForIns !ForDel
5151     @@For: ForHTML
5152     @resourceFor:
5153     @@@: ForIns
5154     @@For:ForHTML
5155     @resourceFor:
5156     @@@: ForDel
5157     @@For:ForHTML
5158     @rdf:type:
5159     @@@:
5160     s:ElementType
5161     @@For:ForHTML
5162    
5163     @ETQName:
5164     @@@:
5165 wakaba 1.2 xhtml1:ins
5166 wakaba 1.4 @@ForCheck:ForIns
5167     @ETQName:
5168     @@@:
5169 wakaba 1.2 xhtml1:del
5170 wakaba 1.4 @@ForCheck:ForDel
5171    
5172 wakaba 1.8 @elementType:
5173     @@@: ||ForHTML40SE||ForIns
5174     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
5175     @@ContentType: DISCore|TFPQNames
5176     @elementType:
5177     @@@: ||ForHTML401||ForIns
5178     @@ForCheck: ManakaiDOM|DOM2
5179     @@ContentType: DISCore|TFPQNames
5180     @elementType:
5181     @@@: ||ForXHTML10SE||ForIns
5182     @@ForCheck: ManakaiDOM|DOM2
5183     @@ContentType: DISCore|TFPQNames
5184    
5185     @elementType:
5186     @@@: ||ForHTML40SE||ForDel
5187     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
5188     @@ContentType: DISCore|TFPQNames
5189     @elementType:
5190     @@@: ||ForHTML401||ForDel
5191     @@ForCheck: ManakaiDOM|DOM2
5192     @@ContentType: DISCore|TFPQNames
5193     @elementType:
5194     @@@: ||ForXHTML10SE||ForDel
5195     @@ForCheck: ManakaiDOM|DOM2
5196     @@ContentType: DISCore|TFPQNames
5197    
5198 wakaba 1.4 @IFQName: HTMLModElement
5199     @ClsQName:ManakaiDOMHTMLModElement
5200     @ISAHTMLElement:
5201     @L1IF:
5202    
5203 wakaba 1.11 @Attrs:
5204 wakaba 1.1 @@Name: cite
5205 wakaba 1.11 @@ReflectURI:
5206 wakaba 1.1 @@Get:
5207     @@Set:
5208 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForIns
5209     @@docAttrP2S: ||ForHTML401||ForIns
5210     @@docAttrP2X: ||ForXHTML10SE||ForIns
5211     @@docAttrP1S: ||ForHTML40SE||ForDel
5212     @@docAttrP2S: ||ForHTML401||ForDel
5213     @@docAttrP2X: ||ForXHTML10SE||ForDel
5214     @Attrs:
5215 wakaba 1.4 @@AName: datetime
5216     @@DOMAName: dateTime
5217 wakaba 1.11 @@ReflectCDATA:
5218 wakaba 1.1 @@Get:
5219     @@Set:
5220 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForIns
5221     @@docAttrP2S: ||ForHTML401||ForIns
5222     @@docAttrP2X: ||ForXHTML10SE||ForIns
5223     @@docAttrP1S: ||ForHTML40SE||ForDel
5224     @@docAttrP2S: ||ForHTML401||ForDel
5225     @@docAttrP2X: ||ForXHTML10SE||ForDel
5226 wakaba 1.2
5227 wakaba 1.4 ET:
5228     @ETQName:
5229     xhtml1:a
5230     @IFQName: HTMLAnchorElement
5231     @ClsQName:ManakaiDOMHTMLAnchorElement
5232     @ISAHTMLElement:
5233     @L1IF:
5234    
5235     @ATTR:
5236     @@AName:accesskey
5237     @@DOMAName: accessKey
5238 wakaba 1.11 @@ReflectCDATA:
5239 wakaba 1.1 @@Get:
5240     @@Set:
5241 wakaba 1.4 @ATTR:
5242 wakaba 1.1 @@Name: charset
5243 wakaba 1.11 @@ReflectCDATA:
5244 wakaba 1.1 @@Get:
5245     @@Set:
5246 wakaba 1.4 @ATTR:
5247 wakaba 1.1 @@Name: coords
5248 wakaba 1.11 @@ReflectCDATA:
5249 wakaba 1.1 @@Get:
5250     @@Set:
5251 wakaba 1.4 @ATTR:
5252 wakaba 1.1 @@Name: href
5253 wakaba 1.11 @@ReflectURI:
5254 wakaba 1.1 @@Get:
5255     @@Set:
5256 wakaba 1.4 @ATTR:
5257 wakaba 1.1 @@Name: hreflang
5258 wakaba 1.11 @@ReflectCDATA:
5259 wakaba 1.1 @@Get:
5260     @@Set:
5261 wakaba 1.4 @ATTR:
5262 wakaba 1.1 @@Name: name
5263 wakaba 1.11 @@ReflectCDATA:
5264 wakaba 1.1 @@Get:
5265     @@Set:
5266 wakaba 1.4 @ATTR:
5267 wakaba 1.1 @@Name: rel
5268 wakaba 1.11 @@ReflectCDATA:
5269 wakaba 1.1 @@Get:
5270     @@Set:
5271 wakaba 1.4 @ATTR:
5272 wakaba 1.1 @@Name: rev
5273 wakaba 1.11 @@ReflectCDATA:
5274 wakaba 1.1 @@Get:
5275     @@Set:
5276 wakaba 1.4 @ATTR:
5277 wakaba 1.1 @@Name: shape
5278 wakaba 1.11 @@ReflectCDATA:
5279 wakaba 1.1 @@Get:
5280     @@Set:
5281 wakaba 1.4 @ATTR:
5282     @@AName:tabindex
5283     @@DOMAName: tabIndex
5284 wakaba 1.11 @@ReflectNumeric:
5285 wakaba 1.1 @@Get:
5286     @@Set:
5287 wakaba 1.4 @ATTR:
5288 wakaba 1.1 @@Name: target
5289 wakaba 1.11 @@ReflectCDATA:
5290 wakaba 1.1 @@Get:
5291     @@Set:
5292 wakaba 1.4 @ATTR:
5293 wakaba 1.1 @@Name: type
5294 wakaba 1.11 @@ReflectCDATA:
5295 wakaba 1.1 @@Get:
5296     @@Set:
5297     @Method:
5298     @@Name: blur
5299 wakaba 1.4 @@Description:
5300 wakaba 1.2 @@@lang:en
5301     @@@@:Remove the focus from this element.
5302     @@Return:
5303 wakaba 1.1 @Method:
5304     @@Name: focus
5305 wakaba 1.2 @@Description:
5306     @@@lang:en
5307     @@@@:Give the focus to this element.
5308     @@Return:
5309     ##IF:HTMLAnchorElement
5310    
5311 wakaba 1.11 IF:
5312     @IFQName: HTMLAnchorElementExtended
5313     @ClsQName: ManakaiDOMHTMLAnchorElementExtended
5314    
5315     @IFISA: HTMLAnchorElement
5316     @IFISA: HTMLStrictlyInlineContainerExtended
5317    
5318     @ClsISA: ManakaiDOMHTMLAnchorElement
5319     @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
5320     ##HTMLAnchorElementExtended
5321    
5322 wakaba 1.4 ET:
5323     @ETQName:
5324     xhtml1:img
5325     @IFQName: HTMLImageElement
5326     @ClsQName:ManakaiDOMHTMLImageElement
5327     @ISAHTMLElement:
5328     @L1IF:
5329    
5330 wakaba 1.11 @ResourceDef:
5331     @@rdf:type:
5332     @@@@: ManakaiDOM|DOMAttribute
5333     @@@ForCheck: ManakaiDOM|DOM
5334    
5335     @@For: ManakaiDOM|DOM1
5336    
5337     @@rdf:type:
5338     @@@@: s|Attribute
5339     @@@ForCheck: ForHTML
5340    
5341     @@For: ForHTML401
5342     @@For: ForXHTML10SE
5343     @@enImplNote: Does 10SE defines this attr?
5344    
5345 wakaba 1.1 @@Name: name
5346 wakaba 1.2 @@Description:
5347     @@@lang:en
5348     @@@@:
5349     The name of the element.
5350     \
5351     {NOTE:: This attribute is provided for backwards compatibility.
5352     Whilst HTML 4.01 added the <HA:name> attribute
5353     for compatibility, the DOM HTML Specifications
5354     does not address this fact - i.e. HTML's and DOM's
5355     <CODE:name> attributes are not formally associated.
5356     \
5357     }
5358     @@DocAttr:
5359 wakaba 1.4 @@@@:
5360     ::ForHTML401
5361     @@@For:
5362     ManakaiDOM:ManakaiDOMLatest
5363     @@DocAttr:
5364     @@@@:
5365     ::ForXHTML10SE
5366     @@@For:
5367     ManakaiDOM:ManakaiDOMLatest
5368 wakaba 1.11 @@ReflectCDATA:
5369 wakaba 1.1 @@Get:
5370     @@Set:
5371 wakaba 1.4 @ATTR:
5372 wakaba 1.1 @@Name: align
5373 wakaba 1.4 @@Deprecated:
5374 wakaba 1.11 @@ReflectEnum:
5375 wakaba 1.1 @@Get:
5376     @@Set:
5377 wakaba 1.4 @ATTR:
5378 wakaba 1.1 @@Name: alt
5379 wakaba 1.11 @@ReflectCDATA:
5380 wakaba 1.1 @@Get:
5381     @@Set:
5382 wakaba 1.4 @ATTR:
5383 wakaba 1.1 @@Name: border
5384 wakaba 1.4 @@Deprecated:
5385 wakaba 1.11 @@ReflectCDATA:
5386 wakaba 1.1 @@Get:
5387     @@Set:
5388 wakaba 1.2 @@ImplNote:
5389     @@@lang:en
5390     @@@@:
5391     The type is <TYPE:DOMString> in both DOM Levels 1 and 2.
5392 wakaba 1.4 @ATTR:
5393 wakaba 1.1 @@Name: height
5394 wakaba 1.4 @@Deprecated:
5395 wakaba 1.11 @@ReflectStringLong:
5396 wakaba 1.1 @@Get:
5397     @@Set:
5398     @@Level[list]:
5399 wakaba 1.2 1
5400 wakaba 1.1 2
5401     @@SpecLevel[list]:
5402 wakaba 1.2 1
5403 wakaba 1.1 2
5404 wakaba 1.4 @ATTR:
5405 wakaba 1.1 @@Name: hspace
5406 wakaba 1.4 @@Deprecated:
5407 wakaba 1.11 @@ReflectStringLong:
5408 wakaba 1.1 @@Get:
5409 wakaba 1.4 @@Set:
5410 wakaba 1.1 @@Level[list]:
5411 wakaba 1.2 1
5412 wakaba 1.1 2
5413     @@SpecLevel[list]:
5414 wakaba 1.2 1
5415 wakaba 1.1 2
5416 wakaba 1.4 @ATTR:
5417     @@AName:ismap
5418     @@DOMAName: isMap
5419 wakaba 1.11 @@ReflectBoolean:
5420 wakaba 1.1 @@Get:
5421     @@@InCase:
5422     @@@@Value: true
5423     @@@InCase:
5424     @@@@Value: false
5425     @@Set:
5426     @@@InCase:
5427     @@@@Value: true
5428     @@@InCase:
5429     @@@@Value: false
5430 wakaba 1.4 @ATTR:
5431     @@AName:longdesc
5432     @@DOMAName: longDesc
5433 wakaba 1.11 @@ReflectURI:
5434 wakaba 1.1 @@Get:
5435     @@Set:
5436 wakaba 1.4 @ATTR:
5437 wakaba 1.1 @@Name: src
5438 wakaba 1.11 @@ReflectURI:
5439 wakaba 1.1 @@Get:
5440     @@Set:
5441 wakaba 1.4 @ATTR:
5442     @@AName:usemap
5443     @@DOMAName: useMap
5444 wakaba 1.11 @@ReflectURI:
5445 wakaba 1.1 @@Get:
5446     @@Set:
5447 wakaba 1.2 @@ImplNote:
5448     @@@lang:en
5449     @@@@:
5450     The HTML 4 and XHTML 1.0 <HA:usemap> attribute value is
5451     of <SGML:%URI;>, while the XHTML m12n <HA:usemap> value
5452     is <XML:IDREF>.
5453 wakaba 1.4 @ATTR:
5454 wakaba 1.1 @@Name: vspace
5455 wakaba 1.4 @@Deprecated:
5456 wakaba 1.11 @@ReflectStringLong:
5457 wakaba 1.1 @@Get:
5458     @@Set:
5459     @@Level[list]:
5460 wakaba 1.2 1
5461 wakaba 1.1 2
5462     @@SpecLevel[list]:
5463 wakaba 1.2 1
5464 wakaba 1.1 2
5465     @Attr:
5466     @@Name: width
5467 wakaba 1.4 @@Deprecated:
5468 wakaba 1.11 @@ReflectStringLong:
5469 wakaba 1.1 @@Get:
5470     @@Set:
5471     @@Level[list]:
5472 wakaba 1.2 1
5473 wakaba 1.1 2
5474     @@SpecLevel[list]:
5475 wakaba 1.2 1
5476 wakaba 1.1 2
5477 wakaba 1.2 ##IF:HTMLImageElement
5478    
5479 wakaba 1.11 ElementTypeBinding:
5480     @Name: ReflectStringLong
5481     @ElementType:
5482     dis:Type
5483     @ShadowContent:
5484     @@@: DOMMain|long
5485     @@For: ManakaiDOM|DOM2
5486     @ShadowSibling:
5487     @@actualType:
5488     @@@@: Numeric
5489     @@@For: ManakaiDOM|DOM2
5490     @@Type:
5491     @@@@: DOMMain|DOMString
5492     @@@For: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
5493     @@actualType:
5494     @@@@: CDATADOMString
5495     @@@For: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
5496    
5497 wakaba 1.4 ET:
5498     @ETQName:
5499     xhtml1:object
5500     @IFQName: HTMLObjectElement
5501     @ClsQName:ManakaiDOMHTMLObjectElement
5502     @ISAHTMLElement:
5503     @L1IF:
5504    
5505 wakaba 1.2 @ImplNote:
5506     @@lang:en
5507     @@@:
5508     In some environments some attributes may be read-only
5509     once the underlying object is instantiated.
5510 wakaba 1.1 @Attr:
5511     @@Name: form
5512 wakaba 1.2 @@Description:
5513     @@@lang:en
5514     @@@@:
5515     The <HE:form> element containing this control.
5516 wakaba 1.1 @@Get:
5517 wakaba 1.2 @@@Type:
5518 wakaba 1.4 DOMHTML:HTMLFormElement
5519 wakaba 1.2 @@@Description:
5520     @@@@lang:en
5521     @@@@@:
5522     This control is not within the context of a form.
5523 wakaba 1.1 @Attr:
5524     @@Name: code
5525 wakaba 1.11 @@enDesc:
5526     Applet class file.
5527 wakaba 1.1 @@Get:
5528     @@@Type: DOMString
5529     @@Set:
5530     @@@Type: DOMString
5531 wakaba 1.4 @ATTR:
5532 wakaba 1.1 @@Name: align
5533 wakaba 1.4 @@Deprecated:
5534 wakaba 1.11 @@ReflectEnum:
5535 wakaba 1.1 @@Get:
5536     @@Set:
5537 wakaba 1.4 @ATTR:
5538 wakaba 1.1 @@Name: archive
5539 wakaba 1.11 @@ReflectCDATA:
5540 wakaba 1.1 @@Get:
5541     @@Set:
5542 wakaba 1.4 @ATTR:
5543 wakaba 1.1 @@Name: border
5544 wakaba 1.4 @@Deprecated:
5545 wakaba 1.11 @@ReflectCDATA:
5546 wakaba 1.1 @@Get:
5547     @@Set:
5548 wakaba 1.4 @ATTR:
5549     @@AName:codebase
5550     @@DOMAName: codeBase
5551 wakaba 1.11 @@ReflectURI:
5552 wakaba 1.1 @@Get:
5553     @@Set:
5554 wakaba 1.4 @ATTR:
5555     @@AName:codetype
5556     @@DOMAName: codeType
5557 wakaba 1.11 @@ReflectCDATA:
5558 wakaba 1.1 @@Get:
5559     @@Set:
5560 wakaba 1.4 @ATTR:
5561 wakaba 1.1 @@Name: data
5562 wakaba 1.11 @@ReflectURI:
5563     @@@ImplNote: Relative to codebase
5564 wakaba 1.1 @@Get:
5565     @@Set:
5566 wakaba 1.4 @ATTR:
5567 wakaba 1.1 @@Name: declare
5568 wakaba 1.11 @@ReflectBoolean:
5569 wakaba 1.1 @@Get:
5570     @@@InCase:
5571     @@@@Value: true
5572     @@@InCase:
5573     @@@@Value: false
5574     @@Set:
5575     @@@InCase:
5576     @@@@Value: true
5577     @@@InCase:
5578     @@@@Value: false
5579 wakaba 1.4 @ATTR:
5580 wakaba 1.1 @@Name: height
5581 wakaba 1.4 @@Deprecated:
5582 wakaba 1.11 @@ReflectCDATA:
5583 wakaba 1.1 @@Get:
5584     @@Set:
5585 wakaba 1.4 @ATTR:
5586 wakaba 1.1 @@Name: hspace
5587 wakaba 1.4 @@Deprecated:
5588 wakaba 1.11 @@ReflectNumeric:
5589 wakaba 1.1 @@Get:
5590     @@Set:
5591 wakaba 1.4 @ATTR:
5592 wakaba 1.1 @@Name: name
5593 wakaba 1.11 @@ReflectCDATA:
5594 wakaba 1.1 @@Get:
5595     @@Set:
5596 wakaba 1.4 @ATTR:
5597     @@AName:standby
5598     @@DOMAName: standby
5599 wakaba 1.11 @@ReflectCDATA:
5600 wakaba 1.1 @@Get:
5601     @@Set:
5602 wakaba 1.4 @ATTR:
5603     @@AName:tabindex
5604     @@DOMAName: tabIndex
5605 wakaba 1.11 @@ReflectNumeric:
5606 wakaba 1.1 @@Get:
5607     @@Set:
5608 wakaba 1.4 @ATTR:
5609 wakaba 1.1 @@Name: type
5610 wakaba 1.11 @@ReflectCDATA:
5611 wakaba 1.1 @@Get:
5612     @@Set:
5613     @Attr:
5614 wakaba 1.4 @@AName:usemap
5615     @@DOMAName: useMap
5616 wakaba 1.11 @@ReflectURI:
5617 wakaba 1.1 @@Get:
5618     @@Set:
5619 wakaba 1.2 @@ImplNote:
5620     @@@lang:en
5621     @@@@:
5622     In HTML 4 or XHTML 1.0, the <HA:usemap> attribute is
5623     a <SGML:%URI;>. In XHTML m12n, the <HA:usemap>
5624     is an <XML:IDREF>.
5625 wakaba 1.4 @ATTR:
5626 wakaba 1.1 @@Name: vspace
5627 wakaba 1.4 @@Deprecated:
5628 wakaba 1.11 @@ReflectNumeric:
5629 wakaba 1.1 @@Get:
5630     @@Set:
5631 wakaba 1.4 @ATTR:
5632 wakaba 1.1 @@Name: width
5633 wakaba 1.11 @@ReflectCDATA:
5634 wakaba 1.1 @@Get:
5635     @@Set:
5636     @Attr:
5637     @@Name: contentDocument
5638 wakaba 1.2 @@Description:
5639     @@@lang:en
5640     @@@@:
5641     The document this object contains, if any and available.
5642 wakaba 1.1 @@Get:
5643     @@@Type: Document
5644 wakaba 1.2 @@@InCase:
5645     @@@@Value:
5646     @@@@@is-null:1
5647     @@@@Description:
5648     @@@@@lang:en
5649     @@@@@@:
5650     There is no containing document or
5651     there is but it is not available.
5652 wakaba 1.4 @@@Def:
5653     @@@@ContentType:
5654     lang:dis
5655     @@@@GetPropNode:
5656     DOMHTML:contentDocument
5657 wakaba 1.1 @@Level[list]: 2
5658     @@SpecLevel[list]: 2
5659 wakaba 1.4 @@L2:
5660 wakaba 1.2 ##IF:HTMLObjectElement
5661    
5662 wakaba 1.4 PropDef:
5663 wakaba 1.7 @QName: referrer
5664     @enDesc:
5665     <A::HTMLDocument.referrer>.
5666    
5667     PropDef:
5668 wakaba 1.4 @QName: contentDocument
5669     @Type:
5670     ManakaiDOMCore:ManakaiDOMNodeObjectNode::ManakaiDOM:ManakaiDOMCommon
5671     @Description:
5672     @@lang:en
5673     @@@:
5674     An (external) <IF::Document> node object referred from an element.
5675    
5676     ET:
5677     @ETQName:
5678     xhtml1:param
5679     @IFQName: HTMLParamElement
5680     @ClsQName:ManakaiDOMHTMLParamElement
5681     @ISAHTMLElement:
5682     @L1IF:
5683    
5684     @ATTR:
5685 wakaba 1.1 @@Name: name
5686 wakaba 1.11 @@ReflectCDATA:
5687 wakaba 1.1 @@Get:
5688     @@Set:
5689 wakaba 1.4 @ATTR:
5690 wakaba 1.1 @@Name: type
5691 wakaba 1.11 @@ReflectCDATA:
5692 wakaba 1.1 @@Get:
5693     @@Set:
5694 wakaba 1.4 @ATTR:
5695 wakaba 1.1 @@Name: value
5696 wakaba 1.11 @@ReflectCDATA:
5697 wakaba 1.1 @@Get:
5698     @@Set:
5699 wakaba 1.4 @ATTR:
5700     @@AName:valuetype
5701     @@DOMAName: valueType
5702 wakaba 1.11 @@ReflectCDATA:
5703 wakaba 1.1 @@Get:
5704     @@Set:
5705 wakaba 1.2
5706 wakaba 1.4 ET:
5707     @ETQName:
5708     xhtml1:applet
5709     @IFQName: HTMLAppletElement
5710     @ClsQName:ManakaiDOMHTMLAppletElement
5711     @ISAHTMLElement:
5712     @L1IF:
5713     @Deprecated:
5714    
5715     @ATTR:
5716 wakaba 1.1 @@Name: align
5717 wakaba 1.4 @@Deprecated:
5718 wakaba 1.11 @@ReflectEnum:
5719 wakaba 1.1 @@Get:
5720     @@Set:
5721 wakaba 1.4 @ATTR:
5722 wakaba 1.1 @@Name: alt
5723 wakaba 1.4 @@Deprecated:
5724 wakaba 1.11 @@ReflectCDATA:
5725 wakaba 1.1 @@Get:
5726     @@Set:
5727 wakaba 1.4 @ATTR:
5728 wakaba 1.1 @@Name: archive
5729 wakaba 1.4 @@Deprecated:
5730 wakaba 1.11 @@ReflectCDATA:
5731 wakaba 1.1 @@Get:
5732     @@Set:
5733 wakaba 1.4 @ATTR:
5734 wakaba 1.1 @@Name: code
5735 wakaba 1.4 @@Deprecated:
5736 wakaba 1.11 @@ReflectCDATA:
5737     @@@ImplNote: URI?
5738 wakaba 1.1 @@Get:
5739     @@Set:
5740 wakaba 1.4 @ATTR:
5741     @@AName:codebase
5742     @@DOMAName: codeBase
5743     @@Deprecated:
5744 wakaba 1.11 @@ReflectURI:
5745 wakaba 1.1 @@Get:
5746     @@Set:
5747 wakaba 1.4 @ATTR:
5748 wakaba 1.2 @@Name: height
5749 wakaba 1.4 @@Deprecated:
5750 wakaba 1.11 @@ReflectCDATA:
5751     @@Get:
5752 wakaba 1.1 @@Set:
5753 wakaba 1.4 @ATTR:
5754 wakaba 1.1 @@Name: hspace
5755 wakaba 1.4 @@Deprecated:
5756 wakaba 1.11 @@ReflectStringLong:
5757 wakaba 1.1 @@Get:
5758 wakaba 1.4 @@Set:
5759 wakaba 1.1 @@Level[list]:
5760 wakaba 1.2 1
5761 wakaba 1.1 2
5762     @@SpecLevel[list]:
5763 wakaba 1.2 1
5764 wakaba 1.1 2
5765 wakaba 1.4 @ATTR:
5766 wakaba 1.1 @@Name: name
5767 wakaba 1.4 @@Deprecated:
5768 wakaba 1.11 @@ReflectCDATA:
5769 wakaba 1.1 @@Get:
5770     @@Set:
5771     @Attr:
5772     @@Name: object
5773 wakaba 1.4 @@Deprecated:
5774 wakaba 1.11 @@ReflectCDATA:
5775 wakaba 1.1 @@Get:
5776     @@Set:
5777     @@Level[list]:
5778 wakaba 1.2 1
5779 wakaba 1.1 @@SpecLevel[list]:
5780 wakaba 1.2 1
5781 wakaba 1.1 2
5782     @Attr:
5783     @@Name: vspace
5784 wakaba 1.4 @@Deprecated:
5785 wakaba 1.11 @@ReflectStringLong:
5786 wakaba 1.1 @@Get:
5787     @@Set:
5788     @@Level[list]:
5789 wakaba 1.2 1
5790 wakaba 1.1 2
5791     @@SpecLevel[list]:
5792 wakaba 1.2 1
5793 wakaba 1.1 2
5794     @Attr:
5795     @@Name: width
5796 wakaba 1.4 @@Deprecated:
5797 wakaba 1.11 @@ReflectCDATA:
5798 wakaba 1.1 @@Get:
5799     @@Set:
5800 wakaba 1.2 ##IF:HTMLAppletElement
5801 wakaba 1.7
5802     ResourceDef:
5803     @QName:
5804     DOMMain:long
5805     @AliasFor:
5806     DOMMain:long::ManakaiDOM:all
5807     @ForCheck:
5808     !=ManakaiDOM:all
5809 wakaba 1.2
5810 wakaba 1.4 ET:
5811     @ETQName:
5812     xhtml1:map
5813     @IFQName: HTMLMapElement
5814     @ClsQName:ManakaiDOMHTMLMapElement
5815     @ISAHTMLElement:
5816     @L1IF:
5817    
5818 wakaba 1.1 @Attr:
5819     @@Name: areas
5820 wakaba 1.2 @@Description:
5821     @@@lang:en
5822     @@@@:
5823     The list of areas defined for this image map.
5824 wakaba 1.1 @@Get:
5825     @@@Type: HTMLCollection
5826 wakaba 1.4 @ATTR:
5827 wakaba 1.1 @@Name: name
5828 wakaba 1.11 @@ReflectCDATA:
5829 wakaba 1.1 @@Get:
5830     @@Set:
5831 wakaba 1.2 ##IF:HTMLMapElement
5832    
5833 wakaba 1.4 ET:
5834     @ETQName:
5835     xhtml1:area
5836     @IFQName: HTMLAreaElement
5837     @ClsQName:ManakaiDOMAreaElement
5838     @ISAHTMLElement:
5839     @L1IF:
5840    
5841     @ATTR:
5842     @@AName: accesskey
5843     @@DOMAName: accessKey
5844 wakaba 1.11 @@ReflectCDATA:
5845 wakaba 1.1 @@Get:
5846     @@Set:
5847 wakaba 1.4 @ATTR:
5848 wakaba 1.1 @@Name: alt
5849 wakaba 1.11 @@ReflectCDATA:
5850 wakaba 1.1 @@Get:
5851     @@Set:
5852 wakaba 1.4 @ATTR:
5853 wakaba 1.1 @@Name: coords
5854 wakaba 1.11 @@ReflectCDATA:
5855 wakaba 1.1 @@Get:
5856     @@Set:
5857 wakaba 1.4 @ATTR:
5858 wakaba 1.1 @@Name: href
5859 wakaba 1.11 @@ReflectURI:
5860 wakaba 1.1 @@Get:
5861     @@Set:
5862 wakaba 1.4 @ATTR:
5863     @@AName:nohref
5864     @@DOMAName: noHref
5865 wakaba 1.11 @@ReflectBoolean:
5866 wakaba 1.1 @@Get:
5867     @@@InCase:
5868     @@@@Value: true
5869     @@@InCase:
5870     @@@@Value: false
5871     @@Set:
5872     @@@InCase:
5873     @@@@Value: true
5874     @@@InCase:
5875     @@@@Value: false
5876 wakaba 1.4 @ATTR:
5877 wakaba 1.11 @@ReflectCDATA:
5878 wakaba 1.1 @@Name: shape
5879     @@Get:
5880     @@Set:
5881     @Attr:
5882 wakaba 1.4 @@AName:tabindex
5883     @@DOMAName: tabIndex
5884 wakaba 1.11 @@ReflectNumeric:
5885 wakaba 1.1 @@Get:
5886     @@Set:
5887 wakaba 1.4 @ATTR:
5888 wakaba 1.1 @@Name: target
5889 wakaba 1.11 @@ReflectCDATA:
5890 wakaba 1.1 @@Get:
5891     @@Set:
5892 wakaba 1.2 ##IF:HTMLAreaElement
5893    
5894 wakaba 1.4 ET:
5895     @ETQName:
5896     xhtml1:script
5897     @IFQName: HTMLScriptElement
5898     @ClsQName:ManakaiDOMHTMLScriptElement
5899     @ISAHTMLElement:
5900     @L1IF:
5901    
5902 wakaba 1.1 @Attr:
5903     @@Name: text
5904 wakaba 1.2 @@Description:
5905     @@@lang:en
5906     @@@@:
5907     The script content of this element.
5908     @@ImplNote:
5909     @@@lang:en
5910     @@@@:
5911     ISSUE: How interact with <HA:src>?
5912 wakaba 1.1 @@Get:
5913     @@@Type: DOMString
5914     @@Set:
5915     @@@Type: DOMString
5916     @Attr:
5917 wakaba 1.4 @@DOMAName: htmlFor
5918 wakaba 1.2 @@Description:
5919     @@@lang:en
5920     @@@@:
5921     {NOTE:: Reserved for future use by the DOM HTML Specifications.
5922     The HTML <HA:for> attribute is also reserved
5923     by the HTML 4 Specifications.
5924     \
5925     }
5926 wakaba 1.1 @@Get:
5927     @@@Type: DOMString
5928     @@Set:
5929     @@@Type: DOMString
5930     @Attr:
5931     @@Name: event
5932 wakaba 1.2 @@Description:
5933     @@@lang:en
5934     @@@@:
5935     {NOTE:: Reserved for future use by the DOM HTML Specifications.
5936     The HTML <HA:event> attribute is also reserved
5937     by the HTML 4 Specification.
5938     \
5939     }
5940 wakaba 1.1 @@Get:
5941     @@@Type: DOMString
5942     @@Set:
5943     @@@Type: DOMString
5944 wakaba 1.4 @ATTR:
5945 wakaba 1.1 @@Name: charset
5946 wakaba 1.11 @@ReflectCDATA:
5947 wakaba 1.1 @@Get:
5948     @@Set:
5949 wakaba 1.4 @ATTR:
5950 wakaba 1.1 @@Name: defer
5951 wakaba 1.11 @@ReflectBoolean:
5952 wakaba 1.1 @@Get:
5953     @@@InCase:
5954     @@@@Value: true
5955     @@@InCase:
5956     @@@@Value: false
5957     @@Set:
5958     @@@InCase:
5959     @@@@Value: true
5960     @@@InCase:
5961     @@@@Value: false
5962 wakaba 1.4 @ATTR:
5963 wakaba 1.1 @@Name: src
5964 wakaba 1.11 @@ReflectURI:
5965 wakaba 1.1 @@Get:
5966     @@Set:
5967 wakaba 1.4 @ATTR:
5968 wakaba 1.1 @@Name: type
5969 wakaba 1.11 @@ReflectCDATA:
5970 wakaba 1.1 @@Get:
5971     @@Set:
5972 wakaba 1.2 ##IF:HTMLScriptElement
5973    
5974 wakaba 1.4 ET:
5975     @ETQName:
5976     xhtml1:table
5977     @IFQName: HTMLTableElement
5978     @ClsQName:ManakaiDOMHTMLTableElement
5979     @ISAHTMLElement:
5980     @L1IF:
5981    
5982 wakaba 1.1 @Attr:
5983     @@Name: caption
5984 wakaba 1.2 @@Description:
5985     @@@lang:en
5986     @@@@:
5987     The <HE:caption> of the table.
5988 wakaba 1.1 @@Get:
5989     @@@Type: HTMLTableCaptionElement
5990 wakaba 1.2 @@@InCase:
5991     @@@@Label:
5992     @@@@@lang:en
5993     @@@@@@:
5994     void (= <DOM:null>?)
5995     @@@@Description:
5996     @@@@@lang:en
5997     @@@@@@: There is no caption.
5998 wakaba 1.1 @@Set:
5999     @@@Type: HTMLTableCaptionElement
6000     @@@Exception:
6001 wakaba 1.4 @@@@@:
6002     ManakaiDOMHTML:MDOM_NOT_CAPTION
6003     @@@@Description:
6004     @@@@@lang:en
6005     @@@@@@:
6006     The given element is not a <HE:caption>.
6007 wakaba 1.1 @@Level[list]:
6008 wakaba 1.2 1
6009 wakaba 1.1 @@SpecLevel[list]:
6010 wakaba 1.2 1
6011 wakaba 1.1 2
6012     @Attr:
6013     @@Name: tHead
6014 wakaba 1.2 @@Description:
6015     @@@lang:en
6016     @@@@:
6017     The <HE:thead> of this table.
6018 wakaba 1.1 @@Get:
6019     @@@Type: HTMLTableSectionElement
6020 wakaba 1.2 @@@InCase:
6021     @@@@Value:
6022     @@@@@is-null:1
6023     @@@@Description:
6024     @@@@@lang:en
6025     @@@@@@:
6026     There is no <HE:thead>.
6027 wakaba 1.1 @@Set:
6028     @@@Type: HTMLTableSectionElement
6029     @@@Exception:
6030 wakaba 1.2 @@@@Name: HIERARCHY_REQUEST_ERR
6031 wakaba 1.1 @@@@Type:
6032     DOMCore:DOMException
6033 wakaba 1.2 @@@@SubType:
6034     ManakaiDOMHTML:MDOM_BAD_ELEMENT_TYPE
6035     @@@@Description:
6036     @@@@@lang:en
6037     @@@@@@:
6038     The given element is not a <HE:thead>.
6039 wakaba 1.1 @@Level[list]:
6040     1
6041     @@SpecLevel[list]:
6042     1
6043     2
6044     @Attr:
6045     @@Name: tFoot
6046 wakaba 1.2 @@Description:
6047     @@@lang:en
6048     @@@@:
6049     The <HE:tfoot> of this table.
6050 wakaba 1.1 @@Get:
6051     @@@Type: HTMLTableSectionElement
6052 wakaba 1.2 @@@InCase:
6053     @@@@Value:
6054     @@@@@is-null:1
6055     @@@@Description:
6056     @@@@@lang:en
6057     @@@@@@:
6058     There is no <HE:tfoot>.
6059 wakaba 1.1 @@Set:
6060     @@@Type: HTMLTableSectionElement
6061     @@@Exception:
6062 wakaba 1.2 @@@@Name: HIERARCHY_REQUEST_ERR
6063 wakaba 1.1 @@@@Type:
6064     DOMCore:DOMException
6065 wakaba 1.2 @@@@SubType:
6066     @@@@@QName:
6067     ManakaiDOMHTML:MDOM_NOT_TFOOT
6068     @@@@@Description:
6069     @@@@@@lang:en
6070     @@@@@@@:
6071     The given element is not a <HE:tfoot>.
6072 wakaba 1.1 @@Level[list]:
6073     1
6074     @@SpecLevel[list]:
6075     1
6076     2
6077     @Attr:
6078     @@Name: rows
6079 wakaba 1.2 @@Description:
6080     @@@lang:en
6081     @@@@:
6082     A collection of all the rows (child or grandchild
6083     <HE:tr> elements) in this table.
6084 wakaba 1.1 @@Get:
6085     @@@Type: HTMLCollection
6086     @Attr:
6087     @@Name: tBodies
6088 wakaba 1.2 @@Description:
6089     @@@lang:en
6090     @@@@:
6091     A collection of the table bodies.
6092     @@ImplNote:
6093     @@@lang:en
6094     @@@@:
6095     ISSUE: What is collected if simple table?
6096 wakaba 1.1 @@Get:
6097     @@@Type: HTMLCollection
6098 wakaba 1.4 @ATTR:
6099 wakaba 1.1 @@Name: align
6100 wakaba 1.4 @@Deprecated:
6101 wakaba 1.11 @@ReflectEnum:
6102 wakaba 1.1 @@Get:
6103     @@Set:
6104 wakaba 1.4 @ATTR:
6105     @@AName:bgcolor
6106     @@DOMAName: bgColor
6107 wakaba 1.11 @@ReflectCDATA:
6108 wakaba 1.1 @@Get:
6109     @@Set:
6110 wakaba 1.4 @ATTR:
6111 wakaba 1.1 @@Name: border
6112 wakaba 1.11 @@ReflectCDATA:
6113 wakaba 1.1 @@Get:
6114     @@Set:
6115 wakaba 1.4 @ATTR:
6116     @@AName:cellpadding
6117     @@DOMAName: cellPadding
6118 wakaba 1.11 @@ReflectCDATA:
6119 wakaba 1.1 @@Get:
6120     @@Set:
6121 wakaba 1.4 @ATTR:
6122     @@AName:cellspacing
6123     @@DOMAName: cellSpacing
6124 wakaba 1.11 @@ReflectCDATA:
6125 wakaba 1.1 @@Get:
6126     @@Set:
6127 wakaba 1.4 @ATTR:
6128 wakaba 1.1 @@Name: frame
6129 wakaba 1.11 @@ReflectEnum:
6130 wakaba 1.1 @@Get:
6131     @@Set:
6132 wakaba 1.2 @@ImplNote:
6133     @@@lang:en
6134     @@@@:
6135     How <HTML:border> is implemented in DOM Level 0?
6136 wakaba 1.4 @ATTR:
6137 wakaba 1.1 @@Name: rules
6138 wakaba 1.11 @@ReflectEnum:
6139 wakaba 1.1 @@Get:
6140     @@Set:
6141 wakaba 1.4 @ATTR:
6142 wakaba 1.1 @@Name: summary
6143 wakaba 1.11 @@ReflectCDATA:
6144 wakaba 1.1 @@Get:
6145     @@Set:
6146 wakaba 1.4 @ATTR:
6147 wakaba 1.1 @@Name: width
6148 wakaba 1.11 @@ReflectCDATA:
6149 wakaba 1.1 @@Get:
6150     @@Set:
6151     @Method:
6152     @@Name: createTHead
6153 wakaba 1.2 @@Description:
6154     @@@lang:en
6155     @@@@:
6156     Create the <HE:thead> element (if it does not exist) and
6157     return it.
6158 wakaba 1.1 @@Return:
6159     @@@Type: HTMLElement
6160 wakaba 1.2 @@@Description:
6161     @@@@lang:en
6162     @@@@@:
6163     The <HE:thead> element.
6164 wakaba 1.1 @Method:
6165     @@Name: deleteTHead
6166 wakaba 1.2 @@Description:
6167     @@@lang:en
6168     @@@@:
6169     Delete the <HE:thead>, if any, from the table.
6170     @@Return:
6171 wakaba 1.1 @Method:
6172     @@Name: createTFoot
6173 wakaba 1.2 @@Description:
6174     @@@lang:en
6175     @@@@:
6176     Create the <HE:tfoot> element (if it does not exist) and
6177     return it.
6178 wakaba 1.1 @@Return:
6179     @@@Type: HTMLElement
6180 wakaba 1.2 @@@Description:
6181     @@@@lang:en
6182     @@@@@:
6183     The <HE:tfoot> element.
6184 wakaba 1.1 @Method:
6185     @@Name: deleteTFoot
6186 wakaba 1.2 @@Description:
6187     @@@lang:en
6188     @@@@:
6189     Delete the <HE:tfoot>, if any, from the table.
6190     @@Return:
6191 wakaba 1.1 @Method:
6192     @@Name: createCaption
6193 wakaba 1.2 @@Description:
6194     @@@lang:en
6195     @@@@:
6196     Create the table caption element (if it does not exist) and
6197     return it.
6198 wakaba 1.1 @@Return:
6199     @@@Type: HTMLElement
6200 wakaba 1.2 @@@Description:
6201     @@@@lang:en
6202     @@@@@: The table caption.
6203     @Method:
6204     @@Name: deleteCaption
6205     @@Description:
6206     @@@lang:en
6207     @@@@:
6208     Delete the table caption, if any.
6209     @@Return:
6210     @Method:
6211     @@Name: insertRow
6212     @@Description:
6213     @@@lang:en
6214     @@@@:
6215     Insert a new empty row in this table. If this table is
6216     empty, a <HE:tbody> is created and the new row is
6217     inserted into it.
6218     @@ImplNote:
6219     @@@lang:en
6220     @@@@:
6221     DOM HTML Specifications note that a table row
6222     cannot be empty according to HTML 4. But they do not
6223     require DOM implementations to add a table cell.
6224     @@Param:
6225     @@@Name: index
6226     @@@Type:
6227     DOMMain:long
6228     @@@Description:
6229     @@@@lang:en
6230     @@@@@:
6231     The ordinal index of the row where to insert a new row,
6232     starting from <DOM:0> and relative to the logical
6233     order (not the document order). The new row is
6234     inserted immediately before and in the same row group
6235     as the current <P:index>th row.
6236     @@@InCase:
6237     @@@@Value:-1
6238     @@@@Description:
6239     @@@@@lang:en
6240     @@@@@@:
6241     The new row is appended.
6242 wakaba 1.3 @@@@SpecLevel:2
6243 wakaba 1.2 @@@InCase:
6244     @@@@Label:
6245     @@@@@lang:en
6246     @@@@@@:
6247     The number of rows
6248     @@@@Description:
6249     @@@@@lang:en
6250     @@@@@@:
6251     The new row is appended.
6252 wakaba 1.3 @@@@SpecLevel:2
6253 wakaba 1.1 @@Return:
6254     @@@Type: HTMLElement
6255 wakaba 1.2 @@@Description:
6256     @@@@lang:en
6257     @@@@@:The newly created row.
6258 wakaba 1.1 @@@Exception:
6259 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6260 wakaba 1.1 @@@@Type:
6261     DOMCore:DOMException
6262 wakaba 1.2 @@@@SubType:
6263     @@@@@QName:
6264     TODO: What?
6265     @@@@@Description:
6266     @@@@@@lang:en
6267     @@@@@@@:
6268     The <P:index> is greater than the number of rows
6269     or less than <DOM:-1>.
6270 wakaba 1.3 @@@@SpecLevel:2
6271     @@@@ImplNote:
6272     @@@@@lang:en
6273     @@@@@@:
6274     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6275     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6276 wakaba 1.1 @@Level[list]:
6277     1
6278     2
6279     @@SpecLevel[list]:
6280     1
6281     2
6282     @Method:
6283     @@Name: deleteRow
6284 wakaba 1.2 @@Description:
6285     @@@lang:en
6286     @@@@:Delete a table row.
6287 wakaba 1.1 @@Param:
6288     @@@Name: index
6289     @@@Type:
6290     DOMMain:long
6291 wakaba 1.2 @@@Description:
6292     @@@@lang:en
6293     @@@@@:
6294     The ordinal index of the row to delete, starting from <DOM:0>
6295     and relative to the logical order (not document order).
6296     @@@InCase:
6297     @@@@Value:-1
6298     @@@@Description:
6299     @@@@@lang:en
6300     @@@@@@:
6301     The last row in the table is deleted.
6302 wakaba 1.3 @@@@SpecLevel:2
6303 wakaba 1.2 @@@ImplNote:
6304     @@@@lang:en
6305     @@@@@:
6306     In the order of <HE:thead> -> <HE:tbody>s -> <HE:tfoot>?
6307 wakaba 1.1 @@Return:
6308     @@@Exception:
6309 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6310 wakaba 1.1 @@@@Type:
6311     DOMCore:DOMException
6312 wakaba 1.2 @@@@SubType:
6313     @@@@@QName:
6314     TODO: What?
6315     @@@@@Description:
6316     @@@@@@lang:en
6317     @@@@@@@:
6318     The <P:index> is greater than or equal to
6319     the number of rows or the <P:index> is
6320     less than <DOM:-1>.
6321 wakaba 1.3 @@@@SpecLevel:2
6322     @@@@ImplNote:
6323     @@@@@lang:en
6324     @@@@@@:
6325     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6326     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6327 wakaba 1.1 @@Level[list]:
6328     1
6329     2
6330     @@SpecLevel[list]:
6331     1
6332     2
6333 wakaba 1.2 ##IF:HTMLTableElement
6334    
6335 wakaba 1.4 ET:
6336     @ETQName:
6337     xhtml1:caption
6338     @IFQName: HTMLTableCaptionElement
6339     @ClsQName:ManakaiDOMHTMLTableCaptionElement
6340     @ISAHTMLElement:
6341     @L1IF:
6342    
6343     @ATTR:
6344 wakaba 1.1 @@Name: align
6345 wakaba 1.4 @@Deprecated:
6346 wakaba 1.11 @@ReflectEnum:
6347 wakaba 1.1 @@Get:
6348     @@Set:
6349 wakaba 1.2 ##IF:HTMLTableCaptionElement
6350    
6351 wakaba 1.4 ET:
6352     @ETQName:
6353     xhtml1:col
6354     @IFQName: HTMLTableColElement
6355     @ClsQName:ManakaiDOMHTMLTableColElement
6356     @ISAHTMLElement:
6357     @L1IF:
6358    
6359     @ATTR:
6360 wakaba 1.1 @@Name: align
6361 wakaba 1.11 @@ReflectEnum:
6362 wakaba 1.1 @@Get:
6363     @@Set:
6364 wakaba 1.4 @ATTR:
6365     @@AName:char
6366     @@DOMAName: ch
6367 wakaba 1.11 @@ReflectCDATA:
6368 wakaba 1.1 @@Get:
6369     @@Set:
6370 wakaba 1.4 @ATTR:
6371     @@AName:charoff
6372     @@DOMAName: chOff
6373 wakaba 1.11 @@ReflectCDATA:
6374 wakaba 1.1 @@Get:
6375     @@Set:
6376 wakaba 1.4 @ATTR:
6377 wakaba 1.1 @@Name: span
6378 wakaba 1.11 @@ReflectNumeric:
6379 wakaba 1.1 @@Get:
6380     @@Set:
6381 wakaba 1.4 @ATTR:
6382     @@AName:valign
6383     @@DOMAName: vAlign
6384 wakaba 1.11 @@ReflectCDATA:
6385 wakaba 1.1 @@Get:
6386     @@Set:
6387 wakaba 1.4 @ATTR:
6388 wakaba 1.1 @@Name: width
6389 wakaba 1.11 @@ReflectCDATA:
6390 wakaba 1.1 @@Get:
6391     @@Set:
6392 wakaba 1.2 ##IF:HTMLTableColElement
6393    
6394 wakaba 1.4 ForDef:
6395     @QName:
6396     DOMHTML:ForTbody
6397     ForDef:
6398     @QName:
6399     DOMHTML:ForThead
6400     ForDef:
6401     @QName:
6402     DOMHTML:ForTfoot
6403    
6404 wakaba 1.1 IF:
6405 wakaba 1.4 @For:ForHTML
6406     @rdf:type:
6407     @@@:
6408     dis:MultipleResource
6409     @@For:ForHTML
6410     @@ForCheck:
6411     !ManakaiDOM:ForIF !ManakaiDOM:ForClass
6412     !ForTbody !ForThead !ForTfoot
6413     @resourceFor:
6414     @@@: ForTbody
6415     @@ForCheck:ForHTML
6416     @resourceFor:
6417     @@@: ForThead
6418     @@ForCheck:ForHTML
6419     @resourceFor:
6420     @@@: ForTfoot
6421     @@ForCheck:ForHTML
6422     @rdf:type:
6423     @@@:
6424     s:ElementType
6425     @@For:ForHTML
6426    
6427     @ETQName:
6428     @@@:
6429 wakaba 1.2 xhtml1:tbody
6430 wakaba 1.4 @@ForCheck:ForTbody
6431     @ETQName:
6432     @@@:
6433 wakaba 1.2 xhtml1:thead
6434 wakaba 1.4 @@ForCheck:ForThead
6435     @ETQName:
6436     @@@:
6437 wakaba 1.2 xhtml1:tfoot
6438 wakaba 1.4 @@ForCheck:ForTfoot
6439    
6440 wakaba 1.8 @elementType:
6441     @@@: ||ForHTML40SE||ForTfoot
6442     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
6443     @@ContentType: DISCore|TFPQNames
6444     @elementType:
6445     @@@: ||ForHTML401||ForTfoot
6446     @@ForCheck: ManakaiDOM|DOM2
6447     @@ContentType: DISCore|TFPQNames
6448     @elementType:
6449     @@@: ||ForXHTML10SE||ForTfoot
6450     @@ForCheck: ManakaiDOM|DOM2
6451     @@ContentType: DISCore|TFPQNames
6452    
6453    
6454     @elementType:
6455     @@@: ||ForHTML40SE||ForTbody
6456     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
6457     @@ContentType: DISCore|TFPQNames
6458     @elementType:
6459     @@@: ||ForHTML401||ForTbody
6460     @@ForCheck: ManakaiDOM|DOM2
6461     @@ContentType: DISCore|TFPQNames
6462     @elementType:
6463     @@@: ||ForXHTML10SE||ForTbody
6464     @@ForCheck: ManakaiDOM|DOM2
6465     @@ContentType: DISCore|TFPQNames
6466    
6467    
6468     @elementType:
6469     @@@: ||ForHTML40SE||ForThead
6470     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
6471     @@ContentType: DISCore|TFPQNames
6472     @elementType:
6473     @@@: ||ForHTML401||ForThead
6474     @@ForCheck: ManakaiDOM|DOM2
6475     @@ContentType: DISCore|TFPQNames
6476     @elementType:
6477     @@@: ||ForXHTML10SE||ForThead
6478     @@ForCheck: ManakaiDOM|DOM2
6479     @@ContentType: DISCore|TFPQNames
6480    
6481 wakaba 1.4 @IFQName: HTMLTableSectionElement
6482     @ClsQName:ManakaiDOMHTMLTableSectionElement
6483     @ISAHTMLElement:
6484     @L1IF:
6485    
6486 wakaba 1.11 @Attrs:
6487 wakaba 1.1 @@Name: align
6488 wakaba 1.11 @@ReflectEnum:
6489 wakaba 1.1 @@Get:
6490     @@Set:
6491 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForThead
6492     @@docAttrP2S: ||ForHTML401||ForThead
6493     @@docAttrP2X: ||ForXHTML10SE||ForThead
6494     @@docAttrP1S: ||ForHTML40SE||ForTbody
6495     @@docAttrP2S: ||ForHTML401||ForTbody
6496     @@docAttrP2X: ||ForXHTML10SE||ForTbody
6497     @@docAttrP1S: ||ForHTML40SE||ForTfoot
6498     @@docAttrP2S: ||ForHTML401||ForTfoot
6499     @@docAttrP2X: ||ForXHTML10SE||ForTfoot
6500     @Attrs:
6501 wakaba 1.4 @@AName: char
6502     @@DOMAName: ch
6503 wakaba 1.11 @@ReflectCDATA:
6504 wakaba 1.1 @@Get:
6505     @@Set:
6506 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForThead
6507     @@docAttrP2S: ||ForHTML401||ForThead
6508     @@docAttrP2X: ||ForXHTML10SE||ForThead
6509     @@docAttrP1S: ||ForHTML40SE||ForTbody
6510     @@docAttrP2S: ||ForHTML401||ForTbody
6511     @@docAttrP2X: ||ForXHTML10SE||ForTbody
6512     @@docAttrP1S: ||ForHTML40SE||ForTfoot
6513     @@docAttrP2S: ||ForHTML401||ForTfoot
6514     @@docAttrP2X: ||ForXHTML10SE||ForTfoot
6515     @Attrs:
6516 wakaba 1.4 @@AName:charoff
6517     @@DOMAName: chOff
6518 wakaba 1.11 @@ReflectCDATA:
6519 wakaba 1.1 @@Get:
6520     @@Set:
6521 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForThead
6522     @@docAttrP2S: ||ForHTML401||ForThead
6523     @@docAttrP2X: ||ForXHTML10SE||ForThead
6524     @@docAttrP1S: ||ForHTML40SE||ForTbody
6525     @@docAttrP2S: ||ForHTML401||ForTbody
6526     @@docAttrP2X: ||ForXHTML10SE||ForTbody
6527     @@docAttrP1S: ||ForHTML40SE||ForTfoot
6528     @@docAttrP2S: ||ForHTML401||ForTfoot
6529     @@docAttrP2X: ||ForXHTML10SE||ForTfoot
6530     @Attrs:
6531 wakaba 1.4 @@AName:valign
6532     @@DOMAName: vAlign
6533 wakaba 1.11 @@ReflectEnum:
6534 wakaba 1.1 @@Get:
6535     @@Set:
6536 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForThead
6537     @@docAttrP2S: ||ForHTML401||ForThead
6538     @@docAttrP2X: ||ForXHTML10SE||ForThead
6539     @@docAttrP1S: ||ForHTML40SE||ForTbody
6540     @@docAttrP2S: ||ForHTML401||ForTbody
6541     @@docAttrP2X: ||ForXHTML10SE||ForTbody
6542     @@docAttrP1S: ||ForHTML40SE||ForTfoot
6543     @@docAttrP2S: ||ForHTML401||ForTfoot
6544     @@docAttrP2X: ||ForXHTML10SE||ForTfoot
6545 wakaba 1.1 @Attr:
6546     @@Name: rows
6547 wakaba 1.2 @@Description:
6548     @@@lang:en
6549     @@@@:
6550     A collection of rows in this table row group.
6551 wakaba 1.1 @@Get:
6552     @@@Type: HTMLCollection
6553     @Method:
6554     @@Name: insertRow
6555 wakaba 1.2 @@Description:
6556     @@@lang:en
6557     @@@@:
6558     Insert a table row into this row group.
6559 wakaba 1.1 @@Param:
6560     @@@Name: index
6561     @@@Type:
6562     DOMMain:long
6563 wakaba 1.2 @@@Description:
6564     @@@@lang:en
6565     @@@@@:
6566     The ordinal index of the row where to insert a new row,
6567     starting from <DOM:0> and relative only to the
6568     rows contained inside this row group. The new row
6569     is inserted immediately before the current <P:index>th
6570     row.
6571     @@@InCase:
6572     @@@@Value:-1
6573     @@@@Description:
6574     @@@@@lang:en
6575     @@@@@@:
6576     The new row is appended.
6577 wakaba 1.3 @@@@SpecLevel:2
6578 wakaba 1.2 @@@InCase:
6579     @@@@Label:
6580     @@@@@lang:en
6581     @@@@@@:The number of rows in this row group
6582     @@@@Description:
6583     @@@@@lang:en
6584     @@@@@@:
6585     The new row is appended.
6586 wakaba 1.3 @@@@SpecLevel:2
6587 wakaba 1.1 @@Return:
6588     @@@Type: HTMLElement
6589 wakaba 1.2 @@@Description:
6590     @@@@lang:en
6591     @@@@@:The newly created table row.
6592 wakaba 1.1 @@@Exception:
6593 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6594 wakaba 1.1 @@@@Type:
6595     DOMCore:DOMException
6596 wakaba 1.2 @@@@SubType:
6597     @@@@@QName:
6598     TODO: What?
6599     @@@@@Description:
6600     @@@@@@lang:en
6601     @@@@@@@:
6602     The <P:index> is greater than the number
6603     of rows or less than <DOM:-1>.
6604 wakaba 1.3 @@@@SpecLevel:2
6605     @@@@ImplNote:
6606     @@@@@lang:en
6607     @@@@@@:
6608     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6609     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6610 wakaba 1.1 @@Level[list]:
6611     1
6612     2
6613     @@SpecLevel[list]:
6614     1
6615     2
6616     @Method:
6617     @@Name: deleteRow
6618 wakaba 1.2 @@Description:
6619     @@@lang:en
6620     @@@@:
6621     Delete a table row from this table row group.
6622 wakaba 1.1 @@Param:
6623     @@@Name: index
6624     @@@Type:
6625     DOMMain:long
6626 wakaba 1.2 @@@Description:
6627     @@@@lang:en
6628     @@@@@:
6629     The ordinal index of the row to delete, starting
6630     from <DOM:0> and relative
6631     only to the rows contained inside this row group.
6632     @@@InCase:
6633     @@@@Value:-1
6634     @@@@Description:
6635     @@@@@lang:en
6636     @@@@@@:
6637     Delete the last row.
6638 wakaba 1.3 @@@@SpecLevel:2
6639 wakaba 1.1 @@Return:
6640     @@@Exception:
6641 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6642 wakaba 1.1 @@@@Type:
6643     DOMCore:DOMException
6644 wakaba 1.2 @@@@SubType:
6645     @@@@@QName:
6646     TODO: What?
6647     @@@@@Description:
6648     @@@@@@lang:en
6649     @@@@@@@:
6650     The <P:index> is greater than or equal to
6651     the number of rows or the <P:index> is less
6652     than <DOM:-1>.
6653 wakaba 1.3 @@@@SpecLevel:2
6654     @@@@ImplNote:
6655     @@@@@lang:en
6656     @@@@@@:
6657     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6658     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6659 wakaba 1.1 @@Level[list]:
6660     1
6661     2
6662     @@SpecLevel[list]:
6663     1
6664     2
6665 wakaba 1.2 ##IF:HTMLTableSectionElement
6666    
6667 wakaba 1.4 ET:
6668     @ETQName:
6669     xhtml1:tr
6670     @IFQName: HTMLTableRowElement
6671     @ClsQName:ManakaiDOMHTMLTableRowElement
6672     @ISAHTMLElement:
6673     @L1IF:
6674    
6675 wakaba 1.1 @Attr:
6676     @@Name: rowIndex
6677 wakaba 1.2 @@Description:
6678     @@@lang:en
6679     @@@@:
6680     The ordinal index of the row, starting from <DOM:0>,
6681     in the logical order (not the document order).
6682     \
6683     {NOTE:: The logical order take row groups into account;
6684     placing <HE:thead> rows first, followed by
6685     <HE:tbody> rows, followed by <HE:tfoot> rows.
6686     \
6687     }
6688 wakaba 1.1 @@Get:
6689     @@@Type:
6690     DOMMain:long
6691 wakaba 1.3 @@ImplNote:
6692     @@@lang:en
6693     @@@@:
6694     Writable in DOM Level 1 FE, with no description -
6695     fixed in the Errata.
6696 wakaba 1.1 @@Level[list]:
6697 wakaba 1.2 1
6698 wakaba 1.1 @@SpecLevel[list]:
6699 wakaba 1.2 1
6700 wakaba 1.1 2
6701     @Attr:
6702     @@Name: sectionRowIndex
6703 wakaba 1.2 @@Description:
6704     @@@lang:en
6705     @@@@:
6706     The ordinal index of this row, starting from <DOM:0>
6707     and relative to this row group.
6708 wakaba 1.1 @@Get:
6709     @@@Type:
6710     DOMMain:long
6711 wakaba 1.3 @@ImplNote:
6712     @@@lang:en
6713     @@@@:
6714     Writable in DOM Level 1 FE, with no description.
6715 wakaba 1.1 @@Level[list]:
6716 wakaba 1.2 1
6717 wakaba 1.1 @@SpecLevel[list]:
6718 wakaba 1.2 1
6719 wakaba 1.1 2
6720     @Attr:
6721     @@Name: cells
6722 wakaba 1.2 @@Description:
6723     @@@lang:en
6724     @@@@:The collection of cells in this row.
6725 wakaba 1.1 @@Get:
6726     @@@Type: HTMLCollection
6727 wakaba 1.3 @@ImplNote:
6728     @@@lang:en
6729     @@@@:
6730     Writable in DOM Level 1 FE, with no description.
6731 wakaba 1.1 @@Level[list]:
6732 wakaba 1.2 1
6733 wakaba 1.1 @@SpecLevel[list]:
6734 wakaba 1.2 1
6735 wakaba 1.1 2
6736 wakaba 1.4 @ATTR:
6737 wakaba 1.1 @@Name: align
6738 wakaba 1.11 @@ReflectEnum:
6739 wakaba 1.1 @@Get:
6740     @@Set:
6741 wakaba 1.4 @ATTR:
6742     @@AName:bgcolor
6743     @@DOMAName: bgColor
6744     @@Deprecated:
6745 wakaba 1.11 @@ReflectCDATA:
6746 wakaba 1.1 @@Get:
6747     @@Set:
6748 wakaba 1.4 @ATTR:
6749     @@AName:char
6750     @@DOMAName: ch
6751 wakaba 1.11 @@ReflectCDATA:
6752 wakaba 1.1 @@Get:
6753     @@Set:
6754 wakaba 1.4 @ATTR:
6755     @@AName:charoff
6756     @@DOMAName: chOff
6757 wakaba 1.11 @@ReflectCDATA:
6758 wakaba 1.1 @@Get:
6759     @@Set:
6760 wakaba 1.4 @ATTR:
6761     @@AName:valign
6762     @@DOMAName: vAlign
6763 wakaba 1.11 @@ReflectEnum:
6764 wakaba 1.1 @@Get:
6765     @@Set:
6766     @Method:
6767     @@Name: insertCell
6768 wakaba 1.2 @@Description:
6769     @@@lang:en
6770     @@@@:
6771     Insert an empty data cell (<HE:td>) into this row.
6772 wakaba 1.1 @@Param:
6773     @@@Name: index
6774     @@@Type:
6775     DOMMain:long
6776 wakaba 1.2 @@@Description:
6777     @@@@lang:en
6778     @@@@@:
6779     The index where the new cell is inserted, starting
6780     from <DOM:0>.
6781     @@@InCase:
6782     @@@@Value:-1
6783     @@@@Description:
6784     @@@@@lang:en
6785     @@@@@@:The new cell is appended.
6786 wakaba 1.3 @@@@SpecLevel:2
6787 wakaba 1.2 @@@InCase:
6788     @@@@Label:
6789     @@@@@lang:en
6790     @@@@@@:The number of cells
6791     @@@@Description:
6792     @@@@@lang:en
6793     @@@@@@:The new cell is appended.
6794 wakaba 1.3 @@@@SpecLevel:2
6795 wakaba 1.1 @@Return:
6796     @@@Type: HTMLElement
6797 wakaba 1.2 @@@Description:
6798     @@@@lang:en
6799     @@@@@:The newly inserted cell.
6800 wakaba 1.1 @@@Exception:
6801 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6802 wakaba 1.1 @@@@Type:
6803     DOMCore:DOMException
6804 wakaba 1.2 @@@@SubType:
6805     @@@@@QName:
6806     TODO: What?
6807     @@@@@Description:
6808     @@@@@@lang:en
6809     @@@@@@@:
6810     The <P:index> is greater than the number of
6811     cells or less than <DOM:-1>.
6812 wakaba 1.3 @@@@SpecLevel:2
6813     @@@@ImplNote:
6814     @@@@@lang:en
6815     @@@@@@:
6816     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6817     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6818 wakaba 1.1 @@Level[list]:
6819     1
6820     2
6821     @@SpecLevel[list]:
6822     1
6823     2
6824     @Method:
6825     @@Name: deleteCell
6826 wakaba 1.2 @@Description:
6827     @@@lang:en
6828     @@@@:Delete a cell from this row.
6829 wakaba 1.1 @@Param:
6830     @@@Name: index
6831     @@@Type:
6832     DOMMain:long
6833 wakaba 1.2 @@@Description:
6834     @@@@lang:en
6835     @@@@@:
6836     The index of the cell to delete, starting from <DOM:0>
6837     and in the document order.
6838     @@@InCase:
6839     @@@@Value:-1
6840     @@@@Description:
6841     @@@@@lang:en
6842     @@@@@@:
6843     The last cell is deleted.
6844 wakaba 1.3 @@@@SpecLevel:2
6845 wakaba 1.1 @@Return:
6846     @@@Exception:
6847 wakaba 1.2 @@@@Name: INDEX_SIZE_ERR
6848 wakaba 1.1 @@@@Type:
6849     DOMCore:DOMException
6850 wakaba 1.2 @@@@SubType:
6851     @@@@@QName:
6852     TODO: What?
6853     @@@@@Description:
6854     @@@@@@lang:en
6855     @@@@@@@:
6856     THe <P:index> is greater than or equal to the number
6857     of the cells or less than <DOM:-1>.
6858 wakaba 1.3 @@@@SpecLevel:2
6859     @@@@ImplNote:
6860     @@@@@lang:en
6861     @@@@@@:
6862     <SRC:DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6863     (<P:index> cannot <DOM:-1> in DOM Level 1.)
6864 wakaba 1.1 @@Level[list]:
6865     1
6866     2
6867     @@SpecLevel[list]:
6868     1
6869     2
6870 wakaba 1.2 ##IF:HTMLTableRowElement
6871    
6872 wakaba 1.4 ForDef:
6873     @QName:
6874     DOMHTML:ForTd
6875     ForDef:
6876     @QName:
6877     DOMHTML:ForTh
6878    
6879 wakaba 1.1 IF:
6880 wakaba 1.4 @For:ForHTML
6881     @rdf:type:
6882     @@@:
6883     dis:MultipleResource
6884     @@For:ForHTML
6885     @@ForCheck:
6886     !ManakaiDOM:ForIF !ManakaiDOM:ForClass
6887     !ForTd !ForTh
6888     @resourceFor:
6889     @@@: ForTd
6890     @@For:ForHTML
6891     @resourceFor:
6892     @@@:ForTh
6893     @@For:ForHTML
6894     @rdf:type:
6895     @@@:
6896     s:ElementType
6897     @@For:ForHTML
6898    
6899     @ETQName:
6900     @@@:
6901     xhtml1:td
6902     @@ForCheck:ForTd
6903     @ETQName:
6904     @@@:
6905 wakaba 1.2 xhtml1:th
6906 wakaba 1.4 @@ForCheck:ForTh
6907 wakaba 1.8
6908     @elementType:
6909     @@@: ||ForHTML40SE||ForTh
6910     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
6911     @@ContentType: DISCore|TFPQNames
6912     @elementType:
6913     @@@: ||ForHTML401||ForTh
6914     @@ForCheck: ManakaiDOM|DOM2
6915     @@ContentType: DISCore|TFPQNames
6916     @elementType:
6917     @@@: ||ForXHTML10SE||ForTh
6918     @@ForCheck: ManakaiDOM|DOM2
6919     @@ContentType: DISCore|TFPQNames
6920    
6921     @elementType:
6922     @@@: ||ForHTML40SE||ForTd
6923     @@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
6924     @@ContentType: DISCore|TFPQNames
6925     @elementType:
6926     @@@: ||ForHTML401||ForTd
6927     @@ForCheck: ManakaiDOM|DOM2
6928     @@ContentType: DISCore|TFPQNames
6929     @elementType:
6930     @@@: ||ForXHTML10SE||ForTd
6931     @@ForCheck: ManakaiDOM|DOM2
6932     @@ContentType: DISCore|TFPQNames
6933 wakaba 1.4
6934     @IFQName: HTMLTableCellElement
6935     @ClsQName:ManakaiDOMHTMLTableCellElement
6936     @ISAHTMLElement:
6937     @L1IF:
6938    
6939 wakaba 1.1 @Attr:
6940     @@Name: cellIndex
6941 wakaba 1.2 @@Description:
6942     @@@lang:en
6943     @@@@:
6944     The ordinal index of this cell in the row,
6945     starting from <DOM:0> and in the document order
6946     (not the display order).
6947 wakaba 1.1 @@Get:
6948     @@@Type:
6949     DOMMain:long
6950 wakaba 1.3 @@ImplNote:
6951     @@@lang:en
6952     @@@@:
6953     Writable in DOM Level 1 FE - fixed in the Errata.
6954 wakaba 1.11 @Attrs:
6955 wakaba 1.1 @@Name: abbr
6956 wakaba 1.11 @@ReflectCDATA:
6957 wakaba 1.1 @@Get:
6958     @@Set:
6959 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
6960     @@docAttrP2S: ||ForHTML401||ForTh
6961     @@docAttrP2X: ||ForXHTML10SE||ForTh
6962     @@docAttrP1S: ||ForHTML40SE||ForTd
6963     @@docAttrP2S: ||ForHTML401||ForTd
6964     @@docAttrP2X: ||ForXHTML10SE||ForTd
6965     @Attrs:
6966 wakaba 1.1 @@Name: align
6967 wakaba 1.11 @@ReflectEnum:
6968 wakaba 1.1 @@Get:
6969     @@Set:
6970 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
6971     @@docAttrP2S: ||ForHTML401||ForTh
6972     @@docAttrP2X: ||ForXHTML10SE||ForTh
6973     @@docAttrP1S: ||ForHTML40SE||ForTd
6974     @@docAttrP2S: ||ForHTML401||ForTd
6975     @@docAttrP2X: ||ForXHTML10SE||ForTd
6976     @Attrs:
6977 wakaba 1.1 @@Name: axis
6978 wakaba 1.11 @@ReflectCDATA:
6979 wakaba 1.1 @@Get:
6980     @@Set:
6981 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
6982     @@docAttrP2S: ||ForHTML401||ForTh
6983     @@docAttrP2X: ||ForXHTML10SE||ForTh
6984     @@docAttrP1S: ||ForHTML40SE||ForTd
6985     @@docAttrP2S: ||ForHTML401||ForTd
6986     @@docAttrP2X: ||ForXHTML10SE||ForTd
6987     @Attrs:
6988 wakaba 1.4 @@AName:bgcolor
6989     @@DOMAName: bgColor
6990     @@Deprecated:
6991 wakaba 1.11 @@ReflectCDATA:
6992 wakaba 1.1 @@Get:
6993     @@Set:
6994 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
6995     @@docAttrP2S: ||ForHTML401||ForTh
6996     @@docAttrP2X: ||ForXHTML10SE||ForTh
6997     @@docAttrP1S: ||ForHTML40SE||ForTd
6998     @@docAttrP2S: ||ForHTML401||ForTd
6999     @@docAttrP2X: ||ForXHTML10SE||ForTd
7000     @Attrs:
7001 wakaba 1.4 @@AName:char
7002     @@DOMAName: ch
7003 wakaba 1.11 @@ReflectCDATA:
7004 wakaba 1.1 @@Get:
7005     @@Set:
7006 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7007     @@docAttrP2S: ||ForHTML401||ForTh
7008     @@docAttrP2X: ||ForXHTML10SE||ForTh
7009     @@docAttrP1S: ||ForHTML40SE||ForTd
7010     @@docAttrP2S: ||ForHTML401||ForTd
7011     @@docAttrP2X: ||ForXHTML10SE||ForTd
7012     @Attrs:
7013 wakaba 1.4 @@AName:charoff
7014     @@DOMAName: chOff
7015 wakaba 1.11 @@ReflectCDATA:
7016 wakaba 1.1 @@Get:
7017     @@Set:
7018 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7019     @@docAttrP2S: ||ForHTML401||ForTh
7020     @@docAttrP2X: ||ForXHTML10SE||ForTh
7021     @@docAttrP1S: ||ForHTML40SE||ForTd
7022     @@docAttrP2S: ||ForHTML401||ForTd
7023     @@docAttrP2X: ||ForXHTML10SE||ForTd
7024     @Attrs:
7025 wakaba 1.4 @@AName:colspan
7026     @@DOMAName: colSpan
7027 wakaba 1.11 @@ReflectNumeric:
7028 wakaba 1.1 @@Get:
7029     @@Set:
7030 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7031     @@docAttrP2S: ||ForHTML401||ForTh
7032     @@docAttrP2X: ||ForXHTML10SE||ForTh
7033     @@docAttrP1S: ||ForHTML40SE||ForTd
7034     @@docAttrP2S: ||ForHTML401||ForTd
7035     @@docAttrP2X: ||ForXHTML10SE||ForTd
7036     @Attrs:
7037 wakaba 1.1 @@Name: headers
7038 wakaba 1.11 @@ReflectCDATA:
7039 wakaba 1.1 @@Get:
7040     @@Set:
7041 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7042     @@docAttrP2S: ||ForHTML401||ForTh
7043     @@docAttrP2X: ||ForXHTML10SE||ForTh
7044     @@docAttrP1S: ||ForHTML40SE||ForTd
7045     @@docAttrP2S: ||ForHTML401||ForTd
7046     @@docAttrP2X: ||ForXHTML10SE||ForTd
7047     @Attrs:
7048 wakaba 1.1 @@Name: height
7049 wakaba 1.4 @@Deprecated:
7050 wakaba 1.11 @@ReflectCDATA:
7051 wakaba 1.1 @@Get:
7052     @@Set:
7053 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7054     @@docAttrP2S: ||ForHTML401||ForTh
7055     @@docAttrP2X: ||ForXHTML10SE||ForTh
7056     @@docAttrP1S: ||ForHTML40SE||ForTd
7057     @@docAttrP2S: ||ForHTML401||ForTd
7058     @@docAttrP2X: ||ForXHTML10SE||ForTd
7059     @Attrs:
7060 wakaba 1.4 @@AName:nowrap
7061     @@DOMAName: noWrap
7062     @@Deprecated:
7063 wakaba 1.11 @@ReflectBoolean:
7064 wakaba 1.1 @@Get:
7065     @@@InCase:
7066     @@@@Value: true
7067     @@@InCase:
7068     @@@@Value: false
7069     @@Set:
7070     @@@InCase:
7071     @@@@Value: true
7072     @@@InCase:
7073     @@@@Value: false
7074 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7075     @@docAttrP2S: ||ForHTML401||ForTh
7076     @@docAttrP2X: ||ForXHTML10SE||ForTh
7077     @@docAttrP1S: ||ForHTML40SE||ForTd
7078     @@docAttrP2S: ||ForHTML401||ForTd
7079     @@docAttrP2X: ||ForXHTML10SE||ForTd
7080     @Attrs:
7081 wakaba 1.4 @@AName:rowspan
7082     @@DOMAName: rowSpan
7083 wakaba 1.11 @@ReflectNumeric:
7084 wakaba 1.1 @@Get:
7085     @@Set:
7086 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7087     @@docAttrP2S: ||ForHTML401||ForTh
7088     @@docAttrP2X: ||ForXHTML10SE||ForTh
7089     @@docAttrP1S: ||ForHTML40SE||ForTd
7090     @@docAttrP2S: ||ForHTML401||ForTd
7091     @@docAttrP2X: ||ForXHTML10SE||ForTd
7092     @Attrs:
7093 wakaba 1.1 @@Name: scope
7094 wakaba 1.11 @@ReflectEnum:
7095 wakaba 1.1 @@Get:
7096     @@Set:
7097 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7098     @@docAttrP2S: ||ForHTML401||ForTh
7099     @@docAttrP2X: ||ForXHTML10SE||ForTh
7100     @@docAttrP1S: ||ForHTML40SE||ForTd
7101     @@docAttrP2S: ||ForHTML401||ForTd
7102     @@docAttrP2X: ||ForXHTML10SE||ForTd
7103     @Attrs:
7104 wakaba 1.4 @@AName:valign
7105     @@DOMAName: vAlign
7106 wakaba 1.11 @@ReflectEnum:
7107 wakaba 1.1 @@Get:
7108     @@Set:
7109 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7110     @@docAttrP2S: ||ForHTML401||ForTh
7111     @@docAttrP2X: ||ForXHTML10SE||ForTh
7112     @@docAttrP1S: ||ForHTML40SE||ForTd
7113     @@docAttrP2S: ||ForHTML401||ForTd
7114     @@docAttrP2X: ||ForXHTML10SE||ForTd
7115     @Attrs:
7116 wakaba 1.1 @@Name: width
7117 wakaba 1.4 @@Deprecated:
7118 wakaba 1.11 @@ReflectCDATA:
7119 wakaba 1.1 @@Get:
7120     @@Set:
7121 wakaba 1.11 @@docAttrP1S: ||ForHTML40SE||ForTh
7122     @@docAttrP2S: ||ForHTML401||ForTh
7123     @@docAttrP2X: ||ForXHTML10SE||ForTh
7124     @@docAttrP1S: ||ForHTML40SE||ForTd
7125     @@docAttrP2S: ||ForHTML401||ForTd
7126     @@docAttrP2X: ||ForXHTML10SE||ForTd
7127 wakaba 1.2 ##IF:HTMLTableCellElement
7128    
7129 wakaba 1.4 ET:
7130     @ETQName:
7131     xhtml1:frameset
7132     @IFQName: HTMLFrameSetElement
7133     @ClsQName:ManakaiDOMHTMLFrameSetElement
7134     @ISAHTMLElement:
7135     @L1IF:
7136    
7137     @ForCheck: !ForXHTML11
7138    
7139     @ATTR:
7140 wakaba 1.1 @@Name: cols
7141 wakaba 1.11 @@ReflectCDATA:
7142 wakaba 1.1 @@Get:
7143     @@Set:
7144 wakaba 1.4 @ATTR:
7145 wakaba 1.1 @@Name: rows
7146 wakaba 1.11 @@ReflectCDATA:
7147 wakaba 1.1 @@Get:
7148     @@Set:
7149 wakaba 1.2 ##IF:HTMLFrameSetElement
7150    
7151 wakaba 1.4 ET:
7152     @ETQName:
7153     xhtml1:frame
7154     @IFQName: HTMLFrameElement
7155     @ClsQName:ManakaiDOMHTMLFrameElement
7156     @ISAHTMLElement:
7157     @L1IF:
7158    
7159     @ForCheck: !ForXHTML11
7160    
7161     @ATTR:
7162     @@AName:frameborder
7163     @@DOMAName: frameBorder
7164 wakaba 1.11 @@ReflectCDATA:
7165 wakaba 1.1 @@Get:
7166     @@Set:
7167 wakaba 1.4 @ATTR:
7168     @@AName:longdesc
7169     @@DOMAName: longDesc
7170 wakaba 1.11 @@ReflectURI:
7171 wakaba 1.1 @@Get:
7172     @@Set:
7173 wakaba 1.4 @ATTR:
7174     @@AName:marginheight
7175     @@DOMAName: marginHeight
7176 wakaba 1.11 @@ReflectCDATA:
7177 wakaba 1.1 @@Get:
7178     @@Set:
7179 wakaba 1.4 @ATTR:
7180     @@AName:marginwidth
7181     @@DOMAName: marginWidth
7182 wakaba 1.11 @@ReflectCDATA:
7183 wakaba 1.1 @@Get:
7184     @@Set:
7185 wakaba 1.4 @ATTR:
7186 wakaba 1.1 @@Name: name
7187 wakaba 1.11 @@ReflectCDATA:
7188 wakaba 1.1 @@Get:
7189     @@Set:
7190 wakaba 1.4 @ATTR:
7191     @@AName:noresize
7192     @@DOMAName: noResize
7193 wakaba 1.11 @@ReflectBoolean:
7194 wakaba 1.1 @@Get:
7195     @@@InCase:
7196     @@@@Value: true
7197     @@@InCase:
7198     @@@@Value: false
7199     @@Set:
7200     @@@InCase:
7201     @@@@Value: true
7202     @@@InCase:
7203     @@@@Value: false
7204 wakaba 1.4 @ATTR:
7205 wakaba 1.1 @@Name: scrolling
7206 wakaba 1.11 @@ReflectEnum:
7207 wakaba 1.1 @@Get:
7208     @@Set:
7209 wakaba 1.4 @ATTR:
7210 wakaba 1.1 @@Name: src
7211 wakaba 1.11 @@ReflectURI:
7212 wakaba 1.1 @@Get:
7213     @@Set:
7214     @Attr:
7215     @@Name: contentDocument
7216 wakaba 1.2 @@Description:
7217     @@@lang:en
7218     @@@@:
7219     The document this frame contains, if any and available.
7220 wakaba 1.1 @@Get:
7221     @@@Type: Document
7222 wakaba 1.2 @@@InCase:
7223     @@@@Value:
7224     @@@@@is-null:1
7225     @@@@Description:
7226     @@@@@lang:en
7227     @@@@@@:
7228     There is no document or it is not available.
7229 wakaba 1.4 @@@Def:
7230     @@@@ContentType:
7231     lang:dis
7232     @@@@GetPropNode:
7233     DOMHTML:contentDocument
7234 wakaba 1.1 @@Level[list]: 2
7235     @@SpecLevel[list]: 2
7236 wakaba 1.4 @@L2:
7237 wakaba 1.2 ##IF:HTMLFrameElement
7238    
7239 wakaba 1.4 ET:
7240     @ETQName:
7241     xhtml1:iframe
7242     @IFQName: HTMLIFrameElement
7243     @ClsQName:ManakaiDOMHTMLIFrameElement
7244     @ISAHTMLElement:
7245     @L1IF:
7246    
7247     @ForCheck: !ForXHTML11
7248    
7249     @ATTR:
7250 wakaba 1.1 @@Name: align
7251 wakaba 1.4 @@Deprecated:
7252 wakaba 1.11 @@ReflectEnum:
7253 wakaba 1.1 @@Get:
7254     @@Set:
7255 wakaba 1.4 @ATTR:
7256     @@AName:frameborder
7257     @@DOMAName: frameBorder
7258 wakaba 1.11 @@ReflectCDATA:
7259 wakaba 1.1 @@Get:
7260     @@Set:
7261 wakaba 1.4 @ATTR:
7262 wakaba 1.1 @@Name: height
7263 wakaba 1.11 @@ReflectCDATA:
7264 wakaba 1.1 @@Get:
7265     @@Set:
7266 wakaba 1.4 @ATTR:
7267     @@AName:longdesc
7268     @@DOMAName: longDesc
7269 wakaba 1.11 @@ReflectURI:
7270 wakaba 1.1 @@Get:
7271     @@Set:
7272 wakaba 1.4 @ATTR:
7273     @@AName:marginheight
7274     @@DOMAName: marginHeight
7275 wakaba 1.11 @@ReflectCDATA:
7276 wakaba 1.1 @@Get:
7277     @@Set:
7278 wakaba 1.4 @ATTR:
7279     @@AName:marginwidth
7280     @@DOMAName: marginWidth
7281 wakaba 1.11 @@ReflectCDATA:
7282 wakaba 1.1 @@Get:
7283     @@Set:
7284 wakaba 1.4 @ATTR:
7285 wakaba 1.1 @@Name: name
7286 wakaba 1.11 @@ReflectCDATA:
7287 wakaba 1.1 @@Get:
7288     @@Set:
7289 wakaba 1.4 @ATTR:
7290 wakaba 1.1 @@Name: scrolling
7291 wakaba 1.11 @@ReflectEnum:
7292 wakaba 1.1 @@Get:
7293     @@Set:
7294 wakaba 1.4 @ATTR:
7295 wakaba 1.1 @@Name: src
7296 wakaba 1.11 @@ReflectURI:
7297 wakaba 1.1 @@Get:
7298     @@Set:
7299 wakaba 1.4 @ATTR:
7300 wakaba 1.1 @@Name: width
7301 wakaba 1.11 @@ReflectCDATA:
7302 wakaba 1.1 @@Get:
7303     @@Set:
7304     @Attr:
7305     @@Name: contentDocument
7306 wakaba 1.2 @@Description:
7307     @@@lang:en
7308     @@@@:
7309     The document this frame contains, if any and available.
7310 wakaba 1.1 @@Get:
7311     @@@Type: Document
7312 wakaba 1.2 @@@Description:
7313     @@@@lang:en
7314     @@@@@:
7315     There is no document or it is not available.
7316 wakaba 1.4 @@@Def:
7317     @@@@ContentType:
7318     lang:dis
7319     @@@@GetPropNode:
7320     DOMHTML:contentDocument
7321 wakaba 1.1 @@Level[list]: 2
7322     @@SpecLevel[list]: 2
7323 wakaba 1.4 @@L2:
7324 wakaba 1.2 ##IF:HTMLIFrameElement
7325    
7326     ## DOMHTML.dis ends here
7327    

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24