Schema Documentation for http://studierstube.icg.tu-graz.ac.at/april

Author: Florian Ledermann (ledermann@ims.tuwien.ac.at)

This is the schema documentation of the APRIL Components sub-schema. For the main APRIL Schema, see the APRIL specification. To get an overview over this schema, you can also use its graphical representation.

Global Elements

component

Description

Specifiaction and implementation of an APRIL component

Attributes

id
xs:ID The id of the component. This should be unique.

Sub-Elements

interface

Description

Wrapper for the interface definition (i.e. field declarations) of the component.

Sub-Elements

field

of Type fieldType

Description

A field of the component that can be used for input and output of information. Should be matched by a "in" and a "out" element in each implementation.

Inherited Attributes

from fieldType :
id
The fields id/name. This is referenced by the in/out markers in the implementation and in the presentation file.
type
Type of the field. One of the OIV basic types.
default
Default value if no other value is specified.
const
If this is true, the field may be initialized, but not changed afterwards. Only enforced for inputs.
useconfig
NOT IMPLEMENTED. This will be used to read a configuration value from the setup file directly into a component to influence its behaviour independent from the actual presentation.

interface

input

of Type fieldType

Description

An input field of the component. Has to be matched by an "in" marker element in the implementation.

Inherited Attributes

from fieldType :
id
The fields id/name. This is referenced by the in/out markers in the implementation and in the presentation file.
type
Type of the field. One of the OIV basic types.
default
Default value if no other value is specified.
const
If this is true, the field may be initialized, but not changed afterwards. Only enforced for inputs.
useconfig
NOT IMPLEMENTED. This will be used to read a configuration value from the setup file directly into a component to influence its behaviour independent from the actual presentation.

interface

output

of Type fieldType

Description

An output field of the component. Has to be matched by an "out" marker in each implementation.

Inherited Attributes

from fieldType :
id
The fields id/name. This is referenced by the in/out markers in the implementation and in the presentation file.
type
Type of the field. One of the OIV basic types.
default
Default value if no other value is specified.
const
If this is true, the field may be initialized, but not changed afterwards. Only enforced for inputs.
useconfig
NOT IMPLEMENTED. This will be used to read a configuration value from the setup file directly into a component to influence its behaviour independent from the actual presentation.

interface

component

implementation

of Type contentType

Description

Wrapper for an implementation (of possibly several) of the component. Put your code in here.

Inherited Attributes

from contentType :

Attributes

type
The type (=host language) of this implementation. At the moment, the only possible value is "OpenInventor"
requires
xs:string Additional requirements (libraries, files) to run this component. This is a list of space-seperated URLs. The exact meaning of it is language dependent. For OIV components, these are pointers to additional classes that are loaded form external dlls, specified by the syntax path_to_dll/dllName#className (please do not specify the extension .dll, as this is platform dependent)

component

id

Description

A marker that will be replaced by a unique id of the instance at APRIL compile time. Use this as a prefix for your internal names to guarantee unique identifiers even if multiple instances of the component are used.

Global Simple Types

Global Complex Types

contentType

Syntax

Description

Type used for the implementation

Sub elements

in

of Type refType

Description

A marker for the actual input in the implementation. The exact usage of this is language dependent. For OIV components, this is used instead of the field value of a field that you want to control, and must be empty.

Inherited Attributes

from refType :
id
The id of the field this marker refers to.

contentType

out

of Type refType

Description

A marker for the actual output in the implementation. The exact usage of this is language dependent. For OIV components, this can appear anywhere in your implementation and should contain the full reference name (DEFname.fieldname) of the field that is used for output, and can therefore also contain id markers.

Inherited Attributes

from refType :
id
The id of the field this marker refers to.

contentType

fieldType

Syntax

Attributes

id
The fields id/name. This is referenced by the in/out markers in the implementation and in the presentation file.
type
Type of the field. One of the OIV basic types.
default
Default value if no other value is specified.
const
If this is true, the field may be initialized, but not changed afterwards. Only enforced for inputs.
useconfig
NOT IMPLEMENTED. This will be used to read a configuration value from the setup file directly into a component to influence its behaviour independent from the actual presentation.

Description

Type used for fields, inputs and outputs

refType

Syntax

Attributes

id
The id of the field this marker refers to.

Description

Type used for the in and out markers inside the implementation

Comments