An application definition defines the components of a flexible web layout and how they are arranged. When a flexible web layout loads in a browser it uses the application definition to set up the menus and dialogs. An application definition conforms to the ApplicationDefinition.xsd schema.
Infrastructure Studio is the preferred method for creating an application definition because its user interface manages the complexity of the underlying XML structure. Using Infrastructure Studio it is simple to add new widgets to an existing flexible web layout and rearrange or modify existing widgets. The resulting application definition is stored as an ApplicationDefinition resource in the Infrastructure Map Server site repository.
It is possible, however, to store an application definition in an external form, outside the site repository. Normally, when a flexible web layout loads in a browser, it checks for an application definition resource name passed as parameter to index.html. If this exists, then the application definition is loaded from the site repository. For example, the layout used in Flexible Web Layouts Examples passes the following as a GET parameter in the URL:
?ApplicationDefinition=Library%3a%2f%2fSamples%2f FlexibleWebLayouts%2fExamples.ApplicationDefinition
However, if the application definition path is not passed to index.html then the flexible web layout looks for the file ApplicationDefinition.xml, located in the same folder as index.html.
The default templates all include an ApplicationDefinition.xml file. This should be used an an example only, and does not necessarily represent the contents of an ApplicationDefinition resource stored in the site repository. Changing the flexible web layout using Infrastructure Studio will change the ApplicationDefinition resource but will not have any effect on the external ApplicationDefinition.xml file.