Parent Directory
|
Revision Log
|
Patch
| revision 1.52 by wakaba, Sat Jul 21 12:27:22 2007 UTC | revision 1.153 by wakaba, Fri Aug 15 08:32:41 2008 UTC | |
|---|---|---|
| # | Line 1 | Line 1 |
| 1 | package Whatpm::HTML; | package Whatpm::HTML; |
| 2 | use strict; | use strict; |
| 3 | our $VERSION=do{my @r=(q$Revision$=~/\d+/g);sprintf "%d."."%02d" x $#r,@r}; | our $VERSION=do{my @r=(q$Revision$=~/\d+/g);sprintf "%d."."%02d" x $#r,@r}; |
| 4 | use Error qw(:try); | |
| 5 | ||
| 6 | ## ISSUE: | ## ISSUE: |
| 7 | ## var doc = implementation.createDocument (null, null, null); | ## var doc = implementation.createDocument (null, null, null); |
| 8 | ## doc.write (''); | ## doc.write (''); |
| 9 | ## alert (doc.compatMode); | ## alert (doc.compatMode); |
| 10 | ||
| 11 | ## ISSUE: HTML5 revision 967 says that the encoding layer MUST NOT | require IO::Handle; |
| 12 | ## strip BOM and the HTML layer MUST ignore it. Whether we can do it | |
| 13 | ## is not yet clear. | my $HTML_NS = q<http://www.w3.org/1999/xhtml>; |
| 14 | ## "{U+FEFF}..." in UTF-16BE/UTF-16LE is three or four characters? | my $MML_NS = q<http://www.w3.org/1998/Math/MathML>; |
| 15 | ## "{U+FEFF}..." in GB18030? | my $SVG_NS = q<http://www.w3.org/2000/svg>; |
| 16 | my $XLINK_NS = q<http://www.w3.org/1999/xlink>; | |
| 17 | my $permitted_slash_tag_name = { | my $XML_NS = q<http://www.w3.org/XML/1998/namespace>; |
| 18 | base => 1, | my $XMLNS_NS = q<http://www.w3.org/2000/xmlns/>; |
| 19 | link => 1, | |
| 20 | meta => 1, | sub A_EL () { 0b1 } |
| 21 | hr => 1, | sub ADDRESS_EL () { 0b10 } |
| 22 | br => 1, | sub BODY_EL () { 0b100 } |
| 23 | img=> 1, | sub BUTTON_EL () { 0b1000 } |
| 24 | embed => 1, | sub CAPTION_EL () { 0b10000 } |
| 25 | param => 1, | sub DD_EL () { 0b100000 } |
| 26 | area => 1, | sub DIV_EL () { 0b1000000 } |
| 27 | col => 1, | sub DT_EL () { 0b10000000 } |
| 28 | input => 1, | sub FORM_EL () { 0b100000000 } |
| 29 | sub FORMATTING_EL () { 0b1000000000 } | |
| 30 | sub FRAMESET_EL () { 0b10000000000 } | |
| 31 | sub HEADING_EL () { 0b100000000000 } | |
| 32 | sub HTML_EL () { 0b1000000000000 } | |
| 33 | sub LI_EL () { 0b10000000000000 } | |
| 34 | sub NOBR_EL () { 0b100000000000000 } | |
| 35 | sub OPTION_EL () { 0b1000000000000000 } | |
| 36 | sub OPTGROUP_EL () { 0b10000000000000000 } | |
| 37 | sub P_EL () { 0b100000000000000000 } | |
| 38 | sub SELECT_EL () { 0b1000000000000000000 } | |
| 39 | sub TABLE_EL () { 0b10000000000000000000 } | |
| 40 | sub TABLE_CELL_EL () { 0b100000000000000000000 } | |
| 41 | sub TABLE_ROW_EL () { 0b1000000000000000000000 } | |
| 42 | sub TABLE_ROW_GROUP_EL () { 0b10000000000000000000000 } | |
| 43 | sub MISC_SCOPING_EL () { 0b100000000000000000000000 } | |
| 44 | sub MISC_SPECIAL_EL () { 0b1000000000000000000000000 } | |