Template:— assigning_person_in_organization (asg_pers_org) Date: 2008/02/26 15:50:09
Revision: 1.18

This section specifies the template assigning_person_in_organization.

NOTE  An explanation of a template and the associated instantiation path is provided in the Template overview section.

Description

This template describes how to assign a person in the context of an organization to something.

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


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

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

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

Figure 2 —   The graphical representation of assigning_person_in_organization template

Input parameters
The following input parameters are defined for this template:
last_name (Type='STRING')
the last name (surname) of the person doing the approval
first_name (Type='STRING', Optional)
The first element of the Person's list of forenames. This parameter is optional.
middle_names (Type='STRING', Optional)
The Person's other forenames.
prefix_titles (Type='STRING', Optional)
The text that specifies the Person's social or professional standing and appear before his or her names. This parameter is optional.
suffix_titles (Type='STRING', Optional)
The text that specifies the Person's social or professional standing and appear after his or her names. This parameter is optional.
org_id (Type='STRING')
The identifier or name of the organization.
org_id_class_name (Type='CLASS')
The name of the class used to classify the identification (Identification_assignment) of the organization. This provides the role or reason for the identification. 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 definition of the class referenced by the parameter @org_id_class_name class.
person_role_class_name (Type='CLASS')
The name of the class being used to classify the person assignment () This provides the role for the assignment.
The following classes and their sub-classes can be used:
classifications: "Organization_or_person_in_organization_assignment" (urn:plcs:rdl:std:Organization_or_person_in_organization_assignment)
person_role_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 @person_role_class_name class.
items (Type= 'SELECT (organization_or_person_in_organization_item)' )
The items to which the person is assigned
Reference parameters
The following reference parameters are defined for this template:
asgn_org(Type='ENTITY (Organization_or_person_in_organization_assignment)')
Allow the Organization_or_person_in_organization_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Organization_or_person_in_organization_assignment entity can be referenced in a template path by:
%^target = $assigning_person_in_organization.asgn_org%
where target is the parameter to which the Organization_or_person_in_organization_assignment is bound.
pers_in_org(Type='ENTITY (Person_in_organization)')
Allow the Person_in_organization entity instantiated in this path to be referenced when this template is used.
Note: The Person_in_organization entity can be referenced in a template path by:
%^target = $assigning_person_in_organization.pers_in_org%
where target is the parameter to which the Person_in_organization is bound.
person(Type='ENTITY (Person)')
Allow the Person entity instantiated in this path to be referenced when this template is used.
Note: The Person entity can be referenced in a template path by:
%^target = $assigning_person_in_organization.person%
where target is the parameter to which the Person is bound.
organization(Type='ENTITY (Organization)')
Allow the Organization entity instantiated in this path to be referenced when this template is used.
Note: The Organization entity can be referenced in a template path by:
%^target = $assigning_person_in_organization.organization%
where target is the parameter to which the Organization 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 Reading Capability Templates help section.
-- Instantiate Organization_or_person_in_organization_assignment entity
Organization_or_person_in_organization_assignment

-- Bind the Organization_or_person_in_organization_assignment
-- to the parameter ^asgn_org. The parameter is a reference parameter
-- so the Organization_or_person_in_organization_assignment
-- entity can be referred to when this template is used.
%^asgn_org = Organization_or_person_in_organization_assignment%

-- Set the Organization_or_person_in_organization_assignment attribute role to be ignored
Organization_or_person_in_organization_assignment.role = '/IGNORE'

-- Assign the Organization_or_person_in_organization_assignment
-- to the instances passed into the template through the @items
-- input parameter (e.g. an Activity_actual)
Organization_or_person_in_organization_assignment.items -> @items

-- Assign reference data to Organization_or_person_in_organization_assignment
/assigning_reference_data(
    items=^asgn_org,
    class_name=@person_role_class_name,
    ecl_id=@person_role_ecl_id)/

-- Instantiate representing_person_in_organization
/representing_person_in_organization(
    last_name=@last_name,
    first_name=@first_name,
    middle_names=@middle_names,
    prefix_titles=@prefix_titles,
    suffix_titles=@suffix_titles,
    org_id=@org_id,
    org_id_class_name=@org_id_class_name,
    org_id_class_name=@org_id_class_name,
    org_id_ecl_id=@org_id_ecl_id)/
%^pers_in_org = $representing_person_in_organization.pers_in_org%
%^person = $representing_person_in_organization.pers%
%^organization = $representing_person_in_organization.org%

-- Assign the Organization_or_person_in_organization_assignment
-- to the representing_person_in_organization template
Organization_or_person_in_organization_assignment.assigned_entity -> ^pers_in_org
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Organization_or_person_in_organization_assignment.role '/IGNORE'
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template: (an illustration of the consolidated assigning_person_organization template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by assigning_person_in_organization template

Figure 3 —  Entities instantiated by assigning_person_in_organization 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:


Figure 4 —  Instantiation of assigning_person_in_organization template

Figure 4 —  Instantiation of assigning_person_in_organization template

Characterizations
No common characterizations of the template assigning_person_in_organization 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