/
Step 2: The application.xml file

Step 2: The application.xml file

Introduction

An application is defined by the application.xml file stored inside setup folder, like a composer.json file for Composer packages

This file contains two sections: application meta data and application components.

Application meta data section contains information regarding the application, like application identifier name, description, version, release date, author, dependencies, license and so on.

Application components section lists all the elements of the application with their attributes: database tables, PHP class files, desktop panels, localized strings, etc.

All application components must be listed inside the components section in order to be properly deployed, updated and enabled to tenants. Application components are then referenced inside the Innomatic components register, so an application must fully declare itself in application.xml file to work.

Meta data and components parts

<?xml version='1.0'?>
<application>
	<definition>
		<idname>example-basic-app</idname>
		<release>
			<version>1.0.0</version>
            <date>2014/10/07</date>
			<changesfile>CHANGES</changesfile>
		</release>
		<description>Innomatic example: basic application</description>
		<category>examples</category>
		<iconfile></iconfile>
		<dependencies>
			<dependency>innomatic[6.4.0]</dependency>
		</dependencies>
		<options>
			<!-- <option></option> -->
		</options>

		<legal>
			<author>
				<name>Innomatic Company</name>
				<email>info@innomatic.io</email>
				<web>http://www.innomatic.io/</web>
			</author>
			<copyright>Copyright (c) 2014 Innomatic Company</copyright>
			<license>New BSD</license>
			<licensefile>LICENSE</licensefile>
		</legal>
		<support>
			<supportemail>support@innomatic.io</supportemail>
			<bugsemail>bugs@innomatic.io</bugsemail>
			<maintainer>
				<name>Alex Pagnoni</name>
				<email>alex.pagnoni@innomatic.io</email>
			</maintainer>
		</support>
	</definition>

	<components>

        <tempdir name="example-basic-app" />

		<domaingroup name="examples"
			catalog="example-basic-app::misc" />

		<domaintable name="example_basic_table"
			file="example_basic_table.xml" />

		<domainpanel name="basicapp"
			catalog="example-basic-app::misc" category="examples" />

		<catalog name="example-basic-app" />

        <class name="examples/basic/BasicClass.php" />

	</components>
</application>

Next: Step 3: Internal packages and frameworks

Related content

Step 1: Structure of an Innomatic application
Step 1: Structure of an Innomatic application
More like this
Step 2: Deploying applications
Step 2: Deploying applications
More like this
Step 3: Enabling applications to tenants
Step 3: Enabling applications to tenants
More like this
Step 1: Creating a tenant
Step 1: Creating a tenant
More like this
Enabling applications to tenants
Enabling applications to tenants
More like this
Step 8: Directories
Step 8: Directories
More like this