Capability (C026):— representing_condition Date: 2010/11/28 21:16:39
Revision: 1.17

Business overview

This section provides a business level overview of this capability.

Condition can be used to express if-statements consisting of operators and operands (parameters).

Information model overview

This section provides an overview of the information model that supports this capability.

Comparison expression

Representing a Text Based Condition

Representing a Condition as a text based description is the simplest form of condition representation.

A text based condition could be expressed as an IF-statement as follows:

If text_based_condition Then statement sequence.

The text_based_condition could be any text, describing of the actual condition.

A text based condition is represented by the condition module as follows:




[warning:]Error I1; The image filename: ../Repr a text based condition.png contains whitespace
Figure 1 —  Example of a text based condition. The non-shaded entities are outside the scope of the 'Representing a condition' capability.

Figure 1 —  Example of a text based condition. The non-shaded entities are outside the scope of the 'Representing a condition' capability.

 

Representing a Comparison Expression

Representing a comparison expression as a condition includes the usage of condition parameters.

The representation of a comparison based condition could be expressed as an IF-statement as follows:

If comparison_expression Then statement sequence.

The comparison_expression part of the statement is often defined as:

operand1  comparison_operator  operand2.

The comparison operators are: 'Equals', 'Greater than', 'Greater than or equal to', 'Less than', 'Less than or equal to' and 'Not equal'.

This If-statement is represented by the condition module as follows:

  • Condition - Represents the If statement. The Condition should be classified as [Equals]
    [warning:]Error RDL1: The class Equals does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    , [GreaterThan]
    [warning:]Error RDL1: The class GreaterThan does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    , [GreaterThanOrEqualTo]
    [warning:]Error RDL1: The class GreaterThanOrEqualTo does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    , [LessThan]
    [warning:]Error RDL1: The class LessThan does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    , [LessThanOrEqualTo]
    [warning:]Error RDL1: The class LessThanOrEqualTo does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    or [NotEqual]
    [warning:]Error RDL1: The class NotEqual does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    ;
  • Condition_assignment - An association to the entity which is dependent upon the result of the If statement (represents the Then statement sequence);
  • Condition_parameter - Represents the operands. The Condition_parameter should be classified as [Operand1]
    [warning:]Error RDL1: The class Operand1 does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    or [Operand2]
    [warning:]Error RDL1: The class Operand2 does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    .



  • [warning:]Error I1; The image filename: ../Repr a comparison condition.png contains whitespace
    Figure 2 —  Example of a comparison based condition. The non-shaded entities are outside the scope of the 'Representing a condition' capability.

    Figure 2 —  Example of a comparison based condition. The non-shaded entities are outside the scope of the 'Representing a condition' capability.

     

    The example in Figure 2 represents the following condition :

    Task#13 will be performed on Part#29 IF the property flight hours of the the Part in which Part#29 is mounted is greater than the property flight hours interval of Part#29.

    Representing a Logical expression

    Representing a logical expression as a condition includes the usage of condition relationship.

    The representation of a logical expression as an IF-statement is often expressed as follows

    If logical_expression Then statement sequence.

    The logical_expression part of the statement is often defined as:

    comparison_expression_1 logical_operator comparison_expression_1.

    The logical operators are: 'AND', 'OR', 'XOR' and 'NOT'.

    A logical expression is represented by the condition module as follows:




    [warning:]Error I1; The image filename: ../Repr a logical expression condition.png contains whitespace
    Figure 3 —  Example of a logical expression condition. The conditions #36 and #37 could be either text-based, comparison or logical expression conditions.

    Figure 3 —  Example of a logical expression condition. The conditions #36 and #37 could be either text-based, comparison or logical expression conditions.

     

    Model Characterization

    This section specifies how the information model can be further characterized by the assignment of additional information such as dates, approvals and people or organizations.

    The following characterizations may apply.

    Characterization: Classification of a condition (Optional)

    A condition shall always be classified in accordance with the classes described above.

    NOTE    Multiple classifications of a condition is likely to occur.

    Characterization: Classification of a condition relationship (Optional)

    A condition relationship representing a logical expression should always be classified in accordance with the classes described above.

    NOTE    Multiple classifications of a condition relationship is likely to occur.

    Characterization: Classification of a condition parameter (Optional)

    A condition parameter shall always be classified in accordance with the classes described above.

    NOTE    Multiple classifications of a condition parameter is likely to occur.

    Characterization: Classification of a condition assignment (Optional)

    Classification of a condition assignment could be used to represent the role of the assignment.

    The classification is context dependent. An example of a classification of a condition assignment may be [TaskTrigger]
    [warning:]Error RDL1: The class TaskTrigger does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    in a maintenance plan.

    Out of scope

    Enumeration of entity types that a condition could be assigned to is outside the scope of this capability.

    Enumeration of entity types that could be referenced as condition parameters is outside the scope of this capability.

    Capability templates

    The following sections define a set of templates for the capability, where a template is a specification of a set of entities that need to be instantiated to represent a given set of information.

    Template: assigning_condition (Short name: asg_cond)

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

    Template: assigning_condition_parameter (Short name: asg_cond_para)

    This section specifies the template assigning_condition_parameter.

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

    Description

    This template describes how to represent the assignment of a condition parameter to a condition.

    Model diagrams
    The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "assigning_condition_parameter". The text highlighted in blue shows the template parameters.


    Figure 1 —  An EXPRESS-G representation of the Information model for assigning_condition_parameter

    Figure 1 —  An EXPRESS-G representation of the Information model for assigning_condition_parameter

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


    Figure 2 —  The graphical representation of the assigning_condition_parameter template

    Figure 2 —  The graphical representation of the assigning_condition_parameter template

    Input parameters
    The following input parameters are defined for this template:
    cond (Type= 'ENTITY (Condition)' )
    The condition to which the condition parameter is assigned.
    param (Type= 'SELECT (condition_parameter_item)' )
    The item that is used as a condition parameter.
    param_class_name (Type='CLASS')
    The name of the External_class used to classify the condition parameter, and so provide the role of the condition parameter.
    The following classes and their sub-classes can be used:
    classifications: "Condition_parameter" (urn:plcs:rdl:std:Condition_parameter)
    param_class_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
    The identifier of the External_class_library that stores the definition of the External_class referenced by parameter @param_class_name.
    Reference parameters
    The following reference parameters are defined for this template:
    cond_param(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_parameter.cond_param%
    where target is the parameter to which the Condition_parameter is bound.
    Uniqueness constraints

    The following parameter combinations specify a uniqueness constraint:
    Unique constraint: Condition parameter
    Each instance of the entity (Condition_parameter) within the data set shall be uniquely identified by a combination of the following parameters on this template (assigning_condition_parameter) namely: cond, param, param_class_name, param_class_ecl_id.
    The instance is referenced by the following template parameter: cond_param.
    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.
    Condition_parameter
    %^cond_param = Condition_parameter%
    Condition_parameter.name = '/IGNORE'
    Condition_parameter.description = '/IGNORE'
    Condition_parameter.condition -> @cond
    Condition_parameter.parameter -> @param

    -- provide the role of the Condition_parameter
    /assigning_reference_data(
        items=^cond_param,
        class_name=@param_class_name,
        ecl_id=@param_class_ecl_id)/
    The following entities are instantiated with attributes as specified:
    Entity in path Value Inherited from
    Condition_parameter.name '/IGNORE'
    Condition_parameter.description '/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_parameter(cond='#1', param='#2', param_class_name='Trigger', param_ecl_id='urn:plcs:rdl:sample')/
    (an illustration of the consolidated assigning_condition_parameter template is shown in Figure 4 below.)


    Figure 3 —  Entities instantiated by assigning_condition_parameter template

    Figure 3 —  Entities instantiated by assigning_condition_parameter template

    The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
    #1 = CONDITION('/IGNORE','/IGNORE'); #2 = INDEPENDENT_PROPERTY('/IGNORE','/IGNORE','/IGNORE'); #3 = CONDITION_PARAMETER('/IGNORE','/IGNORE',#1,#2); #5 = CLASSIFICATION_ASSIGNMENT(#6,(#3),'/IGNORE'); #6 = EXTERNAL_CLASS('/NULL','Trigger','/IGNORE',#7); #7 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample','/IGNORE');
    The instance model in STEP XML exchange file format (ISO 10303 Part 28 ed.2 syntax) is:
    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_parameter(cond='#1', param='#2', param_class_name='Trigger', param_ecl_id='urn:plcs:rdl:sample')/


    Figure 4 —  Instantiation of assigning_condition_parameter template

    Figure 4 —  Instantiation of assigning_condition_parameter template

    Characterizations
    No common characterizations of the template assigning_condition_parameter have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
    Template: assigning_condition_text_based (Short name: asg_cond_txt)

    This section specifies the template assigning_condition_text_based.

    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 text based condition, i.e assign a non-computable condition without condition parameters. 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_text_based". The text highlighted in blue shows the template parameters.


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

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

    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_descr (Type='STRING')
    Textual description of the condition being applied.
    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_text_based.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_text_based.cond_asg%
    where target is the parameter to which the Condition_assignment 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 condition by the assignment of reference data
    /assigning_reference_data(
        items=^cond,
        class_name='Text_based_condition',
        ecl_id='urn:plcs:rdl:std')/

    -- Provide the description of the text based condition
    /assigning_descriptor(
        is_assigned_to=^cond,
        descr=@cond_descr,
        class_name='Description',
        ecl_id='urn:plcs:rdl:std')/

    -- 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)/
    The following entities are instantiated with attributes as specified:
    Entity in path Value Inherited from
    Condition.name '/IGNORE'
    Condition.description '/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_descr='The task shall be initiated every 200 flight hours')/
    (an illustration of the consolidated assigning_condition template is shown in Figure 4 below.)
    The example shows a textual description of a task trigger being associated with a specific type of part.


    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_descr='The task shall be initiated every 200 flight hours')/


    Figure 4 —  Invocation of template - graphical presentation

    Figure 4 —  Invocation of template - graphical presentation

    Characterizations
    The following section details how the assigning_condition_text_based 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.

    Template: representing_condition_relationship (Short name: rep_cond_rel)

    This section specifies the template representing_condition_relationship.

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

    Description

    This template describes how to represent condition relationships such as logical expressions ('AND', 'OR' etc).

    Model diagrams
    The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "representing_condition_relationship". The text highlighted in blue shows the template parameters.


    Figure 1 —  An EXPRESS-G representation of the Information model for representing_condition_relationship

    Figure 1 —  An EXPRESS-G representation of the Information model for representing_condition_relationship

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


    Figure 2 —  The graphical representation of the representing_condition_relationship template

    Figure 2 —  The graphical representation of the representing_condition_relationship template

    Input parameters
    The following input parameters are defined for this template:
    class_name (Type='CLASS')
    The name of the External_class used to describe the role of the relationship.
    The following classes and their sub-classes can be used:
    classifications: "Condition_relationship" (urn:plcs:rdl:std:Condition_relationship)
    ecl_id (Default=urn:plcs:rdl:std,Type='URN')
    The id of the External_class_library storing the @class_name
    relating (Type= 'ENTITY (Condition)' )
    The Condition entity which relates to another Condition.
    related (Type= 'ENTITY (Condition)' )
    The Condition entity which is related to from another Condition.
    Reference parameters
    The following reference parameters are defined for this template:
    cond_rel(Type='ENTITY (Condition_relationship)')
    Allow the Condition_relationship entity instantiated in this path to be referenced when this template is used.
    Note: The Condition_relationship entity can be referenced in a template path by:
    %^target = $representing_condition_relationship.cond_rel%
    where target is the parameter to which the Condition_relationship is bound.
    Uniqueness constraints

    The following parameter combinations specify a uniqueness constraint:
    Unique constraint: Unique Condition Relationship
    Each instance of the entity (Condition_relationship) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_condition_relationship) namely: class_name, ecl_id, relating, related.
    The instance is referenced by the following template parameter: cond_rel.
    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.
    Condition_relationship

    -- Mark the Condition_relationship entity as
    -- referable when this template is used by binding it to the reference
    -- parameter cond_rel
    %^cond_rel = Condition_relationship%
    Condition_relationship.name = '/IGNORE'
    Condition_relationship.description = '/IGNORE'
    Condition_relationship.relating_condition -> @relating
    Condition_relationship.related_condition -> @related

    -- provide the role of the condition relationship by classifying the Condition_relationship
    /assigning_reference_data(
        items=^cond_rel,
        class_name=@class_name,
        ecl_id=@ecl_id)/
    The following entities are instantiated with attributes as specified:
    Entity in path Value Inherited from
    Condition_relationship.name '/IGNORE'
    Condition_relationship.description '/IGNORE'
    Instance diagrams
    The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
    /representing_condition_relationship(relating='#1', related='#2', class_name='AND', ecl_id='urn:plcs:rdl:sample')/
    (an illustration of the consolidated representing_condition_relationship template is shown in Figure 4 below.)


    Figure 3 —  Entities instantiated by representing_condition_relationship template

    Figure 3 —  Entities instantiated by representing_condition_relationship template

    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:
    /representing_condition_relationship(relating='#1', related='#2', class_name='AND', ecl_id='urn:plcs:rdl:sample')/


    Figure 4 —  Instantiation of representing_condition_relationship template

    Figure 4 —  Instantiation of representing_condition_relationship template

    Characterizations
    No common characterizations of the template representing_condition_relationship have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.

    Dependent capabilities

    This capability "Representing a Condition" is dependent on the following capabilities:

    Model reference data

    The following classes of reference data are required for this capability:

    And(urn:plcs:rdl:std:And)
    logical operator that requires the combined condition to be true.
    [Equals]
    [warning:]Error RDL1: The class Equals does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [GreaterThan]
    [warning:]Error RDL1: The class GreaterThan does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [GreaterThanOrEqualTo]
    [warning:]Error RDL1: The class GreaterThanOrEqualTo does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [LessThan]
    [warning:]Error RDL1: The class LessThan does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [LessThanOrEqualTo]
    [warning:]Error RDL1: The class LessThanOrEqualTo does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [LogicalOperator]
    [warning:]Error RDL1: The class LogicalOperator does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [Not]
    [warning:]Error RDL1: The class Not does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [NotEqual]
    [warning:]Error RDL1: The class NotEqual does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [Operand1]
    [warning:]Error RDL1: The class Operand1 does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [Operand2]
    [warning:]Error RDL1: The class Operand2 does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [Operands]
    [warning:]Error RDL1: The class Operands does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    Or(urn:plcs:rdl:std:Or)
    logical operator that requires at least one Conditions in the combined Condition to be true.
    [Xor]
    [warning:]Error RDL1: The class Xor does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [TextBasedCondition]
    [warning:]Error RDL1: The class TextBasedCondition does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
    [LogicalExpression]
    [warning:]Error RDL1: The class LogicalExpression does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml

    © OASIS 2010 — All rights reserved