Capability (C048):— representing_condition_evaluated Date: 2012/05/23 17:48:01
Revision: 1.31

Business overview

This section provides a business level overview of this capability.

This capability describes how to represent a record of the evaluation of a conditional clause.

A conditional clause is an "if then else" statements consisting of operators and operands (parameters).

EXAMPLE    "If the measured value of oil pressure from gauge 3 on a car is less than 2 bar then check the oil level" is an example of a conditional clause.

Conditional clauses are typically used to represent when task should be done.

Information model overview

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

The information required to represent the record of an evaluated condition is summarized in the EXPRESS-G diagram in Figure 1 below and described in the following sections.



Figure 1 —  EXPRESS-G for an actual environment

Figure 1 —  EXPRESS-G for an actual environment

Representing an evaluated condition

The record of an evaluated condition is represented by Condition_evaluation. This is related back to the Condition that has been evaluated through the Condition_evaluation.condition attribute.

The consequences of the evaluation of the condition, that is the action that resulted, is represented by a Condition_evaluation_assignment relating the Condition_evaluation to the consequence.

A description of a Condition is provided in the capability C026: representing_condition.

Representing a Text Based Condition

The simplest representation of a condition is a text based description of an IF statement. The conditional statement will be of the form:

If text_based_condition Then consequence statement.

The text_based_condition could be any text describing the actual condition that was evaluated.

A text based condition is represented as follows:

The consequence statement is represented by:

The example in Figure 2 shows the evaluation of the condition:

If the tyre pressure is = 20 bars then state of the wheel is "Tyres OK".

The definition of the condition "If the tyre pressure is = 20 bars then state of the wheel is Tyres OK" is provided by Condition (#12). The "inputs" to the condition, i.e. the predicted tyre pressure, is specified by the Assigned_property (#24) which is related to Condition (#12) by Condition_parameter (#14).

NOTE    Details on how to present properties are provided in the capability C076: assigning_product_properties.

The record of the evaluated condition is provided by Condition_evaluation (#13) which is linked back to the definition (Condition (#12)) via the condition attribute.

The record of the actual parameters that were used to evaluate the condition are provided by Assigned_property (#23) which represents the actual pressure measured which is related to Condition_evaluation (#13) by Condition_evaluation_parameter (#17).



Figure 2 —  Example of evaluation of a text based expression.

Figure 2 —  Example of evaluation of a text based expression.

 

Representing a Comparison Expression

The condition in the conditional clause can represent a comparison between two condition parameters. The conditional statement will be of the form:

If comparison_expression Then consequence statement.

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

A comparison_expression is represented by:

The consequence statement is represented by:

The example in Figure 3 shows the evaluation of the condition:

If the initial pressure equals the final pressure bars then state of the wheel is "Tyres OK".



Figure 3 —  Example of evaluation of a comparison expression.

Figure 3 —  Example of evaluation of a comparison expression.

Representing a Logical expression

The condition in the conditional clause can represent a logical expression between condition parameters. The conditional statement will be of the form:

If logical_expression Then consequence statement.

The logical_expression part of the statement is often defined as:

operand1  comparison_operator  operand2.

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

A logical_expression is represented by combining conditions through

The consequence statement is represented by:

Characterization of evaluated condition

Open issue Issue: TJT-1 by Tim Turner (06-04-15) [major_technical, open] - {Type = contents}
The state of this capability is in question. Most of the reference data previously defined for use with the logical expressions defined within has been removed, which makes the the use of both the logical expressions and the reference data questionable. Similarly, the issue raised in RBN-1 implies that the logic used is also suspect in this capability and should be regarded as a major technical issue against the capability - with greater detail about the inadequacies.
Open issue Issue: TJT-2 by Tim Turner (06-04-15) [editorial, open] - {Type = contents}
This capability needs a template to allow the assignment of a condition_evaluation to an item, to relate it to a condition and to allow a related instance of condition_evaluation_parameter to be assigned a parameter item.
Open issue Issue: TJT-3 by Tim Turner (06-04-15) [minor_technical, open] - {Type = contents}
This capability needs reference data for the condition_evaluation, the condition_evaluation_assignment, and the condition_evaluation_parameter.
Open issue Issue: TJT-4 by Tim Turner (06-04-15) [minor_technical, open] - {Type = contents}
This capability needs to reference the use of a document to capture condition_evaluation statements, and associated reference data.
Open issue Issue: RBN-1 by Rob Bodington (03-11-04) [minor_technical, open] - {Type = contents}
I am not sure that the logical expressions will work.
Closed issue Issue: MRI-1 by Tom Hendrix (04-08-02) [minor_technical, closed] - {Type = contents}
Raise section Evaluated condition characterization to top level. Rename "Characterization"
Comment: (Rob Bodington 05-03-08)
Corrected
Closed issue Issue: MRI-2 by Tom Hendrix (04-08-02) [minor_technical, closed] - {Type = contents}
Create somewhere subsection called Identification.
Comment: (Rob Bodington 05-03-08)
Corrected
Closed issue Issue: MRI-3 by Tom Hendrix (04-08-02) [minor_technical, closed] - {Type = contents}
In section Representing an evaluated condition, the result is either true or false (or unknown?). No need to distinguish the types. I dont mind the two Figures 2, 3, especially since the ines in representing_condition are unreadible. But the text should just say that conditions and parameters are described in the related dex, and then talk about relating the evaluation to the condition parameter(s).
Closed issue Issue: MRI-4 by Tom Hendrix (04-08-02) [minor_technical, closed] - {Type = contents}
Figure 3 caption should say Example of evaluation of a comparison expression
Comment: (Mike Ward 2005-02-12)
Fixed.
Closed issue Issue: MRI-6 by Tom Hendrix (04-08-02) [minor_technical, closed] - {Type = contents}
Reference data that describes a condition should be left to the related capability representing_condition. In this capability just have evaluation reference data.
Comment: (Rob Bodington 05-03-08)
Corrected

Identification of evaluated condition

A Condition_evaluation is identified using Identification_assignment as described in the capability C001: assigning_identifiers.

Assigning a Person or Organization

The person or organization that evaluated the condition can be represented by assigning a Person_in_organization or Organization (using the relationship Organization_or_person_in_organization_assignment) to the Condition_evaluation

The Organization_or_person_in_organization_assignment is classified as "Observer of" (urn:plcs:rdl:std:Observer of).

NOTE    The assignment of a person or organization is described in the capability C016: representing_person_organization.

Classification

The Condition_evaluation can be classified. For example it may be a [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
.

The Condition_evaluation is classified by using Classification_assignment to assign an External_class where the External_class is defined as reference data stored in a reference data library. Reference data is described in the capability: C010: assigning_reference_data

Assigning Dates

The date when the Condition_evaluation was recorded can be represented by assigning a date (using the relationship Date_or_date_time_assignment) to the Condition_evaluation.

The Date_or_date_time_assignment will be classified as "Date actual observation" (urn:plcs:rdl:std:Date actual observation)

NOTE    The assignment of dates is described the capability C036: assigning_date_time.

Assigning documents

If there is documentation associated with the evaluation of condition, then a document can be assigned using the Document_assignment relationship as described in capability referencing_documents
[warning:]Error C1: Capability referencing_documents not in dex_index.xml
to Condition_evaluation.

Related capabilities

This capability "Representing an evaluated condition" is related to the following capabilities:

Dependent capabilities

This capability "Representing an evaluated condition" is dependent on the following capabilities:

Model reference data

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

[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
[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
Observer_of(urn:plcs:rdl:std:Observer_of)
An Observer_of is an Organization_or_person_in_organization_assignment that classifies the associated assigned_entity(organization_or_person_in_organization_select) as being the observer of the associated items. EXAMPLE: This could be used to define the person who observed a fault on an item of equipment.
Date_actual_observation(urn:plcs:rdl:std:Date_actual_observation)
date_actual that identifies the date or date and time on which an observation was actually made on the associated item.

© OASIS 2010 — All rights reserved