- From: Michael[tm] Smith <mike@w3.org>
- Date: Tue, 7 Jul 2015 20:52:53 +0900
- To: public-i18n-core@w3.org
- Cc: Richard Ishida <ishida@w3.org>, Jon Lee <jonlee@apple.com>, Edward O’Connor <eoconnor@apple.com>
- Message-ID: <20150707115253.GE5369@sideshowbarker.net>
The Web Notifications WG is poised to take the Web Notifications spec at http://www.w3.org/TR/notifications to Rec soon, and there are two i18n-related points with regard to current implementations that it’s appropriate to give the I18N Core WG a heads-up on at this time. Here are details about the two points 1. Step 4 at http://www.w3.org/TR/notifications/#dom-notification states UA requirement with regard to the value of the Notification.lang property, whose purpose is to convey the language of a notification. That step reads, “If options’s lang is a valid BCP 47 language tag, or the empty string, set notification’s language to options’s lang, or set it to the empty string otherwise.” Restated, if a Web application tries to set a “lang” value that is not a valid BCP 47 language tag, then according to the spec, the UA should set the actual “lang” property to the empty string. Try the following test in Firefox and Chrome and Safari (the only UAs the currently implement the spec). http://w3c-test.org/notifications/notification-lang.html What you’ll find is that if you use a valid BCP 47 language tag, the UAs behave as you would expect, and set the notification’s language value to the BCP 47 language tag you indicated. However, if you use a string that is an *invalid* BCP 47 language tag, no UA follows the spec requirement to set the notification’s language value to the empty string. Instead it’s all just basically “garbage in, garbage out”: If you use the string “Latn-de”, the UAs will set the notification’s lang value to exactly that—without checking whether it’s a valid BCP 47 value. So this isn’t really a problem in the normal case, since if Web developers have their Web applications use valid BCP 47 language tags to begin with, everything will work as expected. (And if they set a value that’s not a valid BCP 47 language tag, things aren’t going to work as expected for end users—regardless of what UAs do with it.) So it would seem to be sufficient to address the state of the UA implementations on this point just by adding a non-normative note to the space saying that UAs currently don’t check whether the “lang” value is a valid BCP 47 language tag, and don’t set the “lang” value to the empty string if they’re given an invalid BCP 47 language tag to process. 2. The “Direction” section http://www.w3.org/TR/notifications/#direction-0 of the spec has a somewhat soft requirement that the platform-level widgets that actually display the text of notifications should display that text in a right-to-left direction if a notification’s “dir” property is set to indicate that. Try the following test in Firefox and Chrome and Safari (the only UAs the currently implement the spec). http://w3c-test.org/notifications/notification-dir-rtl-manual.html What I believe you’ll find is that on no platforms where you test it is the text rendered in a right-to-left direction. (Or depending on how you have your environment set up, you may actually find otherwise, I dunno. But at least in my testing, I couldn’t get the text of any notification on any platform to display in a right-to-left direction.) All that said, it’s not clear to me that the UAs aren’t in conformance with this spec on this, because the only language in the spec that comes anywhere close to stating a hard requirement here is the statement, “User agents are expected to honor the Unicode semantics of the text of a notification’s title and body.”, which is of course not clearly using RFC 2119 language for stating an actual requirement, and even if it did state it using a “must” it would still not be clearly stating anything exactly and specifically that UAs must do. Part of the reason for that is, the nature of the notifications defined by this spec is that they are so-called “desktop notifications” which aren’t displayed within a Web document or even within a browser window but are instead displayed outside the browser, as platform-level notifications, in the same way that notifications from other applications running on the platform are displayed. So especially depending on the particular platform a UA is running on, the UA may not have much control at all over the details of how the notification is displayed. That makes this behavior somewhat of a UI issue, and we normally try to have specs not define UI requirements, so that limits what the spec can say (and try to enforce) in this case. So it would seem to be sufficient to address the state of the UA implementations on this point just by adding a non-normative note to the space telling Web developers that the current state of platforms which display Web notifications is such that they can’t expect the text of notifications to be displayed right-to-left on every platform. —Mike -- Michael[tm] Smith https://people.w3.org/mike
Received on Tuesday, 7 July 2015 11:53:21 UTC