/[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.19 - (hide annotations) (download)
Sun Sep 25 14:53:03 2005 UTC (19 years, 2 months ago) by wakaba
Branch: MAIN
Changes since 1.18: +6 -4 lines
++ manakai/bin/ChangeLog	25 Sep 2005 14:45:44 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* dac.pl, dac2pm.pl, mkdisdump.pl: Parameters "--dis-file-suffix",
	"--daem-file-suffix", "--search-path-catalog-file-name", and
	"--search-path" added.  New dae and daem database format support.
	(dac_search_file_stem): New function.

++ manakai/lib/Message/Markup/ChangeLog	25 Sep 2005 14:47:09 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (DAC_SUFFIX): Changed to ".dae".
	(DAEM_SUFFIX): New.

++ manakai/lib/Message/Util/ChangeLog	25 Sep 2005 14:50:33 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (RESOURCE_NOT_DEFINED_ERR): New error code.
	(getResource): New "dae" and "daem" database format support.
	(DISResourceList): New type.
	(uriRef, ownerModuleURI, ownerModuleURIRef): New attributes.
	(addChildResource, addDynamicChildResource): New methods.
	(getChildResourceList, getDynamicChildResourceList): New method.
	(getChildResourceListByType): New method.
	(parentResource, dynamicParentResource): New attributes.

	* Makefile (DAC_SUFFIX): Changed to ".dae".
	(DAEM_SUFFIX): New.

++ manakai/lib/Message/Util/DIS/ChangeLog	25 Sep 2005 14:52:26 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* Perl.dis (plLoadDISDatabase): New "moduleResolver" parameter
	added.
	(plStore): New "moduleResolver" parameter added.
	(plLoadDISDatabaseModule): New method.

++ manakai/lib/Message/DOM/ChangeLog	25 Sep 2005 14:47:15 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (DAC_SUFFIX): Changed to ".dae".
	(DAEM_SUFFIX): New.

++ manakai/lib/manakai/ChangeLog	25 Sep 2005 14:46:50 -0000
2005-09-25  Wakaba  <wakaba@suika.fam.cx>

	* Makefile (DAC_SUFFIX): Changed to ".dae".
	(DAEM_SUFFIX): New.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24