/[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.12 - (hide annotations) (download)
Mon May 23 13:26:55 2005 UTC (19 years, 6 months ago) by wakaba
Branch: MAIN
Changes since 1.11: +10 -5 lines
lib/Message/Util/DIS.dis: getFeature and roles for module, for, resource, element and database added

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24