Template:— referencing_work_order (ref_wrk_ord) Date: 2008/02/15 12:04:19
Revision: 1.5

This section specifies the template referencing_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 reference to a work order and the associated authorised activity.

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


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

Figure 1 —  An EXPRESS-G representation of the Information model for referencing_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 the referencing_work_order template

Figure 2 —  The graphical representation of the referencing_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
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
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 = $referencing_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 = $referencing_work_order.dir_act%
where target is the parameter to which the Directed_activity is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique directed activity
There shall be at most one instance of the entity (Work_order) within the data set uniquely identified by a combination of the following parameters on this template (referencing_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
There shall be at most one instance of the entity (Work_order) within the data set uniquely identified by a combination of the following parameters on this template (referencing_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 Reading Capability Templates help section.
-- Instantiate a Work_order
Work_order

-- 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)/

-- Instantiate a Directed_activity
Directed_activity

-- Link the Directed_activity to the work_order
Directed_activity.directive -> ^work_order
Activity_method
Activity_method.name = '/IGNORE'
Activity_method.description = '/IGNORE'
Activity_method.consequence = '/IGNORE'
Activity_method.purpose = '/IGNORE'

-- Link the Directed_activity to the activity_method
Directed_activity.chosen_method -> Activity_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)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Work_order.name '/IGNORE'
Work_order.description '/IGNORE'
Activity_method.name '/IGNORE'
Activity_method.description '/IGNORE'
Activity_method.consequence '/IGNORE'
Activity_method.purpose '/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:
/referencing_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', 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')/
(an illustration of the consolidated referencing_work_order template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by referencing_work_order template

Figure 3 —  Entities instantiated by referencing_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:
/referencing_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', 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')/


Figure 4 —  Instantiation of referencing_work_order template

Figure 4 —  Instantiation of referencing_work_order template

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

© OASIS 2008 — All rights reserved