/[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.17 - (hide annotations) (download)
Fri Sep 23 18:24:55 2005 UTC (19 years, 2 months ago) by wakaba
Branch: MAIN
Changes since 1.16: +613 -416 lines
++ manakai/doc/ChangeLog	23 Sep 2005 17:22:30 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* Makefile: Command-line arguments for new modules added.
	(DAC_PREFIX): Changed to ".dad".

++ manakai/bin/ChangeLog	23 Sep 2005 17:21:35 -0000
2005-09-24  Wakaba  <wakaba@suika.fam.cx>

	* dac.pl, dac2pm.pl, mkdisdump.pl: "--debug" option added.

2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* mkdisdump.pl: Fixed to support new dad database implementation.

++ manakai/lib/Message/Util/ChangeLog	23 Sep 2005 17:29:45 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* DIS.dis (DISParser.new): New method.
	(hasFeature): Removed.  ManakaiDISAnyResource now
	extends DOMFeature:ManakaiHasFeatureByGetFeature.
	(readProperties): Support for property value data
	types DISLang:MemberRef and dx:XCRef added.
	(ManakaiDISExceptionTarget): It is now an alias
	for dx:ManakaiDefaultExceptionHandler.

++ manakai/lib/Message/Util/Error/ChangeLog	23 Sep 2005 17:41:25 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* DOMException.dis (dx:raises): Properties dis:dataType
	and dis:multipleProperties added.

++ manakai/lib/Message/Util/DIS/ChangeLog	23 Sep 2005 17:40:22 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* DISDoc.dis: Modified to support new "dad" implementation.
	(DISElementDISDoc): Removed.
	(DVValueDISDoc): New.
	(documentionGroupId): This attribute values now
	do not include element type names.

	* DNLite.dis (convertDISDocumentToDNLDocument): Fixed
	not to "tie" happens to cause strange segmentation fault.

	* Perl.dis (plCodeFragment): Support for the
	role "dv:ValurRole" added.  Property name "dis:AppName"
	is changed to more specific property names.  Throws
	an exception if an input processor has no Perl code
	definition.  A parameter value to "getPropertyValue"
	was missing.

	* Value.dis (dv:ValueRole): New role.
	(DVValue.getFeature): New method.
	(DVValue): Now extends DOMFeature:ManakaiHasFeatureByGetFeature
	so that it implements DOMFeature:GetFeature.

++ manakai/lib/Message/DOM/ChangeLog	23 Sep 2005 17:24:34 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* GenericLS.dis, SimpleLS.dis: New modules separated
	from DOMLS.dis.

	* DOMFeature.dis, DOMMain.dis: "MDOM:" and "for" definitions
	moved from DOMMain to DOMFeature.  Now DOMFeature
	has no dependency on DOMMain.

	* DOMFeature.dis (DEBUG): New variable.

++ manakai/lib/manakai/ChangeLog	23 Sep 2005 17:44:24 -0000
2005-09-23  Wakaba  <wakaba@suika.fam.cx>

	* DISCore.dis (dis:Label, dis:FullName): Their "dis:multipleProperties"
	property is fixed to "DISCore:UnorderedList" to allow
	language variants.
	(dis:Author): Marked as obsolete.
	(DISCore:author): New property.
	(DISCore:Wakaba): New resource.

	* DISPerl.dis (DISPerl:name, DISPerl:constName,
	DISPerl:exportTagName, DISPerl:variableName, DISPerl:paramName):
	New properties.

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24