Template:— assigning_condition (asg_cond) Date: 2008/03/11 16:14:31
Revision: 1.17

This section specifies the template assigning_condition.

NOTE  An explanation of a template and the associated instantiation path is provided in the Template overview section.

Description
This template describes how to assign a computable condition containing one computable condition parameter. A condition is computable when its condition parameter(s) can be evaluated against recorded data without recourse to human intervention. This template enables:
Model diagrams
The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "assigning_condition". The text highlighted in blue shows the template parameters.


Figure 1 —  EXPRESS-G representation for the template 'assigning_condition'

Figure 1 —  EXPRESS-G representation for the template 'assigning_condition'

The graphic for the template to be used in other EXPRESS-G diagrams is shown in Figure  2 below.


Figure 2 —  Graphical representations for the template 'assigning_condition'

Figure 2 —  Graphical representations for the template 'assigning_condition'

Input parameters
The following input parameters are defined for this template:
cond_item (Type= 'SELECT (condition_item)' )
The item to which the Condition_assignment is assigned
cond_asg_class (Type='CLASS')
The name of the class used to classify the Condition_assignment and to provide the role or reason for the condition.
The following classes and their sub-classes can be used:
classifications: "Condition_assignment" (urn:plcs:rdl:std:Condition_assignment)
cond_asg_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the definition of the class referenced by the parameter @cond_asg_class.
cond_class (Type='CLASS')
Type of Condition that can be evaluated.
The following classes and their sub-classes can be used:
classifications: "Comparative_condition" (urn:plcs:rdl:std:Comparative_condition)
cond_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the definition of the class referenced by the parameter @cond_class.
cond_para_item (Type= 'SELECT (condition_parameter_item)' )
The item consituting the Condition_parameter.
Reference parameters
The following reference parameters are defined for this template:
cond(Type='ENTITY (Condition)')
Allow the Condition entity instantiated in this path to be referenced when this template is used.
Note: The Condition entity can be referenced in a template path by:
%^target = $assigning_condition.cond%
where target is the parameter to which the Condition is bound.
cond_asg(Type='ENTITY (Condition_assignment)')
Allow the Condition_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Condition_assignment entity can be referenced in a template path by:
%^target = $assigning_condition.cond_asg%
where target is the parameter to which the Condition_assignment is bound.
cond_para(Type='ENTITY (Condition_parameter)')
Allow the Condition_parameter entity instantiated in this path to be referenced when this template is used.
Note: The Condition_parameter entity can be referenced in a template path by:
%^target = $assigning_condition.cond_para%
where target is the parameter to which the Condition_parameter is bound.
Instantiation path
The instantiation path shown below specifies the entities that are to be instantiated by the template.
A description of templates and the syntax for the instantiation path is provided in the Reading Capability Templates help section.
-- Mark the Condition entity as
-- referable when this template is used by binding it to the reference
-- parameter ^cond
%^cond = Condition%
Condition.name = '/IGNORE'
Condition.description = '/IGNORE'

-- Provide type of computable condition by the assignment of reference data
/assigning_reference_data(
    items=^cond,
    class_name=@cond_class,
    ecl_id=@cond_ecl_id)/

-- Mark the Condition_assignment entity as
-- referable when this template is used by binding it to the reference
-- parameter cond_asg
%^cond_asg = Condition_assignment%
Condition_assignment.item -> @cond_item
Condition_assignment.assigned_condition -> ^cond

-- Provide the role of the condition by the assignment of reference data
/assigning_reference_data(
    items=^cond_asg,
    class_name=@cond_asg_class,
    ecl_id=@cond_asg_ecl_id)/

-- Mark the Condition_parameter entity as
-- referable when this template is used by binding it to the reference
-- parameter cond_asg
%^cond_para = Condition_parameter%
Condition_parameter.description = '/IGNORE'
Condition_parameter.name = '/IGNORE'
Condition_parameter.condition -> ^cond
Condition_parameter.parameter -> @cond_para_item
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Condition.name '/IGNORE'
Condition.description '/IGNORE'
Condition_parameter.description '/IGNORE'
Condition_parameter.name '/IGNORE'
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_condition(cond_item='#3', cond_asg_class='Trigger', cond_asg_ecl_id='urn:plcs:rdl:sample', cond_class='Equals', cond_class_ecl_id='urn:plcs:rdl:std', cond_para_item='#5')/
(an illustration of the consolidated assigning_condition template is shown in Figure 4 below.)

The example shows the representation of a task trigger being associated with a specific type of part.

AP239 Issue (GYL-19)
The ISO-10303-239 1st edition does not support the Independent_property as being the parameter of Condition_parameter.

This has been raised as issue, GYL-19, against ISO 10303-239. The EXPRESS schema has been modified in DEXlib (Long form: dexlib/data/schemas/ap239_arm_lf.exp, short form: dexlib/data/schemas/ap239_arm_sf.exp). These changes will be made to ISO 10303-239 as a Technical Corrigendum at some stage.



Figure 3 —  Instance diagram instantiated by the template example

Figure 3 —  Instance diagram instantiated by the template example

The instance diagram in Figure 4 shows the graphic symbol for the template that is to be used in other instance diagrams. The example template is:
/assigning_condition(cond_item='#3', cond_asg_class='Trigger', cond_asg_ecl_id='urn:plcs:rdl:sample', cond_class='Equals', cond_class_ecl_id='urn:plcs:rdl:std', cond_para_item='#5')/


Figure 4 —  Invocation of template - graphical presentation

Figure 4 —  Invocation of template - graphical presentation

Characterizations
The following section details how the assigning_condition template can be optionally characterized by assigning other constructs to it. These are characterizations commonly applied to the template. The ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
The following characterizations may apply:
Characterization Assigning description

NOTE   this characterization is optional.

A assigning_descriptor may be assigned to either the Condition_assignment or the Condition in order to provide further information.

AP239 Issue (GYL-1)
The ISO-10303-239 1st edition does not support the assignment of a Document to a Condition_assignment.

This has been raised as issue, GYL-1, against ISO 10303-239. The EXPRESS schema has been modified in DEXlib (Long form: dexlib/data/schemas/ap239_arm_lf.exp, short form: dexlib/data/schemas/ap239_arm_sf.exp). These changes will be made to ISO 10303-239 as a Technical Corrigendum at some stage.

Characterization Assigning justification

NOTE   this characterization is optional.

A assigning_justification may be assigned to the Condition_assignment in order to provide further information about the justification for the defined condition.

AP239 Issue (GYL-2)
The ISO-10303-239 1st edition does not support the assignment of a Justification to a Condition_assignment.

This has been raised as issue, GYL-2, against ISO 10303-239. The EXPRESS schema has been modified in DEXlib (Long form: dexlib/data/schemas/ap239_arm_lf.exp, short form: dexlib/data/schemas/ap239_arm_sf.exp). These changes will be made to ISO 10303-239 as a Technical Corrigendum at some stage.

© OASIS 2008 — All rights reserved