/[suikacvs]/markup/html/whatpm/Whatpm/ContentChecker/HTML.pm
Suika

Diff of /markup/html/whatpm/Whatpm/ContentChecker/HTML.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.149 by wakaba, Mon Oct 6 13:41:25 2008 UTC revision 1.150 by wakaba, Tue Oct 7 08:58:11 2008 UTC
# Line 5475  $Element->{$HTML_NS}->{input} = { Line 5475  $Element->{$HTML_NS}->{input} = {
5475           disabled => FEATURE_HTML5_DEFAULT | FEATURE_WF2X | FEATURE_M12N10_REC,           disabled => FEATURE_HTML5_DEFAULT | FEATURE_WF2X | FEATURE_M12N10_REC,
5476           enctype => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           enctype => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5477           form => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           form => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5478           inputmode => FEATURE_HTML5_DEFAULT | FEATURE_WF2X | FEATURE_XHTMLBASIC11_CR,           inputmode => FEATURE_HTML5_DROPPED | FEATURE_WF2X |
5479                 FEATURE_XHTMLBASIC11_CR,
5480           ismap => FEATURE_M12N10_REC,           ismap => FEATURE_M12N10_REC,
5481           lang => FEATURE_HTML5_DEFAULT | FEATURE_XHTML10_REC,           lang => FEATURE_HTML5_DEFAULT | FEATURE_XHTML10_REC,
5482           list => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           list => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5483           max => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           max => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5484           maxlength => FEATURE_HTML5_DEFAULT | FEATURE_WF2X | FEATURE_M12N10_REC,           maxlength => FEATURE_HTML5_DEFAULT | FEATURE_WF2X |
5485                 FEATURE_M12N10_REC,
5486           method => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           method => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5487           min => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           min => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5488           name => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,           name => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
# Line 5497  $Element->{$HTML_NS}->{input} = { Line 5499  $Element->{$HTML_NS}->{input} = {
5499           replace => FEATURE_WF2,           replace => FEATURE_WF2,
5500           required => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           required => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5501           sdapref => FEATURE_HTML20_RFC,           sdapref => FEATURE_HTML20_RFC,
5502           size => FEATURE_HTML5_DEFAULT | FEATURE_WF2X_DEPRECATED | FEATURE_M12N10_REC,           size => FEATURE_HTML5_DEFAULT | FEATURE_WF2X_DEPRECATED |
5503                 FEATURE_M12N10_REC,
5504           src => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,           src => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
5505           step => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,           step => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
5506           tabindex => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,           tabindex => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
# Line 5515  $Element->{$HTML_NS}->{input} = { Line 5518  $Element->{$HTML_NS}->{input} = {
5518           accept => '',           accept => '',
5519           'accept-charset' => $HTMLCharsetsAttrChecker,           'accept-charset' => $HTMLCharsetsAttrChecker,
5520               ## NOTE: To which states it applies is not defined in RFC 2070.               ## NOTE: To which states it applies is not defined in RFC 2070.
5521               ## TODO: tests           accesskey => '', ## NOTE: Not applied to |hidden| [WF2].
          accesskey => $HTMLAccesskeyAttrChecker,  
              ## NOTE: Not applied to |hidden| [WF2].  
              ## TODO: tests  
5522           action => '',           action => '',
5523             align => '',
5524           alt => '',           alt => '',
5525           autocomplete => '',           autocomplete => '',
5526           autofocus => $GetHTMLBooleanAttrChecker->('autofocus'),           autofocus => $GetHTMLBooleanAttrChecker->('autofocus'),
# Line 5529  $Element->{$HTML_NS}->{input} = { Line 5530  $Element->{$HTML_NS}->{input} = {
5530               ## ISSUE: No HTML5 definition yet.  ## TODO: Tests               ## ISSUE: No HTML5 definition yet.  ## TODO: Tests
5531           enctype => '',           enctype => '',
5532           form => $HTMLFormAttrChecker,           form => $HTMLFormAttrChecker,
5533           ismap => '', ## NOTE: "MUST" [HTML4]           inputmode => '',
5534             ismap => '', ## NOTE: "MUST" be type=image [HTML4]
5535           list => '',           list => '',
5536           max => '',           max => '',
5537           maxlength => '',           maxlength => '',
# Line 5546  $Element->{$HTML_NS}->{input} = { Line 5548  $Element->{$HTML_NS}->{input} = {
5548           ## TODO: tests for four attributes above           ## TODO: tests for four attributes above
5549           pattern => '',           pattern => '',
5550           readonly => '',           readonly => '',
5551             replace => '',
5552           required => '',           required => '',
5553           size => '',           size => '',
5554           src => '',           src => '',
# Line 5576  $Element->{$HTML_NS}->{input} = { Line 5579  $Element->{$HTML_NS}->{input} = {
5579                 }                 }
5580               },               },
5581              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
             $checker = '' if $attr_ln eq 'accesskey';  
5582              ## TODO: Warn if no name attribute?              ## TODO: Warn if no name attribute?
5583              ## TODO: Warn if name!=_charset_ and no value attribute?              ## TODO: Warn if name!=_charset_ and no value attribute?
5584            } elsif ($state eq 'datetime') {            } elsif ($state eq 'datetime') {
5585              $checker =              $checker =
5586              {              {
5587                 accesskey => $HTMLAccesskeyAttrChecker,
5588               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5589                 on => 1, off => 1,                 on => 1, off => 1,
5590               }),               }),
5591               ## TODO: list               ## TODO: list
5592               ## TODO: max               ## TODO: max
5593               ## TODO: min               ## TODO: min
5594                   ## TODO: min <= max
5595               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5596               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5597               step => $StepAttrChecker,               step => $StepAttrChecker,
5598               value => sub {               value => sub {
5599                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5600                 ## TODO: Warn if not a valid UTC date and time string.                 ## TODO: Warn if not a valid UTC date and time string.
5601                   ## TODO: Warn unless min <= value <= max
5602               },               },
5603              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5604            } elsif ($state eq 'date') {            } elsif ($state eq 'date') {
5605              $checker =              $checker =
5606              {              {
5607                 accesskey => $HTMLAccesskeyAttrChecker,
5608               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5609                 on => 1, off => 1,                 on => 1, off => 1,
5610               }),               }),
5611               ## TODO: list               ## TODO: list
5612               ## TODO: max               ## TODO: max
5613               ## TODO: min               ## TODO: min
5614                   ## TODO: min <= max
5615               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5616               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5617               step => $StepAttrChecker,               step => $StepAttrChecker,
5618               value => sub {               value => sub {
5619                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5620                 ## TODO: Warn if not a valid date string.                 ## TODO: Warn if not a valid date string.
5621                   ## TODO: Warn unless min <= value <= max
5622               },               },
5623              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5624            } elsif ($state eq 'month') {            } elsif ($state eq 'month') {
5625              $checker =              $checker =
5626              {              {
5627                 accesskey => $HTMLAccesskeyAttrChecker,
5628               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5629                 on => 1, off => 1,                 on => 1, off => 1,
5630               }),               }),
5631               ## TODO: list               ## TODO: list
5632               ## TODO: max               ## TODO: max
5633               ## TODO: min               ## TODO: min
5634                   ## TODO: min <= max
5635               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5636               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5637               step => $StepAttrChecker,               step => $StepAttrChecker,
5638               value => sub {               value => sub {
5639                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5640                 ## TODO: Warn if not a valid month string.                 ## TODO: Warn if not a valid month string.
5641                   ## TODO: Warn unless min <= value <= max
5642               },               },
5643              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5644            } elsif ($state eq 'week') {            } elsif ($state eq 'week') {
5645              $checker =              $checker =
5646              {              {
5647                 accesskey => $HTMLAccesskeyAttrChecker,
5648               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5649                 on => 1, off => 1,                 on => 1, off => 1,
5650               }),               }),
5651               ## TODO: list               ## TODO: list
5652               ## TODO: max               ## TODO: max
5653               ## TODO: min               ## TODO: min
5654                   ## TODO: min <= max
5655               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5656               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5657               step => $StepAttrChecker,               step => $StepAttrChecker,
5658               value => sub {               value => sub {
5659                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5660                 ## TODO: Warn if not a valid week string.                 ## TODO: Warn if not a valid week string.
5661                   ## TODO: Warn unless min <= value <= max
5662               },               },
5663              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5664            } elsif ($state eq 'time') {            } elsif ($state eq 'time') {
5665              $checker =              $checker =
5666              {              {
5667                 accesskey => $HTMLAccesskeyAttrChecker,
5668               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5669                 on => 1, off => 1,                 on => 1, off => 1,
5670               }),               }),
5671               ## TODO: list               ## TODO: list
5672               ## TODO: max               ## TODO: max
5673               ## TODO: min               ## TODO: min
5674                   ## TODO: min <= max
5675               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5676               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5677               step => $StepAttrChecker,               step => $StepAttrChecker,
5678               value => sub {               value => sub {
5679                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5680                 ## TODO: Warn if not a valid time string.                 ## TODO: Warn if not a valid time string.
5681                   ## TODO: Warn unless min <= value <= max
5682               },               },
5683              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5684            } elsif ($state eq 'datetime-local') {            } elsif ($state eq 'datetime-local') {
5685              $checker =              $checker =
5686              {              {
5687                 accesskey => $HTMLAccesskeyAttrChecker,
5688               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5689                 on => 1, off => 1,                 on => 1, off => 1,
5690               }),               }),
5691               ## TODO: list               ## TODO: list
5692               ## TODO: max               ## TODO: max
5693               ## TODO: min               ## TODO: min
5694                   ## TODO: min <= max
5695               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5696               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5697               step => $StepAttrChecker,               step => $StepAttrChecker,
5698               value => sub {               value => sub {
5699                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5700                 ## TODO: Warn if not a valid local date and time string.                 ## TODO: Warn if not a valid local date and time string.
5701                   ## TODO: Warn unless min <= value <= max
5702               },               },
5703              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5704            } elsif ($state eq 'number') {            } elsif ($state eq 'number') {
5705              $checker =              $checker =
5706              {              {
5707                 accesskey => $HTMLAccesskeyAttrChecker,
5708               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5709                 on => 1, off => 1,                 on => 1, off => 1,
5710               }),               }),
# Line 5691  $Element->{$HTML_NS}->{input} = { Line 5712  $Element->{$HTML_NS}->{input} = {
5712               max => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),               max => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),
5713               min => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),               min => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),
5714                 ## TODO: min & max tests                 ## TODO: min & max tests
5715                   ## TODO: min <= max
5716               readonly => $GetHTMLBooleanAttrChecker->('readonly'),               readonly => $GetHTMLBooleanAttrChecker->('readonly'),
5717               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5718               step => $StepAttrChecker,               step => $StepAttrChecker,
5719               value => sub {               value => sub {
5720                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5721                 ## TODO: Warn if not a valid floating point number.                 ## TODO: Warn if not a valid floating point number.
5722                   ## TODO: Warn unless min <= value <= max
5723               },               },
5724              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5725            } elsif ($state eq 'range') {            } elsif ($state eq 'range') {
5726              $checker =              $checker =
5727              {              {
5728                 accesskey => $HTMLAccesskeyAttrChecker,
5729               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5730                 on => 1, off => 1,                 on => 1, off => 1,
5731               }),               }),
# Line 5709  $Element->{$HTML_NS}->{input} = { Line 5733  $Element->{$HTML_NS}->{input} = {
5733               max => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),               max => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),
5734               min => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),               min => $GetHTMLFloatingPointNumberAttrChecker->(sub { 1 }),
5735                 ## TODO: min & max tests                 ## TODO: min & max tests
5736                   ## TODO: min <= max
5737               step => $StepAttrChecker,               step => $StepAttrChecker,
5738               value => sub {               value => sub {
5739                 ## NOTE: No restriction.                 ## NOTE: No restriction.
5740                 ## TODO: Warn if not a valid floating point number.                 ## TODO: Warn if not a valid floating point number.
5741                   ## TODO: Warn unless min <= value <= max
5742               },               },
5743              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5744            } elsif ($state eq 'checkbox' or $state eq 'radio') {            } elsif ($state eq 'checkbox' or $state eq 'radio') {
5745              $checker =              $checker =
5746              {              {
5747                 accesskey => $HTMLAccesskeyAttrChecker,
5748               checked => $GetHTMLBooleanAttrChecker->('checked'),               checked => $GetHTMLBooleanAttrChecker->('checked'),
5749                   ## ISSUE: checked value not (yet?) defined.                   ## ISSUE: checked value not (yet?) defined.
5750                   ## TODO: tests                   ## TODO: tests
# Line 5731  $Element->{$HTML_NS}->{input} = { Line 5758  $Element->{$HTML_NS}->{input} = {
5758              $checker =              $checker =
5759              {              {
5760               ## TODO: accept               ## TODO: accept
5761                 accesskey => $HTMLAccesskeyAttrChecker,
5762               required => $GetHTMLBooleanAttrChecker->('required'),               required => $GetHTMLBooleanAttrChecker->('required'),
5763              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5764            } elsif ($state eq 'submit') {            } elsif ($state eq 'submit') {
5765              $checker =              $checker =
5766              {              {
5767                 accesskey => $HTMLAccesskeyAttrChecker,
5768               action => $HTMLURIAttrChecker,               action => $HTMLURIAttrChecker,
5769                   ## ISSUE: Not yet defined.                   ## ISSUE: Not yet defined.
5770                   ## TODO: tests                   ## TODO: tests
# Line 5750  $Element->{$HTML_NS}->{input} = { Line 5779  $Element->{$HTML_NS}->{input} = {
5779               replace => $GetHTMLEnumeratedAttrChecker->({               replace => $GetHTMLEnumeratedAttrChecker->({
5780                 document => 1, values => 1,                 document => 1, values => 1,
5781               }),               }),
                  ## TODO: tests  
5782               target => $HTMLTargetAttrChecker,               target => $HTMLTargetAttrChecker,
5783                   ## ISSUE: Not yet defined.                   ## ISSUE: Not yet defined.
5784                   ## TODO: tests                   ## TODO: tests
# Line 5759  $Element->{$HTML_NS}->{input} = { Line 5787  $Element->{$HTML_NS}->{input} = {
5787            } elsif ($state eq 'image') {            } elsif ($state eq 'image') {
5788              $checker =              $checker =
5789              {              {
5790                 accesskey => $HTMLAccesskeyAttrChecker,
5791               action => $HTMLURIAttrChecker,               action => $HTMLURIAttrChecker,
5792                   ## ISSUE: Not yet defined.                   ## ISSUE: Not yet defined.
5793                   ## TODO: tests                   ## TODO: tests
5794               align => $GetHTMLEnumeratedAttrChecker->({               align => $GetHTMLEnumeratedAttrChecker->({
5795                 top => 1, middle => 1, bottom => 1, left => 1, right => 1,                 top => 1, middle => 1, bottom => 1, left => 1, right => 1,
5796               }),               }),
                  ## TODO: tests  
5797               alt => sub {               alt => sub {
5798                 my ($self, $attr) = @_;                 my ($self, $attr) = @_;
5799                 my $value = $attr->value;                 my $value = $attr->value;
# Line 5788  $Element->{$HTML_NS}->{input} = { Line 5816  $Element->{$HTML_NS}->{input} = {
5816               replace => $GetHTMLEnumeratedAttrChecker->({               replace => $GetHTMLEnumeratedAttrChecker->({
5817                 document => 1, values => 1,                 document => 1, values => 1,
5818               }),               }),
                  ## TODO: tests  
5819               src => $HTMLURIAttrChecker,               src => $HTMLURIAttrChecker,
5820                 ## TODO: There is requirements on the referenced resource.                 ## TODO: There is requirements on the referenced resource.
5821                 ## TODO: tests                 ## TODO: tests
# Line 5807  $Element->{$HTML_NS}->{input} = { Line 5834  $Element->{$HTML_NS}->{input} = {
5834                     }->{$state}) {                     }->{$state}) {
5835              $checker =              $checker =
5836              {              {
5837                 accesskey => $HTMLAccesskeyAttrChecker,
5838               ## NOTE: According to Web Forms 2.0, |input| attribute               ## NOTE: According to Web Forms 2.0, |input| attribute
5839               ## has |template| attribute to support the |add| button               ## has |template| attribute to support the |add| button
5840               ## type (as part of the repetition template feature).  It               ## type (as part of the repetition template feature).  It
# Line 5820  $Element->{$HTML_NS}->{input} = { Line 5848  $Element->{$HTML_NS}->{input} = {
5848            } else { # Text, E-mail, URL, Password            } else { # Text, E-mail, URL, Password
5849              $checker =              $checker =
5850              {              {
5851                 accesskey => $HTMLAccesskeyAttrChecker,
5852               autocomplete => $GetHTMLEnumeratedAttrChecker->({               autocomplete => $GetHTMLEnumeratedAttrChecker->({
5853                 on => 1, off => 1,                 on => 1, off => 1,
5854               }),               }),
# Line 5863  $Element->{$HTML_NS}->{input} = { Line 5892  $Element->{$HTML_NS}->{input} = {
5892               },               },
5893              }->{$attr_ln} || $checker;              }->{$attr_ln} || $checker;
5894              $checker = '' if $state eq 'password' and $attr_ln eq 'list';              $checker = '' if $state eq 'password' and $attr_ln eq 'list';
             $state = 'text';  
5895            }            }
5896          }          }
5897    
# Line 5904  $Element->{$HTML_NS}->{input} = { Line 5932  $Element->{$HTML_NS}->{input} = {
5932    
5933        $self->_attr_status_info ($attr, $status);        $self->_attr_status_info ($attr, $status);
5934      }      }
5935        
5936        $element_state->{uri_info}->{action}->{type}->{action} = 1;
5937        $element_state->{uri_info}->{datasrc}->{type}->{resource} = 1;
5938        $element_state->{uri_info}->{src}->{type}->{embedded} = 1;
5939        $element_state->{uri_info}->{template}->{type}->{resource} = 1;
5940        $element_state->{uri_info}->{ref}->{type}->{resource} = 1;
5941    },    },
   ## TODO: Tests  
5942    ## TODO: Tests for <nest/> in <input>    ## TODO: Tests for <nest/> in <input>
5943    check_start => sub {    check_start => sub {
5944      my ($self, $item, $element_state) = @_;      my ($self, $item, $element_state) = @_;
# Line 5916  $Element->{$HTML_NS}->{input} = { Line 5949  $Element->{$HTML_NS}->{input} = {
5949      } else {      } else {
5950        $self->{flag}->{has_labelable} = 2;        $self->{flag}->{has_labelable} = 2;
5951      }      }
       
     $element_state->{uri_info}->{action}->{type}->{action} = 1;  
     $element_state->{uri_info}->{datasrc}->{type}->{resource} = 1;  
     $element_state->{uri_info}->{src}->{type}->{embedded} = 1;  
     $element_state->{uri_info}->{template}->{type}->{resource} = 1;  
     $element_state->{uri_info}->{ref}->{type}->{resource} = 1;  
5952    
5953      $element_state->{id_type} = 'labelable';      $element_state->{id_type} = 'labelable';
5954    },    },
# Line 5931  $Element->{$HTML_NS}->{input} = { Line 5958  $Element->{$HTML_NS}->{input} = {
5958    
5959  ## NOTE: "authors who are nesting repetition blocks should position such  ## NOTE: "authors who are nesting repetition blocks should position such
5960  ## [repetition-block-related] buttons carefully to make clear which block a  ## [repetition-block-related] buttons carefully to make clear which block a
5961  ## button applies to.": I have no idea how this can be tested.  ## button applies to." [WF2]: I have no idea how this can be tested.
5962    
5963  $Element->{$HTML_NS}->{button} = {  $Element->{$HTML_NS}->{button} = {
5964    %HTMLPhrasingContentChecker, ## ISSUE: -interactive?    %HTMLPhrasingContentChecker, ## ISSUE: -interactive?
# Line 5984  $Element->{$HTML_NS}->{button} = { Line 6011  $Element->{$HTML_NS}->{button} = {
6011      replace => FEATURE_WF2,      replace => FEATURE_WF2,
6012      tabindex => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,      tabindex => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
6013      target => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,      target => FEATURE_HTML5_DEFAULT | FEATURE_WF2X,
6014      template => FEATURE_WF2,      template => FEATURE_HTML5_AT_RISK | FEATURE_WF2,
6015      type => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,      type => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
6016      value => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,      value => FEATURE_HTML5_DEFAULT | FEATURE_M12N10_REC,
6017    }),    }),

Legend:
Removed from v.1.149  
changed lines
  Added in v.1.150

[email protected]
ViewVC Help
Powered by ViewVC 1.1.24