/[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.15 - (hide annotations) (download)
Wed Aug 31 13:02:46 2005 UTC (19 years, 2 months ago) by wakaba
Branch: MAIN
Changes since 1.14: +174 -172 lines
mkdisdump.pl: Outputs referenced resources in another modules

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24