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.
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
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
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