Template:— representing_work_request (rep_wrk_req) Date: 2008/02/21 16:29:46
Revision: 1.22

This section specifies the template representing_work_request.

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 request.

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


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

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

The graphic for the template to be used in other EXPRESS-G diagrams is shown in Figure  2 below.
Note, either a person or an organization must be associated with the Work_request using the templates assigning_person_in_organization or assigning_organization respectively.


Figure 2 —  
            The graphical representation of representing_work_request template

Figure 2 —   The graphical representation of representing_work_request template

Input parameters
The following input parameters are defined for this template:
id (Type='STRING')
The identifier being assigned to the Work_request.
id_class_name (Default=Work_request_identification_code,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_request_identification_code" (urn:plcs:rdl:std:Work_request_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
version_id (Default=/NULL,Type='STRING')
The version identifier being assigned to the Work_request.

NOTE    If the version is not known use /NULL.

version_id_class_name (Default=Version_identification_code,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: "Version_identification_code" (urn:plcs:rdl:std:Version_identification_code)
version_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the class provide by the input parameter @version_id_class_name
version_org_id (Type='STRING')
The identifier of the organization that "owns" the version identifier.
version_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)
version_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the class provide by the input parameter @version_org_id_class_name.
date_class_name (Type='CLASS')
The name of the class defining the role of the date assigned to the Work_request E.g. the date the Work_request was raised.
The following classes and their sub-classes can be used:
classifications: "Work_request_issue_date" (urn:plcs:rdl:std:Work_request_issue_date)
date_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the class provide by the input parameter @date_class_name.
year (Type= 'TYPE (year_number)' )
The year component of the date and time the work request was raised.
month (Type= 'TYPE (month_in_year_number)' )
The month component of the date and time the work request was raised.
day (Type= 'TYPE (day_in_month_number)' )
The day component of the date and time the work request was raised.
hour (Type= 'TYPE (hour_in_day)' )
The hour component of the date and time the work request was raised.
minute (Type= 'TYPE (minute_in_hour)' , Optional)
The minute component of the date and time the work request was raised. 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 request was raised. This parameter is optional. If not given, it will remain unset.
sense (Type= 'ENUMERATION (offset_orientation)' )
The direction that the time the work request was raised 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 request was raised is offset from Coordinated Universal Time.
minute_offset (Type='INTEGER', Optional)
The number of minutes by which the time the work request was raised 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.
state_class_name (Type='CLASS')
The class name of the External_class corresponding to the State_definition name.
The following classes and their sub-classes can be used:
classifications: "State_of_work_request" (urn:plcs:rdl:std:State_of_work_request)
state_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 @state_class_name.
purpose (Type='CLASS')
The name of the class in the reference data library (External_class) being used to define the purpose of the Work_request.
The following classes and their sub-classes can be used:
classifications: "Work_request_purpose" (urn:plcs:rdl:std:Work_request_purpose)
purp_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 @purpose.
Reference parameters
The following reference parameters are defined for this template:
work_req(Type='ENTITY (Work_request)')
Allow the Work_request entity instantiated in this path to be referenced when this template is used.
Note: The Work_request entity can be referenced in a template path by:
%^target = $representing_work_request.work_req%
where target is the parameter to which the Work_request is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique work request
There shall be at most one instance of the entity (Work_request) within the data set uniquely identified by a combination of the following parameters on this template (representing_work_request) 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_req.
Unique constraint: Unique work request version
There shall be at most one instance of the entity (Work_request) within the data set uniquely identified by a combination of the following parameters on this template (representing_work_request) namely: id, id_class_name, id_ecl_id, org_id, org_id_class_name, org_id_ecl_id, version_id, version_id_class_name, version_id_ecl_id, version_org_id, version_org_id_class_name, version_org_id_ecl_id.
The instance is referenced by the following template parameter: work_req.
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_request
Work_request

-- Bind the Work_request to the parameter ^work_req.
-- The parameter is a reference parameter so the Work_request
-- entity can be referred to when this template is used.
%^work_req = Work_request%
^work_req.description = '/IGNORE'
^work_req.purpose = '/IGNORE'
^work_req.request_id = '/IGNORE'
^work_req.version_id = '/IGNORE'

-- Identify the Work_request
/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_req)/

-- Identify the Work_request version
/assigning_identification(
    id=@version_id,
    id_class_name=@version_id_class_name,
    id_ecl_id=@version_id_ecl_id,
    org_id=@version_org_id,
    org_id_class_name=@version_org_id_class_name,
    org_id_ecl_id=@version_org_id_ecl_id,
    items=^work_req)/

-- Classify the work_request
/assigning_reference_data(
    class_name=@purpose,
    ecl_id=@purp_ecl_id,
    items=^work_req)/

-- Assign a date to the Work_request
/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_req)/

-- Assign a state to the Work_request
/assigning_asserted_state(
    state_class_name=@state_class_name,
    state_ecl_id=@state_ecl_id,
    assigned_to=^work_req)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Work_request.description '/IGNORE'
Work_request.purpose '/IGNORE'
Work_request.request_id '/IGNORE'
Work_request.version_id '/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_work_request(id='Issue 134', id_class_name='Work_request_identification_code', id_ecl_id='urn:plcs:rdl:std', org_id='BikeRent Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', version_id='v1', version_id_class_name='Version_identification_code', version_id_ecl_id='urn:plcs:rdl:std', version_org_id='BikeRent Limited', version_org_id_class_name='Organization_name', version_org_id_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_creation', date_ecl_id='urn:plcs:rdl:std', year='2006', month='6', day='8', hour='14', minute='0', second='0', sense='EXACT', hour_offset='0', minute_offset='0', state_class_name='Work_request_issued', state_ecl_id='urn:plcs:rdl:std', purpose='Safety_issue', purp_ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated representing_work_request template is shown in Figure 4 below.)
Note that the mandatory characterization by the templates assigning_descriptor and assigning_person_in_organization is shown in the diagram. Namely:
@43 /assigning_person_in_organization(last_name='Olsen', first_name='Bob', person_role_class_name='Issuer_of', person_role_ecl_id='urn:plcs:rdl:std', org_id='BikeRent Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std')/
and:
@68 /assigning_descriptor(descr='Brakes keep jamming', class_name='descr', ecl_id='urn:plcs:rdl:std')/


Figure 3 —  Entities instantiated by representing_work_request template

Figure 3 —  Entities instantiated by representing_work_request 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_request(id='Issue 134', id_class_name='Work_request_identification_code', id_ecl_id='urn:plcs:rdl:std', org_id='BikeRent Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', version_id='v1', version_id_class_name='Version_identification_code', version_id_ecl_id='urn:plcs:rdl:std', version_org_id='BikeRent Limited', version_org_id_class_name='Organization_name', version_org_id_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_creation', date_ecl_id='urn:plcs:rdl:std', year='2006', month='6', day='8', hour='14', minute='0', second='0', sense='EXACT', hour_offset='0', minute_offset='0', state_class_name='Work_request_issued', state_ecl_id='urn:plcs:rdl:std', purpose='Safety_issue', purp_ecl_id='urn:plcs:rdl:sample')/


Figure 4 —  Instantiation of representing_work_request template

Figure 4 —  Instantiation of representing_work_request template

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


Figure 5 —  Characterizations for representing_work_request template

Figure 5 —  Characterizations for representing_work_request template

The following characterizations may apply:
Characterization Assigning person or organization

NOTE   this characterization is mandatory.

The person or organization that raised the issue must be assigned to the Work_request 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_request is represented by the template assigning_descriptor. If more documentation is necessary to describe the issue, documents can be assigned using the Document_assignment relationship as described in the template assigning_document.

Characterization Assigning dates

NOTE   this characterization is optional.

Dates can be associated with the work request by using the template assigning_calendar_date.

Characterization Approvals

NOTE   this characterization is optional.

The approval status of the Work_request is represented by assigning_approval.

© OASIS 2008 — All rights reserved