This is the Use Cases section of the document. See the DeviceDescriptionRepositoryRequirements overview.
This section is informative.
Use-case 1. Optimized Web content for mobile devices
Bruce is a Web content author who wishes to provide an optimized user experience for those users accessing his site via a mobile device. Using standard HTTP request headers, he is able to recognise the mobile handset and browser software making the request. He queries a DDR using the handset and browser as query criteria, and asks for the width of the handset screen in pixels. The DDR uses the query criteria to identify the device used, and returns the screen width in pixels, accordingly.
Motivates: [DDR-API], [DDR-CONTEXT-KEY], [DDR-MEASUREMENT]
Use-case 2. Querying a Value range
Hal is also a Web content author who queries a DDR for information that will improve mobile users' browsing experience. He wishes to know all the image formats supported by a particular device/browser combination. As such he queries the DDR, passing in a device/browser identifier. The DDR uses this information to return all the image formats supported in this case.
Motivates: [DDR API], [DDR-CONTEXT-KEY], [DDR-VALUE-RANGE]
Use-case 3. Context ambiguity
Carter wishes to determine the markup formats supported by a mobile device that has requested his Web page. He queries a DDR for this information, but only passes in a device hardware identifier, without an indication of the browser used. As such the DDR makes a 'best effort' guess that the browser is the one that comes pre-installed on that device, and returns a range of supported markups for that browser accordingly. Note: where context is ambiguous, the DDR may instead choose to throw an exception, or return all possible values based on the available evidence: it is likely that different aspects will determine different behaviour.
Use-case 3. Insufficient context available
Diana wishes to determine the screen resolution in pixels of the device querying her Web page. However she is only able to determine the browser, but not the device hardware, making the request. When queried, the DDR is unble to resolve the context key of the request and throws an exception.