An infrastructure is provided for creating applications for mobile
information devices, using a tag-based markup language, MIDML.
Applications are defined based on easily manipulated textual tags,
without need for writing specific code. The tags are processed to
ultimately generate source code files. Initially, the input is parsed.
Next, a hierarchical object model of the application is populated with
objects. Separate readers read and parse the different tags and
accompanying elements. The readers are registered in a descriptor object
factory, to be instantiated as required in processing extended MIDML
files. The object model enables the capabilities of the system to be
easily extended, simply by adding new tags, and readers to the existing
factory set. The resulting object model is accessible to a generator that
produces the actual output.