W3C home > Mailing lists > Public > public-mobileok-checker@w3.org > July 2008

Re: Default Input Mode Warning

From: Francois Daoust <fd@w3.org>
Date: Wed, 16 Jul 2008 16:54:50 +0200
Message-ID: <487E0BBA.5050802@w3.org>
To: Robert Koernke <robert.koernke@unival-med.com>
CC: Jo Rabin <jrabin@mtld.mobi>, Abel Rionda <abel.rionda@fundacionctic.org>, public-mobileok-checker <public-mobileok-checker@w3.org>

Hi Robert,

Sorry for the amount of time you spent trying to set things right when 
part of the answer lies in the response from the checker being at best 
confusing.

The compiled Java version of the checker, as well as the checker 
available at http://validator.w3.org/mobile is still a beta and contains 
a number of bugs that are being fixed. There should be a new release 
soon, but it currently sometimes returns weird messages. Typically:
  'Attribute "inputmode" must be declared for element type "input"'
is wrong. The correct message should have been:
  'Attribute "inputmode" is not allowed for element type "input"'

(Note the fact that there is an error should be correct, as far as I can 
tell)

The reason for this message is likely (I can't tell, since I don't know 
what your page uses) that your page is not referencing the XHTML Basic 
1.1 DOCTYPE but some other DOCTYPE such as XHTML Strict 1.0 for 
instance. The "inputmode" attribute is only defined in XHTML Basic 1.1.

In short:
<input type="text" name="testing" inputmode="latin digits" />
... is correct when the XHTML Basic 1.1 DOCTYPE is being used
... but is invalid when another DOCTYPE is being used.

The inputmode attribute is indeed the standard equivalent to the older 
"-wap-input-format" style. You may notice if you start using the 
"inputmode" attribute that it's not widely supported among mobile Web 
browsers yet.

Hope this helps,
Francois.



Robert Koernke wrote:
> Ok...
> But I'm still not connecting how this works.  This is an aspx page.  I'm
> putting inputmode="latin digits"... however I get the same warning on
> those fields, saying that inputmode is not included.  But then I put a
> test <input> field on the page that was not a .NET control.  Like this:
> 
> <input type="text" name="testing" inputmode="latin digits" />
> 
> On this I get a different Error, and this time it is an error not a
> warning:
> 
> The document is an HTML document and it fails to validate according to
> its given DOCTYPE: Attribute "inputmode" must be declared for element
> type "input".
> 
> So when it is rendered in the checker somehow .NET is stripping out the
> inputmode field before it gets to the client maybe.  I say maybe because
> when I view the source in IE, or in Firefox I can see that "inputmode"
> attribute the same way I can see it on the 'Testing' <input> field.
> Note that I'm using this line in the codebehind:
> 
>             if (Request.UserAgent.IndexOf("MSIE") == -1)
>                 Response.ContentType = "application/xhtml+xml";
> 
> I do this because IE doesn't recognize that contenttype.  However
> Firefox does, so it would seem to me that the source I see on firefox
> should be the same that is getting to the mobilechecker.  Someone want
> to set me straight?
> 
> And of course how do I declare the attribute 'inputmode'?
> 
> -----Original Message-----
> From: Jo Rabin [mailto:jrabin@mtld.mobi] 
> Sent: Wednesday, July 16, 2008 9:37 AM
> To: Robert Koernke
> Cc: Abel Rionda; public-mobileok-checker
> Subject: Re: Default Input Mode Warning
> 
> Robert
> 
> It is defined here:
> 
> http://www.w3.org/TR/xhtml-basic/#s_inputmode
> 
> Jo
> 
> On 16/07/2008 13:23, Robert Koernke wrote:
>> You make it sound like the tag actually needs an attribute 'inputmode'
> 
>> as in '<input type="text" inputmode="latin digits"...' - I've tried
> that 
>> as well, and the checker seems to ignore that attribute, and still
> warns 
>> with the same.  I googled and googled and did find a site where the
> guy 
>> put the 'inputmode=' in his source.  But couldn't find any
> documentation 
>> on it's proper use.  Finally I found using the Style tag with the -wap
> 
>> code that I show below.  I thought that was the inputmode it was
> looking 
>> for.
>>
>>  
>>
>> -Robert
>>
>>  
>>
>>
> ------------------------------------------------------------------------
>> *From:* Abel Rionda [mailto:abel.rionda@fundacionctic.org]
>> *Sent:* Wednesday, July 16, 2008 4:10 AM
>> *To:* Robert Koernke
>> *Cc:* public-mobileok-checker
>> *Subject:* RE: Default Input Mode Warning
>>
>>  
>>
>> Hi,
>>
>>  
>>
>> According to mobileOK test document [1], only inputmode attribute is 
>> considered. Furthermore, WAP CSS
>>
>> styles are out of scope (only CSS Level 1) .
>>
>>  
>>
>> [1] http://www.w3.org/TR/mobileOK-basic10-tests/#DEFAULT_INPUT_MODE
>>
>>  
>>
>> Regards,
>>
>> Abel.
>>
>>  
>>
>>
> ------------------------------------------------------------------------
>> *De:* public-mobileok-checker-request@w3.org 
>> [mailto:public-mobileok-checker-request@w3.org] *En nombre de *Robert 
>> Koernke
>> *Enviado el:* lunes, 14 de julio de 2008 19:22
>> *Para:* public-mobileok-checker@w3.org
>> *Asunto:* Default Input Mode Warning
>>
>>  
>>
>> I still get this error:
>>
>> 'There is no inputmode attribute on this text entry element'
>>
>> |<input class="mobilenumeric" id="tlogin" maxlength="10" name="tlogin"
> 
>> size="10" type="text"/>|
>>
>>  
>>
>> Except the class named above 'mobilenumeric' has:
>>
>> .mobilenumeric
>>
>> {
>>
>>       -wap-input-format: "*N";
>>
>> }
>>
>>  
>>
>> Also I've tested that this works on the mobile device.  Yet why do I 
>> still get the above warning?  Because it's in the stylesheet and not 
>> actually on the actual tag?
>>
>>  
>>
>> Robert Koernke
>>
>> Application Developer
>>
>>  
>>
> 
> 
> 
Received on Wednesday, 16 July 2008 14:55:32 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 16 July 2008 14:55:33 GMT