100 likes | 207 Views
Mobile Xforms Community (MXC): A Modest Proposal. High-level Goals. Build a community working on mobile data collection in the developing world Share ideas, experiences, standards and code Facilitate collaboration and re-use
E N D
High-level Goals • Build a community working on mobile data collection in the developing world • Share ideas, experiences, standards and code • Facilitate collaboration and re-use • Evolve towards standards-based, open-source, cross-platform deployability
Xforms 1.1 • XML based format for specification of forms, UI and data processing • W3C standard (1.1 is a Working Draft as of November 2006) • Next generation of HTML forms • Also intended for mobile devices and other presentation formats
Xforms (continued) • Specifies data model, form logic, input constraints, event handlers, server actions, etc. • Current implementations • Browser-based • Server-side Transformation • Dedicated Xforms client
Xforms on Mobile • Current (few) implementations are mostly browser-based • Sandboxed • HTML-like UI • Not user-friendly • Restricts access to some system features (camera, GPS, etc.)
Our Plan • Converge on subset of Xforms spec for mobile data collection in developing world • Specify required extensions (if any) • XformsDB • GPS, Sensors, etc. • Alternative Transports • Implement reference implementations on key platforms • MobileMRS • ?
Advantages • Inter-operable system components • Epihandy form designer with MobileMRS PDA client (Daniel did it yesterday!) • Share forms / questions between groups • Cross-platform deployability • Windows Mobile, J2ME, Symbian, Palm, IVR, Browser-based, etc. • Facilitate collaboration • Each group can focus on their own tools and/or platforms; leveraging the work of others for additional components
Key Principles • Open source • Standards-based • Cross platform • Collaboration and Re-use
Possible Next Steps • Wiki, Mailing List • Review Xforms specification • Assess the work involved in being compatible • Resolve ambiguities, conflicts, omissions etc. • Identify possibilities for code-level collaboration and re-use • Find other like-minded efforts • Start hacking!