/[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 - (show 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 Module:
2 @QName:
3 MDOM:DOMHTML
4 @Namespace:
5 http://suika.fam.cx/~wakaba/archive/2004/dom/html#
6
7 @AppName:
8 @@@: html
9 @@ContentType:
10 lang:IDL-DOM
11 @@prefix: dom.w3c.org
12 @@For:
13 ManakaiDOM:IDL ManakaiDOM:DOM1 !ManakaiDOM|DOM2
14 @AppName:
15 @@@: html2
16 @@ContentType:
17 lang:IDL-DOM
18 @@prefix: dom.w3c.org
19 @@For:
20 ManakaiDOM:IDL ManakaiDOM:DOM2
21
22 @FullName:
23 @@lang:en
24 @@@: DOM HTML Module
25
26 @Description:
27 @@lang:en
28 @@@:
29 The DOM HTML Module provides objects and methods specific
30 to HTML 4 documents and XHTML 1.0 documents. The HTML
31 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 of HTML 4.0 <SRC::DOM Level 1 HTML> or HTML 4.01
35 <SRC::DOM Level 2 HTML> and XHTML 1.0 <SRC::DOM Level 2 HTML>.
36 \
37 Form related interfaces are provided by a separate
38 module, <Module::MDOM:DOMWebForms>.
39
40 @DISCore:author: DISCore|Wakaba
41 @License:
42 license:Perl+MPL
43 @Date:
44 @@@:
45 $Date: 2005/09/05 05:21:11 $
46 @@ContentType:
47 dis:Date.RCS
48
49 @DefaultFor:
50 ManakaiDOM:ManakaiDOMLatest
51
52 @Require:
53 @@Module:
54 @@@QName:
55 DISlib:DISMarkup
56 @@@WithFor:
57 ManakaiDOM:all
58 @@Module:
59 @@@QName: MDOM|DOMXML
60 @@@WithFor: ManakaiDOM|ManakaiDOMLatest
61 @@Module:
62 @@@QName: MDOM|DOMWebForms
63 @@@WithFor: ManakaiDOM|ManakaiDOMLatest
64 @@Module:
65 @@@QName: MDOM|DOMHTML
66 @@@WithFor: ManakaiDOM|ManakaiDOM
67 @@Module:
68 @@@QName: MDOM|DOMHTML
69 @@@WithFor: ManakaiDOM|ManakaiDOM1
70 @@Module:
71 @@@QName: MDOM|DOMHTML
72 @@@WithFor: ManakaiDOM|ManakaiDOM2
73 @@Module:
74 @@@QName: MDOM|DOMHTML
75 @@@WithFor: ManakaiDOM|ManakaiDOMLatest
76 @@Module:
77 @@@QName: MDOM|DOMHTML
78 @@@WithFor: DOMHTML|ForHTML40SE
79 @@Module:
80 @@@QName: MDOM|DOMHTML
81 @@@WithFor: DOMHTML|ForHTML401
82 @@Module:
83 @@@QName: MDOM|DOMHTML
84 @@@WithFor: DOMHTML|ForXHTML10SE
85
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 @DISlib:
92 http://suika.fam.cx/~wakaba/archive/2004/dis/
93 @DOMHTML:
94 http://suika.fam.cx/~wakaba/archive/2004/dom/html#
95 @DOMMain:
96 http://suika.fam.cx/~wakaba/archive/2004/dom/main#
97 @DOMMetaImpl:
98 http://suika.fam.cx/~wakaba/archive/2004/dom/meta#
99 @f:
100 http://suika.fam.cx/~wakaba/archive/2004/dom/feature#
101 @html5:
102 http://www.w3.org/1999/xhtml
103 @infoset:
104 http://www.w3.org/2001/04/infoset#
105 @kwd:
106 http://suika.fam.cx/~wakaba/archive/2005/rfc2119/
107 @lang:
108 http://suika.fam.cx/~wakaba/archive/2004/8/18/lang#
109 @license:
110 http://suika.fam.cx/~wakaba/archive/2004/8/18/license#
111 @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 @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
146 ## -- "For HTML"
147
148 ForDef:
149 @QName:
150 DOMHTML:ForHTML
151 @ISA:
152 s:ForML
153 @FullName:
154 @@lang:en
155 @@@:
156 For Hypertext Markup Language (HTML), any version
157
158 ForDef:
159 @QName:
160 DOMHTML:ForClassicHTML
161 @ISA:
162 DOMHTML:ForHTML
163 @FullName:
164 @@lang:en
165 @@@:
166 For non-XML-based HTML, any version
167
168 ForDef:
169 @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 @QName:
182 DOMHTML:ForHTML4
183 @ISA: DOMHTML|ForSGMLHTML
184 @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 For XHTML, compatible with W3C XHTML 1, any version
235
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 ForDef:
296 @QName: DOMHTML|ForHTML5
297 @FullName:
298 @@lang:en
299 @@@:
300 For HTML 5 (Work in progress)
301 @ISA: DOMHTML|ForHTML
302
303 ## -- Features
304
305 ElementTypeBinding:
306 @Name: FeatureDef
307 @ElementType:
308 dis:ResourceDef
309 @ShadowContent:
310 @@rdf:type: f|Feature
311 @@For: =ManakaiDOM|all
312
313 ElementTypeBinding:
314 @Name: FeatureVerDef
315 @ElementType:
316 dis:ResourceDef
317 @ShadowContent:
318 @@rdf:type: f|Feature
319
320 ElementTypeBinding:
321 @Name: featureName
322 @ElementType:
323 f:name
324 @ShadowContent:
325 @@ContentType: DISCore|String
326
327 ElementTypeBinding:
328 @Name: featureQName
329 @ElementType:
330 f:name
331 @ShadowContent:
332 @@ContentType: DISCore|QName
333
334 FeatureDef:
335 @featureName: HTML
336 @QName: HTMLFeature
337 @FeatureVerDef:
338 @@Version:1.0
339 @@QName: HTMLFeature10
340 @@DOMMetaImpl:instanceFeatureOf: HTMLFeature
341 @@FullName:
342 @@@@: DOM Level 1 HTML
343 @@@lang:en
344 @@ImplNote:
345 @@@lang:en
346 @@@@:
347 The DOM Level 2 HTML Specification does not say DOM Level 2
348 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 @@DOMMain:requireFeature:
353 DOMCore:CoreFeature10
354 @FeatureVerDef:
355 @@Version:2.0
356 @@QName: HTMLFeature20
357 @@DOMMetaImpl:instanceFeatureOf: HTMLFeature
358 @@FullName:
359 @@@@: DOM Level 2 HTML
360 @@@lang:en
361 @@enDesc:
362 Note that the <Feature::HTML> feature version <FeatureVer::2.0>
363 is <EM::incompatible> with <FeatureVer::1.0>.
364 @@DOMMain:requireFeature:
365 DOMCore:CoreFeature20
366
367 FeatureDef:
368 @featureName: XHTML
369 @QName: XHTMLFeature
370 @FeatureVerDef:
371 @@Version:2.0
372 @@FullName:
373 @@@@: DOM Level 2 HTML (with XHTML support)
374 @@@lang:en
375 @@QName: XHTMLFeature20
376 @@DOMMetaImpl:instanceFeatureOf: XHTMLFeature
377 @@DOMMain:extendFeature: HTMLFeature20
378 @@DOMMain:extendFeature:
379 DOMXML:XMLFeature20
380 @@Description:
381 @@@lang:en
382 @@@@:
383 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 ## -- Datatypes
388
389 ElementTypeBinding:
390 @Name: DataTypeAlias
391 @ElementType:
392 dis:ResourceDef
393 @ShadowContent:
394 @@rdf:type: DISLang|AnyDataType
395 @@ForCheck: ManakaiDOM|DOM
396
397 DataTypeAlias:
398 @Name: DOMString
399 @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
412 DataTypeAlias:
413 @Name: Node
414 @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
427 DataTypeAlias:
428 @Name: Document
429 @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
442 DataTypeAlias:
443 @Name: NodeList
444 @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
457 DataTypeAlias:
458 @Name: Element
459 @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
472 ElementTypeBinding:
473 @Name: ReflectTypeDef
474 @ElementType:
475 dis:ResourceDef
476 @ShadowContent:
477 @@rdf:type: DISLang|AnyDataType
478 @@ForCheck: !ManakaiDOM|IDL
479 @@For: ManakaiDOM|DOM
480
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 @@PerlCDef:
497 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 @@PerlCDef:
522 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 @@PerlCDef:
564 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 @@disCDef:
588 @@@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 @@PerlCDef:
612 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 @@disCDef:
635 @@@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 @@PerlCDef:
650 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 @@PerlCDef:
662 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 $ao-><M::NodeStem.orphanate>;
687 }
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 @@PerlCDef:
719 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 @@PerlCDef:
752 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 @@PerlCDef:
824 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 @@PerlCDef:
874 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 @@disCDef:
907 @@@DISPerl:cloneCode: NumericSet
908
909 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 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 @@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 @@For: ForHTML
955 @@ISA:
956 @@@@: ||ManakaiDOM|ManakaiDOM2||ManakaiDOM|ForIF
957 @@@ForCheck: ManakaiDOM|ForIF ManakaiDOM|ManakaiDOMLatest
958 @@@ContentType: DISCore|TFPQNames
959 ## NOTE: A Level 2 interface is not always upward-compatible with Level 1 i.f.
960
961 ElementTypeBinding:
962 @Name: L2
963 @ElementType:
964 DOMMain:implementFeature
965 @ShadowContent:
966 @@@: HTMLFeature20
967 @@For:
968 ManakaiDOM:DOM2
969
970 ElementTypeBinding:
971 @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 @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 @@For: ForHTML
993
994 ElementTypeBinding:
995 @Name: PerlDef
996 @ElementType:
997 dis:Def
998 @ShadowContent:
999 @@ContentType:
1000 lang:Perl
1001 @@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
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 @@@@: DISLang|Interface
1120 @@@ForCheck:
1121 ManakaiDOM:ForIF
1122 @@rdf:type:
1123 @@@@: DISLang|Class
1124 @@@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 @@Implement:
1146 @@@@: ||+||ManakaiDOM|ForIF
1147 @@@ForCheck: ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM1
1148 @@@ContentType: DISCore|TFPQNames
1149
1150 ElementTypeBinding:
1151 @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 @Name: IFCls12ETDef
1179 @ElementType:
1180 dis:ResourceDef
1181 @ShadowContent:
1182 @@rdf:type:
1183 @@@@: 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 @@@ForCheck:
1208 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 @@rdf:type:
1226 @@@: 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 @@rdf:type:
1253 @@@@: dis|MultipleResource
1254 @@@ForCheck: !ManakaiDOM|ForIF !ManakaiDOM|ForClass !ForHTML
1255 @@resourceFor: ManakaiDOM|ForIF
1256 @@resourceFor:
1257 @@@@: ManakaiDOM|ForClass
1258 @@@ForCheck: ManakaiDOM|ManakaiDOM !=ManakaiDOM|ManakaiDOM
1259 @@For: ManakaiDOM|DOM1
1260 @@For: =ManakaiDOM|ManakaiDOM
1261 @@For: ForHTML
1262
1263 @@rdf:type:
1264 @@@@: DISLang|Interface
1265 @@@ForCheck: ManakaiDOM|ForIF
1266
1267 @@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 @@@ForCheck:
1278 ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM1
1279 @@Implement:
1280 @@@@: ||ManakaiDOM|ManakaiDOM2||ManakaiDOM|ForIF
1281 @@@ContentType: DISCore|TFPQNames
1282 @@@ForCheck: ManakaiDOM|ForClass ManakaiDOM|ManakaiDOM2
1283 @@Implement:
1284 @@@@: ||ManakaiDOM|ManakaiDOMLatest||ManakaiDOM|ForIF
1285 @@@ContentType: DISCore|TFPQNames
1286 @@@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
1299 @@s:elementType:
1300 @@@@: ||ForHTML40SE
1301 @@@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
1302 @@@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 @@@DISCore:stopISARecursive:1
1309 @@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 @@@ForCheck:
1348 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
1365 ElementTypeBinding:
1366 @Name: H5ETX
1367 @ElementType:
1368 dis:ResourceDef
1369 @ShadowContent:
1370 @@ForCheck: !=ManakaiDOM|all
1371
1372 @@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 @@@DISCore:stopISARecursive:1
1423
1424 @@DOMMain:implementFeature: HTMLExtendedFeature30
1425
1426 @@For: =ManakaiDOM|ManakaiDOM
1427 @@For: ManakaiDOM|ManakaiDOMLatest
1428 @@For: ForHTML5
1429
1430 ElementTypeBinding:
1431 @Name: Method
1432 @ElementType:
1433 dis:ResourceDef
1434 @ShadowContent:
1435 @@rdf:type: DISLang|Method
1436 @@ForCheck: ManakaiDOM|DOM !=ManakaiDOM|ManakaiDOM
1437
1438 ElementTypeBinding:
1439 @Name: IntMethod
1440 @ElementType:
1441 dis:ResourceDef
1442 @ShadowContent:
1443 @@rdf:type: DISLang|Method
1444 @@ForCheck: ManakaiDOM|ForClass
1445 @@ManakaiDOM:isForInternal: 1
1446
1447 ElementTypeBinding:
1448 @Name: ReMethod
1449 @ElementType:
1450 dis:ResourceDef
1451 @ShadowContent:
1452 @@rdf:type: DISLang|Method
1453 @@ForCheck: ManakaiDOM|ForClass
1454
1455 ElementTypeBinding:
1456 @Name: Param
1457 @ElementType:
1458 dis:ResourceDef
1459 @ShadowContent:
1460 @@rdf:type: DISLang|MethodParameter
1461
1462 ElementTypeBinding:
1463 @Name: Exception
1464 @ElementType:
1465 ManakaiDOM:raises
1466
1467 ElementTypeBinding:
1468 @Name: Return
1469 @ElementType:
1470 dis:ResourceDef
1471 @ShadowContent:
1472 @@rdf:type: DISLang|MethodReturn
1473
1474 ElementTypeBinding:
1475 @Name: Attr
1476 @ElementType:
1477 dis:ResourceDef
1478 @ShadowContent:
1479 @@rdf:type: DISLang|Attribute
1480 @@ForCheck: ManakaiDOM|DOM !=ManakaiDOM|ManakaiDOM
1481
1482 ElementTypeBinding:
1483 @Name: Attrs
1484 @ElementType:
1485 dis:ResourceDef
1486 @ShadowContent:
1487 @@rdf:type:
1488 @@@@: DISLang|Attribute
1489 @@@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 @Name: ATTR
1499 @ElementType:
1500 dis:ResourceDef
1501 @ShadowContent:
1502 @@ForCheck:
1503 !=ManakaiDOM:ManakaiDOM
1504 @@rdf:type:
1505 @@@@: DISLang|Attribute
1506 @@@ForCheck: ManakaiDOM|DOM
1507 @@rdf:type:
1508 @@@@: s|Attribute
1509 @@@ForCheck: ForHTML
1510 @@DocAttr:
1511 @@@@: ||ForHTML40SE
1512 @@@ForCheck: ManakaiDOM|DOM1 !ManakaiDOM|DOM2
1513 @@@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 @@@@: ||ForHTML401
1521 @@@ForCheck: ManakaiDOM|DOM2
1522 @@DocAttr:
1523 @@@@: ||ForXHTML10SE
1524 @@@ForCheck: ManakaiDOM|DOM2
1525
1526 ElementTypeBinding:
1527 @Name: ReAttr
1528 @ElementType:
1529 dis:ResourceDef
1530 @ShadowContent:
1531 @@rdf:type: DISLang|Attribute
1532 @@ForCheck: ManakaiDOM|ForClass
1533
1534 ElementTypeBinding:
1535 @Name: Get
1536 @ElementType:
1537 dis:ResourceDef
1538 @ShadowContent:
1539 @@rdf:type: DISLang|AttributeGet
1540 @@ForCheck: ManakaiDOM|DOM
1541
1542 ElementTypeBinding:
1543 @Name: Set
1544 @ElementType:
1545 dis:ResourceDef
1546 @ShadowContent:
1547 @@rdf:type: DISLang|AttributeSet
1548 @@ForCheck: ManakaiDOM|DOM
1549
1550 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 @@rdf:type: DISLang|ConstGroup
1564 @@ForCheck: ManakaiDOM|DOM !=ManakaiDOM|ManakaiDOM
1565
1566 ElementTypeBinding:
1567 @Name: Const
1568 @ElementType:
1569 dis:ResourceDef
1570 @ShadowContent:
1571 @@rdf:type: DISLang|Const
1572 @@ForCheck: ManakaiDOM|DOM !=ManakaiDOM|ManakaiDOM
1573
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 @dataType: DISCore|Boolean
1589 @multipleProperties: DISCore|Single
1590
1591 IFCls1Def:
1592 @IFQName: HTMLCollection
1593 @ClsQName: ManakaiDOMHTMLCollection
1594
1595 @ClsISA: NodeRef
1596
1597 @Description:
1598 @@lang:en
1599 @@@:
1600 A list of nodes. An individual node may be accessed
1601 by either ordinal index or the <HA::name> or <HA::id>
1602 of the node.
1603 \
1604 <IF::HTMLCollection> objects are <EM::live>; they are
1605 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 @@@Type: ulong
1615 @@@PerlDef:
1616 my $l = $self->{<Q::TreeCore:node>}
1617 -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1618 .getElementsBy>
1619 ($self->{<Q::ManakaiDOMCore:nodeMatch>});
1620 $r = @$l;
1621 @Method:
1622 @@Name: item
1623 @@Description:
1624 @@@lang:en
1625 @@@@:
1626 Retrieve a node specified by ordinal index.
1627 @@Param:
1628 @@@Name: index
1629 @@@Type: ulong
1630 @@@Description:
1631 @@@@lang:en
1632 @@@@@:
1633 The index of the node to retrieve, in the document order.
1634 The index origin is <DOM::0>.
1635 @@Return:
1636 @@@Type:
1637 DOMCore:Node
1638 @@@Description:
1639 @@@@lang:en
1640 @@@@@:
1641 The <P::index>th node.
1642 @@@InCase:
1643 @@@@Value:
1644 @@@@@is-null:1
1645 @@@@Description:
1646 @@@@@lang:en
1647 @@@@@@:
1648 The <P::index> is out of range.
1649 @@@PerlDef:
1650 $r = $self->{<Q::TreeCore:node>}
1651 -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1652 .getElementBy>
1653 ($self->{<Q::ManakaiDOMCore:nodeMatch>}, \$index);
1654 if (defined $r) {
1655 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($r);
1656 }
1657 @Method:
1658 @@Name: namedItem
1659 @@Description:
1660 @@@lang:en
1661 @@@@:
1662 Retrieve a node using a name.
1663 \
1664 With HTML 4 documents,
1665 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 The matching is case-insensitive.
1670 \
1671 With XHTML 1.0 documents, it only searches for
1672 an <IF::DOMCore:Element> with a matching <HA::id> attribute.
1673 The matching is case-sensitive.
1674 @@ImplNote:
1675 @@@lang:en
1676 @@@@:
1677 XHTML <HA::id> local attributes? XML <XML::ID> attributes?
1678 Any local <XA::id> attributes?
1679 @@Param:
1680 @@@Name: name
1681 @@@Type:
1682 DOMMain:DOMString
1683 @@@Description:
1684 @@@@lang:en
1685 @@@@@:
1686 The name of the <IF::DOMCore:Node> to retrieve.
1687 @@Return:
1688 @@@Type:
1689 DOMCore:Node
1690 @@@Description:
1691 @@@@lang:en
1692 @@@@@:
1693 The <IF::DOMCore:Node> with a <HA::name> or <HA::id> whose
1694 value matches with <P::name>.
1695 @@@InCase:
1696 @@@@Value:
1697 @@@@@is-null:1
1698 @@@@Description:
1699 @@@@@lang:en
1700 @@@@@@:
1701 There is no node with such a <P::name>.
1702 @@@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 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#1"
1713 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 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 }
1739 }
1740 return false;
1741 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#2"
1742 }, \$index);
1743 }
1744 $index = 0;
1745 $r ||= $self->{<Q::TreeCore:node>}
1746 -><M::ManakaiDOMCore:ManakaiDOMNodeObjectNode
1747 .getElementBy>
1748 (sub ($) {
1749 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#3"
1750 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 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 }
1776 }
1777 return false;
1778 \#line 1 "DOMHTML.ManakaiDOMHTMLCollection.namedItem.#4"
1779 }, \$index);
1780 if (defined $r) {
1781 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($r);
1782 }
1783
1784 ImplNote:
1785 @@lang:en
1786 @@@:
1787 <IF::HTMLOptionCollection>: See <Module::MDOM:DOMWebForms>.
1788
1789 ResourceDef:
1790 @QName: ulong
1791 @For: ManakaiDOM|DOM
1792 @AliasFor: DOMMain|unsigned-long||ManakaiDOM|all
1793
1794 IF:
1795 @ForCheck: !=ManakaiDOM|all
1796
1797 @Name:
1798 @@@: ManakaiDOMHTMLDOMImplementationIF
1799 @@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 @DOMMain:implementFeature: HTMLExtendedFeature30
1823
1824 @DOMMetaImpl:provideFeature: HTMLFeature20
1825 @DOMMetaImpl:provideFeature: HTMLExtendedFeature30
1826
1827 @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 there is a <M::.createHTMLDocument> method.
1840 \
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 my $node = <ClassM::DOMCore:ManakaiDOMDocument.newObject>;
1882 $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 my $cls = <ClassName::DOMCore:ManakaiDOMDocument>;
1887 $r = <Code::getWeakRef:: $object = $node, $class = $cls>;
1888 $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 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($node);
1905
1906
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 my $node = <ClassM::DOMCore:ManakaiDOMDocument.newObject>;
1942 $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 my $cls = <ClassName::DOMCore:ManakaiDOMDocument>;
1948 $r = <Code::getWeakRef:: $object = $node, $class = $cls>;
1949 $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 $r = <ClassM::DOMCore:ManakaiDOMNode.getNodeReference> ($node);
1968 }__;
1969
1970 ResourceDef:
1971 @QName: getWeakRef
1972 @AliasFor:
1973 ManakaiNode:getWeakRef::ManakaiDOM:Perl
1974 @For: ManakaiDOM|ManakaiDOM
1975
1976 IFCls1Def:
1977 @IFQName: HTMLDocument
1978 @ClsQName: ManakaiHTMLDocument
1979
1980 @IFISA: DOMCore|Document
1981 @ClsISA: DOMCore|ManakaiDOMDocument
1982
1983 @Description:
1984 @@lang:en
1985 @@@:
1986 The root of the HTML document and holds the entire content.
1987
1988 @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 @ImplNote:
1999 @@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 mediatype : text/html, text/x-html
2023
2024 @Attr:
2025 @@Name: title
2026 @@Description:
2027 @@@lang:en
2028 @@@@:
2029 The title of a document, as specified by the <HE::title> element.
2030 @@Get:
2031 @@@Type: DOMString
2032 @@@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 @@Set:
2063 @@@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 @@@Type: DOMString
2089 @@@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 @Attr:
2143 @@Name: referrer
2144 @@Description:
2145 @@@lang:en
2146 @@@@:
2147 The page that linked to this page.
2148 @@Type:
2149 DOMMain:DOMString
2150 @@actualType:
2151 DOMMain:RFC2396URI
2152 @@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 @@@@ContentType:
2166 lang:dis
2167 @@@@GetProp:
2168 DOMHTML:referrer
2169 @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 @@@PerlDef:
2191 $r = null;
2192 if (defined $self->{<Q::TreeCore:node>}
2193 ->{<Q::DOMCore:documentURI>}) {
2194 require URI;
2195 my $uri = URI->new ($self->{<Q::TreeCore:node>}
2196 ->{<Q::DOMCore:documentURI>});
2197 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 The absolute URI <SRC::RFC 2396> of the document.
2210 @@Get:
2211 @@@Type: DOMString
2212 @@@actualType:
2213 DOMMain:RFC2396AbsoluteURI
2214 @@@Def:
2215 @@@@ContentType:
2216 lang:dis
2217 @@@@GetProp:
2218 DOMCore:documentURI
2219 @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 ISSUE: Is returning <HA::frameset> is DOM Level 0 compatible?
2229 @@Get:
2230 @@@Type: HTMLElement
2231 @@@Description:
2232 @@@@lang:en
2233 @@@@@:
2234 The <HA::body> element or the outermost <HA::frameset> element.
2235 @@@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 @@Set:
2263 @@@Type: HTMLElement
2264 @@@ImplNote:
2265 @@@@lang:en
2266 @@@@@:
2267 ISSUE: Why this attribute is writable? No exception?
2268 @@@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 $body = $child;
2324 last;
2325 }
2326 }
2327 }
2328 if ($body) {
2329 $html-><M::DOMCore:Node.replaceChild> ($body => $given);
2330 } else {
2331 $html-><M::DOMCore:Node.appendChild> ($given);
2332 }
2333 }__;
2334 @Attr:
2335 @@Name: images
2336 @@Description:
2337 @@@lang:en
2338 @@@@:
2339 A collection of all the <HA::img> elements in a document.
2340 \
2341 {NOTE:: Only <HA::img> elements are contained for
2342 backward compatibility.
2343 \
2344 }
2345 @@Get:
2346 @@@Type: HTMLCollection
2347 @@@actualType:
2348 ManakaiDOMHTMLCollection
2349 @@@PerlDef:
2350 my $chk;
2351 $chk = sub {
2352 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getImages.#1"
2353 my ($self) = @_;
2354 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2355 $elementType = 'img'>) {
2356 return true;
2357 } else {
2358 return false;
2359 }
2360 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getImages.#2"
2361 };
2362 __CODE{getNodeRef::
2363 $object => {$self->{<Q::TreeCore:node>}},
2364 $ref => $r,
2365 $class => {<ClassName::ManakaiDOMHTMLCollection>},
2366 }__;
2367 $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2368
2369 @Attr:
2370 @@Name: applets
2371 @@Description:
2372 @@@lang:en
2373 @@@@:
2374 A collection of all <HA::object> elements that include
2375 applets and <HA::applet> elements in the document.
2376 @@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 <HA::object> elements into consideration.
2383 @@Get:
2384 @@@Type: HTMLCollection
2385 @@@actualType:
2386 ManakaiDOMHTMLCollection
2387 @@@PerlDef:
2388 my $chk;
2389 $chk = sub {
2390 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getApplets.#1"
2391 my ($self) = @_;
2392 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 } else {
2400 return false;
2401 }
2402 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getApplets.#2"
2403 };
2404 __CODE{getNodeRef::
2405 $object => {$self->{<Q::TreeCore:node>}},
2406 $ref => $r,
2407 $class => {<ClassName::ManakaiDOMHTMLCollection>},
2408 }__;
2409 $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2410
2411 @Attr:
2412 @@Name: links
2413 @@Description:
2414 @@@lang:en
2415 @@@@:
2416 A collection of all <HA::a> and <HA::area> elements
2417 in a document with a value for the <HA::href> attribute.
2418 @@Get:
2419 @@@Type: HTMLCollection
2420 @@@actualType:
2421 ManakaiDOMHTMLCollection
2422 @@@PerlDef:
2423 my $chk;
2424 $chk = sub {
2425 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getLinks.#1"
2426 my ($self) = @_;
2427 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2428 $elementType = 'a'>) {
2429 return true
2430 if $self->{<Q::infoset:attributes>}
2431 ->{<Q::null:>}->{href} or
2432 $self->{<Q::infoset:attributes>}
2433 ->{<Q::ManakaiDOM:noNS>}->{href};
2434 } elsif (<Code::isHTMLElemento:: $elementNodeo = $self,
2435 $elementType = 'area'>) {
2436 return true
2437 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 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getLinks.#2"
2444 };
2445 __CODE{getNodeRef::
2446 $object => {$self->{<Q::TreeCore:node>}},
2447 $ref => $r,
2448 $class => {<ClassName::ManakaiDOMHTMLCollection>},
2449 }__;
2450 $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2451
2452 @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 It should be restricted for HTML <HA::form> elements.
2462 Neither <HA::isindex> elements nor non-HTML form elements
2463 should be contained.
2464 @@Get:
2465 @@@Type: HTMLCollection
2466 @@@actualType:
2467 ManakaiDOMHTMLCollection
2468 @@@PerlDef:
2469 my $chk;
2470 $chk = sub {
2471 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getForms.#1"
2472 my ($self) = @_;
2473 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2474 $elementType = 'form'>) {
2475 return true;
2476 } else {
2477 return false;
2478 }
2479 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getForms.#2"
2480 };
2481 __CODE{getNodeRef::
2482 $object => {$self->{<Q::TreeCore:node>}},
2483 $ref => $r,
2484 $class => {<ClassName::ManakaiDOMHTMLCollection>},
2485 }__;
2486 $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2487 @Attr:
2488 @@Name: anchors
2489 @@Description:
2490 @@@lang:en
2491 @@@@:
2492 A collection of all the <HA::a> elements with a value
2493 for the <HA::name> attribute in the document.
2494 \
2495 {NOTE:: The collection of this attribute only contains
2496 those anchors with <HA::name> attributes,
2497 not with the <HA::id> attributes, for backward
2498 compatibility. XHTML 1.0 deprecates the use
2499 of the <HA::name> attribute.
2500 \
2501 }
2502 @@Get:
2503 @@@Type: HTMLCollection
2504 @@@actualType:
2505 ManakaiDOMHTMLCollection
2506 @@@PerlDef:
2507 my $chk;
2508 $chk = sub {
2509 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getAnchors.#1"
2510 my ($self) = @_;
2511 if (<Code::isHTMLElemento:: $elementNodeo = $self,
2512 $elementType = 'a'>) {
2513 return true
2514 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 \#line 1 "DOMHTML.ManakaiDOMHTMLElement.getAnchors.#2"
2521 };
2522 __CODE{getNodeRef::
2523 $object => {$self->{<Q::TreeCore:node>}},
2524 $ref => $r,
2525 $class => {<ClassName::ManakaiDOMHTMLCollection>},
2526 }__;
2527 $r->{<Q::ManakaiDOMCore:nodeMatch>} = $chk;
2528
2529 @Attr:
2530 @@Name: cookie
2531 @@Description:
2532 @@@lang:en
2533 @@@@:
2534 The cookie, persistent state information associated
2535 with the current frame or document <SRC::RFC 2965>.
2536 \
2537 {NOTE:: The precise nature of a UA session is not
2538 defined.
2539 \
2540 }
2541 @@Get:
2542 @@@Type: DOMString
2543 @@@actualType: RFC2965Cookies
2544 @@@Description:
2545 @@@@lang:en
2546 @@@@@:
2547 A single string with each cookie's name-value pair
2548 separated by a <CHAR::SEMICOLON>.
2549 @@@ImplNote:
2550 @@@@lang:en
2551 @@@@@:
2552 It is maybe RFC 2965 <CODE::cookies>.
2553 @@@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 @@@actualType: RFC2965Cookie
2562 @@@Description:
2563 @@@@lang:en
2564 @@@@@:
2565 A single name-value pair followed by zero or more
2566 cookie attribute values (RFC 2965 <CODE::cookie>).
2567 \
2568 If no <CODE::domain> attribute is specified,
2569 it defaults to the <CODE::host> portion of an
2570 RFC 2396 absolute URI of the current frame or document.
2571 \
2572 If no <CODE::path> attribute is specified, it defaults
2573 to the absolute <CODE::path> portion of an
2574 RFC 2396 absolute URI of the current frame or document.
2575 \
2576 If no <CODE::max-age> attribute is specified, it
2577 defaults to a UA defined value.
2578 \
2579 If a <CODE::cookie> with the specified name is already
2580 associated, the new value as well as the new attributes
2581 replace the old ones. If the <CODE::max-age> attribute
2582 value is <CODE::0>, any existing cookies of the specified
2583 name are removed.
2584 @@@Exception:
2585 @@@@@:
2586 ManakaiDOMHTML:MDOMHTML_BAD_COOKIE
2587 @@@@Description:
2588 @@@@@lang:en
2589 @@@@@@:
2590 The new value does not adhere to the
2591 RFC 2965 <CODE::cookie>.
2592 @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 Close a document stream opened by the <M::open> method
2606 and force rendering.
2607 @@Return:
2608 @Method:
2609 @@Name: write
2610 @@Description:
2611 @@@lang:en
2612 @@@@:
2613 Write a string to a document stream opened by <M::.open>.
2614 @@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 @@Description:
2630 @@@lang:en
2631 @@@@:
2632 Write a string followed by a newline character
2633 to a document stream opened by the <M::.open> method.
2634 @@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 The <HA::name> of the element. The matching is
2660 case-sensitive.
2661 @@Return:
2662 @@@Type: NodeList
2663 @@@Description:
2664 @@@@lang:en
2665 @@@@@:
2666 A collection of the element whose <HA::name> matches
2667 with <P::elementName>.
2668 @Method:
2669 @@Name:getElementById
2670 @@Description:
2671 @@@lang:en
2672 @@@@:
2673 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 \
2677 {NOTE:: This method was first defined in the <IF::HTMLDocument>
2678 interface of DOM Level 1 but it has moved to
2679 the <Module::MDOM:DOMCore> module in DOM Level 2.
2680 \
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 @@@disDef:
2697 @@@@DISPerl:cloneCode:
2698 DOMCore:ManakaiDOMElement::ManakaiDOM:ManakaiDOMLatest.getElementById
2699 @@DOMMain:implementFeature:
2700 HTMLFeature10
2701 @@For:
2702 ManakaiDOM:DOM1 !ManakaiDOM:DOM2
2703 @ImplNote:
2704 @@lang:en
2705 @@@:
2706 {P:: The following properties in DOM Level 0 have been deprecated
2707 by DOM HTML Specifications in favor of the corresponding
2708 attributes in <IF::HTMLBodyElement> interface:
2709 \
2710 - <A::alinkColor>
2711 \
2712 - <A::background>
2713 \
2714 - <A::bgColor>
2715 \
2716 - <A::fgColor>
2717 \
2718 - <A::linkColor>
2719 \
2720 - <A::vlinkColor>
2721 \
2722 }
2723 ##HTMLDocument
2724
2725 ElementTypeBinding:
2726 @Name: PropDef
2727 @ElementType:
2728 dis:ResourceDef
2729 @ShadowContent:
2730 @@rdf:type:
2731 rdf:Property
2732 @@For: =ManakaiDOM|all
2733
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 @@rdf:type: DISLang|DataType
2750 @@For: ManakaiDOM|DOM
2751 @@For: =ManakaiDOM|all
2752 @@rdfs:subClassOf: DOMMain|DOMString
2753 @@AliasFor:
2754 @@@@: ||ManakaiDOM|all
2755 @@@For: !=ManakaiDOM|all
2756
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 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 - <SGML::CDATA>:: <TYPE::DOMString>.
2784 (Default of default: an empty string)
2785 \
2786 - Enumerated values:: <TYPE::DOMString>.
2787 (Normalized to lowercase in HTML.
2788 Default of default: an empty string)
2789 \
2790 - Boolean:: <TYPE::boolean>. (Default of default: <DOM::false>.
2791 \
2792 - <SGML::NUMBER>:: <TYPE::long>. (Default of default: <DOM::0>.)
2793 \
2794 }
2795 \
2796 Element type names in HTML 4 documents (exposed through
2797 such as <A::DOMCore:Element.tagName>) are normalized in
2798 uppercase. No specification for attribute names - it maybe
2799 should be in lowercase for compatibility.
2800
2801 IFCls1Def:
2802 @IFQName: HTMLElement
2803 @ClsQName: ManakaiDOMHTMLElement
2804
2805 @IFISA: DOMCore|Element
2806 @ClsISA: DOMCore|ManakaiDOMElement
2807
2808 @Description:
2809 @@lang:en
2810 @@@:
2811 An HTML element. All specific HTML element interfaces
2812 are derived from this interface.
2813
2814 @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 @@QName:
2832 xhtml1:sub
2833 \##TODO: rewrite this
2834 @@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
2862 @ImplNote:
2863 @@lang:en
2864 @@@:
2865 The DOM Level 1 First and Second Editions said that the <HE::head>
2866 element belongs to this category - it is considered as
2867 an error, since there is the <IF::HTMLHeadElement>.
2868
2869 @Attr:
2870 @@Name: id
2871 @@DocAttr1:
2872 id::ForHTML40SE
2873 @@DocAttr2S:
2874 id::ForHTML401
2875 @@DocAttr2X:
2876 id::ForXHTML10SE
2877 @@ReflectCDATA:
2878 @@Get:
2879 @@Set:
2880 @@ImplNote:
2881 @@@lang:en
2882 @@@@:
2883 Some element in HTML 4/XHTML 1.0 does not have <HA::class> attribute.
2884 @Attr:
2885 @@Name: title
2886 @@DocAttr1:
2887 title::ForHTML40SE
2888 @@DocAttr2S:
2889 title::ForHTML401
2890 @@DocAttr2X:
2891 title::ForXHTML10SE
2892 @@ReflectCDATA:
2893 @@Get:
2894 @@Set:
2895 @@ImplNote:
2896 @@@lang:en
2897 @@@@:
2898 Some element in HTML 4/XHTML 1.0 does not have <HA::class> attribute.
2899 @Attr:
2900 @@Name: lang
2901 @@DocAttr1:
2902 lang::ForHTML40SE
2903 @@DocAttr2S:
2904 lang::ForHTML401
2905 @@DocAttr2X:
2906 lang::ForXHTML10SE
2907 @@ReflectCDATA:
2908 @@Get:
2909 @@Set:
2910 @@ImplNote:
2911 @@@lang:en
2912 @@@@:
2913 Some element in HTML 4/XHTML 1.0 does not have <HA::class> attribute.
2914 @Attr:
2915 @@Name: dir
2916 @@DocAttr1:
2917 dir::ForHTML40SE
2918 @@DocAttr2S:
2919 dir::ForHTML401
2920 @@DocAttr2X:
2921 dir::ForXHTML10SE
2922 @@ReflectCDATA:
2923 @@Get:
2924 @@Set:
2925 @@ImplNote:
2926 @@@lang:en
2927 @@@@:
2928 Some element in HTML 4/XHTML 1.0 does not have <HA::class> attribute.
2929 @Attr:
2930 @@Name: className
2931 @@DocAttr1:
2932 class::ForHTML40SE
2933 @@DocAttr2S:
2934 class::ForHTML401
2935 @@DocAttr2X:
2936 class::ForXHTML10SE
2937 @@ReflectCDATA:
2938 @@Get:
2939 @@Set:
2940 @@ImplNote:
2941 @@@lang:en
2942 @@@@:
2943 Some element in HTML 4/XHTML 1.0 does not have <HA::class> attribute.
2944
2945 @ImplNote:
2946 @@lang:en
2947 @@@:
2948 The <A::HTMLElement.style> is reserved by DOM Level 1 First Edition
2949 for future use. It is used later in DOM Level 2 CSS Module.
2950 ##HTMLElement
2951
2952 ElementTypeBinding:
2953 @Name: ReflectCDATA
2954 @ElementType:
2955 dis:Type
2956 @ShadowContent:
2957 @@@: DOMString
2958 @ShadowSibling:
2959 @@actualType: CDATADOMString
2960
2961 ElementTypeBinding:
2962 @Name: ReflectURI
2963 @ElementType:
2964 dis:Type
2965 @ShadowContent:
2966 @@@: DOMString
2967 @ShadowSibling:
2968 @@actualType: URIDOMString
2969
2970 ElementTypeBinding:
2971 @Name: ReflectEnum
2972 @ElementType:
2973 dis:Type
2974 @ShadowContent:
2975 @@@: 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
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 @@ForCheck: ForHTML
3055
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 @PerlCDef:
3075 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 $elementNode->{<Q::TreeCore:node>}
3084 ->{<Q::DOMCore:ownerDocument>}
3085 ->{<Q::DOMCore:hasFeature>}
3086 ->{HTML})) {
3087 $elementType eq $__ln ? true : false;
3088 } else {
3089 false;
3090 }
3091 } elsif ($elementNode->{<Q::TreeCore:node>}
3092 ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3093 ->{HTML}) {
3094 if ($elementNode->{<Q::TreeCore:node>}
3095 ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3096 ->{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 @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 @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 @@Type: NodeStem
3132 @@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 @PerlCDef:
3141 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 $elementNodeo->{<Q::DOMCore:ownerDocument>}
3148 ->{<Q::DOMCore:hasFeature>}
3149 ->{HTML})) {
3150 $elementType eq $__ln ? true : false;
3151 } else {
3152 false;
3153 }
3154 } elsif ($elementNodeo
3155 ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3156 ->{HTML}) {
3157 my $elClass = <ClassName::DOMCore:ManakaiDOMElement>;
3158 my $elementNode = <Code::ManakaiNode:getWeakRef
3159 ||ManakaiDOM:Perl::
3160 $object = $elementNodeo,
3161 $class = $elClass,
3162 >;
3163 if ($elementNodeo
3164 ->{<Q::DOMCore:ownerDocument>}->{<Q::DOMCore:hasFeature>}
3165 ->{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 IFCls1ETDEf:
3186 @ETQName:
3187 xhtml1:html
3188 @QName:
3189 @@@: html
3190 @@ForCheck: s|ForML
3191
3192 @IFQName:
3193 @@@: HTMLHtmlElement
3194 @ClsQName:
3195 @@@: ManakaiDOMHTMLHtmlElement
3196 @ISAHTMLElement:
3197
3198 @ATTR:
3199 @@Name: version
3200 @@Deprecated:
3201 @@ReflectCDATA:
3202 @@Get:
3203 @@Set:
3204
3205 IFCls1ETDef:
3206 @ETQName:
3207 xhtml1:head
3208 @IFQName:
3209 @@@: HTMLHeadElement
3210 @ClsQName:
3211 @@@: ManakaiDOMHTMLHeadElement
3212 @ISAHTMLElement:
3213
3214 @ATTR:
3215 @@Name: profile
3216 @@ReflectCDATA:
3217 @@Get:
3218 @@Set:
3219
3220 IfCls1ETDef:
3221 @ETQName:
3222 xhtml1:link
3223 @IFQName:
3224 @@@: HTMLLinkElement
3225 @ClsQName:
3226 @@@: ManakaiDOMHTMLLinkElement
3227 @ISAHTMLElement:
3228
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 @@@@ContentType:
3254 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 @@@@ContentType:
3274 lang:dis
3275 @@@@SetProp:
3276 DOMHTML:disabled
3277 @@ImplNote:
3278 @@@lang:en
3279 @@@@:
3280 A version of WinIE 3 has a <HA::disable> attribute by mistake.
3281 @ATTR:
3282 @@Name: charset
3283 @@ReflectCDATA:
3284 @@Get:
3285 @@Set:
3286 @ATTR:
3287 @@Name: href
3288 @@ReflectURI:
3289 @@Get:
3290 @@Set:
3291 @ATTR:
3292 @@Name: hreflang
3293 @@ReflectCDATA:
3294 @@Get:
3295 @@Set:
3296 @ATTR:
3297 @@Name: media
3298 @@ReflectCDATA:
3299 @@Get:
3300 @@Set:
3301 @ATTR:
3302 @@Name: rel
3303 @@ReflectCDATA:
3304 @@Get:
3305 @@Set:
3306 @ATTR:
3307 @@Name: rev
3308 @@ReflectCDATA:
3309 @@Get:
3310 @@Set:
3311 @ATTR:
3312 @@Name: target
3313 @@ReflectCDATA:
3314 @@Get:
3315 @@Set:
3316 @ATTR:
3317 @@Name: type
3318 @@ReflectCDATA:
3319 @@Get:
3320 @@Set:
3321 ##HTMLLinkElement
3322
3323 IfCls1ETDef:
3324 @ETQName:
3325 xhtml1:title
3326 @IFQName:
3327 @@@: HTMLTitleElement
3328 @ClsQName:
3329 @@@: ManakaiDOMHTMLTitleElement
3330 @ISAHTMLElement:
3331
3332
3333 @Attr:
3334 @@Name: text
3335 @@Description:
3336 @@@lang:en
3337 @@@@:
3338 The title.
3339 @@Get:
3340 @@@Type: DOMString
3341 @@@Def:
3342 @@@@ContentType:
3343 lang:dis
3344 @@@@DISPerl:cloneCode:
3345 DOMCore:ManakaiDOMNode::ManakaiDOM:ManakaiDOMLatest.textContent.get
3346 @@Set:
3347 @@@Type: DOMString
3348 @@@Def:
3349 @@@@ContentType:
3350 lang:dis
3351 @@@@DISPerl:cloneCode:
3352 DOMCore:ManakaiDOMNode::ManakaiDOM:ManakaiDOMLatest.textContent.set
3353 ##HTMLTitleElement
3354
3355 IfCls1ETDef:
3356 @ETQName:
3357 xhtml1:meta
3358 @IFQName:
3359 @@@: HTMLMetaElement
3360 @ClsQName:
3361 @@@: ManakaiDOMHTMLMetaElement
3362 @ISAHTMLElement:
3363
3364 @ATTR:
3365 @@Name: content
3366 @@ReflectCDATA:
3367 @@Get:
3368 @@Set:
3369 @ATTR:
3370 @@AName:
3371 @@@@: http-equiv
3372 @@DOMAName:
3373 @@@@: httpEquiv
3374 @@ReflectCDATA:
3375 @@Get:
3376 @@Set:
3377 @ATTR:
3378 @@Name: name
3379 @@ReflectCDATA:
3380 @@Get:
3381 @@Set:
3382 @ATTR:
3383 @@Name: scheme
3384 @@ReflectCDATA:
3385 @@Get:
3386 @@Set:
3387
3388 IfCls1ETDef:
3389 @ETQName:
3390 xhtml1:base
3391 @IFQName:
3392 @@@: HTMLBaseElement
3393 @ClsQName:
3394 @@@: ManakaiDOMHTMLBaseElement
3395 @ISAHTMLElement:
3396
3397 @ATTR:
3398 @@Name: href
3399 @@ReflectURI:
3400 @@Get:
3401 @@Set:
3402 @ATTR:
3403 @@Name: target
3404 @@ReflectCDATA:
3405 @@Get:
3406 @@Set:
3407
3408 ElementTypeBinding:
3409 @Name: ISAHTMLElement
3410 @ElementType:
3411 dis:ISA
3412 @ShadowContent:
3413 @@@: HTMLElement
3414 @@ForCheck:
3415 ManakaiDOM:ForIF
3416 @ShadowSibling:
3417 @@ISA:
3418 @@@@: ManakaiDOMHTMLElement
3419 @@@ForCheck:
3420 ManakaiDOM:ForClass
3421
3422 IfCls1ETDef:
3423 @ETQName:
3424 xhtml1:isindex
3425 @IFQName:
3426 @@@: HTMLIsIndexElement
3427 @ClsQName:
3428 @@@: ManakaiDOMHTMLIsIndexElement
3429 @ISAHTMLElement:
3430
3431 @ForCheck: !ForXHTML11
3432
3433 @Attr:
3434 @@Name: form
3435 @@Description:
3436 @@@lang:en
3437 @@@@:
3438 The <HE::form> element containing this element.
3439 \
3440 {NOTE:: Although DOM has this attribute, the <HE::isindex>
3441 is independent from any <HE::form> by definition.
3442 \
3443 }
3444 @@Get:
3445 @@@Type:
3446 DOMHTML:HTMLFormElement
3447 @@@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 @@@disDef:
3455 @@@@DISLang:nop:
3456 @ATTR:
3457 @@Name: prompt
3458 @@Deprecated:
3459 @@ReflectCDATA:
3460 @@Get:
3461 @@Set:
3462
3463 ElementTypeBinding:
3464 @Name: disDef
3465 @ElementType:
3466 dis:Def
3467 @ShadowContent:
3468 @@ContentType:
3469 lang:dis
3470 @@ForCheck: ManakaiDOM|ForClass
3471
3472 ElementTypeBinding:
3473 @Name: disCDef
3474 @ElementType:
3475 dis:Def
3476 @ShadowContent:
3477 @@ContentType:
3478 lang:dis
3479
3480 ElementTypeBinding:
3481 @Name: ETQName
3482 @ElementType:
3483 dis:AppName
3484 @ShadowContent:
3485 @@ForCheck:
3486 s:ForML
3487 @@ContentType: DISCore|QName
3488
3489 ElementTypeBinding:
3490 @Name: IFQName
3491 @ElementType:
3492 dis:QName
3493 @ShadowContent:
3494 @@ForCheck:
3495 ManakaiDOM:ForIF
3496 ElementTypeBinding:
3497 @Name: ClsQName
3498 @ElementType:
3499 dis:QName
3500 @ShadowContent:
3501 @@ForCheck:
3502 ManakaiDOM:ForClass
3503
3504 IfCls1ETDef:
3505 @ETQName:
3506 xhtml1:style
3507 @IFQName: HTMLStyleElement
3508 @ClsQName: ManakaiDOMHTMLStyleElement
3509 @ISAHTMLElement:
3510
3511 @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 @@@@ContentType:
3532 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 @@@@ContentType:
3550 lang:dis
3551 @@@@SetProp:
3552 DOMHTML:disabled
3553 @ATTR:
3554 @@Name: media
3555 @@ReflectCDATA:
3556 @@Get:
3557 @@Set:
3558 @ATTR:
3559 @@Name: type
3560 @@ReflectCDATA:
3561 @@Get:
3562 @@Set:
3563
3564 PropDef:
3565 @QName: disabled
3566 @enDesc:
3567 <A::.disabled>.
3568
3569 ElementTypeBinding:
3570 @Name: DOMAName
3571 @ElementType:
3572 dis:Name
3573 @ShadowContent:
3574 @@ForCheck: ManakaiDOM|DOM
3575
3576 ElementTypeBinding:
3577 @Name: AName
3578 @ElementType:
3579 dis:Name
3580 @ShadowContent:
3581 @@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
3591 IF:
3592 @ForCheck: !ManakaiDOM|all
3593
3594 @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 @@@ImplNote:
3625 @@@@lang:en
3626 @@@@@:
3627 <IF::DOMTokenString> and <IF::DOMStringList> shuld also be supported.
3628 @@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 {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
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 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 @@Param:
3782 @@@Name: localNameArg
3783 @@@Type: DOMString
3784 @@@enDesc:
3785 Element type local name.
3786 @@@nullCase:
3787 @@@@enDesc:
3788 No element is added and the <P::namespaceNameArg> is ignored.
3789 @@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 is directly appended to this element as a new <IF::Text> node.
3796 @@@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 @ForCheck: !ManakaiDOM|all
3856
3857 @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 @ForCheck: !ManakaiDOM|all
3944
3945 @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 @ForCheck: !ManakaiDOM|all
4023
4024 @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 @ForCheck: !ManakaiDOM|all
4037
4038 @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 @ForCheck: !ManakaiDOM|all
4077
4078 @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 @ForCheck: !ManakaiDOM|all
4108
4109 @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 IFCls1ETDef:
4269 @ETQName:
4270 xhtml1:body
4271 @IFQName: HTMLBodyElement
4272 @ClsQName: ManakaiDOMHTMLBodyElement
4273 @ISAHTMLElement:
4274
4275 @ATTR:
4276 @@AName: alink
4277 @@DOMAName: aLink
4278 @@plAName: alink
4279 @@Deprecated:
4280 @@ReflectCDATA:
4281 @@Get:
4282 @@Set:
4283 @ATTR:
4284 @@Name: background
4285 @@Deprecated:
4286 @@ReflectURI:
4287 @@Get:
4288 @@Set:
4289 @ATTR:
4290 @@DOMAName: bgColor
4291 @@AName: bgcolor
4292 @@plAName: bgcolor
4293 @@Deprecated:
4294 @@ReflectCDATA:
4295 @@Get:
4296 @@Set:
4297 @ATTR:
4298 @@Name: link
4299 @@Deprecated:
4300 @@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 @@plAName: vlink
4313 @@Deprecated:
4314 @@ReflectCDATA:
4315 @@Get:
4316 @@Set:
4317 ##HTMLBodyElement
4318
4319 IF:
4320 @ForCheck: !ManakaiDOM|all
4321
4322 @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 <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
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 @ForCheck: !ManakaiDOM|all
4353
4354 @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 @@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 @@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 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4429 ($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 @For: !=ManakaiDOM|all
4453
4454 @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 @For: !ManakaiDOM|all
4466
4467 @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 @For: !ManakaiDOM|all
4479
4480 @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 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4557 ($r->{<Q::TreeCore:node>});
4558 $r->{<Q::TreeCore:node>}->{<Q::infoset:parent>}
4559 = $self->{<Q::TreeCore:node>};
4560 $self->{<Q::TreeCore:node>}-><M::NodeStem.importTree>
4561 ($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 @PerlCDef:
4578 my $__i = 0;
4579 $before = [];
4580 $after = $children;
4581 FIND: {
4582 if ($index == -1) {
4583 $before = $after;
4584 $after = [];
4585 last FIND;
4586 }
4587 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 @For: ManakaiDOM|ManakaiDOM
4608
4609 ElementTypeBinding:
4610 @Name: enLabel
4611 @ElementType:
4612 dis:Label
4613 @ShadowContent:
4614 @@lang:en
4615
4616 IfCls1ETDef:
4617 @ETQName:
4618 xhtml1:ul
4619 @IFQName: HTMLUListElement
4620 @ClsQName: ManakaiDOMHTMLUListElement
4621 @ISAHTMLElement:
4622
4623 @ATTR:
4624 @@Name: compact
4625 @@Deprecated:
4626 @@ReflectBoolean:
4627 @@Get:
4628 @@@InCase:
4629 @@@@Value: true
4630 @@@InCase:
4631 @@@@Value: false
4632 @@Set:
4633 @@@InCase:
4634 @@@@Value: true
4635 @@@InCase:
4636 @@@@Value: false
4637 @ATTR:
4638 @@Name: type
4639 @@Deprecated:
4640 @@ReflectCDATA:
4641 @@Get:
4642 @@Set:
4643
4644 IfCls1ETDef:
4645 @ETQName:
4646 xhtml1:ol
4647 @IFQName: HTMLOListElement
4648 @ClsQName:ManakaiDOMHTMLOListElement
4649 @ISAHTMLElement:
4650
4651 @ATTR:
4652 @@Name: compact
4653 @@Deprecated:
4654 @@ReflectBoolean:
4655 @@Get:
4656 @@@InCase:
4657 @@@@Value: true
4658 @@@InCase:
4659 @@@@Value: false
4660 @@Set:
4661 @@@InCase:
4662 @@@@Value: true
4663 @@@InCase:
4664 @@@@Value: false
4665 @ATTR:
4666 @@Name: start
4667 @@Deprecated:
4668 @@ReflectNumeric:
4669 @@Get:
4670 @@Set:
4671 @Attr:
4672 @@Name: type
4673 @@Deprecated:
4674 @@ReflectCDATA:
4675 @@Get:
4676 @@Set:
4677
4678 IfCls1ETDef:
4679 @ETQName:
4680 xhtml1:dl
4681 @IFQName: HTMLDListElement
4682 @ClsQName: ManakaiDOMHTMLDListElement
4683 @ISAHTMLElement:
4684
4685 @ATTR:
4686 @@Name: compact
4687 @@Deprecated:
4688 @@ReflectBoolean:
4689 @@Get:
4690 @@@InCase:
4691 @@@@Value: true
4692 @@@InCase:
4693 @@@@Value: false
4694 @@Set:
4695 @@@InCase:
4696 @@@@Value: true
4697 @@@InCase:
4698 @@@@Value: false
4699
4700 IfCls1ETDef:
4701 @ETQName:
4702 xhtml1:dir
4703 @IFQName: HTMLDirectoryElement
4704 @ClsQName: ManakaiDOMHTMLDirectoryElement
4705 @ISAHTMLElement:
4706 @Deprecated:
4707
4708 @Attr:
4709 @@Name: compact
4710 @@Deprecated:
4711 @@ReflectBoolean:
4712 @@Get:
4713 @@@InCase:
4714 @@@@Value: true
4715 @@@InCase:
4716 @@@@Value: false
4717 @@Set:
4718 @@@InCase:
4719 @@@@Value: true
4720 @@@InCase:
4721 @@@@Value: false
4722
4723 IfCls1ETDef:
4724 @ETQName:
4725 xhtml1:menu
4726 @IFQName: HTMLMenuElement
4727 @ClsQName: ManakaiDOMHTMLMenuElement
4728 @ISAHTMLElement:
4729 @Deprecated:
4730
4731 @ATTR:
4732 @@Name: compact
4733 @@Deprecated:
4734 @@ReflectBoolean:
4735 @@Get:
4736 @@@InCase:
4737 @@@@Value: true
4738 @@@InCase:
4739 @@@@Value: false
4740 @@Set:
4741 @@@InCase:
4742 @@@@Value: true
4743 @@@InCase:
4744 @@@@Value: false
4745
4746 IfCls1ETDef:
4747 @ETQName:
4748 xhtml1:li
4749 @IFQName: HTMLLIElement
4750 @ClsQName: ManakaiDOMHTMLLIElement
4751 @ISAHTMLElement:
4752
4753 @ATTR:
4754 @@Name: type
4755 @@Deprecated:
4756 @@ReflectCDATA:
4757 @@Get:
4758 @@Set:
4759 @Attr:
4760 @@Name: value
4761 @@Deprecated:
4762 @@ReflectNumeric:
4763 @@Get:
4764 @@Set:
4765
4766 IfCls1ETDef:
4767 @ETQName:
4768 xhtml1:div
4769 @IFQName: HTMLDivElement
4770 @ClsQName: ManakaiDOMHTMLDivElement
4771 @ISAHTMLElement:
4772
4773 @ATTR:
4774 @@Name: align
4775 @@Deprecated:
4776 @@ReflectEnum:
4777 @@Get:
4778 @@Set:
4779
4780 IfCls1ETDef:
4781 @ETQName:
4782 xhtml1:p
4783 @IFQName: HTMLParagraphElement
4784 @ClsQName: ManakaiDOMHTMLParagraphElement
4785 @ISAHTMLElement:
4786
4787 @ATTR:
4788 @@Name: align
4789 @@Deprecated:
4790 @@ReflectEnum:
4791 @@Get:
4792 @@Set:
4793
4794 ForDef:
4795 @QName: DOMHTML|ForAnET
4796 ForDef:
4797 @QName:
4798 DOMHTML:ForH1
4799 @ISA: DOMHTML|ForAnET
4800 ForDef:
4801 @QName:
4802 DOMHTML:ForH2
4803 @ISA: DOMHTML|ForAnET
4804 ForDef:
4805 @QName:
4806 DOMHTML:ForH3
4807 @ISA: DOMHTML|ForAnET
4808 ForDef:
4809 @QName:
4810 DOMHTML:ForH4
4811 @ISA: DOMHTML|ForAnET
4812 ForDef:
4813 @QName:
4814 DOMHTML:ForH5
4815 @ISA: DOMHTML|ForAnET
4816 ForDef:
4817 @QName:
4818 DOMHTML:ForH6
4819 @ISA: DOMHTML|ForAnET
4820
4821 IF:
4822 @For: !ManakaiDOM|all
4823
4824 @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 @For: !ManakaiDOM|all
4837
4838 @IFQName: HTMLHeadingElementExtended
4839 @ClsQName: ManakaiDOMHTMLHeadingElementExtended
4840 @DOMMain:implementFeature: HTMLExtendedFeature30
4841
4842 @IFISA: HTMLStrictlyInlineContainerExtended
4843 @IFISA: HTMLHeadingElement
4844
4845 @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
4846 @ClsISA: ManakaiDOMHTMLHeadingElement
4847 ##HTMLHeadingElementExtended
4848
4849 IFCls1ETsDef:
4850 @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 @@@: s|ElementType
4877 @@ForCheck: ForAnET
4878
4879 @ETQName:
4880 @@@:
4881 xhtml1:h1
4882 @@ForCheck: ForH1
4883 @ETQName:
4884 @@@:
4885 xhtml1:h2
4886 @@ForCheck: ForH2
4887 @ETQName:
4888 @@@:
4889 xhtml1:h3
4890 @@ForCheck: ForH3
4891 @ETQName:
4892 @@@:
4893 xhtml1:h4
4894 @@ForCheck: ForH4
4895 @ETQName:
4896 @@@:
4897 xhtml1:h5
4898 @@ForCheck: ForH5
4899 @ETQName:
4900 @@@:
4901 xhtml1:h6
4902 @@ForCheck: ForH6
4903
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
4980 @IFQName: HTMLHeadingElement
4981 @ClsQName: ManakaiDOMHTMLHeadingElement
4982 @ISAHTMLElement:
4983
4984 @Attrs:
4985 @@Name: align
4986 @@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 @@Deprecated:
5005 @@ReflectEnum:
5006 @@Get:
5007 @@Set:
5008
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
5031 IFDef:
5032 @IFQName: HTMLBlockquoteElement
5033 @IFISA: HTMLElement
5034
5035 @Description:
5036 @@lang:en
5037 @@@:
5038 The <IF::HTMLBlockquoteElement> interface was contained
5039 in the DOM Level 1 First Edition by error. The
5040 <IF::HTMLQuoteElement> interface should must used instead.
5041 <SRC::DOM Level 1 Errata>
5042 @Attr:
5043 @@Name:cite
5044 @@Get:
5045 @@@Type:
5046 DOMMain:DOMString
5047 @@Set:
5048 @@@Type:
5049 DOMMain:DOMString
5050 @ForCheck:
5051 =ManakaiDOM:DOM1
5052
5053 ForDef:
5054 @QName:
5055 DOMHTML:ForBlockquote
5056 @ISA: DOMHTML|ForAnET
5057 ForDef:
5058 @QName:
5059 DOMHTML:ForQ
5060 @ISA: DOMHTML|ForAnET
5061
5062 IFCls1ETsDef:
5063 @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 @@@: s|ElementType
5078 @@ForCheck: ForAnET
5079
5080 @ETQName:
5081 @@@:
5082 xhtml1:blockquote
5083 @@ForCheck:ForBlockquote
5084 @ETQName:
5085 @@@:
5086 xhtml1:q
5087 @@ForCheck:ForQ
5088
5089 @IFQName: HTMLQuoteElement
5090 @ClsQName: ManakaiDOMHTMLQuoteElement
5091 @ISAHTMLElement:
5092
5093 @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 @Attrs:
5123 @@Name: cite
5124 @@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 @@Get:
5132 @@Set:
5133
5134 ElementTypeBinding:
5135 @Name: elementType
5136 @ElementType:
5137 s:elementType
5138 @ShadowContent:
5139 @@DISCore:stopISARecursive:1
5140
5141 IfCls1ETDef:
5142 @ETQName:
5143 xhtml1:pre
5144 @IFQName: HTMLPreElement
5145 @ClsQName: ManakaiDOMHTMLPreElement
5146 @ISAHTMLElement:
5147
5148 @ATTR:
5149 @@Name: width
5150 @@Deprecated:1
5151 @@ReflectNumeric:
5152 @@Get:
5153 @@Set:
5154
5155 IfCls1ETDef:
5156 @ETQName:
5157 xhtml1:br
5158 @IFQName: HTMLBRElement
5159 @ClsQName:ManakaiDOMHTMLBRElement
5160 @ISAHTMLElement:
5161
5162 @ATTR:
5163 @@Name: clear
5164 @@Deprecated:1
5165 @@ReflectCDATA:
5166 @@Get:
5167 @@Set:
5168
5169 IfCls12ETDef:
5170 @ETQName:
5171 xhtml1:basefont
5172 @IFQName: HTMLBaseFontElement
5173 @ClsQName:ManakaiDOMHTMLBaseFontElement
5174 @ISAHTMLElement:
5175 @Deprecated:
5176
5177 @ATTR:
5178 @@Name: color
5179 @@Deprecated:
5180 @@ReflectCDATA:
5181 @@Get:
5182 @@Set:
5183 @ATTR:
5184 @@Name: face
5185 @@Deprecated:
5186 @@ReflectCDATA:
5187 @@Get:
5188 @@Set:
5189 @ATTR:
5190 @@Name: size
5191 @@Description:
5192 @@@lang:en
5193 @@@@:Computed font size.
5194 @@@For:
5195 ManakaiDOM:DOM2
5196 @@Deprecated:
5197 @@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 @@Get:
5214 @@@ImplNote:
5215 @@@@lang:en
5216 @@@@@:
5217 TODO: Computed value should be returned.
5218 In DOM Level 1, it was <EM::not> the computed value
5219 and the type was <TYPE::DOMString>.
5220 @@Set:
5221 @@Level[list]:
5222 1
5223 2
5224 @@SpecLevel[list]:
5225 1
5226 2
5227
5228 IfCls1ETDef:
5229 @ETQName:
5230 xhtml1:font
5231 @IFQName: HTMLFontElement
5232 @ClsQName:ManakaiDOMHTMLFontElement
5233 @ISAHTMLElement:
5234 @Deprecated:
5235
5236 @ATTR:
5237 @@Name: color
5238 @@Deprecated:
5239 @@ReflectCDATA:
5240 @@Get:
5241 @@Set:
5242 @ATTR:
5243 @@Name: face
5244 @@Deprecated:
5245 @@ReflectCDATA:
5246 @@Get:
5247 @@Set:
5248 @ATTR:
5249 @@Name: size
5250 @@Deprecated:
5251 @@ImplNote:
5252 @@@lang:en
5253 @@@@:
5254 This is <EM::not> the computed size.
5255 @@ReflectCDATA:
5256 @@Get:
5257 @@Set:
5258
5259 IfCls1ETDef:
5260 @ETQName:
5261 xhtml1:hr
5262 @IFQName: HTMLHRElement
5263 @ClsQName:ManakaiDOMHTMLHRElement
5264 @ISAHTMLElement:
5265
5266 @ATTR:
5267 @@Name: align
5268 @@Deprecated:
5269 @@ReflectEnum:
5270 @@Get:
5271 @@Set:
5272 @ATTR:
5273 @@AName:noshade
5274 @@DOMAName: noShade
5275 @@plAName: noshade
5276 @@Deprecated:
5277 @@ReflectBoolean:
5278 @@Get:
5279 @@@InCase:
5280 @@@@Value: true
5281 @@@InCase:
5282 @@@@Value: false
5283 @@Set:
5284 @@@InCase:
5285 @@@@Value: true
5286 @@@InCase:
5287 @@@@Value: false
5288 @ATTR:
5289 @@Name: size
5290 @@Deprecated:
5291 @@ReflectCDATA:
5292 @@Get:
5293 @@Set:
5294 @ATTR:
5295 @@Name: width
5296 @@Deprecated:
5297 @@ReflectCDATA:
5298 @@Get:
5299 @@Set:
5300
5301 ForDef:
5302 @QName:
5303 DOMHTML:ForIns
5304 @ISA: DOMHTML|ForAnET
5305 ForDef:
5306 @QName:
5307 DOMHTML:ForDel
5308 @ISA: DOMHTML|ForAnET
5309
5310 IFCls1ETsDef:
5311 @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 @@ForCheck: ForAnET
5328
5329 @ETQName:
5330 @@@:
5331 xhtml1:ins
5332 @@ForCheck:ForIns
5333 @ETQName:
5334 @@@:
5335 xhtml1:del
5336 @@ForCheck:ForDel
5337
5338 @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 @IFQName: HTMLModElement
5365 @ClsQName:ManakaiDOMHTMLModElement
5366 @ISAHTMLElement:
5367
5368 @Attrs:
5369 @@Name: cite
5370 @@ReflectURI:
5371 @@Get:
5372 @@Set:
5373 @@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 @@AName: datetime
5381 @@DOMAName: dateTime
5382 @@ReflectCDATA:
5383 @@Get:
5384 @@Set:
5385 @@docAttrP1S: ||ForHTML40SE||ForIns
5386 @@docAttrP2S: ||ForHTML401||ForIns
5387 @@docAttrP2X: ||ForXHTML10SE||ForIns
5388 @@docAttrP1S: ||ForHTML40SE||ForDel
5389 @@docAttrP2S: ||ForHTML401||ForDel
5390 @@docAttrP2X: ||ForXHTML10SE||ForDel
5391
5392 IfCls1ETDef:
5393 @ETQName:
5394 xhtml1:a
5395 @IFQName: HTMLAnchorElement
5396 @ClsQName:ManakaiDOMHTMLAnchorElement
5397 @ISAHTMLElement:
5398
5399 @ATTR:
5400 @@AName:accesskey
5401 @@DOMAName: accessKey
5402 @@plAName: accesskey
5403 @@ReflectCDATA:
5404 @@Get:
5405 @@Set:
5406 @ATTR:
5407 @@Name: charset
5408 @@ReflectCDATA:
5409 @@Get:
5410 @@Set:
5411 @ATTR:
5412 @@Name: coords
5413 @@ReflectCDATA:
5414 @@Get:
5415 @@Set:
5416 @ATTR:
5417 @@Name: href
5418 @@ReflectURI:
5419 @@Get:
5420 @@Set:
5421 @ATTR:
5422 @@Name: hreflang
5423 @@ReflectCDATA:
5424 @@Get:
5425 @@Set:
5426 @ATTR:
5427 @@Name: name
5428 @@ReflectCDATA:
5429 @@Get:
5430 @@Set:
5431 @ATTR:
5432 @@Name: rel
5433 @@ReflectCDATA:
5434 @@Get:
5435 @@Set:
5436 @ATTR:
5437 @@Name: rev
5438 @@ReflectCDATA:
5439 @@Get:
5440 @@Set:
5441 @ATTR:
5442 @@Name: shape
5443 @@ReflectCDATA:
5444 @@Get:
5445 @@Set:
5446 @ATTR:
5447 @@AName:tabindex
5448 @@DOMAName: tabIndex
5449 @@plAName: tabindex
5450 @@ReflectNumeric:
5451 @@Get:
5452 @@Set:
5453 @ATTR:
5454 @@Name: target
5455 @@ReflectCDATA:
5456 @@Get:
5457 @@Set:
5458 @ATTR:
5459 @@Name: type
5460 @@ReflectCDATA:
5461 @@Get:
5462 @@Set:
5463 @Method:
5464 @@Name: blur
5465 @@Description:
5466 @@@lang:en
5467 @@@@:Remove the focus from this element.
5468 @@Return:
5469 @Method:
5470 @@Name: focus
5471 @@Description:
5472 @@@lang:en
5473 @@@@:Give the focus to this element.
5474 @@Return:
5475 ##HTMLAnchorElement
5476
5477 IF:
5478 @For: !ManakaiDOM|all
5479
5480 @IFQName: HTMLAnchorElementExtended
5481 @ClsQName: ManakaiDOMHTMLAnchorElementExtended
5482
5483 @IFISA: HTMLAnchorElement
5484 @IFISA: HTMLStrictlyInlineContainerExtended
5485
5486 @ClsISA: ManakaiDOMHTMLAnchorElement
5487 @ClsISA: ManakaiDOMHTMLStrictlyInlineContainerExtended
5488 ##HTMLAnchorElementExtended
5489
5490 IfCls12ETDef:
5491 @ETQName:
5492 xhtml1:img
5493 @IFQName: HTMLImageElement
5494 @ClsQName:ManakaiDOMHTMLImageElement
5495 @ISAHTMLElement:
5496
5497 @ResourceDef:
5498 @@rdf:type:
5499 @@@@: DISLang|Attribute
5500 @@@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 @@Name: name
5513 @@Description:
5514 @@@lang:en
5515 @@@@:
5516 The name of the element.
5517 \
5518 {NOTE:: This attribute is provided for backwards compatibility.
5519 Whilst HTML 4.01 added the <HA::name> attribute
5520 for compatibility, the DOM HTML Specifications
5521 does not address this fact - i.e. HTML's and DOM's
5522 <CODE::name> attributes are not formally associated.
5523 \
5524 }
5525 @@DocAttr:
5526 @@@@:
5527 ::ForHTML401
5528 @@@For:
5529 ManakaiDOM:ManakaiDOMLatest
5530 @@DocAttr:
5531 @@@@:
5532 ::ForXHTML10SE
5533 @@@For:
5534 ManakaiDOM:ManakaiDOMLatest
5535 @@ReflectCDATA:
5536 @@Get:
5537 @@Set:
5538 @ATTR:
5539 @@Name: align
5540 @@Deprecated:
5541 @@ReflectEnum:
5542 @@Get:
5543 @@Set:
5544 @ATTR:
5545 @@Name: alt
5546 @@ReflectCDATA:
5547 @@Get:
5548 @@Set:
5549 @ATTR:
5550 @@Name: border
5551 @@Deprecated:
5552 @@ReflectCDATA:
5553 @@Get:
5554 @@Set:
5555 @@ImplNote:
5556 @@@lang:en
5557 @@@@:
5558 The type is <TYPE::DOMString> in both DOM Levels 1 and 2.
5559 @ATTR:
5560 @@Name: height
5561 @@Deprecated:
5562 @@ReflectStringLong:
5563 @@Get:
5564 @@Set:
5565 @@Level[list]:
5566 1
5567 2
5568 @@SpecLevel[list]:
5569 1
5570 2
5571 @ATTR:
5572 @@Name: hspace
5573 @@Deprecated:
5574 @@ReflectStringLong:
5575 @@Get:
5576 @@Set:
5577 @@Level[list]:
5578 1
5579 2
5580 @@SpecLevel[list]:
5581 1
5582 2
5583 @ATTR:
5584 @@AName:ismap
5585 @@DOMAName: isMap
5586 @@plAName: ismap
5587 @@ReflectBoolean:
5588 @@Get:
5589 @@@InCase:
5590 @@@@Value: true
5591 @@@InCase:
5592 @@@@Value: false
5593 @@Set:
5594 @@@InCase:
5595 @@@@Value: true
5596 @@@InCase:
5597 @@@@Value: false
5598 @ATTR:
5599 @@AName:longdesc
5600 @@DOMAName: longDesc
5601 @@plAName: longdesc
5602 @@ReflectURI:
5603 @@Get:
5604 @@Set:
5605 @ATTR:
5606 @@Name: src
5607 @@ReflectURI:
5608 @@Get:
5609 @@Set:
5610 @ATTR:
5611 @@AName:usemap
5612 @@DOMAName: useMap
5613 @@plAName: usemap
5614 @@ReflectURI:
5615 @@Get:
5616 @@Set:
5617 @@ImplNote:
5618 @@@lang:en
5619 @@@@:
5620 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 @ATTR:
5624 @@Name: vspace
5625 @@Deprecated:
5626 @@ReflectStringLong:
5627 @@Get:
5628 @@Set:
5629 @@Level[list]:
5630 1
5631 2
5632 @@SpecLevel[list]:
5633 1
5634 2
5635 @Attr:
5636 @@Name: width
5637 @@Deprecated:
5638 @@ReflectStringLong:
5639 @@Get:
5640 @@Set:
5641 @@Level[list]:
5642 1
5643 2
5644 @@SpecLevel[list]:
5645 1
5646 2
5647 ##HTMLImageElement
5648
5649 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 IFCls1ETDef:
5668 @ETQName:
5669 xhtml1:object
5670 @IFQName: HTMLObjectElement
5671 @ClsQName:ManakaiDOMHTMLObjectElement
5672 @ISAHTMLElement:
5673
5674 @ImplNote:
5675 @@lang:en
5676 @@@:
5677 In some environments some attributes may be read-only
5678 once the underlying object is instantiated.
5679 @Attr:
5680 @@Name: form
5681 @@Description:
5682 @@@lang:en
5683 @@@@:
5684 The <HE::form> element containing this control.
5685 @@Get:
5686 @@@Type:
5687 DOMHTML:HTMLFormElement
5688 @@@Description:
5689 @@@@lang:en
5690 @@@@@:
5691 This control is not within the context of a form.
5692 @Attr:
5693 @@Name: code
5694 @@enDesc:
5695 Applet class file.
5696 @@Get:
5697 @@@Type: DOMString
5698 @@Set:
5699 @@@Type: DOMString
5700 @ATTR:
5701 @@Name: align
5702 @@Deprecated:
5703 @@ReflectEnum:
5704 @@Get:
5705 @@Set:
5706 @ATTR:
5707 @@Name: archive
5708 @@ReflectCDATA:
5709 @@Get:
5710 @@Set:
5711 @ATTR:
5712 @@Name: border
5713 @@Deprecated:
5714 @@ReflectCDATA:
5715 @@Get:
5716 @@Set:
5717 @ATTR:
5718 @@AName:codebase
5719 @@DOMAName: codeBase
5720 @@plAName: codebase
5721 @@ReflectURI:
5722 @@Get:
5723 @@Set:
5724 @ATTR:
5725 @@AName:codetype
5726 @@DOMAName: codeType
5727 @@plAName: codetype
5728 @@ReflectCDATA:
5729 @@Get:
5730 @@Set:
5731 @ATTR:
5732 @@Name: data
5733 @@ReflectURI:
5734 @@@ImplNote: Relative to codebase
5735 @@Get:
5736 @@Set:
5737 @ATTR:
5738 @@Name: declare
5739 @@ReflectBoolean:
5740 @@Get:
5741 @@@InCase:
5742 @@@@Value: true
5743 @@@InCase:
5744 @@@@Value: false
5745 @@Set:
5746 @@@InCase:
5747 @@@@Value: true
5748 @@@InCase:
5749 @@@@Value: false
5750 @ATTR:
5751 @@Name: height
5752 @@Deprecated:
5753 @@ReflectCDATA:
5754 @@Get:
5755 @@Set:
5756 @ATTR:
5757 @@Name: hspace
5758 @@Deprecated:
5759 @@ReflectNumeric:
5760 @@Get:
5761 @@Set:
5762 @ATTR:
5763 @@Name: name
5764 @@ReflectCDATA:
5765 @@Get:
5766 @@Set:
5767 @ATTR:
5768 @@AName:standby
5769 @@DOMAName: standby
5770 @@ReflectCDATA:
5771 @@Get:
5772 @@Set:
5773 @ATTR:
5774 @@AName:tabindex
5775 @@DOMAName: tabIndex
5776 @@ReflectNumeric:
5777 @@Get:
5778 @@Set:
5779 @ATTR:
5780 @@Name: type
5781 @@ReflectCDATA:
5782 @@Get:
5783 @@Set:
5784 @Attr:
5785 @@AName:usemap
5786 @@DOMAName: useMap
5787 @@plAName: usemap
5788 @@ReflectURI:
5789 @@Get:
5790 @@Set:
5791 @@ImplNote:
5792 @@@lang:en
5793 @@@@:
5794 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 @ATTR:
5798 @@Name: vspace
5799 @@Deprecated:
5800 @@ReflectNumeric:
5801 @@Get:
5802 @@Set:
5803 @ATTR:
5804 @@Name: width
5805 @@ReflectCDATA:
5806 @@Get:
5807 @@Set:
5808 @Attr:
5809 @@Name: contentDocument
5810 @@Description:
5811 @@@lang:en
5812 @@@@:
5813 The document this object contains, if any and available.
5814 @@Get:
5815 @@@Type: Document
5816 @@@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 @@@Def:
5825 @@@@ContentType:
5826 lang:dis
5827 @@@@GetPropNode:
5828 DOMHTML:contentDocument
5829 @@Level[list]: 2
5830 @@SpecLevel[list]: 2
5831 @@L2:
5832 ##HTMLObjectElement
5833
5834 PropDef:
5835 @QName: referrer
5836 @enDesc:
5837 <A::HTMLDocument.referrer>.
5838
5839 PropDef:
5840 @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 IfCls1ETDef:
5849 @ETQName:
5850 xhtml1:param
5851 @IFQName: HTMLParamElement
5852 @ClsQName:ManakaiDOMHTMLParamElement
5853 @ISAHTMLElement:
5854
5855 @ATTR:
5856 @@Name: name
5857 @@ReflectCDATA:
5858 @@Get:
5859 @@Set:
5860 @ATTR:
5861 @@Name: type
5862 @@ReflectCDATA:
5863 @@Get:
5864 @@Set:
5865 @ATTR:
5866 @@Name: value
5867 @@ReflectCDATA:
5868 @@Get:
5869 @@Set:
5870 @ATTR:
5871 @@AName:valuetype
5872 @@DOMAName: valueType
5873 @@plAName: valuetype
5874 @@ReflectCDATA:
5875 @@Get:
5876 @@Set:
5877
5878 IfCls12ETDef:
5879 @ETQName:
5880 xhtml1:applet
5881 @IFQName: HTMLAppletElement
5882 @ClsQName:ManakaiDOMHTMLAppletElement
5883 @ISAHTMLElement:
5884 @Deprecated:
5885
5886 @ATTR:
5887 @@Name: align
5888 @@Deprecated:
5889 @@ReflectEnum:
5890 @@Get:
5891 @@Set:
5892 @ATTR:
5893 @@Name: alt
5894 @@Deprecated:
5895 @@ReflectCDATA:
5896 @@Get:
5897 @@Set:
5898 @ATTR:
5899 @@Name: archive
5900 @@Deprecated:
5901 @@ReflectCDATA:
5902 @@Get:
5903 @@Set:
5904 @ATTR:
5905 @@Name: code
5906 @@Deprecated:
5907 @@ReflectCDATA:
5908 @@@ImplNote: URI?
5909 @@Get:
5910 @@Set:
5911 @ATTR:
5912 @@AName:codebase
5913 @@DOMAName: codeBase
5914 @@plAName: codebase
5915 @@Deprecated:
5916 @@ReflectURI:
5917 @@Get:
5918 @@Set:
5919 @ATTR:
5920 @@Name: height
5921 @@Deprecated:
5922 @@ReflectCDATA:
5923 @@Get:
5924 @@Set:
5925 @ATTR:
5926 @@Name: hspace
5927 @@Deprecated:
5928 @@ReflectStringLong:
5929 @@Get:
5930 @@Set:
5931 @@Level[list]:
5932 1
5933 2
5934 @@SpecLevel[list]:
5935 1
5936 2
5937 @ATTR:
5938 @@Name: name
5939 @@Deprecated:
5940 @@ReflectCDATA:
5941 @@Get:
5942 @@Set:
5943 @Attr:
5944 @@Name: object
5945 @@Deprecated:
5946 @@ReflectCDATA:
5947 @@Get:
5948 @@Set:
5949 @@Level[list]:
5950 1
5951 @@SpecLevel[list]:
5952 1
5953 2
5954 @Attr:
5955 @@Name: vspace
5956 @@Deprecated:
5957 @@ReflectStringLong:
5958 @@Get:
5959 @@Set:
5960 @@Level[list]:
5961 1
5962 2
5963 @@SpecLevel[list]:
5964 1
5965 2
5966 @Attr:
5967 @@Name: width
5968 @@Deprecated:
5969 @@ReflectCDATA:
5970 @@Get:
5971 @@Set:
5972 ##HTMLAppletElement
5973
5974 ResourceDef:
5975 @QName:
5976 DOMMain:long
5977 @AliasFor:
5978 DOMMain:long::ManakaiDOM:all
5979 @ForCheck:
5980 !=ManakaiDOM:all
5981 @For: ManakaiDOM|DOM
5982
5983 IfCls1ETDef:
5984 @ETQName:
5985 xhtml1:map
5986 @IFQName: HTMLMapElement
5987 @ClsQName:ManakaiDOMHTMLMapElement
5988 @ISAHTMLElement:
5989
5990 @Attr:
5991 @@Name: areas
5992 @@Description:
5993 @@@lang:en
5994 @@@@:
5995 The list of areas defined for this image map.
5996 @@Get:
5997 @@@Type: HTMLCollection
5998 @ATTR:
5999 @@Name: name
6000 @@ReflectCDATA:
6001 @@Get:
6002 @@Set:
6003 ##HTMLMapElement
6004
6005 IfCls1ETDef:
6006 @ETQName:
6007 xhtml1:area
6008 @IFQName: HTMLAreaElement
6009 @ClsQName:ManakaiDOMAreaElement
6010 @ISAHTMLElement:
6011
6012 @ATTR:
6013 @@AName: accesskey
6014 @@DOMAName: accessKey
6015 @@plAName: accesskey
6016 @@ReflectCDATA:
6017 @@Get:
6018 @@Set:
6019 @ATTR:
6020 @@Name: alt
6021 @@ReflectCDATA:
6022 @@Get:
6023 @@Set:
6024 @ATTR:
6025 @@Name: coords
6026 @@ReflectCDATA:
6027 @@Get:
6028 @@Set:
6029 @ATTR:
6030 @@Name: href
6031 @@ReflectURI:
6032 @@Get:
6033 @@Set:
6034 @ATTR:
6035 @@AName:nohref
6036 @@DOMAName: noHref
6037 @@plAName: nohref
6038 @@ReflectBoolean:
6039 @@Get:
6040 @@@InCase:
6041 @@@@Value: true
6042 @@@InCase:
6043 @@@@Value: false
6044 @@Set:
6045 @@@InCase:
6046 @@@@Value: true
6047 @@@InCase:
6048 @@@@Value: false
6049 @ATTR:
6050 @@ReflectCDATA:
6051 @@Name: shape
6052 @@Get:
6053 @@Set:
6054 @Attr:
6055 @@AName:tabindex
6056 @@DOMAName: tabIndex
6057 @@ReflectNumeric:
6058 @@Get:
6059 @@Set:
6060 @ATTR:
6061 @@Name: target
6062 @@ReflectCDATA:
6063 @@Get:
6064 @@Set:
6065 ##HTMLAreaElement
6066
6067 IfCls1ETDef:
6068 @ETQName:
6069 xhtml1:script
6070 @IFQName: HTMLScriptElement
6071 @ClsQName:ManakaiDOMHTMLScriptElement
6072 @ISAHTMLElement:
6073
6074 @Attr:
6075 @@Name: text
6076 @@Description:
6077 @@@lang:en
6078 @@@@:
6079 The script content of this element.
6080 @@ImplNote:
6081 @@@lang:en
6082 @@@@:
6083 ISSUE: How interact with <HA::src>?
6084 @@Get:
6085 @@@Type: DOMString
6086 @@Set:
6087 @@@Type: DOMString
6088 @Attr:
6089 @@DOMAName: htmlFor
6090 @@Description:
6091 @@@lang:en
6092 @@@@:
6093 {NOTE:: Reserved for future use by the DOM HTML Specifications.
6094 The HTML <HA::for> attribute is also reserved
6095 by the HTML 4 Specifications.
6096 \
6097 }
6098 @@Get:
6099 @@@Type: DOMString
6100 @@Set:
6101 @@@Type: DOMString
6102 @Attr:
6103 @@Name: event
6104 @@Description:
6105 @@@lang:en
6106 @@@@:
6107 {NOTE:: Reserved for future use by the DOM HTML Specifications.
6108 The HTML <HA::event> attribute is also reserved
6109 by the HTML 4 Specification.
6110 \
6111 }
6112 @@Get:
6113 @@@Type: DOMString
6114 @@Set:
6115 @@@Type: DOMString
6116 @ATTR:
6117 @@Name: charset
6118 @@ReflectCDATA:
6119 @@Get:
6120 @@Set:
6121 @ATTR:
6122 @@Name: defer
6123 @@ReflectBoolean:
6124 @@Get:
6125 @@@InCase:
6126 @@@@Value: true
6127 @@@InCase:
6128 @@@@Value: false
6129 @@Set:
6130 @@@InCase:
6131 @@@@Value: true
6132 @@@InCase:
6133 @@@@Value: false
6134 @ATTR:
6135 @@Name: src
6136 @@ReflectURI:
6137 @@Get:
6138 @@Set:
6139 @ATTR:
6140 @@Name: type
6141 @@ReflectCDATA:
6142 @@Get:
6143 @@Set:
6144 ##HTMLScriptElement
6145
6146 IfCls1ETDef:
6147 @ETQName:
6148 xhtml1:table
6149 @IFQName: HTMLTableElement
6150 @ClsQName:ManakaiDOMHTMLTableElement
6151 @ISAHTMLElement:
6152
6153 @Attr:
6154 @@Name: caption
6155 @@Description:
6156 @@@lang:en
6157 @@@@:
6158 The <HE::caption> of the table.
6159 @@Get:
6160 @@@Type: HTMLTableCaptionElement
6161 @@@InCase:
6162 @@@@Label:
6163 @@@@@lang:en
6164 @@@@@@:
6165 void (= <DOM::null>?)
6166 @@@@Description:
6167 @@@@@lang:en
6168 @@@@@@: There is no caption.
6169 @@Set:
6170 @@@Type: HTMLTableCaptionElement
6171 @@@Exception:
6172 @@@@@:
6173 ManakaiDOMHTML:MDOM_NOT_CAPTION
6174 @@@@Description:
6175 @@@@@lang:en
6176 @@@@@@:
6177 The given element is not a <HE::caption>.
6178 @@Level[list]:
6179 1
6180 @@SpecLevel[list]:
6181 1
6182 2
6183 @Attr:
6184 @@Name: tHead
6185 @@plAName: thead
6186 @@Description:
6187 @@@lang:en
6188 @@@@:
6189 The <HE::thead> of this table.
6190 @@Get:
6191 @@@Type: HTMLTableSectionElement
6192 @@@InCase:
6193 @@@@Value:
6194 @@@@@is-null:1
6195 @@@@Description:
6196 @@@@@lang:en
6197 @@@@@@:
6198 There is no <HE::thead>.
6199 @@Set:
6200 @@@Type: HTMLTableSectionElement
6201 @@@Exception:
6202 @@@@Name: HIERARCHY_REQUEST_ERR
6203 @@@@Type:
6204 DOMCore:DOMException
6205 @@@@SubType:
6206 ManakaiDOMHTML:MDOM_BAD_ELEMENT_TYPE
6207 @@@@Description:
6208 @@@@@lang:en
6209 @@@@@@:
6210 The given element is not a <HE::thead>.
6211 @@Level[list]:
6212 1
6213 @@SpecLevel[list]:
6214 1
6215 2
6216 @Attr:
6217 @@Name: tFoot
6218 @@plAName: tfoot
6219 @@Description:
6220 @@@lang:en
6221 @@@@:
6222 The <HE::tfoot> of this table.
6223 @@Get:
6224 @@@Type: HTMLTableSectionElement
6225 @@@InCase:
6226 @@@@Value:
6227 @@@@@is-null:1
6228 @@@@Description:
6229 @@@@@lang:en
6230 @@@@@@:
6231 There is no <HE::tfoot>.
6232 @@Set:
6233 @@@Type: HTMLTableSectionElement
6234 @@@Exception:
6235 @@@@Name: HIERARCHY_REQUEST_ERR
6236 @@@@Type:
6237 DOMCore:DOMException
6238 @@@@SubType:
6239 @@@@@QName:
6240 ManakaiDOMHTML:MDOM_NOT_TFOOT
6241 @@@@@Description:
6242 @@@@@@lang:en
6243 @@@@@@@:
6244 The given element is not a <HE::tfoot>.
6245 @@Level[list]:
6246 1
6247 @@SpecLevel[list]:
6248 1
6249 2
6250 @Attr:
6251 @@Name: rows
6252 @@Description:
6253 @@@lang:en
6254 @@@@:
6255 A collection of all the rows (child or grandchild
6256 <HE::tr> elements) in this table.
6257 @@Get:
6258 @@@Type: HTMLCollection
6259 @Attr:
6260 @@Name: tBodies
6261 @@plAName: tbodies
6262 @@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 @@Get:
6271 @@@Type: HTMLCollection
6272 @ATTR:
6273 @@Name: align
6274 @@Deprecated:
6275 @@ReflectEnum:
6276 @@Get:
6277 @@Set:
6278 @ATTR:
6279 @@AName:bgcolor
6280 @@DOMAName: bgColor
6281 @@plAName: bgcolor
6282 @@ReflectCDATA:
6283 @@Get:
6284 @@Set:
6285 @ATTR:
6286 @@Name: border
6287 @@ReflectCDATA:
6288 @@Get:
6289 @@Set:
6290 @ATTR:
6291 @@AName:cellpadding
6292 @@DOMAName: cellPadding
6293 @@plAName: cellpadding
6294 @@ReflectCDATA:
6295 @@Get:
6296 @@Set:
6297 @ATTR:
6298 @@AName:cellspacing
6299 @@DOMAName: cellSpacing
6300 @@plAName: cellspacing
6301 @@ReflectCDATA:
6302 @@Get:
6303 @@Set:
6304 @ATTR:
6305 @@Name: frame
6306 @@ReflectEnum:
6307 @@Get:
6308 @@Set:
6309 @@ImplNote:
6310 @@@lang:en
6311 @@@@:
6312 How <HTML::border> is implemented in DOM Level 0?
6313 @ATTR:
6314 @@Name: rules
6315 @@ReflectEnum:
6316 @@Get:
6317 @@Set:
6318 @ATTR:
6319 @@Name: summary
6320 @@ReflectCDATA:
6321 @@Get:
6322 @@Set:
6323 @ATTR:
6324 @@Name: width
6325 @@ReflectCDATA:
6326 @@Get:
6327 @@Set:
6328 @Method:
6329 @@Name: createTHead
6330 @@plAName: create_thead
6331 @@Description:
6332 @@@lang:en
6333 @@@@:
6334 Create the <HE::thead> element (if it does not exist) and
6335 return it.
6336 @@Return:
6337 @@@Type: HTMLElement
6338 @@@Description:
6339 @@@@lang:en
6340 @@@@@:
6341 The <HE::thead> element.
6342 @Method:
6343 @@Name: deleteTHead
6344 @@plAName: delete_thead
6345 @@Description:
6346 @@@lang:en
6347 @@@@:
6348 Delete the <HE::thead>, if any, from the table.
6349 @@Return:
6350 @Method:
6351 @@Name: createTFoot
6352 @@plAName: create_tfoot
6353 @@Description:
6354 @@@lang:en
6355 @@@@:
6356 Create the <HE::tfoot> element (if it does not exist) and
6357 return it.
6358 @@Return:
6359 @@@Type: HTMLElement
6360 @@@Description:
6361 @@@@lang:en
6362 @@@@@:
6363 The <HE::tfoot> element.
6364 @Method:
6365 @@Name: deleteTFoot
6366 @@plAName: delete_tfoot
6367 @@Description:
6368 @@@lang:en
6369 @@@@:
6370 Delete the <HE::tfoot>, if any, from the table.
6371 @@Return:
6372 @Method:
6373 @@Name: createCaption
6374 @@Description:
6375 @@@lang:en
6376 @@@@:
6377 Create the table caption element (if it does not exist) and
6378 return it.
6379 @@Return:
6380 @@@Type: HTMLElement
6381 @@@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 empty, a <HE::tbody> is created and the new row is
6398 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 starting from <DOM::0> and relative to the logical
6414 order (not the document order). The new row is
6415 inserted immediately before and in the same row group
6416 as the current <P::index>th row.
6417 @@@InCase:
6418 @@@@Value:-1
6419 @@@@Description:
6420 @@@@@lang:en
6421 @@@@@@:
6422 The new row is appended.
6423 @@@@SpecLevel:2
6424 @@@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 @@@@SpecLevel:2
6434 @@Return:
6435 @@@Type: HTMLElement
6436 @@@Description:
6437 @@@@lang:en
6438 @@@@@:The newly created row.
6439 @@@Exception:
6440 @@@@Name: INDEX_SIZE_ERR
6441 @@@@Type:
6442 DOMCore:DOMException
6443 @@@@SubType:
6444 @@@@@QName:
6445 TODO: What?
6446 @@@@@Description:
6447 @@@@@@lang:en
6448 @@@@@@@:
6449 The <P::index> is greater than the number of rows
6450 or less than <DOM::-1>.
6451 @@@@SpecLevel:2
6452 @@@@ImplNote:
6453 @@@@@lang:en
6454 @@@@@@:
6455 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6456 (<P::index> cannot <DOM::-1> in DOM Level 1.)
6457 @@Level[list]:
6458 1
6459 2
6460 @@SpecLevel[list]:
6461 1
6462 2
6463 @Method:
6464 @@Name: deleteRow
6465 @@Description:
6466 @@@lang:en
6467 @@@@:Delete a table row.
6468 @@Param:
6469 @@@Name: index
6470 @@@Type:
6471 DOMMain:long
6472 @@@Description:
6473 @@@@lang:en
6474 @@@@@:
6475 The ordinal index of the row to delete, starting from <DOM::0>
6476 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 @@@@SpecLevel:2
6484 @@@ImplNote:
6485 @@@@lang:en
6486 @@@@@:
6487 In the order of <HE::thead> -> <HE::tbody>s -> <HE::tfoot>?
6488 @@Return:
6489 @@@Exception:
6490 @@@@Name: INDEX_SIZE_ERR
6491 @@@@Type:
6492 DOMCore:DOMException
6493 @@@@SubType:
6494 @@@@@QName:
6495 TODO: What?
6496 @@@@@Description:
6497 @@@@@@lang:en
6498 @@@@@@@:
6499 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 @@@@SpecLevel:2
6503 @@@@ImplNote:
6504 @@@@@lang:en
6505 @@@@@@:
6506 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6507 (<P::index> cannot <DOM::-1> in DOM Level 1.)
6508 @@Level[list]:
6509 1
6510 2
6511 @@SpecLevel[list]:
6512 1
6513 2
6514 ##HTMLTableElement
6515
6516 IfCls1ETDef:
6517 @ETQName:
6518 xhtml1:caption
6519 @IFQName: HTMLTableCaptionElement
6520 @ClsQName:ManakaiDOMHTMLTableCaptionElement
6521 @ISAHTMLElement:
6522
6523 @ATTR:
6524 @@Name: align
6525 @@Deprecated:
6526 @@ReflectEnum:
6527 @@Get:
6528 @@Set:
6529 ##HTMLTableCaptionElement
6530
6531 IfCls1ETDef:
6532 @ETQName:
6533 xhtml1:col
6534 @IFQName: HTMLTableColElement
6535 @ClsQName:ManakaiDOMHTMLTableColElement
6536 @ISAHTMLElement:
6537
6538 @ATTR:
6539 @@Name: align
6540 @@ReflectEnum:
6541 @@Get:
6542 @@Set:
6543 @ATTR:
6544 @@AName:char
6545 @@DOMAName: ch
6546 @@plAName: char
6547 @@ReflectCDATA:
6548 @@Get:
6549 @@Set:
6550 @ATTR:
6551 @@AName:charoff
6552 @@DOMAName: chOff
6553 @@plAName: charoff
6554 @@ReflectCDATA:
6555 @@Get:
6556 @@Set:
6557 @ATTR:
6558 @@Name: span
6559 @@ReflectNumeric:
6560 @@Get:
6561 @@Set:
6562 @ATTR:
6563 @@AName:valign
6564 @@DOMAName: vAlign
6565 @@plAName: valign
6566 @@ReflectCDATA:
6567 @@Get:
6568 @@Set:
6569 @ATTR:
6570 @@Name: width
6571 @@ReflectCDATA:
6572 @@Get:
6573 @@Set:
6574 ##HTMLTableColElement
6575
6576 ForDef:
6577 @QName:
6578 DOMHTML:ForTbody
6579 @ISA: DOMHTML|ForAnET
6580 ForDef:
6581 @QName:
6582 DOMHTML:ForThead
6583 @ISA: DOMHTML|ForAnET
6584 ForDef:
6585 @QName:
6586 DOMHTML:ForTfoot
6587 @ISA: DOMHTML|ForAnET
6588
6589 IFCls1ETsDef:
6590 @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 @@ForCheck: ForAnET
6610
6611 @ETQName:
6612 @@@:
6613 xhtml1:tbody
6614 @@ForCheck:ForTbody
6615 @ETQName:
6616 @@@:
6617 xhtml1:thead
6618 @@ForCheck:ForThead
6619 @ETQName:
6620 @@@:
6621 xhtml1:tfoot
6622 @@ForCheck:ForTfoot
6623
6624 @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 @IFQName: HTMLTableSectionElement
6666 @ClsQName:ManakaiDOMHTMLTableSectionElement
6667 @ISAHTMLElement:
6668
6669 @Attrs:
6670 @@Name: align
6671 @@ReflectEnum:
6672 @@Get:
6673 @@Set:
6674 @@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 @@AName: char
6685 @@DOMAName: ch
6686 @@plAName: char
6687 @@ReflectCDATA:
6688 @@Get:
6689 @@Set:
6690 @@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 @@AName:charoff
6701 @@DOMAName: chOff
6702 @@plAName: charoff
6703 @@ReflectCDATA:
6704 @@Get:
6705 @@Set:
6706 @@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 @@AName:valign
6717 @@DOMAName: vAlign
6718 @@plAName: valign
6719 @@ReflectEnum:
6720 @@Get:
6721 @@Set:
6722 @@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 @Attr:
6732 @@Name: rows
6733 @@Description:
6734 @@@lang:en
6735 @@@@:
6736 A collection of rows in this table row group.
6737 @@Get:
6738 @@@Type: HTMLCollection
6739 @Method:
6740 @@Name: insertRow
6741 @@Description:
6742 @@@lang:en
6743 @@@@:
6744 Insert a table row into this row group.
6745 @@Param:
6746 @@@Name: index
6747 @@@Type:
6748 DOMMain:long
6749 @@@Description:
6750 @@@@lang:en
6751 @@@@@:
6752 The ordinal index of the row where to insert a new row,
6753 starting from <DOM::0> and relative only to the
6754 rows contained inside this row group. The new row
6755 is inserted immediately before the current <P::index>th
6756 row.
6757 @@@InCase:
6758 @@@@Value:-1
6759 @@@@Description:
6760 @@@@@lang:en
6761 @@@@@@:
6762 The new row is appended.
6763 @@@@SpecLevel:2
6764 @@@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 @@@@SpecLevel:2
6773 @@Return:
6774 @@@Type: HTMLElement
6775 @@@Description:
6776 @@@@lang:en
6777 @@@@@:The newly created table row.
6778 @@@Exception:
6779 @@@@Name: INDEX_SIZE_ERR
6780 @@@@Type:
6781 DOMCore:DOMException
6782 @@@@SubType:
6783 @@@@@QName:
6784 TODO: What?
6785 @@@@@Description:
6786 @@@@@@lang:en
6787 @@@@@@@:
6788 The <P::index> is greater than the number
6789 of rows or less than <DOM::-1>.
6790 @@@@SpecLevel:2
6791 @@@@ImplNote:
6792 @@@@@lang:en
6793 @@@@@@:
6794 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6795 (<P::index> cannot <DOM::-1> in DOM Level 1.)
6796 @@Level[list]:
6797 1
6798 2
6799 @@SpecLevel[list]:
6800 1
6801 2
6802 @Method:
6803 @@Name: deleteRow
6804 @@Description:
6805 @@@lang:en
6806 @@@@:
6807 Delete a table row from this table row group.
6808 @@Param:
6809 @@@Name: index
6810 @@@Type:
6811 DOMMain:long
6812 @@@Description:
6813 @@@@lang:en
6814 @@@@@:
6815 The ordinal index of the row to delete, starting
6816 from <DOM::0> and relative
6817 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 @@@@SpecLevel:2
6825 @@Return:
6826 @@@Exception:
6827 @@@@Name: INDEX_SIZE_ERR
6828 @@@@Type:
6829 DOMCore:DOMException
6830 @@@@SubType:
6831 @@@@@QName:
6832 TODO: What?
6833 @@@@@Description:
6834 @@@@@@lang:en
6835 @@@@@@@:
6836 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 @@@@SpecLevel:2
6840 @@@@ImplNote:
6841 @@@@@lang:en
6842 @@@@@@:
6843 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
6844 (<P::index> cannot <DOM::-1> in DOM Level 1.)
6845 @@Level[list]:
6846 1
6847 2
6848 @@SpecLevel[list]:
6849 1
6850 2
6851 ##HTMLTableSectionElement
6852
6853 IfCls12ETDef:
6854 @ETQName:
6855 xhtml1:tr
6856 @IFQName: HTMLTableRowElement
6857 @ClsQName:ManakaiDOMHTMLTableRowElement
6858 @ISAHTMLElement:
6859
6860 @Attr:
6861 @@Name: rowIndex
6862 @@Description:
6863 @@@lang:en
6864 @@@@:
6865 The ordinal index of the row, starting from <DOM::0>,
6866 in the logical order (not the document order).
6867 \
6868 {NOTE:: The logical order take row groups into account;
6869 placing <HE::thead> rows first, followed by
6870 <HE::tbody> rows, followed by <HE::tfoot> rows.
6871 \
6872 }
6873 @@Get:
6874 @@@Type:
6875 DOMMain:long
6876 @@ImplNote:
6877 @@@lang:en
6878 @@@@:
6879 Writable in DOM Level 1 FE, with no description -
6880 fixed in the Errata.
6881 @@Level[list]:
6882 1
6883 @@SpecLevel[list]:
6884 1
6885 2
6886 @Attr:
6887 @@Name: sectionRowIndex
6888 @@Description:
6889 @@@lang:en
6890 @@@@:
6891 The ordinal index of this row, starting from <DOM::0>
6892 and relative to this row group.
6893 @@Get:
6894 @@@Type:
6895 DOMMain:long
6896 @@ImplNote:
6897 @@@lang:en
6898 @@@@:
6899 Writable in DOM Level 1 FE, with no description.
6900 @@Level[list]:
6901 1
6902 @@SpecLevel[list]:
6903 1
6904 2
6905 @Attr:
6906 @@Name: cells
6907 @@Description:
6908 @@@lang:en
6909 @@@@:The collection of cells in this row.
6910 @@Get:
6911 @@@Type: HTMLCollection
6912 @@ImplNote:
6913 @@@lang:en
6914 @@@@:
6915 Writable in DOM Level 1 FE, with no description.
6916 @@Level[list]:
6917 1
6918 @@SpecLevel[list]:
6919 1
6920 2
6921 @ATTR:
6922 @@Name: align
6923 @@ReflectEnum:
6924 @@Get:
6925 @@Set:
6926 @ATTR:
6927 @@AName:bgcolor
6928 @@DOMAName: bgColor
6929 @@plAName: bgcolor
6930 @@Deprecated:
6931 @@ReflectCDATA:
6932 @@Get:
6933 @@Set:
6934 @ATTR:
6935 @@AName:char
6936 @@DOMAName: ch
6937 @@plAName: char
6938 @@ReflectCDATA:
6939 @@Get:
6940 @@Set:
6941 @ATTR:
6942 @@AName:charoff
6943 @@DOMAName: chOff
6944 @@plAName: charoff
6945 @@ReflectCDATA:
6946 @@Get:
6947 @@Set:
6948 @ATTR:
6949 @@AName:valign
6950 @@DOMAName: vAlign
6951 @@plAName: valign
6952 @@ReflectEnum:
6953 @@Get:
6954 @@Set:
6955 @Method:
6956 @@Name: insertCell
6957 @@Description:
6958 @@@lang:en
6959 @@@@:
6960 Insert an empty data cell (<HE::td>) into this row.
6961 @@Param:
6962 @@@Name: index
6963 @@@Type:
6964 DOMMain:long
6965 @@@Description:
6966 @@@@lang:en
6967 @@@@@:
6968 The index where the new cell is inserted, starting
6969 from <DOM::0>.
6970 @@@InCase:
6971 @@@@Value:-1
6972 @@@@Description:
6973 @@@@@lang:en
6974 @@@@@@:The new cell is appended.
6975 @@@@SpecLevel:2
6976 @@@InCase:
6977 @@@@Label:
6978 @@@@@lang:en
6979 @@@@@@:The number of cells
6980 @@@@Description:
6981 @@@@@lang:en
6982 @@@@@@:The new cell is appended.
6983 @@@@SpecLevel:2
6984 @@Return:
6985 @@@Type: HTMLElement
6986 @@@Description:
6987 @@@@lang:en
6988 @@@@@:The newly inserted cell.
6989 @@@Exception:
6990 @@@@Name: INDEX_SIZE_ERR
6991 @@@@Type:
6992 DOMCore:DOMException
6993 @@@@SubType:
6994 @@@@@QName:
6995 TODO: What?
6996 @@@@@Description:
6997 @@@@@@lang:en
6998 @@@@@@@:
6999 The <P::index> is greater than the number of
7000 cells or less than <DOM::-1>.
7001 @@@@SpecLevel:2
7002 @@@@ImplNote:
7003 @@@@@lang:en
7004 @@@@@@:
7005 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
7006 (<P::index> cannot <DOM::-1> in DOM Level 1.)
7007 @@Level[list]:
7008 1
7009 2
7010 @@SpecLevel[list]:
7011 1
7012 2
7013 @Method:
7014 @@Name: deleteCell
7015 @@Description:
7016 @@@lang:en
7017 @@@@:Delete a cell from this row.
7018 @@Param:
7019 @@@Name: index
7020 @@@Type:
7021 DOMMain:long
7022 @@@Description:
7023 @@@@lang:en
7024 @@@@@:
7025 The index of the cell to delete, starting from <DOM::0>
7026 and in the document order.
7027 @@@InCase:
7028 @@@@Value:-1
7029 @@@@Description:
7030 @@@@@lang:en
7031 @@@@@@:
7032 The last cell is deleted.
7033 @@@@SpecLevel:2
7034 @@Return:
7035 @@@Exception:
7036 @@@@Name: INDEX_SIZE_ERR
7037 @@@@Type:
7038 DOMCore:DOMException
7039 @@@@SubType:
7040 @@@@@QName:
7041 TODO: What?
7042 @@@@@Description:
7043 @@@@@@lang:en
7044 @@@@@@@:
7045 THe <P::index> is greater than or equal to the number
7046 of the cells or less than <DOM::-1>.
7047 @@@@SpecLevel:2
7048 @@@@ImplNote:
7049 @@@@@lang:en
7050 @@@@@@:
7051 <SRC::DOM Level 1 Second Edition HTML, DOM Level 2 HTML>
7052 (<P::index> cannot <DOM::-1> in DOM Level 1.)
7053 @@Level[list]:
7054 1
7055 2
7056 @@SpecLevel[list]:
7057 1
7058 2
7059 ##HTMLTableRowElement
7060
7061 ForDef:
7062 @QName:
7063 DOMHTML:ForTd
7064 @ISA: DOMHTML|ForAnET
7065 ForDef:
7066 @QName:
7067 DOMHTML:ForTh
7068 @ISA: DOMHTML|ForAnET
7069
7070 IFCls1ETsDef:
7071 @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 @@ForCheck: ForAnET
7088
7089 @ETQName:
7090 @@@:
7091 xhtml1:td
7092 @@ForCheck:ForTd
7093 @ETQName:
7094 @@@:
7095 xhtml1:th
7096 @@ForCheck:ForTh
7097
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
7124 @IFQName: HTMLTableCellElement
7125 @ClsQName:ManakaiDOMHTMLTableCellElement
7126 @ISAHTMLElement:
7127
7128 @Attr:
7129 @@Name: cellIndex
7130 @@Description:
7131 @@@lang:en
7132 @@@@:
7133 The ordinal index of this cell in the row,
7134 starting from <DOM::0> and in the document order
7135 (not the display order).
7136 @@Get:
7137 @@@Type:
7138 DOMMain:long
7139 @@ImplNote:
7140 @@@lang:en
7141 @@@@:
7142 Writable in DOM Level 1 FE - fixed in the Errata.
7143 @Attrs:
7144 @@Name: abbr
7145 @@ReflectCDATA:
7146 @@Get:
7147 @@Set:
7148 @@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 @@Name: align
7156 @@ReflectEnum:
7157 @@Get:
7158 @@Set:
7159 @@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 @@Name: axis
7167 @@ReflectCDATA:
7168 @@Get:
7169 @@Set:
7170 @@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 @@AName:bgcolor
7178 @@DOMAName: bgColor
7179 @@plAName: bgcolor
7180 @@Deprecated:
7181 @@ReflectCDATA:
7182 @@Get:
7183 @@Set:
7184 @@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 @@AName:char
7192 @@DOMAName: ch
7193 @@plAName: char
7194 @@ReflectCDATA:
7195 @@Get:
7196 @@Set:
7197 @@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 @@AName:charoff
7205 @@DOMAName: chOff
7206 @@plAName: charoff
7207 @@ReflectCDATA:
7208 @@Get:
7209 @@Set:
7210 @@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 @@AName:colspan
7218 @@DOMAName: colSpan
7219 @@plAName: colspan
7220 @@ReflectNumeric:
7221 @@Get:
7222 @@Set:
7223 @@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 @@Name: headers
7231 @@ReflectCDATA:
7232 @@Get:
7233 @@Set:
7234 @@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 @@Name: height
7242 @@Deprecated:
7243 @@ReflectCDATA:
7244 @@Get:
7245 @@Set:
7246 @@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 @@AName:nowrap
7254 @@DOMAName: noWrap
7255 @@plAName: nowrap
7256 @@Deprecated:
7257 @@ReflectBoolean:
7258 @@Get:
7259 @@@InCase:
7260 @@@@Value: true
7261 @@@InCase:
7262 @@@@Value: false
7263 @@Set:
7264 @@@InCase:
7265 @@@@Value: true
7266 @@@InCase:
7267 @@@@Value: false
7268 @@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 @@AName:rowspan
7276 @@DOMAName: rowSpan
7277 @@plAName: rowspan
7278 @@ReflectNumeric:
7279 @@Get:
7280 @@Set:
7281 @@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 @@Name: scope
7289 @@ReflectEnum:
7290 @@Get:
7291 @@Set:
7292 @@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 @@AName:valign
7300 @@DOMAName: vAlign
7301 @@plAName: valign
7302 @@ReflectEnum:
7303 @@Get:
7304 @@Set:
7305 @@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 @@Name: width
7313 @@Deprecated:
7314 @@ReflectCDATA:
7315 @@Get:
7316 @@Set:
7317 @@docAttrP1S: ||ForHTML40SE||ForTh
7318 @@docAttrP2S: ||ForHTML401||ForTh
7319 @@docAttrP2X: ||ForXHTML10SE||ForTh
7320 @@docAttrP1S: ||ForHTML40SE||ForTd
7321 @@docAttrP2S: ||ForHTML401||ForTd
7322 @@docAttrP2X: ||ForXHTML10SE||ForTd
7323 ##HTMLTableCellElement
7324
7325 IfCls1ETDef:
7326 @ETQName:
7327 xhtml1:frameset
7328 @IFQName: HTMLFrameSetElement
7329 @ClsQName:ManakaiDOMHTMLFrameSetElement
7330 @ISAHTMLElement:
7331
7332 @ForCheck: !ForXHTML11
7333
7334 @ATTR:
7335 @@Name: cols
7336 @@ReflectCDATA:
7337 @@Get:
7338 @@Set:
7339 @ATTR:
7340 @@Name: rows
7341 @@ReflectCDATA:
7342 @@Get:
7343 @@Set:
7344 ##HTMLFrameSetElement
7345
7346 IfCls1ETDef:
7347 @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 @@plAName: frameborder
7359 @@ReflectCDATA:
7360 @@Get:
7361 @@Set:
7362 @ATTR:
7363 @@AName:longdesc
7364 @@DOMAName: longDesc
7365 @@plAName: longdesc
7366 @@ReflectURI:
7367 @@Get:
7368 @@Set:
7369 @ATTR:
7370 @@AName:marginheight
7371 @@DOMAName: marginHeight
7372 @@plAName: marginheight
7373 @@ReflectCDATA:
7374 @@Get:
7375 @@Set:
7376 @ATTR:
7377 @@AName:marginwidth
7378 @@DOMAName: marginWidth
7379 @@plAName: marginwidth
7380 @@ReflectCDATA:
7381 @@Get:
7382 @@Set:
7383 @ATTR:
7384 @@Name: name
7385 @@ReflectCDATA:
7386 @@Get:
7387 @@Set:
7388 @ATTR:
7389 @@AName:noresize
7390 @@DOMAName: noResize
7391 @@plAName: noresize
7392 @@ReflectBoolean:
7393 @@Get:
7394 @@@InCase:
7395 @@@@Value: true
7396 @@@InCase:
7397 @@@@Value: false
7398 @@Set:
7399 @@@InCase:
7400 @@@@Value: true
7401 @@@InCase:
7402 @@@@Value: false
7403 @ATTR:
7404 @@Name: scrolling
7405 @@ReflectEnum:
7406 @@Get:
7407 @@Set:
7408 @ATTR:
7409 @@Name: src
7410 @@ReflectURI:
7411 @@Get:
7412 @@Set:
7413 @Attr:
7414 @@Name: contentDocument
7415 @@Description:
7416 @@@lang:en
7417 @@@@:
7418 The document this frame contains, if any and available.
7419 @@Get:
7420 @@@Type: Document
7421 @@@InCase:
7422 @@@@Value:
7423 @@@@@is-null:1
7424 @@@@Description:
7425 @@@@@lang:en
7426 @@@@@@:
7427 There is no document or it is not available.
7428 @@@Def:
7429 @@@@ContentType:
7430 lang:dis
7431 @@@@GetPropNode:
7432 DOMHTML:contentDocument
7433 @@Level[list]: 2
7434 @@SpecLevel[list]: 2
7435 @@L2:
7436 ##HTMLFrameElement
7437
7438 IfCls1ETDef:
7439 @ETQName:
7440 xhtml1:iframe
7441 @IFQName: HTMLIFrameElement
7442 @ClsQName:ManakaiDOMHTMLIFrameElement
7443 @ISAHTMLElement:
7444
7445 @ForCheck: !ForXHTML11
7446
7447 @ATTR:
7448 @@Name: align
7449 @@Deprecated:
7450 @@ReflectEnum:
7451 @@Get:
7452 @@Set:
7453 @ATTR:
7454 @@AName:frameborder
7455 @@DOMAName: frameBorder
7456 @@plAName: frameborder
7457 @@ReflectCDATA:
7458 @@Get:
7459 @@Set:
7460 @ATTR:
7461 @@Name: height
7462 @@ReflectCDATA:
7463 @@Get:
7464 @@Set:
7465 @ATTR:
7466 @@AName:longdesc
7467 @@DOMAName: longDesc
7468 @@plAName: longdesc
7469 @@ReflectURI:
7470 @@Get:
7471 @@Set:
7472 @ATTR:
7473 @@AName:marginheight
7474 @@DOMAName: marginHeight
7475 @@plAName: marginheight
7476 @@ReflectCDATA:
7477 @@Get:
7478 @@Set:
7479 @ATTR:
7480 @@AName:marginwidth
7481 @@DOMAName: marginWidth
7482 @@plAName: marginwidth
7483 @@ReflectCDATA:
7484 @@Get:
7485 @@Set:
7486 @ATTR:
7487 @@Name: name
7488 @@ReflectCDATA:
7489 @@Get:
7490 @@Set:
7491 @ATTR:
7492 @@Name: scrolling
7493 @@ReflectEnum:
7494 @@Get:
7495 @@Set:
7496 @ATTR:
7497 @@Name: src
7498 @@ReflectURI:
7499 @@Get:
7500 @@Set:
7501 @ATTR:
7502 @@Name: width
7503 @@ReflectCDATA:
7504 @@Get:
7505 @@Set:
7506 @Attr:
7507 @@Name: contentDocument
7508 @@Description:
7509 @@@lang:en
7510 @@@@:
7511 The document this frame contains, if any and available.
7512 @@Get:
7513 @@@Type: Document
7514 @@@Description:
7515 @@@@lang:en
7516 @@@@@:
7517 There is no document or it is not available.
7518 @@@Def:
7519 @@@@ContentType:
7520 lang:dis
7521 @@@@GetPropNode:
7522 DOMHTML:contentDocument
7523 @@Level[list]: 2
7524 @@SpecLevel[list]: 2
7525 @@L2:
7526 ##HTMLIFrameElement
7527
7528

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24