/[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.13 - (hide annotations) (download)
Mon Aug 15 07:59:41 2005 UTC (19 years, 3 months ago) by wakaba
Branch: MAIN
Changes since 1.12: +21 -7 lines
lib/Message/Util/DIS/DISDoc.dis: Parsing of lexical types dis:TypeQName and dis:TFQNames implemented

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24