Capability (C007):— representing_state_type Date: 2008/01/28 13:34:35
Revision: 1.14

Business overview

This section provides a business level overview of this capability.

A state of someone or something, is referring to the condition they are in or what they are like at a particular time.

State definition defines the types of states that can, or can be expected to, exist.

Information model overview

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

Basic constructs

The state type capability is based on the State definition module for which there are three basic constructs:

NOTE    A relationship between state definitions could be specialized to describe:

Decription of a state type

A state type is represented as a State_definition entity. The name and description of a state type should be defined as reference data being assigned to the State_definition representing the state type. The representation and assignment of reference data is described in the C010: assigning_reference_data capability.

EXAMPLE    A typical class of state definitions that can be defined as reference data is "Failure mode".



Figure 1 —  Example of how the capability 'representing a state type' can be used to represent failure mode and functional failure as well as 
              the relationship between those state types

Figure 1 —  Example of how the capability 'representing a state type' can be used to represent failure mode and functional failure as well as the relationship between those state types

 

Definition of state type

A state type is defined by a condition, or a set of conditions, to which someone or something has to comply in order to be in the defined state.

The condition should be and assigned to the State_definition using the constructs of the C026: representing_condition capability.




[warning:]Error I1; The image filename: ../state type and condition.png contains whitespace
Figure 2 —  Example of state type definition using the 'representing a condition' capability

Figure 2 —  Example of state type definition using the 'representing a condition' capability

 

State definition relationship

A state definition relationship can be classified using the C010: assigning_reference_data capability.

EXAMPLE    An example of a class of state definition relationship that can be defined as reference data is "Failure effect".

Applied state definition assignment

The model allows for two different ways to descibe the purpose of a State_definition assignment:

EXAMPLE    An example of Applied_state_definition_assignment reference data is; "Valid for".

NOTE    Enumeration of entity types that a State_definition can be assigned to is outside the scope of this capability.

Characterization of state type

No further characteization of State_definition, State_definition_relationship and Applied_state_definition_assignment is needed to enable 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_state_type (Short name: asg_state_type)

This section specifies the template assigning_state_type.

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 state definitions (types of states), how to assign the state definition to something, and how to reference a state definition within a data set.

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


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

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

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_state_type template

Figure 2 —  The graphical representation of the assigning_state_type template

Input parameters
The following input parameters are defined for this template:
sd_class_name (Type='CLASS')
The name of the class that defines the state type.
The following classes and their sub-classes can be used:
classifications: "State_definition" (urn:plcs:rdl:std:State_definition)
sd_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @sd_class_name.
sd_role_class_name (Type='CLASS')
The name of the class that defines the role of the state type being assigned.
The following classes and their sub-classes can be used:
classifications: "Applied_state_definition_assignment" (urn:plcs:rdl:std:Applied_state_definition_assignment)
sd_role_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @sd_role_class_name.
assigned_to (Type= 'SELECT (state_definition_of_item)' )
The item to which the state type is assigned
Reference parameters
The following reference parameters are defined for this template:
appl_state_def_asg(Type='ENTITY (Applied_state_definition_assignment)')
Allow the Applied_state_definition_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Applied_state_definition_assignment entity can be referenced in a template path by:
%^target = $assigning_state_type.appl_state_def_asg%
where target is the parameter to which the Applied_state_definition_assignment is bound.
state_def(Type='ENTITY (State_definition)')
Allow the State_definition entity instantiated in this path to be referenced when this template is used.
Note: The State_definition entity can be referenced in a template path by:
%^target = $assigning_state_type.state_def%
where target is the parameter to which the State_definition is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Applied_state_definition_assignment
Each instance of the entity (Applied_state_definition_assignment) within the data set shall be uniquely identified by a combination of the following parameters on this template (assigning_state_type) namely: sd_class_name, sd_ecl_id, sd_role_class_name, sd_role_ecl_id, assigned_to.
The instance is referenced by the following template parameter: appl_state_def_asg.
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 Applied_state_definition_assignment entity as
-- referable when this template is used by binding it to the reference
-- parameter appl_state_def_asg
Applied_state_definition_assignment
%^appl_state_def_asg = Applied_state_definition_assignment%

-- Provide the described state definition
/representing_state_type(
    sd_class_name=@sd_class_name,
    sd_ecl_id=@sd_ecl_id)/

-- Bind ^state_def
%^state_def = $representing_state_type.state_def%

-- Populate the Applied_state_definition_assignment
Applied_state_definition_assignment.described_state_definition -> ^state_def
Applied_state_definition_assignment.assigned_to -> @assigned_to
Applied_state_definition_assignment.role -> State_definition_role
State_definition_role.name = '/IGNORE'
State_definition_role.description = '/IGNORE'

-- Provide the role of state type by classifying the Applied_state_definition_assignment
/assigning_reference_data(
    items=^appl_state_def_asg,
    class_name=@sd_role_class_name,
    ecl_id=@sd_role_ecl_id)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
State_definition_role.name '/IGNORE'
State_definition_role.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_state_type(sd_class_name='Corrosion', sd_ecl_id='urn:plcs:rdl:sample', sd_role_class_name='Possible_state', sd_role_ecl_id='urn:plcs:rdl:sample', assigned_to='#1')/
(an illustration of the consolidated assigning_state_type template is shown in Figure 4 below.)
The example shows that Part#1 can be subject for Corrosion.


Figure 3 —  Entities instantiated by assigning_state_type template

Figure 3 —  Entities instantiated by assigning_state_type template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = PART('/IGNORE','/IGNORE','/IGNORE'); #3 = STATE_DEFINITION('/IGNORE','/IGNORE'); #4 = STATE_DEFINITION_ROLE('/IGNORE','/IGNORE'); #5 = APPLIED_STATE_DEFINITION_ASSIGNMENT(#3,#1,#4); #7 = CLASSIFICATION_ASSIGNMENT(#9,(#3),'/IGNORE'); #9 = EXTERNAL_CLASS('/NULL','Corrosion','/IGNORE',#10); #10 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample',$); #12 = CLASSIFICATION_ASSIGNMENT(#14,(#5),'/IGNORE'); #14 = EXTERNAL_CLASS('/NULL','Possible_state','/IGNORE',#10);
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_state_type(sd_class_name='Corrosion', sd_ecl_id='urn:plcs:rdl:sample', sd_role_class_name='Possible_state', sd_role_ecl_id='urn:plcs:rdl:sample', assigned_to='#1')/


Figure 4 —  Instantiation of assigning_state_type template

Figure 4 —  Instantiation of assigning_state_type template

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

Descriptions can be assigned to the State_definition using assigning_descriptor, e.g. in order to describe a state type that than can be classified. This is useful e.g. in creating a Failure Modes and Effects and Criticality Analysis (FMECA).

Characterization Justification

NOTE   this characterization is optional.

Justifications can be assigned to the Applied_state_definition_assignment using assigning_justification, e.g. in order to define the circumstances that justifies a possible state.

AP239 Issue (GYL-2)
The ISO-10303-239 1st edition does not support the assignment of a Justification to a Applied_state_definition_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.

Characterization Assigning activity

NOTE   this characterization is optional.

Activities can be assigned to the Applied_state_definition_assignment using assigning_activity, e.g. in order to describe activities/events that may be a consequence of a defined state type.

Template: representing_state_type (Short name: rep_state_type)

This section specifies the template representing_state_type.

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 state definitions. State definitions define the types of states that can, or can be expected to, exist.

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


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

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

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_state_type template

Figure 2 —  The graphical representation of the representing_state_type template

Input parameters
The following input parameters are defined for this template:
sd_class_name (Type='CLASS')
The name of the class that defines the state type.
The following classes and their sub-classes can be used:
classifications: "State_definition" (urn:plcs:rdl:std:State_definition)
sd_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @sd_class_name.
Reference parameters
The following reference parameters are defined for this template:
state_def(Type='ENTITY (State_definition)')
Allow the State_definition entity instantiated in this path to be referenced when this template is used.
Note: The State_definition entity can be referenced in a template path by:
%^target = $representing_state_type.state_def%
where target is the parameter to which the State_definition is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: State_definition
Each instance of the entity (State_definition) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_state_type) namely: sd_class_name, sd_ecl_id.
The instance is referenced by the following template parameter: state_def.
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.
State_definition

-- Mark the State_definition entity as
-- referable when this template is used by binding it to the reference
-- parameter state_def
%^state_def = State_definition%
State_definition.name = '/IGNORE'
State_definition.description = '/IGNORE'

-- provide the state type by classifying the State_definition
/assigning_reference_data(
    items=^state_def,
    class_name=@sd_class_name,
    ecl_id=@sd_ecl_id)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
State_definition.name '/IGNORE'
State_definition.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_state_type(sd_class_name='Engine_overheated', sd_ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated representing_state_type template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_state_type template

Figure 3 —  Entities instantiated by representing_state_type template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = STATE_DEFINITION('/IGNORE','/IGNORE'); #2 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample','/IGNORE'); #3 = EXTERNAL_CLASS('/NULL','Engine_overheated','/IGNORE',#2); #4 = CLASSIFICATION_ASSIGNMENT(#3,(#1),'/IGNORE');
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_state_type(sd_class_name='Engine_overheated', sd_ecl_id='urn:plcs:rdl:sample')/


Figure 4 —  Instantiation of representing_state_type template

Figure 4 —  Instantiation of representing_state_type template

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

Related capabilities

This capability "Representing State Type" is related to the following capabilities:

Dependent capabilities

This capability "Representing State Type" is dependent on the following capabilities:

© OASIS 2010 — All rights reserved