Application Configuration

This page gives brief guidance to writing an application configuration file. This should be read in conjunction with the IVOA notes on CEA

The CEC has a model of an application that is used to specified the input and output parameter of the application

The UML model for an application is shown in the diagram below

application model

The interpretation of this diagram is that an application may have a set of parameters which might be organised into one or more interfaces (effectively a subset of the total parameter set), and that each interface has a set of input parameters and a set of outputs.

The configuration of the application follows this pattern in that the total set of parameters are defined first, and then the set of interfaces, and each interface consists of a set of references to the parameter definitions.

Parameters

This section specifies the general properties associated with parameters for all application types - see below for properties related to Commandline application parameters.

A parameter is characterised chiefly by its identifier (the id attribute) and its type (the type attribute). Each of the parameters should be given a particular type - The type assigned allows CEA clients to provide a suitable GUI representation and validation of the parameter. The following table lists the possible parameter types

Type Description Notes
integer an integer value

real

a real value (any precision)
complex a complex number pair
text any data that could be interpreted as human readable text in a well known encoding.
boolean a boolean value 0/1 true/false yes/no on/off - style determined by the default value
anyURI a string that could be interpreted as a URI.
VOTable a VOTable conforming to the IVOA specification
angle Angular measure on the sky sexagesimal allowed
MJD Modified julian data
DateTime A date and time in ISO 8601 format
ADQL Astronomical Query Language
binary arbitrary data Data for which there is no specific well known type
FITS a file conforming to the [FITS] standard
xml arbitrary xml

the schema for the xml is optionally indicated in the UType of the parameter

table some tablular data
image an astronomical image
spectrum a spectrum

The generic elements (all of which are optional) that can occur within any parameterDefinition are;

<name/>
the name that will be used for display in the portal for the parameter
<description/>
a description of the parameter that will be used in the portal
<UCD/>
the ucd for the parameter if it has one - at the moment nothing uses this.
<DefaultValue/>
can be used to display a default value in the portal
<unit/>
can be used to specify the units in the portal.
<UType/>
The UType associated with a parameter.
<mimeType/>
The mimeType of the parameter
<optionList/>
Allows the specification of a fixed set of possible values for the parameter.
<range/>
Allows a permissible range for the parameter to be set.

Interfaces

An application must have at least one interface - even for an application with only possible interface this construct distinguishes the actual input and output parameters. The parameters are represented in the interface within either the input or output element with a pref element that points to the identifier of the parameter in question. Each interface can additionally have a constants element that defines parameters that have a fixed value for that particular interface.

Note although the schema supports the concept of grouping parameters with pgroup, rgroup and cgroupHead elements, this facility is not yet supported by software components that make up the astrogrid suite, so these constructs should not be used in this release.

Configuration File

The configuration file should conform to the CeaImplementation.xsd, 2.0 schema (with namespace http://www.astrogrid.org/schema/CEAImplementation/v2.0)

This file should be of the same form as this example configuration file

To define more than one application in the single file then the CECConfig element should be used as a top-level element, but if only a single application is to be defined then a CeaApplication element can be used - it is possible to configure multiple applications each within their own separate file by placing them in a directory and then setting the "applicationDescriptionUrl" property of the configuration to point to that directory rather than an individual file.

Kinds of Applications

This page has discussed the features that are common to all kinds of CEA applications - to actually install an application it is necessary to use one of the specific types of application that the CEC is capable of running - Each of these kinds is discussed in more detail on a separate page