-
Notifications
You must be signed in to change notification settings - Fork 11
/
ED-coremob-20121222.html
616 lines (500 loc) · 75 KB
/
ED-coremob-20121222.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Core Mobile Web Platform — 2012</title>
<style>
table {border-collapse: collapse; border: 1px solid #bec9d9}
td, th {padding: 3px 0.5em; border-left:1px solid black; border-right: 1px solid black; border-bottom:1px solid #E2EDFE;}
tr th[colspan] {color: #005A9C; background-color: #FEEDE2; text-align: center}
th {color: #005A9C; background-color: #E2EDFE; font-weight: normal;border-bottom:1px solid #BEC9D9;}
tbody tr th {text-align: left;}
td.nb { font-size: smaller;}
.rec, .pr {color: #005A9C; background-color: #99EE99}
.ext {background-color: #FFFFFF}
.cr {color: #005A9C; background-color: #EEEE99}
.wd {color: #005A9C; background-color: #EE9999}
.ed {color: #005A9C; background-color: #FF7777}
</style>
<style>/*****************************************************************
* ReSpec 3 CSS
* Robin Berjon - http://berjon.com/
*****************************************************************/
/* --- INLINES --- */
em.rfc2119 {
text-transform: lowercase;
font-variant: small-caps;
font-style: normal;
color: #900;
}
h1 acronym, h2 acronym, h3 acronym, h4 acronym, h5 acronym, h6 acronym, a acronym,
h1 abbr, h2 abbr, h3 abbr, h4 abbr, h5 abbr, h6 abbr, a abbr {
border: none;
}
dfn {
font-weight: bold;
}
a.internalDFN {
color: inherit;
border-bottom: 1px solid #99c;
text-decoration: none;
}
a.externalDFN {
color: inherit;
border-bottom: 1px dotted #ccc;
text-decoration: none;
}
a.bibref {
text-decoration: none;
}
cite .bibref {
font-style: normal;
}
code {
color: #ff4500;
}
/* --- --- */
ol.algorithm { counter-reset:numsection; list-style-type: none; }
ol.algorithm li { margin: 0.5em 0; }
ol.algorithm li:before { font-weight: bold; counter-increment: numsection; content: counters(numsection, ".") ") "; }
/* --- TOC --- */
.toc a, .tof a {
text-decoration: none;
}
a .secno, a .figno {
color: #000;
}
ul.tof, ol.tof {
list-style: none outside none;
}
.caption {
margin-top: 0.5em;
font-style: italic;
}
/* --- TABLE --- */
table.simple {
border-spacing: 0;
border-collapse: collapse;
border-bottom: 3px solid #005a9c;
}
.simple th {
background: #005a9c;
color: #fff;
padding: 3px 5px;
text-align: left;
}
.simple th[scope="row"] {
background: inherit;
color: inherit;
border-top: 1px solid #ddd;
}
.simple td {
padding: 3px 10px;
border-top: 1px solid #ddd;
}
.simple tr:nth-child(even) {
background: #f0f6ff;
}
/* --- DL --- */
.section dd > p:first-child {
margin-top: 0;
}
.section dd > p:last-child {
margin-bottom: 0;
}
.section dd {
margin-bottom: 1em;
}
.section dl.attrs dd, .section dl.eldef dd {
margin-bottom: 0;
}
</style><style>/* --- ISSUES/NOTES --- */
div.issue-title, div.note-title {
padding-right: 1em;
min-width: 7.5em;
color: #b9ab2d;
}
div.issue-title { color: #e05252; }
div.note-title { color: #52e052; }
div.issue-title span, div.note-title span {
text-transform: uppercase;
}
div.note, div.issue {
margin-top: 1em;
margin-bottom: 1em;
}
.note > p:first-child, .issue > p:first-child { margin-top: 0 }
.issue, .note {
padding: .5em;
border-left-width: .5em;
border-left-style: solid;
}
div.issue, div.note {
padding: 0.5em;
margin: 1em 0;
position: relative;
clear: both;
}
span.note, span.issue { padding: .1em .5em .15em; }
.issue {
border-color: #e05252;
background: #fbe9e9;
}
.note {
border-color: #52e052;
background: #e9fbe9;
}
</style><link rel="stylesheet" href="http://www.w3.org/community/src/css/spec/cg-draft.css"><!--[if lt IE 9]><script src='http://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--><!--[if lt IE 9]><script src='http://www.w3.org/2008/site/js/html5shiv.js'></script><![endif]--></head>
<body><div class="head">
<p>
<a href="http://www.w3.org/"><img width="72" height="48" src="http://www.w3.org/Icons/w3c_home" alt="W3C"></a>
</p>
<h1 class="title" id="title">Core Mobile Web Platform — 2012</h1>
<h2 id="draft-community-group-specification-22-december-2012">Draft Community Group Specification 22 December 2012</h2>
<dl>
<dt>Latest editor's draft:</dt>
<dd><a href="http://coremob.github.com/coremob-2012/">http://coremob.github.com/coremob-2012/</a></dd>
<dt>Previous editor's draft:</dt>
<dd><a href="http://coremob.github.com/coremob-2012/ED-coremob-20120924.html">http://coremob.github.com/coremob-2012/ED-coremob-20120924.html</a></dd>
<dt>Editors:</dt>
<dd><a href="http://berjon.com/">Robin Berjon</a>, <a href="http://robineko.com/">Robineko</a> (until September 2012)</dd>
<dd><span>Tobie Langel</span>, <a href="http://facebook.com/">Facebook</a></dd>
<dd><span>Jo Rabin</span>, <a href="http://linguafranca.org">linguafranca.org</a> (from November 2012)</dd>
</dl>
<p class="copyright">
<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> ©
2012
the Contributors to the Core Mobile Web Platform — 2012 Specification, published by the
<a href="http://www.w3.org/community/coremob/">Core Mobile Web Platform Community Group</a> under the
<a href="https://www.w3.org/community/about/agreements/cla/">W3C Community Contributor License Agreement (CLA)</a>.
A human-readable <a href="http://www.w3.org/community/about/agreements/cla-deed/">summary</a> is available.
</p>
<hr>
</div><section id="abstract" class="introductory"><h2>Abstract</h2><p>The W3C Core Mobile Web Platform Community Group (Coremob) was established with the objective of helping to make the Web a compelling platform for developing modern mobile applications. The motivation for that is the widespread view that the Web does not represent a compelling platform for mobile applications today.
</p><p>This document presents a small number of simple mobile Web application use cases. It goes on to list features that the underlying mobile Web platform needs to offer to support those use cases. It then lists technology standards (primarily W3C Recommendations) that describe those features - and also notes the current state of development of such specifications, noting also where such specification do not at present exist.
</p><p>The purpose of the document is to promote understanding of which areas of Web technology are in need of development, and to encourage prioritization of those areas for specification, implementation and testing.
</p><p>Other aspects of Coremob's work, which includes the collation and specification of test suites to assess conformance to referenced standards, and the specification of a framework within which such conformance testing might be assessed are referenced.
</p></section><section id="sotd" class="introductory"><h2>Status of This Document</h2>
<p>
This specification was published by the <a href="http://www.w3.org/community/coremob/">Core Mobile Web Platform Community Group</a>.
It is not a W3C Standard nor is it on the W3C Standards Track.
Please note that under the
<a href="https://www.w3.org/community/about/agreements/cla/">W3C Community Contributor License Agreement (CLA)</a>
there is a limited opt-out and other conditions apply.
Learn more about
<a href="http://www.w3.org/community/">W3C Community and Business Groups</a>.
</p>
<p>Comments on this document are not only welcomed but are actively solicited and should be made on the <a href="http://lists.w3.org/Archives/Public/public-coremob/">[email protected] mailing list</a>. The source code is available on <a href="https://github.com/coremob/coremob-2012">GitHub</a>.
</p>
</section><section id="toc"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li class="tocline"><a href="#introduction" class="tocxref"><span class="secno">1. </span> Introduction</a><ul class="toc"><li class="tocline"><a href="#audience" class="tocxref"><span class="secno">1.1 </span>Audience</a></li><li class="tocline"><a href="#goals" class="tocxref"><span class="secno">1.2 </span>Goals</a></li><li class="tocline"><a href="#methodology" class="tocxref"><span class="secno">1.3 </span>Methodology</a></li><li class="tocline"><a href="#purpose-of-this-document" class="tocxref"><span class="secno">1.4 </span>Purpose of this Document</a></li><li class="tocline"><a href="#aspirational-nature-of-the-document" class="tocxref"><span class="secno">1.5 </span>Aspirational nature of the document</a></li><li class="tocline"><a href="#mobile-focus" class="tocxref"><span class="secno">1.6 </span>Mobile Focus</a></li><li class="tocline"><a href="#other-aspects-of-the-cg-s-work" class="tocxref"><span class="secno">1.7 </span>Other aspects of the CG's work</a></li><li class="tocline"><a href="#structure" class="tocxref"><span class="secno">1.8 </span>Structure</a></li></ul></li><li class="tocline"><a href="#use-cases" class="tocxref"><span class="secno">2. </span> Use cases</a><ul class="toc"><li class="tocline"><a href="#take-pictures-in-a-remote-area-without-network-coverage" class="tocxref"><span class="secno">2.1 </span> Take pictures in a remote area without network coverage</a></li><li class="tocline"><a href="#record-voice-memos" class="tocxref"><span class="secno">2.2 </span> Record voice memos</a></li><li class="tocline"><a href="#play-a-2d-game" class="tocxref"><span class="secno">2.3 </span> Play a 2D Game</a></li><li class="tocline"><a href="#find-the-nearest-subway-station" class="tocxref"><span class="secno">2.4 </span> Find the nearest subway station</a></li><li class="tocline"><a href="#read-an-online-magazine" class="tocxref"><span class="secno">2.5 </span> Read an online magazine</a></li><li class="tocline"><a href="#view-a-regular-website" class="tocxref"><span class="secno">2.6 </span> View a regular website</a></li><li class="tocline"><a href="#browse-a-responsive-website" class="tocxref"><span class="secno">2.7 </span> Browse a responsive website</a></li><li class="tocline"><a href="#bookmarking-a-web-application" class="tocxref"><span class="secno">2.8 </span> Bookmarking a Web application</a></li></ul></li><li class="tocline"><a href="#derived-requirements" class="tocxref"><span class="secno">3. </span> Derived Requirements</a><ul class="toc"><li class="tocline"><a href="#general" class="tocxref"><span class="secno">3.1 </span> General</a></li><li class="tocline"><a href="#app-specific" class="tocxref"><span class="secno">3.2 </span> App-specific</a></li><li class="tocline"><a href="#storage" class="tocxref"><span class="secno">3.3 </span> Storage</a></li><li class="tocline"><a href="#multimedia" class="tocxref"><span class="secno">3.4 </span> Multimedia</a></li><li class="tocline"><a href="#sensors" class="tocxref"><span class="secno">3.5 </span> Sensors</a></li><li class="tocline"><a href="#networking" class="tocxref"><span class="secno">3.6 </span> Networking</a></li></ul></li><li class="tocline"><a href="#specifications-which-address-the-derived-requirements" class="tocxref"><span class="secno">4. </span> Specifications which address the derived requirements</a><ul class="toc"><li class="tocline"><a href="#markup" class="tocxref"><span class="secno">4.1 </span> Markup</a></li><li class="tocline"><a href="#style" class="tocxref"><span class="secno">4.2 </span> Style</a></li><li class="tocline"><a href="#scripting" class="tocxref"><span class="secno">4.3 </span> Scripting</a></li><li class="tocline"><a href="#network" class="tocxref"><span class="secno">4.4 </span> Network</a></li></ul></li><li class="tocline"><a href="#requirements-only-partially-addressed-by-existing-specifications" class="tocxref"><span class="secno">5. </span> Requirements only partially addressed by existing specifications</a><ul class="toc"><li class="tocline"><a href="#pointer-events" class="tocxref"><span class="secno">5.1 </span> Pointer events</a></li><li class="tocline"><a href="#offline" class="tocxref"><span class="secno">5.2 </span> Offline</a></li><li class="tocline"><a href="#responsive-images" class="tocxref"><span class="secno">5.3 </span> Responsive Images</a></li></ul></li><li class="tocline"><a href="#unaddressed-requirements" class="tocxref"><span class="secno">6. </span> Unaddressed requirements</a><ul class="toc"><li class="tocline"><a href="#application-meta-data" class="tocxref"><span class="secno">6.1 </span> Application meta-data</a></li><li class="tocline"><a href="#momentum-and-infinite-scrolling" class="tocxref"><span class="secno">6.2 </span> Momentum and infinite scrolling</a></li><li class="tocline"><a href="#screen-orientation" class="tocxref"><span class="secno">6.3 </span> Screen Orientation</a></li><li class="tocline"><a href="#chromeless-mode" class="tocxref"><span class="secno">6.4 </span> Chromeless Mode</a></li></ul></li><li class="tocline"><a href="#quality-of-implementation" class="tocxref"><span class="secno">7. </span> Quality of Implementation</a><ul class="toc"><li class="tocline"><a href="#qoi-of-the-audio-element" class="tocxref"><span class="secno">7.1 </span> QoI of the <code>audio</code> element</a></li><li class="tocline"><a href="#performance-of-the-canvas-element" class="tocxref"><span class="secno">7.2 </span> Performance of the <code>canvas</code> element</a></li><li class="tocline"><a href="#performance-of-scrolling-transitions-and-animations" class="tocxref"><span class="secno">7.3 </span> Performance of scrolling, transitions, and animations</a></li><li class="tocline"><a href="#dedicated-form-controls" class="tocxref"><span class="secno">7.4 </span> Dedicated form controls</a></li></ul></li><li class="tocline"><a href="#conformance" class="tocxref"><span class="secno">8. </span> Conformance</a></li><li class="tocline"><a href="#acknowledgements" class="tocxref"><span class="secno">A. </span>Acknowledgements</a></li><li class="tocline"><a href="#references" class="tocxref"><span class="secno">B. </span>References</a><ul class="toc"><li class="tocline"><a href="#informative-references" class="tocxref"><span class="secno">B.1 </span>Informative references</a></li></ul></li></ul></section><section id="introduction"><!--OddPage--><h2><span class="secno">1. </span> Introduction</h2><p>Quoting from its <a href="http://www.w3.org/community/coremob/charter/">charter</a>:
</p><blockquote>
<p>The goal of the Core Mobile Web Platform (Coremob) Community Group (CG) is to accelerate the adoption of the Mobile Web as a compelling platform for the development of modern mobile Web applications. In order to achieve this mission, the CG brings developers, equipment manufacturers, browser vendors, operators and other relevant members of the industry together to:
</p>
<ol>
<li>Agree on core features developers can depend on. These will be defined by reference to a variety of other specifications from the W3C and other standards bodies.</li>
<li>Compile related conformance test suites.</li>
<li>Provide to W3C (and non-W3C) groups use cases, scenarios, and other input to drive successful mobile deployment.</li>
</ol>
</blockquote><p>This document is the initial output of the Community Group. Its focus is items 1 and 3 from the CG charter above.
</p><p>The following sections serve to contextualize the role of this document against the CG charter.
</p><section id="audience"><h3><span class="secno">1.1 </span>Audience</h3><p>The primary audience for this document is standardization groups within the W3C as well as equipment manufacturers and browser vendors. The CG also intends it to be of interest to others in its chartered constituency, especially developers, for feedback on the selection of use cases and the derivation of technology requirements from those use cases.
</p></section><section id="goals"><h3><span class="secno">1.2 </span>Goals</h3><p>In respect of CG Charter item 1. above, developers should be able to rely upon a set of Web technologies being consistently present and interoperably implemented across a wide range of browsers.
</p><p>It is not reasonable or practical to think that all technology specifications advance at a similar rate or that all are of equally widespread utility. In addition, some depend on others. Consequently, the intention of the Community Group is to produce a number descriptions of subsets of Web platform technology specifications, which will provide for increasingly sophisticated application use cases.
</p><p>This document is the first in such a series of descriptions of subsets of Web platform technologies, and provides for a limited, or base set, of mobile application use cases.
</p></section><section id="methodology"><h3><span class="secno">1.3 </span>Methodology</h3><p>The use cases chosen reflect a selection of popular applications that have been created using "native" techniques. Although this set of use cases is limited, and the functionality implied by them is (relatively speaking) simple, the set of functionalities is nonetheless described as being "aspirational" because it goes beyond the state of implementation by most current browsers, and indeed goes beyond the current state of specification of some of those features - see below <a href="#aspirational-nature-of-the-document">Aspirational nature of the document</a> for a discussion of the aspirational aspect, as construed in this revision.
</p><p>Having identified features of the Web platform that are required to fulfill the use cases it is then possible to identify a set of technology specifications (or to note the absence of suitable specifications) that specify those features.
</p><p>Further, having identified a set of specifications, it is then possible to identify a set of tests (or note the absence of such tests) that can be used to assess conformance with the identified specifications and also to propose a test environment in which those tests can be carried out.
</p></section><section id="purpose-of-this-document"><h3><span class="secno">1.4 </span>Purpose of this Document</h3><p>This document, as mentioned above, sets out the initial limited set of use cases; it derives Web platform technology requirements from them and it identifies technology specifications, at various states of maturity, that fulfill those requirements. It does not identify tests or test suites that match those technology specifications, which will be part of subsequent work of the group.
</p><p>Since standardization work is required to complete the set of technologies required to fulfill the various use cases the document identifies, one of the purposes of the document is to point out that increased coordination between the groups that create standards would be beneficial in order to create a more coherent and pragmatically useful mobile Web application platform.
</p><p>The intention of this document and subsequent editions, in regard of developers, is to solicit feedback on the use cases and on specific technology areas that are problematic, when used in a mobile context. Developers are especially encouraged to contribute to the work of the CG, since it is hoped that such participation will reduce future maintenance and development costs for them and will also provide a means by which developers' voices may be heard by constituencies that need to hear them.
</p></section><section id="aspirational-nature-of-the-document"><h3><span class="secno">1.5 </span>Aspirational nature of the document</h3><p>To be clear, the CG is not expressing the judgment that it is not possible to use the Web platform to build a wide variety of application that can be used in a mobile context. Indeed, there are applications that can be built on the Web platform that work well in a mobile delivery context. The group notes, though, that those applications are not usually specifically mobile in their use cases and tend to be similar in nature to applications that have desktop use cases as much as they have mobile use cases.
</p><p>Further, the view that it is already practical to develop effective mobile Web applications is expressed with the caveat that there are many "quality of implementation" issues that developers may encounter. For example, the frame rate achievable when developing mobile games may not be sufficient, in some cases, and as another example the synchronization of playing sounds may not be adequate.
</p></section><section id="mobile-focus"><h3><span class="secno">1.6 </span>Mobile Focus</h3><p>Mobile devices often have capabilities (such as a camera) or circumstances of use (such as periods off line, or frequent periods with low bandwidth for data transfer) that make mobile both a more rewarding environment for creation of applications and a more difficult environment for such implementations too.
</p><p>With the rapid increase in uptake of use of mobile devices, both in developed markets and in less developed markets (perhaps as the only means of Web access in those markets), the CG believes that closing the gap between what can be achieved using Web technology on mobile and what can be achieved using "native application implementations" needs to narrow, urgently.
</p></section><section id="other-aspects-of-the-cg-s-work"><h3><span class="secno">1.7 </span>Other aspects of the CG's work</h3><p>Other aspects of the CG's work, as mentioned in its charter, continue in parallel to the development of this document. Those activities include a "Gap analysis" of where there are existing test suites relevant to the technologies identified in this document, as well as discussion of a Test Framework within which to execute tests of the conformance of implementations of technologies identified here.
</p><p>The CG's <a href="http://www.w3.org/community/coremob/">Web site</a> and <a href="http://www.w3.org/community/coremob/wiki/">Wiki</a> contain links to various aspects of the group's work.
</p></section><section id="structure"><h3><span class="secno">1.8 </span>Structure</h3><p>The document has the following structure:
</p><ol>
<li><p>Introduction</p>
<p>This section, containing information about the document, its history and its scope.</p>
</li>
<li><p>Use Cases</p>
<p>Discusses the Use Cases that have been used to derive the requirements of Web technologies.</p>
</li>
<li><p>Required Technologies</p>
<p>Discusses in abstract terms what technologies are needed to support the use cases.</p>
</li>
<li><p>Specifications Selected</p>
<p>Discusses the specifications selected to implement "required technologies".</p>
</li>
<li><p>Missing Specifications</p>
<p>Discusses technologies needed but not specified.</p>
</li>
<li><p>Quality of Implementation</p>
<p>Discusses aspects of implementation of some of the selected technologies</p>
</li>
</ol></section></section><section id="use-cases"><!--OddPage--><h2><span class="secno">2. </span> Use cases</h2><p> The basis of selection for the use cases is a <a href="https://docs.google.com/spreadsheet/ccc?key=0AuIhlK0fCwP4dEFPR1pUWHk1QVczcV9xbFAtX19CMXc#gid=1">survey</a> of the top native applications found in mobile application stores. The requirements of each applications were assessed and prioritized depending on how hard bringing that technology to the Open Web Platform would be, and how many applications it would unlock. For example, an API to read the battery status was ruled out because there was only one application relying on it… and its only purpose was to provide information on the battery status (something best done at the OS level anyway). Support for WebGL [<cite><a class="bibref" href="#bib-WEBGL">WEBGL</a></cite>] was similarly ruled out because only a very small number of games (3D games are rarer on mobile then they are on desktop) were unlocked by it, and it was known to be challenging to implement.
</p><p> To this basis we added the obvious interoperability requirements with existing Web content and features web developers are accustomed to rely on.
</p><p> The following use cases were designed to illustrate the requirements defined above and listed in <a href="#derived-requirements" class="sectionRef sec-ref">section 3. Derived Requirements</a> and are by no means exhaustive.
</p><section id="take-pictures-in-a-remote-area-without-network-coverage"><h3><span class="secno">2.1 </span> Take pictures in a remote area without network coverage</h3><p> Jenna is hiking in a remote area without network coverage. She takes high quality pictures using a Web application. The pictures are stored locally. She decides to post-process some of the pictures she took by applying ready-made filters. She is able to continue taking pictures while the filters are applied. When she returns to an area with better network coverage, her pictures are updated to a remote server. While the upload is going on in the background she can continue taking pictures or can browse her previous shots to select the ones she wants to share with her friends.
</p><p> Derived requirements:
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-app-look" class="reqRef">Req. 8</a>,
<a href="#req-app-feel" class="reqRef">Req. 9</a>,
<a href="#req-fast-scroll" class="reqRef">Req. 10</a>,
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-camera-access" class="reqRef">Req. 15</a>,
<a href="#req-pic-manipulation" class="reqRef">Req. 17</a>,
<a href="#req-file-upload" class="reqRef">Req. 23</a>.
</p></section><section id="record-voice-memos"><h3><span class="secno">2.2 </span> Record voice memos</h3><p> While on his morning commute, John records a short voice memo using a Web application. As he is offline, the audio file is stored locally. When he reaches the office, the audio file is asynchronously uploaded to the application's servers where it is transcribed.
</p><p> Derived requirements:
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-app-look" class="reqRef">Req. 8</a>,
<a href="#req-app-feel" class="reqRef">Req. 9</a>,
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-microphone-access" class="reqRef">Req. 16</a>,
<a href="#req-file-upload" class="reqRef">Req. 23</a>.
</p></section><section id="play-a-2d-game"><h3><span class="secno">2.3 </span> Play a 2D Game</h3><p> Fantastic Rafaela Sis' is a platform game the goal of which is to save an imprisoned prince. This is done by navigating a character, Rafaela, across various levels from left to right. Each levels consist of a series of obstacles and enemies that the player has to avoid (by jumping over, shooting, etc). The character is controlled by tilting the device. Consequently, the game must be locked in landscape mode to avoid auto-rotation of the viewport interfering with the game play. It has a soundtrack per level and various sound effects.
</p><p> Derived requirements:
<a href="#req-orientation-lock" class="reqRef">Req. 11</a>,
<a href="#req-fullscreen" class="reqRef">Req. 12</a>,
<a href="#req-framerate" class="reqRef">Req. 18</a>,
<a href="#req-audio-playback" class="reqRef">Req. 19</a>,
<a href="#req-position" class="reqRef">Req. 21</a>.
</p></section><section id="find-the-nearest-subway-station"><h3><span class="secno">2.4 </span> Find the nearest subway station</h3><p> Jo uses public transportation to visit his clients scattered around town. In order to find his way around he relies on a Web application that is able to locate him on a map, display the closest subway station and indicate in which direction he should walk to find it.
</p><p> Derived requirements:
<a href="#req-position" class="reqRef">Req. 21</a>,
<a href="#req-geolocation" class="reqRef">Req. 22</a>.
</p></section><section id="read-an-online-magazine"><h3><span class="secno">2.5 </span> Read an online magazine</h3><p> Jane likes to read the news on her commute to work. She's uses a Web application on her tablet that she updated before leaving home. While on the subway, she's able to read the daily news, watch a video of the highlight's of yesterday's football match and listen to the magazine's weekly political podcast. Jane is able to navigate through the application using the back and forward button of her browser. And when she finds an article she would like to share with her friend, Sam, she is able to copy and paste the URL into an email which she'll send when arriving at work.
</p><p> Derived requirements:
<a href="#req-rich-fonts" class="reqRef">Req. 4</a>,
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-history" class="reqRef">Req. 7</a>,
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-data-storage" class="reqRef">Req. 14</a>,
<a href="#req-audio-playback" class="reqRef">Req. 19</a>,
<a href="#req-video-playback" class="reqRef">Req. 20</a>,
<a href="#req-url-schemes" class="reqRef">Req. 24</a>.
</p></section><section id="view-a-regular-website"><h3><span class="secno">2.6 </span> View a regular website</h3><p> Anette is using her mobile device to access her bank's website. Although her bank has a dedicated native application <em>and</em> a mobile version of its site, the information she's looking for is only available on the main site. She's nonetheless able to consult it because her mobile device supports the same set of Web standards her desktop browser does, and is capable of displaying that information despite the difference in screen size and pixel density.
</p><p> Derived requirements:
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>.
</p></section><section id="browse-a-responsive-website"><h3><span class="secno">2.7 </span> Browse a responsive website</h3><p> John is en route for his dentist appointment. He's late, forget to write down the dentist's phone number, and has very poor network connection. Thankfully, the dentist has a responsive website which displays very quickly on John's mobile device. He's able to quickly find the dentist's phone number and call him.
</p><p> Derived requirements:
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>,
<a href="#req-responsive" class="reqRef">Req. 3</a>,
<a href="#req-url-schemes" class="reqRef">Req. 24</a>.
</p></section><section id="bookmarking-a-web-application"><h3><span class="secno">2.8 </span> Bookmarking a Web application</h3><p> Paul uses the same Web mail client on various devices and user agents. He would like to bookmark it so that it is easily recognizable across his different devices yet blends in with how other applications are portrayed in the given environment.
</p><p> Derived requirements:
<a href="#req-meta-data" class="reqRef">Req. 5</a>.
</p></section></section><section id="derived-requirements"><!--OddPage--><h2><span class="secno">3. </span> Derived Requirements</h2><p> The following requirements are derived from the use cases described in <a href="#use-cases" class="sectionRef sec-ref">section 2. Use cases</a>.
</p><section id="general"><h3><span class="secno">3.1 </span> General</h3><p id="req-interoperability" class="req"><a href="#req-interoperability">Req. 1</a>: A User Agent <em class="rfc2119" title="must">must</em> support technology commonly available on desktop browsers, so that websites and applications designed for desktop are still usable on mobile.</p><p id="req-mobile-specific" class="req"><a href="#req-mobile-specific">Req. 2</a>: The User Agent <em class="rfc2119" title="must">must</em> be able to display content specifically targeted at mobile devices.</p><p id="req-responsive" class="req"><a href="#req-responsive">Req. 3</a>: It <em class="rfc2119" title="must">must</em> be possible to request for the User Agent to download and display different content depending on device or User Agent properties such as screen size, pixel density, etc.</p><p id="req-rich-fonts" class="req"><a href="#req-rich-fonts">Req. 4</a>: The User Agent <em class="rfc2119" title="must">must</em> support rich typography including using downloadable fonts.</p></section><section id="app-specific"><h3><span class="secno">3.2 </span> App-specific</h3><p id="req-meta-data" class="req"><a href="#req-meta-data">Req. 5</a>: It <em class="rfc2119" title="must">must</em> be possible to provide the User Agent with meta-data a such as the application's name, icon, etc.</p><p id="req-offline" class="req"><a href="#req-offline">Req. 6</a>: It <em class="rfc2119" title="must">must</em> be possible to make an application available offline.</p><p id="req-history" class="req"><a href="#req-history">Req. 7</a>: The User Agent <em class="rfc2119" title="must">must</em> allow the application developer to define URLs for chosen resources (for example for bookmarking or sharing) and to manipulate session history for single page applications.</p><p id="req-app-look" class="req"><a href="#req-app-look">Req. 8</a>: It <em class="rfc2119" title="must">must</em> be possible for Web application user interfaces to occupy all the screen space yet adapt to different screen sizes without leaving unused space or overflowing.</p><p id="req-app-feel" class="req"><a href="#req-app-feel">Req. 9</a>: It <em class="rfc2119" title="must">must</em> be possible for Web application user interfaces to transition smoothly from one state to another.</p><p id="req-fast-scroll" class="req"><a href="#req-fast-scroll">Req. 10</a>: It <em class="rfc2119" title="must">must</em> be possible to scroll smoothly through a large body of content.</p><p id="req-orientation-lock" class="req"><a href="#req-orientation-lock">Req. 11</a>: A Web application might be designed to be used strictly in portrait or landscape mode. It <em class="rfc2119" title="must">must</em> be possible to signal this preference to the User Agent.</p><p id="req-fullscreen" class="req"><a href="#req-fullscreen">Req. 12</a>: It <em class="rfc2119" title="must">must</em> be possible for an application to signal to the User Agent that it wants to operate fullscreen and not inside of the browser's chrome.</p></section><section id="storage"><h3><span class="secno">3.3 </span> Storage</h3><p id="req-file-storage" class="req"><a href="#req-file-storage">Req. 13</a>: It <em class="rfc2119" title="must">must</em> be possible to store files locally and retrieve them without requiring further permission from the user.</p><p id="req-data-storage" class="req"><a href="#req-data-storage">Req. 14</a>: It <em class="rfc2119" title="must">must</em> be possible to asynchronously store and retrieve large, structured persistent data sets.</p></section><section id="multimedia"><h3><span class="secno">3.4 </span> Multimedia</h3><p id="req-camera-access" class="req"><a href="#req-camera-access">Req. 15</a>: It <em class="rfc2119" title="must">must</em> be possible to take pictures using the device's camera. This <em class="rfc2119" title="must">must</em> be done in such a way that the user's security and privacy is respected.</p><p id="req-microphone-access" class="req"><a href="#req-microphone-access">Req. 16</a>: It <em class="rfc2119" title="must">must</em> be possible to record audio clips using the device's microphone. This <em class="rfc2119" title="must">must</em> be done in such a way that the user's security and privacy is respected.</p><p id="req-pic-manipulation" class="req"><a href="#req-pic-manipulation">Req. 17</a>: It <em class="rfc2119" title="must">must</em> be possible to programmatically manipulate a picture so as to crop it, apply filters to it, etc. and save the result of these manipulations. This <em class="rfc2119" title="must not">must not</em> block the UI thread.</p><p id="req-framerate" class="req"><a href="#req-framerate">Req. 18</a>: It <em class="rfc2119" title="must">must</em> be possible to draw multiple animated sprites at 30FPS in fullscreen mode.</p><p id="req-audio-playback" class="req"><a href="#req-audio-playback">Req. 19</a>: Multiple sound files <em class="rfc2119" title="must">must</em> be able to play simultaneously with minimal latency.</p><p id="req-video-playback" class="req"><a href="#req-video-playback">Req. 20</a>: The User Agent <em class="rfc2119" title="must">must</em> support video playback.</p></section><section id="sensors"><h3><span class="secno">3.5 </span> Sensors</h3><p id="req-position" class="req"><a href="#req-position">Req. 21</a>: It <em class="rfc2119" title="must">must</em> be possible to register to receive updates when the position of the device changes.</p><p id="req-geolocation" class="req"><a href="#req-geolocation">Req. 22</a>: It <em class="rfc2119" title="must">must</em> be possible to obtain the device's current geographic coordinates provided the user consents to sharing those.</p></section><section id="networking"><h3><span class="secno">3.6 </span> Networking</h3><p id="req-file-upload" class="req"><a href="#req-file-upload">Req. 23</a>: It <em class="rfc2119" title="must">must</em> be possible to asynchronously upload files to remote server on different origins. Ideally, uploads should continue even if the user navigates to a different page.</p><p id="req-url-schemes" class="req"><a href="#req-url-schemes">Req. 24</a>: <code>mailto:</code>, <code>tel:</code>, <code>sms:</code> and <code>mmsto:</code> URL schemes <em class="rfc2119" title="should">should</em> allow the user to respectively send an email, make a phone call, send an SMS or send an MMS using the appropriate application to do so.</p></section></section><section id="specifications-which-address-the-derived-requirements"><!--OddPage--><h2><span class="secno">4. </span> Specifications which address the derived requirements</h2><p> This section lists existing specifications which address the requirements expressed in <a href="#derived-requirements" class="sectionRef sec-ref">section 3. Derived Requirements</a> and notes their current state of standardization (progress along <a href="http://www.w3.org/2005/10/Process-20051014/tr.html#maturity-levels">W3C Rec Track</a> is noted using conventional abbreviations).
</p><p> The document <a href="http://www.w3.org/Mobile/mobile-web-app-state/">Standards for Web Applications on Mobile: current state and roadmap</a> is regularly updated to reflect current status both of standardization and of implementation of many of the same standards.
</p><div class="note"><div class="note-title"><span>Note</span></div><p class="">The CG has had frequent cause to discuss whether or not it needs to make reference to <strong>the whole</strong> of a referenced specification. In the course of such discussions it has frequently re-iterated that it is not its role to cherry-pick parts of the specifications produced by other groups. Equally, however, it has frequently noted that its use cases require only sub-sections of referenced specifications. The CG has observed that the WGs responsible for producing such specifications might choose to subset their work to advance speed of specification, modularity of testing and so on.</p></div><section id="markup"><h3><span class="secno">4.1 </span> Markup</h3><table>
<thead>
<tr><th>Category</th><th>Specification</th><th>Status</th><th>Requirements Addressed
</th></tr></thead>
<tbody>
<tr><th rowspan="4">General</th><td>HTML5 [<cite><a class="bibref" href="#bib-HTML5">HTML5</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-history" class="reqRef">Req. 7</a>,
<a href="#req-audio-playback" class="reqRef">Req. 19</a>,
<a href="#req-video-playback" class="reqRef">Req. 20</a>
</td></tr><tr><td>HTML Media Capture [<cite><a class="bibref" href="#bib-HTMLMEDIACAPTURE">HTMLMEDIACAPTURE</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-camera-access" class="reqRef">Req. 15</a>,
<a href="#req-microphone-access" class="reqRef">Req. 16</a>
</td></tr><tr><td>Scalable Vector Graphics (SVG) 1.1 (Second Edition) [<cite><a class="bibref" href="#bib-SVG11">SVG11</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-responsive" class="reqRef">Req. 3</a>
</td></tr><tr><td>CSS Device Adaptation [<cite><a class="bibref" href="#bib-CSS-ADAPTATION">CSS-ADAPTATION</a></cite>] (as specified through a <code>meta</code> viewport element)</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>,
<a href="#req-responsive" class="reqRef">Req. 3</a>.
</td></tr></tbody>
</table></section><section id="style"><h3><span class="secno">4.2 </span> Style</h3><table></table><table>
<thead>
<tr><th>Category</th><th>Specification</th><th>Status</th><th>Requirements Addressed
</th></tr></thead>
<tbody>
<tr><th>General</th><td>CSS 2.1 [<cite><a class="bibref" href="#bib-CSS21">CSS21</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td><a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><th rowspan="3">Processing
</th><td>CSS Values [<cite><a class="bibref" href="#bib-CSS3VAL">CSS3VAL</a></cite>] <sup id="fn1-ref"><a href="#fn1">1</a></sup></td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>CSS Media Queries [<cite><a class="bibref" href="#bib-CSS3-MEDIAQUERIES">CSS3-MEDIAQUERIES</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>,
<a href="#req-responsive" class="reqRef">Req. 3</a>
</td></tr><tr><td>CSS Selectors Level 3 [<cite><a class="bibref" href="#bib-SELECT">SELECT</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><th rowspan="3">Graphical
</th><td>CSS Backgrounds and Borders [<cite><a class="bibref" href="#bib-CSS3-BG">CSS3-BG</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>CSS Color [<cite><a class="bibref" href="#bib-CSS3COLOR">CSS3COLOR</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>CSS Image Values and Replaced Content [<cite><a class="bibref" href="#bib-CSS3-IMAGES">CSS3-IMAGES</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><th rowspan="2">Layout
</th><td>CSS Flexible Box Layout [<cite><a class="bibref" href="#bib-FLEXBOX">FLEXBOX</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-app-look" class="reqRef">Req. 8</a>
</td></tr><tr><td>CSS Transforms [<cite><a class="bibref" href="#bib-CSS3-TRANSFORMS">CSS3-TRANSFORMS</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><th rowspan="3">Typography
</th><td>CSS Fonts [<cite><a class="bibref" href="#bib-CSS3-FONTS">CSS3-FONTS</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-responsive" class="reqRef">Req. 3</a>,
<a href="#req-rich-fonts" class="reqRef">Req. 4</a>
</td></tr><tr><td><abbr title="Web Open Font Format">WOFF</abbr> [<cite><a class="bibref" href="#bib-WOFF">WOFF</a></cite>]</td><td class="rec"><abbr title="W3C Recommendation">REC</abbr></td><td>
<a href="#req-responsive" class="reqRef">Req. 3</a>,
<a href="#req-rich-fonts" class="reqRef">Req. 4</a>
</td></tr><tr><td>CSS Text [<cite><a class="bibref" href="#bib-CSS3TEXT">CSS3TEXT</a></cite>] <sup id="fn2-ref"><a href="#fn2">2</a></sup></td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-rich-fonts" class="reqRef">Req. 4</a>
</td></tr><tr><th rowspan="2">Animations and Transitions
</th><td>CSS Animations [<cite><a class="bibref" href="#bib-CSS3-ANIMATIONS">CSS3-ANIMATIONS</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>CSS Transitions [<cite><a class="bibref" href="#bib-CSS3-TRANSITIONS">CSS3-TRANSITIONS</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-app-feel" class="reqRef">Req. 9</a>
</td></tr></tbody>
</table><p><small id="fn1">1. Most of the common content of CSS Values is already included in CSS 2.1. There are some features that would be welcomed additions, notably <code>calc()</code>, <code>rem</code> unit, but also some that don't seem to have a lot of traction (e.g. <code>cycle()</code>). <a href="#fn1-ref">↩</a></small></p><p><small id="fn2">2. The requirements are only for a small subset of CSS Text, mainly text-shadow. Like CSS Values, a lot what is of interest is already covered by CSS 2.1. <a href="#fn2-ref">↩</a></small></p></section><section id="scripting"><h3><span class="secno">4.3 </span> Scripting</h3><table>
<thead>
<tr><th>Category</th><th>Specification</th><th>Status</th><th>Requirements Addressed
</th></tr></thead>
<tbody>
<tr><th>General</th><td>ECMAScript, Edition 5.1 [<cite><a class="bibref" href="#bib-ECMA-262-51">ECMA-262-51</a></cite>]</td><td class="ext">N/A</td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><th rowspan="4">DOM
</th><td>DOM4 API [<cite><a class="bibref" href="#bib-DOM4">DOM4</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>Selectors API Level 1 [<cite><a class="bibref" href="#bib-SELECTORS-API">SELECTORS-API</a></cite>]</td><td class="pr"><abbr title="Proposed Recommendation">PR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>Touch Events version 1 [<cite><a class="bibref" href="#bib-TOUCH-EVENTS">TOUCH-EVENTS</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>
</td></tr><tr><td>CSSOM View [<cite><a class="bibref" href="#bib-CSSOM-VIEW">CSSOM-VIEW</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>
</td></tr><tr><th rowspan="4">Storage
</th><td>Web Storage API [<cite><a class="bibref" href="#bib-WEBSTORAGE">WEBSTORAGE</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>Indexed Database API [<cite><a class="bibref" href="#bib-INDEXEDDB">INDEXEDDB</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-data-storage" class="reqRef">Req. 14</a>
</td></tr><tr><td>File API [<cite><a class="bibref" href="#bib-FILE-API">FILE-API</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-camera-access" class="reqRef">Req. 15</a>,
<a href="#req-microphone-access" class="reqRef">Req. 16</a>,
<a href="#req-pic-manipulation" class="reqRef">Req. 17</a>,
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-file-upload" class="reqRef">Req. 23</a>
</td></tr><tr><td>Quota Management API [<cite><a class="bibref" href="#bib-QUOTA-API">QUOTA-API</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-file-storage" class="reqRef">Req. 13</a>,
<a href="#req-data-storage" class="reqRef">Req. 14</a>
</td></tr><tr><th rowspan="3">Networking
</th><td>XMLHttpRequest API [<cite><a class="bibref" href="#bib-XMLHTTPREQUEST">XMLHTTPREQUEST</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-file-upload" class="reqRef">Req. 23</a>
</td></tr><tr><td>Web Messaging API [<cite><a class="bibref" href="#bib-POSTMSG">POSTMSG</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>
<a href="#req-file-upload" class="reqRef">Req. 23</a>
</td></tr><tr><td>Web Workers API [<cite><a class="bibref" href="#bib-WEBWORKERS">WEBWORKERS</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-file-upload" class="reqRef">Req. 23</a>
</td></tr><tr><th rowspan="2">Sensors
</th><td>Geolocation API [<cite><a class="bibref" href="#bib-GEOLOCATION-API">GEOLOCATION-API</a></cite>]</td><td class="pr"><abbr title="Proposed Recommendation">PR</abbr></td><td>
<a href="#req-geolocation" class="reqRef">Req. 22</a>
</td></tr><tr><td>DeviceOrientation Event [<cite><a class="bibref" href="#bib-DEVICE-ORIENTATION">DEVICE-ORIENTATION</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-position" class="reqRef">Req. 21</a>
</td></tr><tr><th rowspan="2">Multimedia
</th><td>Canvas2D API [<cite><a class="bibref" href="#bib-CANVAS-2D">CANVAS-2D</a></cite>]</td><td class="cr"><abbr title="Candidate Recommendation">CR</abbr></td><td>
<a href="#req-pic-manipulation" class="reqRef">Req. 17</a>,
<a href="#req-framerate" class="reqRef">Req. 18</a>
</td></tr><tr><td>Timing control for script-based animations API [<cite><a class="bibref" href="#bib-ANIMATION-TIMING">ANIMATION-TIMING</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td>
<a href="#req-framerate" class="reqRef">Req. 18</a>
</td></tr></tbody>
</table></section><section id="network"><h3><span class="secno">4.4 </span> Network</h3><table>
<thead>
<tr><th>Category</th><th>Specification</th><th>Status</th><th>Requirements Addressed
</th></tr></thead>
<tbody>
<tr><th rowspan="7">General
</th><td>HTTP 1.1 [<cite><a class="bibref" href="#bib-HTTP11">HTTP11</a></cite>]</td><td class="ext">N/A</td><td><a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>Cross-Origin Resource Sharing [<cite><a class="bibref" href="#bib-CORS">CORS</a></cite>]</td><td class="wd"><abbr title="Working Draft">WD</abbr></td><td><a href="#req-file-upload" class="reqRef">Req. 23</a>
</td></tr><tr><td>The <code>data:</code> URI scheme [<cite><a class="bibref" href="#bib-RFC2397">RFC2397</a></cite>]</td><td class="ext">N/A</td><td> <a href="#req-interoperability" class="reqRef">Req. 1</a>
</td></tr><tr><td>The <code>mailto:</code> URI scheme [<cite><a class="bibref" href="#bib-RFC6068">RFC6068</a></cite>]</td><td class="ext">N/A</td><td><a href="#req-url-schemes" class="reqRef">Req. 24</a>
</td></tr><tr><td>The <code>tel:</code> URI scheme [<cite><a class="bibref" href="#bib-RFC3966">RFC3966</a></cite>]</td><td class="ext">N/A</td><td><a href="#req-url-schemes" class="reqRef">Req. 24</a>
</td></tr><tr><td>The <code>sms:</code> URI scheme [<cite><a class="bibref" href="#bib-RFC5724">RFC5724</a></cite>]</td><td class="ext">N/A</td><td><a href="#req-url-schemes" class="reqRef">Req. 24</a>
</td></tr><tr><td>The <code>mmsto:</code> URI scheme [<cite><a class="bibref" href="#bib-OMA-URI-SCHEMES">OMA-URI-SCHEMES</a></cite>]</td><td class="ext">N/A</td><td><a href="#req-url-schemes" class="reqRef">Req. 24</a>
</td></tr></tbody>
</table></section></section><section id="requirements-only-partially-addressed-by-existing-specifications"><!--OddPage--><h2><span class="secno">5. </span> Requirements only partially addressed by existing specifications</h2><p> The following requirements are only partially addressed by existing specifications: <a href="#req-interoperability" class="reqRef">Req. 1</a>,
<a href="#req-mobile-specific" class="reqRef">Req. 2</a>,
<a href="#req-offline" class="reqRef">Req. 6</a>,
<a href="#req-responsive" class="reqRef">Req. 3</a>.
</p><p> There is ongoing work to address each of those requirements within W3C as detailed below. The CG encourages these efforts.
</p><section id="pointer-events"><h3><span class="secno">5.1 </span> Pointer events</h3><p> While <a href="#req-interoperability" class="reqRef">Req. 1</a> and <a href="#req-mobile-specific" class="reqRef">Req. 2</a> are generally addressed by a number of existing specifications, there is one area which is still problematic: user input. Touch-enabled devices delay click inputs (presumably to handle long and double taps). While there exists <a href="https://developers.google.com/mobile/articles/fast_buttons">different</a> <a href="https://github.com/ftlabs/fastclick">solutions</a> to remove that delay, developers tend to rely instead on touch events [<cite><a class="bibref" href="#bib-TOUCH-EVENTS">TOUCH-EVENTS</a></cite>]. In turn, this creates content which doesn't work properly when used with a different kind of input mechanism. In order to address this situation, the <a href="http://www.w3.org/2012/pointerevents/">Pointer Event WG</a> was formed and has published a first Working Draft [<cite><a class="bibref" href="#bib-POINTER-EVENTS">POINTER-EVENTS</a></cite>].
</p></section><section id="offline"><h3><span class="secno">5.2 </span> Offline</h3><p> Currently, Application Cache is the only Web technology designed to address <a href="#req-offline" class="reqRef">Req. 6</a>. Its issues have already been <a href="http://www.w3.org/2011/web-apps-ws/Report">exhaustively</a> <a href="https://etherpad.mozilla.org/appcache-london">documented</a> <a href="https://etherpad.mozilla.org/appcache">elsewhere</a>. This technology is very complex, poorly understood, and hard to use. It is also <a href="http://www.w3.org/TR/html5/#status-of-this-document">marked at risk</a> in the HTML5 specification.
</p><p> Recently, the <a href="http://www.w3.org/2012/10/30-webapps-minutes.html#item06">WebApps WG has decided to take over this work</a> with the blessing of the HTML WG. In parallel, the <a href="http://www.w3.org/community/fixing-appcache/">Fixing Application Cache CG</a> is collecting case studies, use cases and requirements.
</p></section><section id="responsive-images"><h3><span class="secno">5.3 </span> Responsive Images</h3><p> While a lot has been done to address <a href="#req-responsive" class="reqRef">Req. 3</a>, notably through media queries, there is no set solution for responsive images to date. The <a href="http://www.w3.org/community/respimg/">Responsive Images CG</a> has made a proposal (<a href="http://picture.responsiveimages.org/">The picture element</a>), and so has the HTML WG (<a href="http://www.w3.org/html/wg/drafts/srcset/w3c-srcset/Overview.html">The srcset attribute</a>). The HTML WG is set to determine the merit of both solutions and examine whether they should be combined.
</p></section></section><section id="unaddressed-requirements"><!--OddPage--><h2><span class="secno">6. </span> Unaddressed requirements</h2><p> The following requirements aren't addressed by existing specifications: <a href="#req-meta-data" class="reqRef">Req. 5</a>,
<a href="#req-fast-scroll" class="reqRef">Req. 10</a>,
<a href="#req-orientation-lock" class="reqRef">Req. 11</a>, and
<a href="#req-fullscreen" class="reqRef">Req. 12</a>.
</p><p> However, there is early work going on to address some of these.
</p><section id="application-meta-data"><h3><span class="secno">6.1 </span> Application meta-data</h3><p> The multitude of existing formats to describe application meta-data (<a href="#req-meta-data" class="reqRef">Req. 5</a>) have been <a href="http://www.brucelawson.co.uk/2011/installable-web-apps-and-interoperability/">listed</a> <a href="http://blog.tobie.me/post/14262541286/app-manifests-an-anthology">elsewhere</a> already. The WebApps WG is <a href="http://www.w3.org/2012/webapps/charter/Overview.html#deliverables">chartered</a> to work on this and has two related specs: Widget Packaging and Configuration [<cite><a class="bibref" href="#bib-WIDGETS">WIDGETS</a></cite>] (which has had little traction among the main vendors), and Web Application Manifest Format and Management APIs [<cite><a class="bibref" href="#bib-WEBAPPS-MANIFEST-API">WEBAPPS-MANIFEST-API</a></cite>] (which is still an early Editor's draft).
</p></section><section id="momentum-and-infinite-scrolling"><h3><span class="secno">6.2 </span> Momentum and infinite scrolling</h3><p> Smooth and stutter-free scrolling is first and foremost a QoI issue. However, the requirements (maintaining 60fps while possibly altering the DOM) are sufficiently taxing that they are difficult to meet on mobile devices, even on high-end ones. Some <a href="http://fremycompany.com/TR/2012/ED-css-viewport/">very recent work</a> attempts to cater to this issue.
</p></section><section id="screen-orientation"><h3><span class="secno">6.3 </span> Screen Orientation</h3><p> A specification to fulfill <a href="#req-orientation-lock" class="reqRef">Req. 11</a> is a deliverable of the WebApps WG. A first public Working Draft [<cite><a class="bibref" href="#bib-SCREEN-ORIENTATION">SCREEN-ORIENTATION</a></cite>] was recently publish by the WG.
</p></section><section id="chromeless-mode"><h3><span class="secno">6.4 </span> Chromeless Mode</h3><p> While within the scope of the WebApps WG's <a href="http://www.w3.org/2012/webapps/charter/">charter</a>, no work that would address <a href="#req-fullscreen" class="reqRef">Req. 12</a> is currently ongoing.
</p></section></section><section id="quality-of-implementation"><!--OddPage--><h2><span class="secno">7. </span> Quality of Implementation</h2><p> The CG notes that functional conformance to specifications is sometimes insufficient to create a functional user experience of Web applications. There are many areas in which non-functional (or QoI) requirements have been noted, relating to speed, time related consistency (smoothness) and so on.
</p><p> The group's work to date has yielded the following particular points of note:
</p><section id="qoi-of-the-audio-element"><h3><span class="secno">7.1 </span> QoI of the <code>audio</code> element</h3><p> Implementors should pay particular attention to the quality of implementation of the <code>audio</code> element. <code>audio</code> elements are commonly used in games to play background music and sound effects. It is recommended that implementations support playing 8 audio files in parallel without audible artifacts and provide sub 10ms latency.
</p></section><section id="performance-of-the-canvas-element"><h3><span class="secno">7.2 </span> Performance of the <code>canvas</code> element</h3><p> Implementors should pay attention to the performance characteristics of the <code>canvas</code> element which is particularly well suited for the development of 2D and isometric games. In order to meet the expectations of users, implementations should be capable of running such games at 30fps in full-screen mode.
</p></section><section id="performance-of-scrolling-transitions-and-animations"><h3><span class="secno">7.3 </span> Performance of scrolling, transitions, and animations</h3><p> Smooth scrolling, transitions, and animations are key to delivering great user experiences. Implementations should aim to render these at 60fps.
</p></section><section id="dedicated-form-controls"><h3><span class="secno">7.4 </span> Dedicated form controls</h3><p> On mobile devices content input is often tedious. Implementors should therefore implement dedicated form controls where appropriate (for example, displaying a numerical keypad for inputs of type <code>tel</code>).
</p></section></section><section id="conformance"><!--OddPage--><h2><span class="secno">8. </span> Conformance</h2><p>This document does not express any conformance requirements. Conformance to this document would consist of conforming to the technology standards it identifies, however, some of the technology standards it identifies have not advanced to a sufficient state of maturity to be capable of having conformance requirements.
</p></section><section class="appendix" id="acknowledgements"><!--OddPage--><h2><span class="secno">A. </span>Acknowledgements</h2><p>Thanks to Lars Erik Bolstad, Giridhar Mandyam, and Marcos Cáceres for their help collecting use case and requirements.
</p><p>Thanks to Matt Kelly for initiating and driving the research on the requirements of top native applications, and to all those who contributed to it, particularly WonSuk Lee and Ming Jin.
</p><p>Thanks also to <a href="http://www.w3.org/community/coremob/participants">all members</a> of the Coremob CG.
</p></section><section id="references" class="appendix"><!--OddPage--><h2><span class="secno">B. </span>References</h2><section id="informative-references"><h3><span class="secno">B.1 </span>Informative references</h3><dl class="bibliography"><dt id="bib-ANIMATION-TIMING">[ANIMATION-TIMING]</dt><dd>James Robinson; Cameron McCormack. <a href="http://www.w3.org/TR/animation-timing/"><cite>Timing control for script-based animations.</cite></a> URL: <a href="http://www.w3.org/TR/animation-timing/">http://www.w3.org/TR/animation-timing/</a>
</dd><dt id="bib-CANVAS-2D">[CANVAS-2D]</dt><dd>Ian Hickson. <a href="http://www.w3.org/TR/2dcontext/"><cite>HTML Canvas 2D Context.</cite></a> 25 May 2011. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2dcontext/">http://www.w3.org/TR/2dcontext/</a>
</dd><dt id="bib-CORS">[CORS]</dt><dd>Anne van Kesteren. <a href="http://www.w3.org/TR/2009/WD-cors-20090317"><cite>Cross-Origin Resource Sharing.</cite></a> 17 March 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-cors-20090317">http://www.w3.org/TR/2009/WD-cors-20090317</a>
</dd><dt id="bib-CSS-ADAPTATION">[CSS-ADAPTATION]</dt><dd>Rune Lillesveen. <a href="http://dev.w3.org/csswg/css-device-adapt/">CSS Device Adaptation</a>. 23 January 2012. Editor's Draft. (Work in progress.) URL: <a href="http://dev.w3.org/csswg/css-device-adapt/">http://dev.w3.org/csswg/css-device-adapt/</a>
</dd><dt id="bib-CSS21">[CSS21]</dt><dd>Bert Bos; et al. <a href="http://www.w3.org/TR/CSS21/"><cite>Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification.</cite></a>. W3C Recommendation. URL: <a href="http://www.w3.org/TR/CSS21">http://www.w3.org/TR/CSS21/</a>
</dd><dt id="bib-CSS3-ANIMATIONS">[CSS3-ANIMATIONS]</dt><dd>Dean Jackson (Apple Inc); David Hyatt (Apple Inc); Chris Marrin (Apple Inc). <a href="http://www.w3.org/TR/css3-animations/"><cite>CSS Animations.</cite></a> 03 April 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/css3-animations/">http://www.w3.org/TR/css3-animations/</a>
</dd><dt id="bib-CSS3-BG">[CSS3-BG]</dt><dd>Elika J. Etemad; Bert Bos; Brad Kemper. <a href="http://www.w3.org/TR/css3-background/"><cite>CSS Backgrounds and Borders Module Level 3.</cite></a> URL: <a href="http://www.w3.org/TR/css3-background/">http://www.w3.org/TR/css3-background/</a>
</dd><dt id="bib-CSS3-FONTS">[CSS3-FONTS]</dt><dd>John Daggett (Mozilla). <a href="http://www.w3.org/TR/css3-fonts"><cite>CSS Fonts Module Level 3</cite></a> URL: <a href="http://www.w3.org/TR/css3-fonts">http://www.w3.org/TR/css3-fonts</a>
</dd><dt id="bib-CSS3-IMAGES">[CSS3-IMAGES]</dt><dd>Elika J. Etemad, Tab Atkins Jr.. <a href="http://www.w3.org/TR/css3-images/">CSS Image Values and Replaced Content</a>. 17 April 2012. W3C Candidate Recommendation. URL: <a href="http://www.w3.org/TR/css3-images/">http://www.w3.org/TR/css3-images/</a>
</dd><dt id="bib-CSS3-MEDIAQUERIES">[CSS3-MEDIAQUERIES]</dt><dd>H. Lie, T. Çelik, D. Glazman, A. van Kesteren. <a href="http://www.w3.org/TR/css3-mediaqueries/"><cite>Media Queries</cite></a> URL: <a href="http://www.w3.org/TR/css3-mediaqueries/">http://www.w3.org/TR/css3-mediaqueries/</a>
</dd><dt id="bib-CSS3-TRANSFORMS">[CSS3-TRANSFORMS]</dt><dd>Simon Fraser; Dean Jackson; David Hyatt; Chris Marrin; Edward O'Connor; Dirk Schulze; Aryeh Gregor. <a href="http://www.w3.org/TR/css3-transforms/"><cite>CSS Transforms.</cite></a> URL: <a href="http://www.w3.org/TR/css3-transforms/">http://www.w3.org/TR/css3-transforms/</a>
</dd><dt id="bib-CSS3-TRANSITIONS">[CSS3-TRANSITIONS]</dt><dd>Dean Jackson; David Hyatt; Chris Marrin; L. David Baron. <a href="http://www.w3.org/TR/css3-transitions/"><cite>CSS Transitions.</cite></a> 03 April 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/css3-transitions/">http://www.w3.org/TR/css3-transitions/</a>
</dd><dt id="bib-CSS3COLOR">[CSS3COLOR]</dt><dd>Tantek Çelik; Chris Lilley; L. David Baron. <a href="http://www.w3.org/TR/css3-color"><cite>CSS Color Module Level 3.</cite></a> 07 June 2011. W3C Recommendation. URL: <a href="http://www.w3.org/TR/css3-color">http://www.w3.org/TR/css3-color</a>
</dd><dt id="bib-CSS3TEXT">[CSS3TEXT]</dt><dd>Elika J. Etemad; Koji Ishii. <a href="http://www.w3.org/TR/css3-text/"><cite>CSS Text Level 3.</cite></a> 19 January 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/css3-text/">http://www.w3.org/TR/css3-text/</a>
</dd><dt id="bib-CSS3VAL">[CSS3VAL]</dt><dd>Chris Lilley; Håkon Wium Lie. <a href="http://www.w3.org/TR/css3-values/"><cite>CSS3 Values and Units.</cite></a> 08 March 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/css3-values/">http://www.w3.org/TR/css3-values/</a>
</dd><dt id="bib-CSSOM-VIEW">[CSSOM-VIEW]</dt><dd>Anne van Kesteren. <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222"><cite>CSSOM View Module.</cite></a> 22 February 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222">http://www.w3.org/TR/2008/WD-cssom-view-20080222</a>
</dd><dt id="bib-DEVICE-ORIENTATION">[DEVICE-ORIENTATION]</dt><dd>Steve Block, Andrei Popescu. <a href="http://www.w3.org/TR/2011/WD-orientation-event-20111201/">DeviceOrientation Event Specification</a>. 1 December 2011. Last Call Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2011/WD-orientation-event-20111201/">http://www.w3.org/TR/2011/WD-orientation-event-20111201/</a>
</dd><dt id="bib-DOM4">[DOM4]</dt><dd>Anne van Kesteren; Aryeh Gregor; Ms2ger. <a href="http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html/"><cite>DOM4.</cite></a> URL: <a href="http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html/">http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html/</a>
</dd><dt id="bib-ECMA-262-51">[ECMA-262-51]</dt><dd><a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">ECMAScript Language Specification, Edition 5.1</a>. June 2011. URL: <a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">http://www.ecma-international.org/publications/standards/Ecma-262.htm</a>
</dd><dt id="bib-FILE-API">[FILE-API]</dt><dd>Arun Ranganathan; Jonas Sicking. <a href="http://www.w3.org/TR/2011/WD-FileAPI-20111020/"><cite>File API.</cite></a> 20 October 2011. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2011/WD-FileAPI-20111020/">http://www.w3.org/TR/2011/WD-FileAPI-20111020/</a>
</dd><dt id="bib-FLEXBOX">[FLEXBOX]</dt><dd>Tab Atkins Jr.; Elika J. Etemad; Alex Mogilevsky. <a href="http://www.w3.org/TR/css3-flexbox/"><cite>Flexible Box Layout Module.</cite></a> 12 June 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/css3-flexbox/">http://www.w3.org/TR/css3-flexbox/</a>
</dd><dt id="bib-GEOLOCATION-API">[GEOLOCATION-API]</dt><dd>Andrei Popescu. <a href="http://www.w3.org/TR/2008/WD-geolocation-API-20081222/"><cite>Geolocation API Specification.</cite></a> 22 December 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-geolocation-API-20081222/">http://www.w3.org/TR/2008/WD-geolocation-API-20081222/</a>
</dd><dt id="bib-HTML5">[HTML5]</dt><dd>Ian Hickson; David Hyatt. <a href="http://www.w3.org/TR/html5"><cite>HTML5.</cite></a> 29 March 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/html5">http://www.w3.org/TR/html5</a>
</dd><dt id="bib-HTMLMEDIACAPTURE">[HTMLMEDIACAPTURE]</dt><dd>Anssi Kostiainen; Ilkka Oksanen; Dominique Hazaël-Massieux. <a href="http://www.w3.org/TR/2012/WD-html-media-capture-20120529/"><cite>HTML Media Capture.</cite></a> 29 May 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2012/WD-html-media-capture-20120529/">http://www.w3.org/TR/2012/WD-html-media-capture-20120529/</a>
</dd><dt id="bib-HTTP11">[HTTP11]</dt><dd>R. Fielding; et al. <a href="http://www.ietf.org/rfc/rfc2616.txt"><cite>Hypertext Transfer Protocol - HTTP/1.1.</cite></a> June 1999. Internet RFC 2616. URL: <a href="http://www.ietf.org/rfc/rfc2616.txt">http://www.ietf.org/rfc/rfc2616.txt</a>
</dd><dt id="bib-INDEXEDDB">[INDEXEDDB]</dt><dd>Nikunj Mehta, Jonas Sicking, Eliot Graff, Andrei Popescu, Jeremy Orlow. <a href="http://www.w3.org/TR/IndexedDB/">Indexed Database API</a>. April 2011. Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/IndexedDB/">http://www.w3.org/TR/IndexedDB/</a>
</dd><dt id="bib-OMA-URI-SCHEMES">[OMA-URI-SCHEMES]</dt><dd><a href="http://www.openmobilealliance.org/Technical/release_program/docs/URI_Schemes/V1_0-20080626-A/OMA-TS-URI_Schemes-V1_0-20080626-A.pdf"><cite>URI Schemes for the Mobile Applications Environment. Approved Version 1.0</cite></a> 26 Jun 2008. URL: <a href="http://www.openmobilealliance.org/Technical/release_program/docs/URI_Schemes/V1_0-20080626-A/OMA-TS-URI_Schemes-V1_0-20080626-A.pdf">http://www.openmobilealliance.org/Technical/release_program/docs/URI_Schemes/V1_0-20080626-A/OMA-TS-URI_Schemes-V1_0-20080626-A.pdf</a>
</dd><dt id="bib-POINTER-EVENTS">[POINTER-EVENTS]</dt><dd>Jacob Rossi, Matt Brubeck. <a href="http://www.w3.org/TR/pointerevents/"><cite>Pointer Events.</cite></a> 11 December 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/pointerevents/">http://www.w3.org/TR/pointerevents/</a>
</dd><dt id="bib-POSTMSG">[POSTMSG]</dt><dd>Ian Hickson. <a href="http://dev.w3.org/html5/postmsg"><cite>HTML5 Web Messaging.</cite></a> URL: <a href="http://dev.w3.org/html5/postmsg">http://dev.w3.org/html5/postmsg</a>
</dd><dt id="bib-QUOTA-API">[QUOTA-API]</dt><dd>Kinuko Yasuda. <a href="http://www.w3.org/TR/quota-api/"><cite>Quota Management API</cite></a>. 3 July 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/quota-api/">http://www.w3.org/TR/quota-api/</a>
</dd><dt id="bib-RFC2397">[RFC2397]</dt><dd>L. Masinter. <a href="http://www.ietf.org/rfc/rfc2397.txt"><cite>The "data" URL scheme.</cite></a> August 1998. Internet RFC 2397. URL: <a href="http://www.ietf.org/rfc/rfc2397.txt">http://www.ietf.org/rfc/rfc2397.txt</a>
</dd><dt id="bib-RFC3966">[RFC3966]</dt><dd>H. Schulzrinne. <a href="http://www.ietf.org/rfc/rfc3966.txt"><cite>The tel URI for Telephone Numbers</cite></a> December 2004. Internet RFC 3966. URL: <a href="http://www.ietf.org/rfc/rfc3966.txt">http://www.ietf.org/rfc/rfc3966.txt</a>
</dd><dt id="bib-RFC5724">[RFC5724]</dt><dd>E. Wilde, A. Vaha-Sipila. <a href="http://www.ietf.org/rfc/rfc5724.txt">URI Scheme for Global System for Mobile Communications (GSM) Short Message Service (SMS)</a>. January 2010. Request for Comments. URL: <a href="http://www.ietf.org/rfc/rfc5724.txt">http://www.ietf.org/rfc/rfc5724.txt</a>
</dd><dt id="bib-RFC6068">[RFC6068]</dt><dd>M. Duerst; L. Masinter; J. Zawinski. <a href="http://www.ietf.org/rfc/rfc6068.txt"><cite>The 'mailto' URI Scheme.</cite></a> October 2010. Internet Proposed Standard RFC 6068. URL: <a href="http://www.ietf.org/rfc/rfc6068.txt">http://www.ietf.org/rfc/rfc6068.txt</a>
</dd><dt id="bib-SCREEN-ORIENTATION">[SCREEN-ORIENTATION]</dt><dd>Mounir Lamouri. <a href="http://www.w3.org/TR/screen-orientation/"><cite>The Screen Orientation API.</cite></a> 06 December 2012. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/screen-orientation/">http://www.w3.org/TR/screen-orientation/</a>
</dd><dt id="bib-SELECT">[SELECT]</dt><dd>Daniel Glazman; et al. <a href="http://www.w3.org/TR/2009/WD-css3-selectors-20090310"><cite>Selectors Level 3.</cite></a> 10 March 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-css3-selectors-20090310">http://www.w3.org/TR/2009/WD-css3-selectors-20090310</a>
</dd><dt id="bib-SELECTORS-API">[SELECTORS-API]</dt><dd>Lachlan Hunt; Anne van Kesteren. <a href="http://www.w3.org/TR/2008/WD-selectors-api-20081114"><cite>Selectors API.</cite></a> 14 November 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-selectors-api-20081114">http://www.w3.org/TR/2008/WD-selectors-api-20081114</a>
</dd><dt id="bib-SVG11">[SVG11]</dt><dd>Erik Dahlström; et al. <a href="http://www.w3.org/TR/2011/REC-SVG11-20110816/"><cite>Scalable Vector Graphics (SVG) 1.1 (Second Edition).</cite></a> 16 August 2011. W3C Recommendation. URL: <a href="http://www.w3.org/TR/2011/REC-SVG11-20110816/">http://www.w3.org/TR/2011/REC-SVG11-20110816/</a>
</dd><dt id="bib-TOUCH-EVENTS">[TOUCH-EVENTS]</dt><dd>Matt Brubeck; Sangwhan Moon; Doug Schepers; <a href="http://www.w3.org/TR/touch-events/"><cite>Touch Events version 1</cite></a> URL: <a href="http://www.w3.org/TR/touch-events/">http://www.w3.org/TR/touch-events</a>
</dd><dt id="bib-WEBAPPS-MANIFEST-API">[WEBAPPS-MANIFEST-API]</dt><dd>Anant Narayanan. <a href="http://dvcs.w3.org/hg/app-manifest/raw-file/tip/index.html"><cite>Web Application Manifest Format and Management APIs</cite></a>. W3C Editor's Draft. (Work in progress.) URL: <a href="http://dvcs.w3.org/hg/app-manifest/raw-file/tip/index.html">http://dvcs.w3.org/hg/app-manifest/raw-file/tip/index.html</a>
</dd><dt id="bib-WEBGL">[WEBGL]</dt><dd>Chris Marrin (Apple Inc.) <a href="https://www.khronos.org/registry/webgl/specs/1.0/"><cite>WebGL Specification, Version 1.0</cite></a> , 10 February 2011 URL: <a href="https://www.khronos.org/registry/webgl/specs/1.0//">https://www.khronos.org/registry/webgl/specs/1.0/</a>
</dd><dt id="bib-WEBSTORAGE">[WEBSTORAGE]</dt><dd>Ian Hickson. <a href="http://www.w3.org/TR/2009/WD-webstorage-20090910/"><cite>Web Storage.</cite></a> 10 September 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-webstorage-20090910/">http://www.w3.org/TR/2009/WD-webstorage-20090910/</a>
</dd><dt id="bib-WEBWORKERS">[WEBWORKERS]</dt><dd>Ian Hickson. <a href="http://www.w3.org/TR/2011/WD-workers-20110901/"><cite>Web Workers.</cite></a> 1 September 2011. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2011/WD-workers-20110901/">http://www.w3.org/TR/2011/WD-workers-20110901/</a>
</dd><dt id="bib-WIDGETS">[WIDGETS]</dt><dd>Marcos Cáceres. <a href="http://www.w3.org/TR/widgets/"><cite>Widget Packaging and XML Configuration</cite></a>. W3C Recommendation. URL: <a href="http://www.w3.org/TR/widgets/">http://www.w3.org/TR/widgets/</a>
</dd><dt id="bib-WOFF">[WOFF]</dt><dd>Jonathan Kew, Tal Leming, Erik van Blokland. <a href="http://www.w3.org/TR/WOFF/">WOFF File Format 1.0</a>. 04 August 2011. Candidate Recommendation. URL: <a href="http://www.w3.org/TR/WOFF/">http://www.w3.org/TR/WOFF/</a>
</dd><dt id="bib-XMLHTTPREQUEST">[XMLHTTPREQUEST]</dt><dd>Anne van Kesteren. <a href="http://www.w3.org/TR/2008/WD-XMLHttpRequest-20080415"><cite>The XMLHttpRequest Object.</cite></a> 15 April 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-XMLHttpRequest-20080415">http://www.w3.org/TR/2008/WD-XMLHttpRequest-20080415</a>
</dd></dl></section></section></body></html>