- From: Robin Berjon via cvs-syncmail <cvsmail@w3.org>
- Date: Mon, 05 Oct 2009 15:33:12 +0000
- To: public-dap-commits@w3.org
Update of /sources/public/2009/dap/api-reqs In directory hutz:/tmp/cvs-serv30811/api-reqs Modified Files: Overview.html Log Message: tasks; various fixes Index: Overview.html =================================================================== RCS file: /sources/public/2009/dap/api-reqs/Overview.html,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- Overview.html 5 Oct 2009 14:35:05 -0000 1.6 +++ Overview.html 5 Oct 2009 15:33:10 -0000 1.7 @@ -48,8 +48,8 @@ These requirements apply to all APIs produced by the DAP WG. </p> <ul> - <li>APIs MUST be made available in a consistent fashion, hanging off a single access point</li> - <li>methods that may take a long time to complete MUST support asynchronous, cancellable operation</li> + <li>APIs MUST be made available in a consistent fashion, hanging off a single access point;</li> + <li>methods that may take a long time to complete MUST support asynchronous, cancellable operation.</li> </ul> <p class='issue'> Should the APIs be made available on <code>navigator</code>, <code>navigator.device</code>, @@ -70,28 +70,28 @@ <p> The following requirements have been expressed. </p> - <ol> + <ul> <li> A User Agent MAY provide means for non-web applications to register themselves as handlers for media types and URI schemes. (Note that this may be outside the scope of this API.) </li> - <li>It SHOULD be possible to launch an application for which no media type or protocol handler exists</li> - <li>It SHOULD be possible to pass arguments to a launched application</li> - <li>It SHOULD be possible to launch an application asynchronously</li> - <li>It SHOULD be possible to launch an application synchronously</li> - <li>For applications that run synchronously, it SHOULD be possible to catch the output streams (STDOUT/ERR etc.)</li> - </ol> + <li>It SHOULD be possible to launch an application for which no media type or protocol handler exists.</li> + <li>It SHOULD be possible to pass arguments to a launched application.</li> + <li>It SHOULD be possible to launch an application asynchronously.</li> + <li>It SHOULD be possible to launch an application synchronously.</li> + <li>For applications that run synchronously, it SHOULD be possible to catch the output streams (STDOUT/ERR etc.).</li> + </ul> <p> The following requirements, while they could be considered to be functionally part of this API, are already addressed as part of the HTML5 [[HTML5]] <a href='http://www.w3.org/TR/html5/browsers.html#custom-handlers'>Custom scheme and content handlers</a>: </p> - <ol> - <li>MUST enable (web) applications to register themselves as handlers for a specific protocol</li> - <li>A User Agent MAY provide default handlers for a specific protocol</li> - <li>MUST enable (web) applications to register themselves as handlers for a specific media type</li> - <li>A User Agent MAY provide default handlers for a specific media type</li> - </ol> + <ul> + <li>This interface MUST enable (web) applications to register themselves as handlers for a specific protocol.</li> + <li>A User Agent MAY provide default handlers for a specific protocol.</li> + <li>This interface MUST enable (web) applications to register themselves as handlers for a specific media type.</li> + <li>A User Agent MAY provide default handlers for a specific media type.</li> + </ul> <section> <h2>May be considered in future versions</h2> <p> @@ -100,8 +100,6 @@ </section> </section> - - <section> <h2>Calendar</h2> <p> @@ -112,7 +110,7 @@ <li>MUST expose some basic properties of calendars such as default time zone, name, etc.;</li> <li>MUST enable creating, deleting, and updating calendars;</li> <li>MUST enable creating, deleting, updating, and finding calendar events;</li> - <li>MUST expose calendar event properties with a 1:1 mapping to iCalendar [[!RFC5545]] properties and values</li> + <li>MUST expose calendar event properties with a 1:1 mapping to iCalendar [[!RFC5545]] properties and values.</li> </ul> <div class='issue'> <p> @@ -130,10 +128,10 @@ <section> <h2>May be considered in future versions</h2> <ul> - <li>iCalendar parsing and serialision</li> - <li>hCalendar parsing and serialision</li> - <li>calendar diffs</li> - <li>direct CalDAV access</li> + <li>iCalendar parsing and serialision;</li> + <li>hCalendar parsing and serialision;</li> + <li>calendar diffs;</li> + <li>direct CalDAV access.</li> </ul> </section> </section> @@ -144,17 +142,17 @@ The Camera API: </p> <ul> - <li>MUST enable capture of static images</li> - <li>MUST enable capture of videos</li> - <li>MUST enable listing the available cameras</li> - <li>MUST enable listing the available formats and codecs, per camera</li> - <li>MUST enable retrieval of the captured content</li> - <li>MUST provide some metadata about the captured content (e.g. width, height, format, duration)</li> - <li>MUST enable choosing preferred aspects of the captured content (e.g. width, height, format, frame rate)</li> - <li>MUST enable displaying a viewfinder</li> - <li>MUST support asynchronous, cancellable capture</li> - <li>SHOULD enable displaying a viewfinder as part of the document (e.g. as a <code>video</code> element [[HTML5]])</li> - <li>SHOULD enable control of the camera's capabilities (e.g. zoom, luminosity, night mode, focus mode)</li> + <li>MUST enable capture of static images;</li> + <li>MUST enable capture of videos;</li> + <li>MUST enable listing the available cameras;</li> + <li>MUST enable listing the available formats and codecs, per camera;</li> + <li>MUST enable retrieval of the captured content;</li> + <li>MUST provide some metadata about the captured content (e.g. width, height, format, duration);</li> + <li>MUST enable choosing preferred aspects of the captured content (e.g. width, height, format, frame rate);</li> + <li>MUST enable displaying a viewfinder;</li> + <li>MUST support asynchronous, cancellable capture;</li> + <li>SHOULD enable displaying a viewfinder as part of the document (e.g. as a <code>video</code> element [[HTML5]]);</li> + <li>SHOULD enable control of the camera's capabilities (e.g. zoom, luminosity, night mode, focus mode).</li> </ul> <p class='issue'> Given support for capturing video, we need to take sound capture into account. Once that's supported, @@ -191,11 +189,11 @@ <p> This interface: </p> - <ol> - <li>MUST be able to provide a list of incoming and outgoing communication events</li> - <li>MUST be able to search for events by type (email, phone, SMS...) as well as by content</li> - <li>MUST be able to expose relevant metadata about events (start and end time, to and from, etc.)</li> - </ol> + <ul> + <li>MUST be able to provide a list of incoming and outgoing communication events;</li> + <li>MUST be able to search for events by type (email, phone, SMS...) as well as by content;</li> + <li>MUST be able to expose relevant metadata about events (start and end time, to and from, etc.).</li> + </ul> <section> <h2>May be considered in future versions</h2> <p> @@ -210,13 +208,13 @@ The Contacts API: </p> <ul> - <li>MUST enable listing all available address books on the device</li> - <li>MUST enable listing all contacts in the address book(s)</li> - <li>MUST enable reading the details for a contact</li> - <li>SHOULD enable creating a new contact</li> - <li>SHOULD enable updating a contact</li> - <li>SHOULD enable deleting a contact</li> - <li>SHOULD enable filtering the list of contacts to search for a subset</li> + <li>MUST enable listing all available address books on the device;</li> + <li>MUST enable listing all contacts in the address book(s);</li> + <li>MUST enable reading the details for a contact;</li> + <li>SHOULD enable creating a new contact;</li> + <li>SHOULD enable updating a contact;</li> + <li>SHOULD enable deleting a contact;</li> + <li>SHOULD enable filtering the list of contacts to search for a subset.</li> </ul> <p class='issue'> Are there convincing use cases for supporting multiple address books in v1 (as opposed to just @@ -239,27 +237,27 @@ The File System API: </p> <ul> - <li>MUST integrate with the W3C File API [[FILE-UPLOAD]]</li> - <li>MUST enable listing items in a directory</li> - <li>MUST enable creating a file or directory</li> - <li>MUST enable deleting a file or directory</li> - <li>MUST enable writing to a file</li> - <li>MUST enable appending to a file</li> - <li>MUST enable getting some metadata about a file (e.g. size, creation and update time, media type)</li> - <li>MAY enable setting some metadata on a file</li> - <li>SHOULD enable copying files and directories</li> - <li>SHOULD enable moving files and directories</li> - <li>MUST handle text encoding conversion when reading and writing to file (at least UTF-8 and UTF-16 LE/BE)</li> - <li>SHOULD support binary access to file content</li> - <li>MUST enable navigating a directory tree</li> - <li>MUST reflect file system paths using a normalised separator (/) and in a consistent encoding</li> - <li>MAY provide conversion between paths and <code>file:</code> URLs</li> - <li>MAY support reading and writing in Base64 (or using <code>data:</code> URLs)</li> - <li>SHOULD support reading lines from a text document</li> - <li>SHOULD support events for detecting the mounting/unmounting of a file system (e.g. to detect a memory card being plugged in)</li> - <li>MUST support listing the available file systems</li> - <li>SHOULD provide access to a temporary storage location (a form of /tmp directory)</li> - <li>MUST provide some file system metadata (e.g. size, available space, quota)</li> + <li>MUST integrate with the W3C File API [[!FILE-UPLOAD]];</li> + <li>MUST enable listing items in a directory;</li> + <li>MUST enable creating a file or directory;</li> + <li>MUST enable deleting a file or directory;</li> + <li>MUST enable writing to a file;</li> + <li>MUST enable appending to a file;</li> + <li>MUST enable getting some metadata about a file (e.g. size, creation and update time, media type);</li> + <li>MAY enable setting some metadata on a file;</li> + <li>SHOULD enable copying files and directories;</li> + <li>SHOULD enable moving files and directories;</li> + <li>MUST handle text encoding conversion when reading and writing to file (at least UTF-8 and UTF-16 LE/BE);</li> + <li>SHOULD support binary access to file content;</li> + <li>MUST enable navigating a directory tree;</li> + <li>MUST reflect file system paths using a normalised separator (/) and in a consistent encoding;</li> + <li>MAY provide conversion between paths and <code>file:</code> URLs;</li> + <li>MAY support reading and writing in Base64 (or using <code>data:</code> URLs);</li> + <li>SHOULD support reading lines from a text document;</li> + <li>SHOULD support events for detecting the mounting/unmounting of a file system (e.g. to detect a memory card being plugged in);</li> + <li>MUST support listing the available file systems;</li> + <li>SHOULD provide access to a temporary storage location (a form of /tmp directory);</li> + <li>MUST provide some file system metadata (e.g. size, available space, quota).</li> </ul> <section> <h2>May be considered in future versions</h2> @@ -275,10 +273,10 @@ The Gallery API: </p> <ul> - <li>MUST enable listing all available gallery sources, their names and types</li> - <li>MUST enable finding content inside a gallery</li> - <li>MUST enable adding, updating, and removing content from a gallery</li> - <li>MUST expose metadata about the gallery's content items (copyright, author, media-dependent information, etc.)</li> + <li>MUST enable listing all available gallery sources, their names and types;</li> + <li>MUST enable finding content inside a gallery;</li> + <li>MUST enable adding, updating, and removing content from a gallery;</li> + <li>MUST expose metadata about the gallery's content items (copyright, author, media-dependent information, etc.).</li> </ul> <p class='issue'> Exposing metadata is tricky, often giving a choice between creating an endless ontology @@ -300,12 +298,19 @@ <section> <h2>Messaging</h2> <p> - @@TBD, still under discussion as part of <a href='http://www.w3.org/2009/dap/track/issues/13'>ISSUE-13</a>. + This interface: </p> + <ul> + <li>MUST support messages in one or several formats and transports supported by the platform (email, SMS, MMS...);</li> + <li>MUST allow creating and sending messages;</li> + <li>MUST support multiple accounts for each transport/format type;</li> + <li>MUST support setting various envelope fields corresponding to the message type (email, SMS...);</li> + <li>MUST support attaching files when the format allows it.</li> + </ul> <section> <h2>May be considered in future versions</h2> <p> - @@TBD + Nothing listed at this time. </p> </section> </section> @@ -316,32 +321,32 @@ The System Information & Events API: </p> <ul> - <li>MUST enable listing available power sources (batteries, wall...)</li> - <li>MUST expose whether the device is running on battery or not</li> - <li>MUST expose charge level per battery and globally</li> - <li>MUST enable listing available network interfaces, their types (Wifi, 3G, LAN...), and signal strengths</li> - <li>MUST provide CPU information</li> - <li>MAY provide CPU load information</li> - <li>MUST enable listing storage areas, their types, writability, and available space</li> - <li>MUST provide RAM information</li> - <li>MAY provide RAM load information</li> - <li>MUST enable listing displays, as well as their colour depth, resolution, etc.</li> - <li>MUST enable listing input devices (mouse, keyboard, touch, keypad, voice, stylus...)</li> - <li>MUST enable listing audio output devices and their properties</li> - <li>MUST enable listing audio input devices and their properties</li> - <li>MUST enable listing video capture devices and their properties</li> - <li>MUST enable listing picture capture devices and their properties</li> - <li>MUST enable listing thermal sensors, alongside their names and measurements</li> - <li>MUST enable listing ambient light sensors, alongside their names and measurements</li> - <li>MUST enable listing proximity detectors, alongside their names and measurements</li> - <li>MUST expose gyroscope and accelerometer capability and measurements</li> - <li>MUST enable listing vibration capability</li> - <li>MUST expose the availability of compass and geolocation capability</li> + <li>MUST enable listing available power sources (batteries, wall...);</li> + <li>MUST expose whether the device is running on battery or not;</li> + <li>MUST expose charge level per battery and globally;</li> + <li>MUST enable listing available network interfaces, their types (Wifi, 3G, LAN...), and signal strengths;</li> + <li>MUST provide CPU information;</li> + <li>MAY provide CPU load information;</li> + <li>MUST enable listing storage areas, their types, writability, and available space;</li> + <li>MUST provide RAM information;</li> + <li>MAY provide RAM load information;</li> + <li>MUST enable listing displays, as well as their colour depth, resolution, etc.;</li> + <li>MUST enable listing input devices (mouse, keyboard, touch, keypad, voice, stylus...);</li> + <li>MUST enable listing audio output devices and their properties;</li> + <li>MUST enable listing audio input devices and their properties;</li> + <li>MUST enable listing video capture devices and their properties;</li> + <li>MUST enable listing picture capture devices and their properties;</li> + <li>MUST enable listing thermal sensors, alongside their names and measurements;</li> + <li>MUST enable listing ambient light sensors, alongside their names and measurements;</li> + <li>MUST enable listing proximity detectors, alongside their names and measurements;</li> + <li>MUST expose gyroscope and accelerometer capability and measurements;</li> + <li>MUST enable listing vibration capability;</li> + <li>MUST expose the availability of compass and geolocation capability.</li> </ul> <section> <h2>May be considered in future versions</h2> <p> - @@TBD + Nothing listed at this time. </p> </section> </section> @@ -349,12 +354,22 @@ <section> <h2>Tasks</h2> <p> - @@TBD + This interface: + </p> + <ul> + <li>MUST enable listing multiple available task lists (projects);</li> + <li>MUST expose some basic properties of projects such as default name, priority, etc.;</li> + <li>MUST enable creating, deleting, and updating projects;</li> + <li>MUST enable creating, deleting, updating, and finding tasks;</li> + <li>MUST expose task properties with a 1:1 mapping to iCalendar [[!RFC5545]] properties and values (VTODO).</li> + </ul> + <p class='issue'> + See the <a href='#calendar'>issues that are part of the Calendar API</a>. </p> <section> <h2>May be considered in future versions</h2> <p> - @@TBD + Nothing listed at this time. </p> </section> </section>
Received on Monday, 5 October 2009 15:33:17 UTC