Template:— representing_work_order (rep_wrk_ord) Date: 2010/03/14 16:33:25
Revision: 1.31

This section specifies the template representing_work_order.

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 work order - the authority to undertake some work and the activity authorized by the work order.

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


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

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

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

Figure 2 —   The graphical representation of representing_work_order template

Input parameters
The following input parameters are defined for this template:
id (Type='STRING')
The identifier being assigned to the Work_order.
id_class_name (Type='CLASS')
The name of the class used to classify the identifier and so provide the role or reason for the identification.
The following classes and their sub-classes can be used:
classifications: "Work_order_identification_code" (urn:plcs:rdl:std:Work_order_identification_code)
id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the @id_class_name class
org_id (Type='STRING')
The identifier of the organization that "owns" the identifier.
org_id_class_name (Type='CLASS')
The name of the class being used to classify the identification of the organization. For example CAGE code.
The following classes and their sub-classes can be used:
classifications: "Organization_identification_code" (urn:plcs:rdl:std:Organization_identification_code), "Organization_name" (urn:plcs:rdl:std:Organization_name)
org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the @org_id_class_name class
date_class_name (Type='CLASS')
The name of the class defining the role of the date assigned to the Work_order E.g. the date the Work_order was issued.
The following classes and their sub-classes can be used:
classifications: "Work_order_issue_date" (urn:plcs:rdl:std:Work_order_issue_date)
date_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing @date_class_name class.
year (Type= 'TYPE (year_number)' )
The year component of the date and time the work order was issued.
month (Type= 'TYPE (month_in_year_number)' )
The month component of the date and time the work order was issued.
day (Type= 'TYPE (day_in_month_number)' )
The day component of the date and time the work order was issued.
hour (Type= 'TYPE (hour_in_day)' )
The hour component of the date and time the work order was issued.
minute (Type= 'TYPE (minute_in_hour)' , Optional)
The minute component of the date and time the work order was issued. This parameter is optional. If not given, it will remain unset.
second (Type= 'TYPE (second_in_minute)' , Optional)
The second component of the date and time the work order was issued. This parameter is optional. If not given, it will remain unset.
sense (Type= 'ENUMERATION (offset_orientation)' )
The direction that the time the work order was issued is offset from Coordinated Universal Time. Enumeration values are: 'ahead', 'exact' or 'behind'.
hour_offset (Type='INTEGER')
The number of hours by which the time the work order was issued is offset from Coordinated Universal Time.
minute_offset (Type='INTEGER', Optional)
The number of minutes by which the time the work order was issued is offset from Coordinated Universal Time. The value of this attribute need not be specified. This parameter is optional. If not given, it will remain unset.
act_id (Type='STRING')
The identifier of the activity (Directed_activity) that has been authorized by the Work_order.
act_id_class_name (Type='CLASS')
The name of the class used to classify the identifier in parameter @act_idand so provide the role or reason for the identification.
The following classes and their sub-classes can be used:
classifications: "Activity_identification_code" (urn:plcs:rdl:std:Activity_identification_code)
act_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the @act_id_class_name class
act_org_id (Type='STRING')
The identifier of the organization that "owns" the version identifier.
act_org_id_class_name (Type='CLASS')
The name of the class being used to classify the identification of the organization that "owns" the version identifier. For example CAGE code.
The following classes and their sub-classes can be used:
classifications: "Organization_identification_code" (urn:plcs:rdl:std:Organization_identification_code), "Organization_name" (urn:plcs:rdl:std:Organization_name)
act_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the @act_org_id_class_name class
appr_status (Type='CLASS')
The class name of the External_class corresponding to the approval status of the work order.
The following classes and their sub-classes can be used:
classifications: "State_of_approval" (urn:plcs:rdl:std:State_of_approval)
appr_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 @status.
appr_pers_org (Type= 'SELECT (organization_or_person_in_organization_select)' )
The person or organization responsible for the approval.
input (Type= 'SELECT (activity_item)' )
The items that are affected by the work order
in_response_to (Type= 'ENTITY (Work_request)' , Optional)
The Work_request that is being addressed by the Work_order.
chosen_method (Type= 'ENTITY (Activity_method)' )
The Activity_method that specifies the approach to undertaking the work authorized by the Work_order.
Reference parameters
The following reference parameters are defined for this template:
work_order(Type='ENTITY (Work_order)')
Allow the Work_order entity instantiated in this path to be referenced when this template is used.
Note: The Work_order entity can be referenced in a template path by:
%^target = $representing_work_order.work_order%
where target is the parameter to which the Work_order is bound.
dir_act(Type='ENTITY (Directed_activity)')
Allow the Directed_activity entity instantiated in this path to be referenced when this template is used.
Note: The Directed_activity entity can be referenced in a template path by:
%^target = $representing_work_order.dir_act%
where target is the parameter to which the Directed_activity is bound.
appl_act(Type='ENTITY (Applied_activity_assignment)')
Allow the Applied_activity_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Applied_activity_assignment entity can be referenced in a template path by:
%^target = $representing_work_order.appl_act%
where target is the parameter to which the Applied_activity_assignment is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique directed activity
Each instance of the entity (Work_order) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_work_order) namely: act_id, act_id_class_name, act_id_ecl_id, act_org_id, act_org_id_class_name, act_org_id_ecl_id.
The instance is referenced by the following template parameter: work_order.
Unique constraint: Unique work order
Each instance of the entity (Work_order) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_work_order) namely: id, id_class_name, id_ecl_id, org_id, org_id_class_name, org_id_ecl_id.
The instance is referenced by the following template parameter: work_order.
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 a Work_order
Work_order

-- Link the work_order to the work_request
Work_order.in_response_to -> @in_response_to

-- Bind the Work_order to the parameter ^work_order.
-- The parameter is a reference parameter so the Work_order
-- entity can be referred to when this template is used.
%^work_order = Work_order%
^work_order.name = '/IGNORE'
^work_order.description = '/IGNORE'

-- Identify the Work_order
/assigning_identification(
    id=@id,
    id_class_name=@id_class_name,
    id_ecl_id=@id_ecl_id,
    org_id=@org_id,
    org_id_class_name=@org_id_class_name,
    org_id_ecl_id=@org_id_ecl_id,
    items=^work_order)/

-- Assign a date to the Work_order
/assigning_time(
    date_class_name=@date_class_name,
    date_ecl_id=@date_ecl_id,
    year=@year,
    month=@month,
    day=@day,
    hour=@hour,
    minute=@minute,
    second=@second,
    sense=@sense,
    hour_offset=@hour_offset,
    minute_offset=@minute_offset,
    items=^work_order)/

-- Approve the Work_order
/assigning_approval(
    status=@appr_status,
    status_ecl_id=@appr_ecl_id,
    items=^work_order,
    person_org=@appr_pers_org)/

-- Instantiate a Directed_activity
Directed_activity

-- Link the Directed_activity to the work_order
Directed_activity.directive -> ^work_order

-- Link the Directed_activity to the activity_method
Directed_activity.chosen_method -> @chosen_method

-- Bind the Directed_activity to the parameter ^dir_act.
-- The parameter is a reference parameter so the Directed_activity
-- entity can be referred to when this template is used.
%^dir_act = Directed_activity%
^dir_act.id = '/IGNORE'
^dir_act.name = '/IGNORE'
^dir_act.description = '/IGNORE'

-- Identify the Directed_activity
/assigning_identification(
    id=@act_id,
    id_class_name=@act_id_class_name,
    id_ecl_id=@act_id_ecl_id,
    org_id=@act_org_id,
    org_id_class_name=@act_org_id_class_name,
    org_id_ecl_id=@act_org_id_ecl_id,
    items=^dir_act)/
/assigning_activity(
    role_class_name='Activity_input',
    role_ecl_id='urn:plcs:rdl:std',
    assigned_activity=^dir_act,
    items=@input)/
%^appl_act = $assigning_activity.appl_act%
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Work_order.name '/IGNORE'
Work_order.description '/IGNORE'
Directed_activity.id '/IGNORE' Activity.id
Directed_activity.name '/IGNORE' Activity.name
Directed_activity.description '/IGNORE' Activity.description
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_work_order(id='WO-22', id_class_name='Work_order_identification_code', id_ecl_id='urn:plcs:rdl:std', org_id='BikeRepair Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_release', date_ecl_id='urn:plcs:rdl:std', year='2006', month='6', day='9', hour='9', minute='0', second='0', sense='EXACT', hour_offset='0', minute_offset='0', appr_status='Approved', appr_ecl_id='urn:plcs:rdl:std', act_id='ACT-22', act_id_class_name='Activity_identification_code', act_id_ecl_id='urn:plcs:rdl:std', act_org_id='BikeRepair Limited', act_org_id_class_name='Organization_name', act_org_id_ecl_id='urn:plcs:rdl:std', input='#244', in_response_to='@100', chosen_method='#166')/
(an illustration of the consolidated representing_work_order template is shown in Figure 4 below.)
Note that the template assigning_organization has been instantiated to indicate issuer of the Work_order. The template assigning_reference_data has been used to show that the Work_order is a configuration change


Figure 3 —  Entities instantiated by representing_work_order template

Figure 3 —  Entities instantiated by representing_work_order 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_work_order(id='WO-22', id_class_name='Work_order_identification_code', id_ecl_id='urn:plcs:rdl:std', org_id='BikeRepair Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_release', date_ecl_id='urn:plcs:rdl:std', year='2006', month='6', day='9', hour='9', minute='0', second='0', sense='EXACT', hour_offset='0', minute_offset='0', appr_status='Approved', appr_ecl_id='urn:plcs:rdl:std', act_id='ACT-22', act_id_class_name='Activity_identification_code', act_id_ecl_id='urn:plcs:rdl:std', act_org_id='BikeRepair Limited', act_org_id_class_name='Organization_name', act_org_id_ecl_id='urn:plcs:rdl:std', input='#244', in_response_to='@100', chosen_method='#166')/


Figure 4 —  Instantiation of representing_work_order template

Figure 4 —  Instantiation of representing_work_order template

Characterizations
The following section details how the representing_work_order 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 EXPRESS-G diagram in Figure 5 shows the possible characterizations of the template "representing_work_order".


Figure 5 —  Characterizations for representing_work_order template

Figure 5 —  Characterizations for representing_work_order template

The following characterizations may apply:
Characterization Assigning person or organization

NOTE   this characterization is mandatory.

The person or organization that raised the work order must be assigned to the Work_order by Person_in_organization or Organization (using the relationship Organization_or_person_in_organization_assignment) The assignment is defined by the templates assigning_organization and assigning_person_in_organization respectively.

Characterization Assigning documentation

NOTE   this characterization is optional.

A text string providing a description of the Work_order is represented by the template assigning_descriptor. If more documentation is necessary to describe the order, documents can be assigned using the Document_assignment relationship as described in the template assigning_document.

Characterization Assigning state

NOTE   this characterization is optional.

The Work_order and Directed_activity can have a state assigned to it by using the assigning_asserted_state template.

Characterization Assigning reference data

NOTE   this characterization is optional.

The Work_order and Directed_activity can be classified by using the template assigning_reference_data.

Characterization Assigning dates and times

NOTE   this characterization is optional.

The issue date of the Work_order is assigned within the template.

Additional dates and times can be associated with the Work_order and the Directed_activity by using the template assigning_time.

For example the date when the Work_order and the Directed_activity was completed can be represented by assigning a date (using the relationship Date_or_date_time_assignment) to the Work_order and the Directed_activity using the assigning_time template with the Date_time being classified as a type of "Date actual release" (urn:plcs:rdl:std:Date actual release).

NOTE    The assignment of dates is described the capability C036: assigning_date_time (NB Capabilities are not documented in this release of the PLCS standard) .

© OASIS 2010 — All rights reserved