Welcome, guest Sign In

Chapter 1. Introduction

Understanding the Yahoo! Blueprint Platform

Using Blueprint, third-party developers can create highly portable content and services for distribution on the mobile Web. Applications are written with an XML markup set based on XForms. In the version documented here, however, the Blueprint language hides most of the complex data-binding apparatus of XForms. The Blueprint language is purely declarative; it includes no scripting or procedural code. Applications are hosted on your own Web server, where, in addition to information content for the application, you can use server-side scripting to provide any needed logic.

For information about publishing your application, see the deployment documentation and Yahoo!'s Mobile Developer site.

Blueprint source code should be served in files whose names end with the extension .xml or .bp (e.g. somePage.xml or someOtherPage.bp). When serving Blueprint pages, specify Content-Type: application/x-blueprint+xml (see Content Types). Use only the UTF-8 character set.

Each screen is served as a separate file containing a Blueprint page element. In addition to XML files, Blueprint applications can include graphics in standard formats such as PNG, GIF, or JPEG. Blueprint applications also require configuration files (such as config.xml), which are explained in the deployment documentation.

Design Notes

Blueprint enforces a strict, highly abstracted user-interface model. This gives it the dual advantages of simplicity and compatibility with a wide range of hand-held devices; it can even be deployed on screens whose only available display mode is XHTML. Future versions of the language will incorporate a fuller implementation of XForms that will offer more flexibility as well as the ability to run directly on hand-held devices.

UI controls in Blueprint are designed to exploit the full capabilities of high-end mobile devices while degrading gracefully on smaller, less powerful handsets. A complex, visually rich interface can usually be "scaled down" for simpler devices, but there is no way to "scale up" an under-designed interface. Therefore, the best approach is always to design for the high end and test on the low end.

Blueprint code in this document is sometimes illustrated with images of application screens. These illustrations are examples only. The actual appearance of an application depends on the language implementation, environment, application type, and hand-held device.

XML Validation

Before deploying an application, you may want to validate your XML. The blueprint.xsd file, available from http://mobile.yahoo.com/devcenter/downloads, contains a complete schema for the markup described in this document. Of course, many Blueprint pages are dynamically generated. But it's a good idea to test your code by validating against the schema whenever possible.

Table of Contents

Copyright © 2009 Yahoo! Inc. All rights reserved. Copyright | Privacy Policy

Help us continue to improve the Yahoo! Developer Network: Send Your Suggestions