What are the differences between OpenRosa, JavaRosa and J2MERosa?
OpenRosa is a consortium formed to create open source, standards-based tools for mobile data collection, aggregation, analysis, and reporting. OpenRosa's most well known projects are JavaRosa and J2MERosa. Both rely on XForms as the primary means of exchanging form data.
JavaRosa is a Java Standard Edition (J2SE) framework for building data collection applications on Java enabled devices. javarosa-core contains the code that builds the framework. javarosa-validator and Open Data Kit, and openXdata are examples of applications that use JavaRosa.
J2MERosa maps JavaRosa into a Java Mobile Edition (J2ME) framework for data collection applications on J2ME enabled devices. javarosa-core, j2merosa-extensions, j2merosa-activities contain the building blocks of this framework. j2merosa-examples, CommCare and EpiSurveyor are examples of applications that use J2MERosa.
How does the JavaRosa community use XForms?
The JavaRosa community uses a subset of the XForms specification to describe the form's data, constrains, controls and submissions. We currently only support a subset of the specification, and in some cases, support it in idiosyncratic ways. Additionally, unlike standard XForms, the look and feel of the form is determined by each JavaRosa application.
JavaRosa has also a defined a number of additions to the XForms specification which improve the data collection experience. These additions are supported only by JavaRosa, and have been created when no XForms idiom is sufficient for our use cases. We have attempted to keep our customizations as close to the XForms spec and spirit when possible.
Where can I get a demo of some JavaRosa products?
If you are technically inclined, try the Getting Started guide to download and run the source code.