Template:— MoDAvDEXmessage_consumption_of_life (MoDAvmsg_con_life)
Context:— MoDAvDEX
Date: 2008/03/12 21:25:54
Revision: 1.17

This section specifies the template MoDAvDEXmessage_consumption_of_life.

NOTE  The template has been defined in the context of MoDAvDEX. Refer to the business context for details of related templates.

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 a message reporting when a reportable item has consumed life.

Business perspective
Consumption of life messages represent a record of when a reportable items life has been consumed by some activity. The consumption of life messages are triggered when the activity that lead to the consumption of life has completed..
Business object definition

The information necessary to record the consumption of the life of a reportable item can be summarized by the UML class diagram shown in Figure 1.

NOTE    Descriptions of the information represented by the UML classes is provided in: Aviation Maintenance DEX: Business Information Requirements.



Figure 1 —  UML model representing consumption of life

Figure 1 —  UML model representing consumption of life

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

Figure 2 shows the templates required to represent consumption of life by a reportable item. The templates shown in yellow in Figure 2 are standard OASIS template. Those shown in light green are business templates developed specifically for the MoDAvDEX context.

Further details of how to represent consumption of life by a reportable item using ISO 10303 239 PLCS is provided in Aviation Maintenance DEX: Representing a reportable item usage activity - PLCS representation.

The following mandatory templates are shown in Figure 2 and used to represent different aspects of representing consumption of life.

Template: #1 MoDAvDEX.MoDAvDEXmessage
The template: #1 MoDAvDEX.MoDAvDEXmessage (Figure 2) is used to represent the message meta data.
Template: #2 MoDAvDEX.reportable_item_usage
the template: #2 MoDAvDEX.reportable_item_usage (Figure 2) is used to represent the sortie that was flown.
Template: #3 MoDAvDEX.reportable_item
the template: #3 MoDAvDEX.reportable_item (Figure 2) is used to represent the reportable item (normally an aircraft) that has flown the sortie.
Template: #4 MoDAvDEX.reportable_item_property
the template: #4 MoDAvDEX.reportable_item_property (Figure 2) is used to represent the life property of the reportable item that has been increased by the sortie. Normally flying hours.
Template: #5 assigning_justification_support_item
the template: #5 assigning_justification_support_item (Figure 2) is used to establish the relationship between the life property and the sortie to record the reason for the increase in property value.
Template: #6 assigning_justification
the template: #6 assigning_justification (Figure 2) is used to establish the relationship between the life property and the sortie to record the reason for the increase in property value.


Figure 2 —  An EXPRESS-G representation of the Information model for MoDAvDEXmessage_consumption_of_life

Figure 2 —  An EXPRESS-G representation of the Information model for MoDAvDEXmessage_consumption_of_life

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


Figure 3 —  The graphical representation of the MoDAvDEXmessage_consumption_of_life template

Figure 3 —  The graphical representation of the MoDAvDEXmessage_consumption_of_life template

Input parameters
The following input parameters are defined for this template:
msg_identifier (Type='STRING')
The identifier of the message.
sent_year (Type= 'TYPE (year_number)' )
Calendar_date year_component of the date that the message was sent.
sent_month (Type= 'TYPE (month_in_year_number)' )
Calendar_date month_component of the date that the message was sent.
sent_day (Type= 'TYPE (day_in_month_number)' )
Calendar_date day_component of the date that the message was sent.
sent_hour (Type= 'TYPE (hour_in_day)' )
Local_time hour_component of the date and time that the message was sent.
sent_minute (Type= 'TYPE (minute_in_hour)' , Optional)
Local_time minute_component of the date and time that the message was sent. This parameter is optional. If not given, it will remain unset.
sent_second (Type= 'TYPE (second_in_minute)' , Optional)
Local_time second_component of the date and time that the message was sent. This parameter is optional. If not given, it will remain unset.
sender_organization (Type='STRING')
The name or identifier of the sending organization.
receiver_organization (Type='STRING')
The name or identifier of the receiving organization.
contract_identifier (Type='STRING')
The name or identifier of the contract.
extract_year (Type= 'TYPE (year_number)' )
Calendar_date year_component of the date that the information in the message was extracted from the sending system.
extract_month (Type= 'TYPE (month_in_year_number)' )
Calendar_date month_component of the date that the information in the message was extracted from the sending system.
extract_day (Type= 'TYPE (day_in_month_number)' )
Calendar_date day_component of the date that the information in the message was extracted from the sending system.
extract_hour (Type= 'TYPE (hour_in_day)' )
Local_time hour_component of the date that the information in the message was extracted from the sending system.
extract_minute (Type= 'TYPE (minute_in_hour)' , Optional)
Local_time minute_component of the date that the information in the message was extracted from the sending system. This parameter is optional. If not given, it will remain unset.
extract_second (Type= 'TYPE (second_in_minute)' , Optional)
Local_time day_component of the date and time the message is extracted. This parameter is optional. If not given, it will remain unset.
security_class (Type='CLASS')
The name of the class being used to classify the security level. (Security_classification_assignment)
The following classes and their sub-classes can be used:
classifications: [ModAvDEX_Security_classification]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
serial_number (Default=/NULL,Type='STRING', Optional)
The serial_number of the reportable item that is input to the activity.
part_number (Default=/NULL,Type='STRING', Optional)
The part_number of the reportable item that is input to the activity.
supplier (Default=/NULL,Type='STRING', Optional)
The supplier of the reportable item that is input to the activity.
NSN (Default=/NULL,Type='STRING', Optional)
The NSN of the reportable item that is input to the activity.
activity_identification (Default=/NULL,Type='STRING')
The identifier of the activity.
activity_identification_code (Type='CLASS')
The type of identifier of the activity.
The following classes and their sub-classes can be used:
classifications: [ModAvDEX_Product_usage_code]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
start_time_year (Type= 'TYPE (year_number)' )
Calendar_date year_component of the date the activity was started.
start_time_month (Type= 'TYPE (month_in_year_number)' )
Calendar_date month_component of the date the activity was started.
start_time_day (Type= 'TYPE (day_in_month_number)' )
Calendar_date day_component of the date the activity was started.
start_time_hour (Type= 'TYPE (hour_in_day)' )
Local_time year_component of the date and time the date the activity was started.
start_time_minute (Type= 'TYPE (minute_in_hour)' , Optional)
Local_time minute_component of the date and time the activity started. This parameter is optional. If not given, it will remain unset.
start_time_second (Type= 'TYPE (second_in_minute)' )
Local_time day_component of the date and time the activity was started. This parameter is optional. If not given, it will remain unset.
activity_type (Type='CLASS')
A code specifying the type of usage activity.
The following classes and their sub-classes can be used:
classifications: "Product_usage_activity_method" (urn:plcs:rdl:std:Product_usage_activity_method)
property_name (Type='CLASS')
The class name corresponding to the property name.
The following classes and their sub-classes can be used:
classifications: [ModAvDEX_Product_property]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
property_value (Type= 'TYPE (any_number_value)' )
The value of the property. The datatype must also be indicated in this parameter, e.g. "ANY_NUMBER_VALUE(5)".
property_unit (Type='CLASS')
The class name of the unit in which the value is expressed.
The following classes and their sub-classes can be used:
classifications: [ModAvDEX_Unit]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
property_si_unit (Type='BOOLEAN')
Value should be set to true if the unit is a SI base unit defined by ISO, i.e. kilogram (kg) for Mass, second (s) for Time, metre (m) for Displacement, ampere (A) for Electrical current, kelvin (K) for Temperature, mole (mol) for Amount of substance, and candela (cd) for Luminous intensity. If this is not the case it should be set to false.
Note that the representation of true and false depends on exchange format. In Part 11 (a STEP file) true is represented by the string ".T.", and false by ".F.", while in Part 28 (XML) they are represented by text strings "true" and "false".
property_year (Type= 'TYPE (year_number)' )
The year component of the creation date of the property value.
property_month (Type= 'TYPE (month_in_year_number)' )
The month component of the creation date of the property value.
property_day (Type= 'TYPE (day_in_month_number)' )
The day component of the creation date of the property value.
property_hour (Type= 'TYPE (hour_in_day)' )
The hour component of the creation date of the property value.
property_minute (Type= 'TYPE (minute_in_hour)' , Optional)
The minute component of the creation date of the property value This parameter is optional. If not given, it will remain unset.
property_second (Type= 'TYPE (second_in_minute)' , Optional)
The second component of the creation date of the property value This parameter is optional. If not given, it will remain unset.
property_org_id (Type='STRING')
The name or identifier of the organization declaring the property.
property_value_type (Type='CLASS')
meter_reading - the value measured on the meter; cumulative - the cumulative value taking into account the changing of meters; sortie - the value of sortie related data not use for calculating life. E.g fuel consumed.
The following classes and their sub-classes can be used:
classifications: [meter_reading_value]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
[cumulative_value]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
[sortie_value]
[warning:]Error RDL4: The URI urn:plcs:rdl:LITS is not listed in dexlib/data/refdata/rdl_index.xml
Reference parameters
The following reference parameters are defined for this template:
message(Type='ENTITY (Message)')
Allow the Message entity instantiated in this path to be referenced when this template is used.
Note: The Message entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.message%
where target is the parameter to which the Message is bound.
par(Type='ENTITY (Product_as_realized)')
Allow the Product_as_realized entity instantiated in this path to be referenced when this template is used.
Note: The Product_as_realized entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.par%
where target is the parameter to which the Product_as_realized is bound.
view(Type='ENTITY (Product_as_individual_view)')
Allow the Product_as_individual_view entity instantiated in this path to be referenced when this template is used.
Note: The Product_as_individual_view entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.view%
where target is the parameter to which the Product_as_individual_view is bound.
act_act(Type='ENTITY (Activity_actual)')
Allow the Activity_actual entity instantiated in this path to be referenced when this template is used.
Note: The Activity_actual entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.act_act%
where target is the parameter to which the Activity_actual is bound.
act_method(Type='ENTITY (Activity_method)')
Allow the Activity_method entity instantiated in this path to be referenced when this template is used.
Note: The Activity_method entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.act_method%
where target is the parameter to which the Activity_method is bound.
property(Type='ENTITY (Assigned_property)')
Allow the Assigned_property entity instantiated in this path to be referenced when this template is used.
Note: The Assigned_property entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.property%
where target is the parameter to which the Assigned_property is bound.
prop_val_rep(Type='ENTITY (Property_value_representation)')
Allow the Property_value_representation entity instantiated in this path to be referenced when this template is used.
Note: The Property_value_representation entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.prop_val_rep%
where target is the parameter to which the Property_value_representation is bound.
part(Type='ENTITY (Part)')
Allow the Part entity instantiated in this path to be referenced when this template is used.
Note: The Part entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.part%
where target is the parameter to which the Part is bound.
part_version(Type='ENTITY (Part_version)')
Allow the Part_version entity instantiated in this path to be referenced when this template is used.
Note: The Part_version entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.part_version%
where target is the parameter to which the Part_version is bound.
justification(Type='ENTITY (Justification)')
Allow the Justification entity instantiated in this path to be referenced when this template is used.
Note: The Justification entity can be referenced in a template path by:
%^target = $MoDAvDEXmessage_consumption_of_life.justification%
where target is the parameter to which the Justification 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 Templates Help/Information section.
-- Instantiate the reportable item
/reportable_item(
    serial_number=@serial_number,
    part_number=@part_number,
    supplier=@supplier,
    NSN=@NSN)/
%^par = $reportable_item.par%
%^view = $reportable_item.view%
%^part = $reportable_item.part%
%^part_version = $reportable_item.part_version%
/reportable_item_usage(
    usage_identification=@activity_identification,
    usage_identification_code=@activity_identification_code,
    start_time_year=@start_time_year,
    start_time_month=@start_time_month,
    start_time_day=@start_time_day,
    start_time_hour=@start_time_hour,
    start_time_minute=@start_time_minute,
    start_time_second=@start_time_second,
    usage_code=@activity_type,
    rep_item=^par)/
%^act_act = $reportable_item_usage.act_act%
%^act_method = $reportable_item_usage.act_method%
/MoDAvDEXmessage(
    msg_identifier=@msg_identifier,
    sent_year=@sent_year,
    sent_month=@sent_month,
    sent_day=@sent_day,
    sent_hour=@sent_hour,
    sent_minute=@sent_minute,
    sent_second=@sent_second,
    sender_organization=@sender_organization,
    receiver_organization=@receiver_organization,
    contract_identifier=@contract_identifier,
    extract_year=@extract_year,
    extract_month=@extract_month,
    extract_day=@extract_day,
    extract_hour=@extract_hour,
    extract_minute=@extract_minute,
    extract_second=@extract_second,
    security_class=@security_class,
    content=^act_act)/
%^message = $MoDAvDEXmessage.message%

-- instantiate reportable item life property
/reportable_item_property(
    property_name=@property_name,
    property_value=@property_value,
    property_unit=@property_unit,
    unit_ecl_id='urn:plcs:rdl:LITS',
    si_unit=@property_si_unit,
    year=@property_year,
    month=@property_month,
    day=@property_day,
    hour=@property_hour,
    minute=@property_minute,
    second=@property_second,
    org_id=@property_org_id,
    value_type=@property_value_type,
    described_element=^view)/
%^property = $reportable_item_property.property%
%^prop_val_rep = $reportable_item_property.prop_val_rep%

-- instantiate justification of the property
/assigning_justification(
    just_item=^prop_val_rep,
    just_asgn_role='Justification_assignment_role',
    role_ecl_id='urn:plcs:rdl:std',
    just_txt='property changed by')/
%^justification = $assigning_justification.justification%
/assigning_justification_support_item(
    support_item_role='Justification_support_assignment_role',
    role_ecl_id='urn:plcs:rdl:std',
    justification=^justification,
    just_supp_item=^act_act)/
Instance diagrams
The instance diagram in Figure  4 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/MoDAvDEXmessage_consumption_of_life(msg_identifier='Msg_cons_life_1', sent_year='2007', sent_month='12', sent_day='20', sent_hour='20', sent_minute='20', sent_second='0', sender_organization='BigAirways Ltd', receiver_organization='AircraftRepairs Ltd', contract_identifier='Ct-1', extract_year='2007', extract_month='12', extract_day='20', extract_hour='20', extract_minute='18', extract_second='0', security_class='unclassified', serial_number='Engine-00001', part_number='RB200_engine', supplier='EngineMaker Ltd', NSN='NSN-RB200_engine', activity_identification='Engine test 1', activity_identification_code='Activity_identification_code', start_time_year='2007', start_time_month='12', start_time_day='20', start_time_hour='11', start_time_minute='20', start_time_second='0', activity_type='Engine_test', property_name='Engine_hours_consumed_property', property_value='2000', property_unit='Engine_hours', property_si_unit='false', property_year='2007', property_month='12', property_day='20', property_hour='11', property_minute='20', property_second='0', property_org_id='BigAirways Ltd', property_value_type='Engine_test')/


Figure 4 —  Entities instantiated by MoDAvDEXmessage_consumption_of_life template

Figure 4 —  Entities instantiated by MoDAvDEXmessage_consumption_of_life template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is provided in the file MoDAvDEXmessage_consumption_of_life_inst.p21. The instance model in STEP ASCII exchange file format (ISO 10303 Part 28 syntax) provided in the file MoDAvDEXmessage_consumption_of_life_inst.xml.
Characterizations
No common characterizations of the template MoDAvDEXmessage_consumption_of_life have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.

© UK MOD 2010 — All rights reserved