Template:— maintenance_activity (main_act)
Context:— MoDAvDEX
Date: 2008/03/13 22:27:37
Revision: 1.10

This section specifies the template maintenance_activity.

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 record of a maintenance activity that has taken place.

Business perspective
The maintenance activity record provides a historical record of work, either scheduled, or unscheduled that has been undertaken on a reportable item. The activity is always undertaken under the authorisation of a work order. See MoDAvDEX.work_order for details of a work order.
Business object definition

The information necessary to record a maintenance activity performed on a Reportable item can be summarized by the UML class diagram shown in Figure 1. For further information about using ISO 10303-239 PLCS to represent a maintenance activity, see Aviation Maintenance DEX: Representing reportable item maintenance activity . For details of the UML classes shown in Figure 1 see Aviation Maintenance DEX: Business Information Requirements - Information.



Figure 1 —  UML Model representing reportable item maintenance activity

Figure 1 —  UML Model representing reportable item maintenance activity

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

Figure 2 shows the templates required to represent a record of a maintenance activity. The templates shown in yellow in Figure 2 are standard OASIS templates. Those shown in light green are business templates developed specifically for the MoDAvDEX context.

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

The following mandatory templates are shown in Figure 2 and used to represent different aspects of the maintenance activity. Figure 2 also shows a number of optional templates which are described in the Characterizations section.

Template: #2 representing_work_done
The template: # representing_work_done (Figure 2) is used to represent a record of the work that has been done. It is assigned to the template: #5 MoDAvDEX.reportable_item_structure that represents the reportable item on which the work has been done.

NOTE    The template:MoDAvDEX.reportable_item_structure is used to identify the reportable item when fitted to an end item. If the reportable item is not fitted then, use the template MoDAvDEX.reportable_item.

NOTE    Some Engineering and Asset management systems version individual assets, that is a version number is associated with the asset to indicate that a change has been made to the asset. For example, when an engineering modification is made. If this is the case, the template: #5 MoDAvDEX.reportable_item_structure represents the reportable item before the change was made and template: #6 MoDAvDEX.reportable_item_structure represents the reportable item after the change was made. The work done is related to the reportable item that resulted from the change by the assigning_activity with the following values are set

Template #7,#4 (Figure 2): assigning_activity
Description
Parameter name: Parameter value: Parameter description:
role_class_name Activity_output The class name of the External_class corresponding to the role of the assignment, e.g. "Activity input" (urn:plcs:rdl:std:Activity input), or "Activity output" (urn:plcs:rdl:std:Activity output).
role_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @role_class_name.
assigned_activity   The Directed_activity instantiated by the MoDAvDEX.work_order and the Activity_actual instantiated by the template representing_work_done the
items   the reportable item

Template: #3 MoDAvDEX.work_order
The template: #3 MoDAvDEX.work_order (Figure 2) is used to represent the work order under whose authority the work was done. See MoDAvDEX.work_order for details.

NOTE    This template is required, but is not instantiated by the template MoDAvDEX.maintenance_activity.

Template: #9 MoDAvDEX.referencing_maintenance_task
The template: #9 MoDAvDEX.referencing_maintenance_task (Figure 2) is used to reference the standard maintenance task that has been carried out under the authority of the work order. If no standard maintenance task is used then use Template: #9a representing_typical_activity.
Template #9 (Figure 2): referencing_maintenance_task
Description
Parameter name: Parameter value: Parameter description:
task_id   The identifer of the task
task_version_id   The version of the task. If the task is not versioned use '/NULL'

NOTE    MoDAvDEX.referencing_maintenance_task is not instantiated by this template.

Template: #9a representing_typical_activity
The expectation is that Engineering and Asset management systems maintain a defined set of standard maintenance tasks. Work is then done in accordance with these tasks. The tasks are represented by the template #2 MoDAvDEX.referencing_maintenance_task. In the event that there is no predefined task for defining the work to be done, the template: #3 representing_typical_activity (Figure 2) is used to represent the standard description of an activity that has been performed under the authority of the work order.
Template #9a (Figure 2): representing_typical_activity
Description
Parameter name: Parameter value: Parameter description:
id @wo_id The identifier of the work order is used to identify the typical activity.
id_class_name Activity_method_identification_code The name of the class being used to classify the identification (Identification_assignment) of the typical activity. This provides the role or reason for the identification.
id_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @id_class_name class.
id_owner LITS The name or identifier of the organization owning the identifier of the typical activity.
id_owner_class_name Organization_name The name of the class being used to classify the identification of the organization. For example CAGE code, or organization name.
id_owner_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the @id_owner_class_name class
type Typical_activity The name of the class being used to classify the typical activity.
type_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @type class.

NOTE    representing_typical_activity is not instantiated by this template.

Template: #7 assigning_reference_data
The template: #7 assigning_reference_data (Figure 2) is used to represent the type of activity done.
Template: #9 assigning_organization
The template: #9 assigning_organization (Figure 2) is used to represent the organization that undertook the work.
Template: # assigning_time
The template: # assigning_time (Figure 2) is used to represent the time the activity was reported. This may be the same time as when the activity was completed.
Template: # assigning_approval
The template: # assigning_approval (Figure 2) is used to


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

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

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

Figure 3 —  The graphical representation of the maintenance_activity template

Input parameters
The following input parameters are defined for this template:
wd_id (Type='STRING')
The identifier of the maintenance activity.

NOTE    This will be the same identifier as the work order.

wd_org_id (Default=LITS,Type='STRING')
The name or identifier of the organization owning the identifier of the maintenance activity.
end_year (Type= 'TYPE (year_number)' )
The year component of the date the activity was completed .
end_month (Type= 'TYPE (month_in_year_number)' )
The month component of the date the activity was completed .
end_day (Type= 'TYPE (day_in_month_number)' )
The day component of the date the activity was completed .
end_hour (Type= 'TYPE (hour_in_day)' )
The hour component of the date the activity was completed .
end_minute (Type= 'TYPE (minute_in_hour)' )
The minute component of the date the activity was completed . This parameter is optional. If not given, it will remain unset.
end_second (Type= 'TYPE (second_in_minute)' )
The second component of the date the activity was completed . This parameter is optional. If not given, it will remain unset.
rep_year (Type= 'TYPE (year_number)' )
The year component of the date the activity was reported.
rep_month (Type= 'TYPE (month_in_year_number)' )
The month component of the date the activity was reported.
rep_day (Type= 'TYPE (day_in_month_number)' )
The day component of the date the activity was reported.
rep_hour (Type= 'TYPE (hour_in_day)' )
The hour component of the date the activity was reported.
rep_minute (Type= 'TYPE (minute_in_hour)' , Optional)
The minute component of the date the activity was reported. This parameter is optional. If not given, it will remain unset.
rep_second (Type= 'TYPE (second_in_minute)' , Optional)
The second component of the date the activity was reported. This parameter is optional. If not given, it will remain unset.
org_id (Type='STRING', Optional)
The name or identifier of the organization that undertook the activity.
activity_type (Default=Maintenance_actvity,Type='CLASS', Optional)
The name of the class in the reference data library defining the type of the activity performed.
The following classes and their sub-classes can be used:
classifications: [Maintenance_activity]
[warning:]Error RDL1: The class Maintenance_activity does not exist in RDL at urn urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
directed_activity (Type= 'ENTITY (Directed_activity)' )
The Directed_activity that is part of the work order that authorised the work done.
rep_item (Type= 'ENTITY (Product_as_realized)' )
The reportable item on which the activity was performed
method (Type= 'ENTITY (Activity_method)' )
The standard method or task that was followed in performing the activity.
Reference parameters
The following reference parameters are defined for this template:
actual_work(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 = $maintenance_activity.actual_work%
where target is the parameter to which the Activity_actual 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.
/representing_work_done(
    id=@wd_id,
    id_class_name='Activity_identification_code',
    id_ecl_id='urn:plcs:rdl:std',
    id_owner=@wd_org_id,
    id_owner_class_name='Organization_name',
    id_owner_ecl_id='urn:plcs:rdl:std',
    method=@method,
    predicted_work=@directed_activity,
    items=@rep_item,
    date_class_name='Date_actual_end',
    date_ecl_id='urn:plcs:rdl:std',
    year=@end_year,
    month=@end_month,
    day=@end_day,
    hour=@end_hour,
    minute=@end_minute,
    second=@end_second,
    sense='EXACT',
    hour_offset='0',
    minute_offset='0')/
%^actual_work = $representing_work_done.actual_work%

-- classify the type of activity
/assigning_reference_data(
    class_name=@activity_type,
    ecl_id='urn:plcs:rdl:std',
    items=^actual_work)/

-- Assign the date the activity was reported
/assigning_time(
    date_class_name='Date_actual_reported',
    date_ecl_id='urn:plcs:rdl:std',
    year=@rep_year,
    month=@rep_month,
    day=@rep_day,
    hour=@rep_hour,
    minute=@rep_minute,
    second=@rep_second,
    sense='EXACT',
    hour_offset='0',
    minute_offset='0' items=^actual_work)/

-- Assign organization reporting the activity
/assigning_organization(
    org_id=@org_id,
    org_id_class_name='Organization_name',
    org_id_ecl_id='urn:plcs:rdl:std',
    org_assgn_class_name='Reporter_of',
    org_assgn_ecl_id='urn:plcs:rdl:std',
    items=^actual_work)/
Characterizations
The following section details how the maintenance_activity 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 properties

NOTE   this characterization is optional.

A number of properties of the maintenance activity can be represented, such as the man hours taken to perform the activity. These are represented by the template MoDAvDEX.activity_property. The following activity properties are supported:
Template #18 (Figure 2): activity_property
Description The actual man hours consumed in performing the activity.
Parameter name: Parameter value: Parameter description:
property_name "Actual duration" (urn:plcs:rdl:std:Actual duration) The name of a property - a class.
property_value   The value of the property.
property_unit [Man_hour]
[warning:]Error RDL1: The class Man_hour does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
The class name of the corresponding quantity unit.
property_unit_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @unit_class_name.
si_unit false 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.
activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual representing the work that was done that consumed this resource.
Template #20 (Figure 2): activity_property
Description The actual man hours consumed in performing the activity.
Parameter name: Parameter value: Parameter description:
property_name "Actual duration" (urn:plcs:rdl:std:Actual duration) The name of a property - a class.
property_value   The value of the property.
property_unit [Man_hour]
[warning:]Error RDL1: The class Man_hour does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
The class name of the corresponding quantity unit.
property_unit_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @unit_class_name.
si_unit false 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.
activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual representing the work that was done that consumed this resource.
Template #22 (Figure 2): activity_property
Description The man hours consumed so far in performing the activity.
Parameter name: Parameter value: Parameter description:
property_name "Elapsed duration of activity" (urn:plcs:rdl:std:Elapsed duration of activity) The name of a property - a class.
property_value   The value of the property.
property_unit [Man_hour]
[warning:]Error RDL1: The class Man_hour does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
The class name of the corresponding quantity unit.
property_unit_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @unit_class_name.
si_unit false 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.
activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual representing the work that was done that consumed this resource.
Characterization consumed_resource

NOTE   this characterization is optional.

The hours consumed by a particular trade in order to complete the activity are represented by the template: #14 MoDAvDEX.consumed_resource (Figure 2).
Template #14 (Figure 2): consumed_resource
Description
Parameter name: Parameter value: Parameter description:
trade_name   The name of the class representing the trade.
trade_hours   The hours consumed by a particular trade when doing the activity.
activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual representing the work that was done that consumed this resource.
Characterization consumed_spare_part

NOTE   this characterization is optional.

The spare parts used in order to complete the activity are represented by the template: #16 MoDAvDEX.consumed_spare_part (Figure 2).

NOTE    The serial number of the parts are not tracked.

Template #16 (Figure 2): consumed_spare_part
Description
Parameter name: Parameter value: Parameter description:
part_number   The Part Number of the part that was fitted.
quantity   The quantity of spare parts consumed.
unit_class_name Count The class name of the corresponding to the quantity unit.
unit_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @unit_class_name.
si_unit false 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.
activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual instantiated by the template representing_work_done
Characterization consumed_spare_sitem

NOTE   this characterization is optional.

The spare parts identified by serial numbers (reportable items) used in order to complete the activity are represented by the template: #17 MoDAvDEX.consumed_spare_sitem (Figure 2).

NOTE    This approach is used for fitted parts whose installation history is not tracked.

Template #17 (Figure 2): consumed_spare_sitem
Description
Parameter name: Parameter value: Parameter description:
serial_number   Current Serial Number of the reportable item.
part_number   The Current Part Number of the reportable item indicating the design of this product individual.
supplier   The supplier of the reportable item.
NSN   Current NSN or code number of the reportable item.
quantity   The quantity of spare parts consumed.
activity   The Activity_actual representing the work that was done that consumed this resource.
Characterization fitted_part

NOTE   this characterization is optional.

During the maintenance activity, a number of reportable items may have been fitted that are tracked. In other words, reportable items whose history of where and when they were installed is maintained. The reportable items that have been fitted during the maintenance activity are represented by the template: #19 MoDAvDEX.fitted_part (Figure 2) which is related to the template: #2
representing_work_done by the assigning_activity. The templates are used as follows:
Template #13 (Figure 2): assigning_activity
Description
Parameter name: Parameter value: Parameter description:
role_class_name Activity_output The class name of the External_class corresponding to the role of the assignment, e.g. "Activity input" (urn:plcs:rdl:std:Activity input), or "Activity output" (urn:plcs:rdl:std:Activity output).
role_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @role_class_name.
assigned_activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual instantiated by the template representing_work_done the
items Template: #19 MoDAvDEX.fitted_part
ref. parameter: ^par
The Product_as_realized instantiated by the template MoDAvDEX.reportable_item which is instantiated by MoDAvDEX.fitted_part.
Characterization removed_part

NOTE   this characterization is optional.

During the maintenance activity, a number of reportable items may have been removed that are tracked. In other words, reportable items whose history of where and when they were installed is maintained. The reportable items that have been removed during the maintenance activity are represented by the template: #21 MoDAvDEX.removed_part (Figure 2) which is related to the template: #2
representing_work_done by the assigning_activity. The templates are used as follows:
Template #15 (Figure 2): assigning_activity
Description
Parameter name: Parameter value: Parameter description:
role_class_name Activity_output The class name of the External_class corresponding to the role of the assignment, e.g. "Activity input" (urn:plcs:rdl:std:Activity input), or "Activity output" (urn:plcs:rdl:std:Activity output).
role_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @role_class_name.
assigned_activity Template: #2
representing_work_done
ref. parameter: actual_work
The Activity_actual instantiated by the template representing_work_done the
items Template: #21 MoDAvDEX.removed_part
ref. parameter: ^par
The Product_as_realized instantiated by the template MoDAvDEX.reportable_item which is instantiated by MoDAvDEX.removed_part.
Characterization assigning_descriptor

NOTE   this characterization is optional.

The template: # assigning_descriptor (Figure 2) is used to provide textual notes about the activity.
Characterization assigning_organization

NOTE   this characterization is optional.

The template: #25 assigning_organization (Figure 2) is used to represent the organization that undertook the activity. The template is used as follows:
Template #23 (Figure 2): assigning_person_in_organization
Description The person and organization performing the activity.
Parameter name: Parameter value: Parameter description:
last_name ?last_name? The last name of the person performing the activity
first_name ?first_name? The first name of the person performing the activity; use "/NULL" when the information is not known to the sending system
middle_names ?middle_names? The middle name of the person performing the activity; use "/NULL" when the information is not known to the sending system
prefix_titles ?prefix_titles? The prefix title of the person performing the activity; use "/NULL" when the information is not known to the sending system
suffix_titles ?suffix_titles? The suffix title of the person performing the activity; use "/NULL" when the information is not known to the sending system
person_role_class_name "Performer of" (urn:plcs:rdl:std:Performer of) The name of the class being used to classify the person assignment () This provides the role for the assignment.
person_role_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @person_role_class_name class.
org_id ?org_id? The identifier of the organization in which the person performing of the activity work.
org_id_class_name For a name identifying an organization, use "Organization name" (urn:plcs:rdl:std:Organization name) For a code identifying an organization, use "Organization identification code" (urn:plcs:rdl:std:Organization identification code) For a CAGE code identifying an organization, use "CAGE code" (urn:plcs:rdl:std:CAGE code) The name or code that identifies (Identification_assignment) an organization.
org_id_ecl_id "urn:plcs:rdl:std" The identifier of the External_class_library storing the definition of the class referenced by the parameter @org_id_class_name class.
items Activity_actual The activity to which the person is assigned. This is the activity that is represented as a Activity_actual which is part of template representing_work_done.

© UK MOD 2010 — All rights reserved