Template:— assigning_project (asg_proj)
Capability:representing_project_information
Date: 2011/04/21 11:54:44
Revision: 1.5

This section specifies the template assigning_project.

NOTE  The template has been defined in the context of the capability representing_project_information which provides an overall description of the relevant parts of the ISO 10303-239 information model and a description 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 the assignment of a Project to something else in the data set.

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


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

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

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

Figure 2 —  The graphical representation of the assigning_project template

Input parameters
The following input parameters are defined for this template:
assigned_project (Type= 'ENTITY (Project)' )
The project being assigned to something.
role_class (Type='CLASS')
The name of the Class being used to classify the assignment of a Project (Project_assignment). This provides the role or reason for the assignment.
The following classes and their sub-classes can be used:
classifications: "Project_assignment" (urn:plcs:rdl:std:Project_assignment)
role_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the Class referenced by the parameter @role_class.
items (Type= 'SELECT (project_item)' )
The items to which the project is assigned
Reference parameters
The following reference parameters are defined for this template:
proj_asg(Type='ENTITY (Project_assignment)')
Allow the Project_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Project_assignment entity can be referenced in a template path by:
%^target = $assigning_project.proj_asg%
where target is the parameter to which the Project_assignment is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Project assignment
Each instance of the entity (Project_assignment) within the data set shall be uniquely identified by a combination of the following parameters on this template (assigning_project) namely: assigned_project, items, role_class, role_ecl_id.
The instance is referenced by the following template parameter: proj_asg.
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.
Project_assignment
%^proj_asg = Project_assignment%
Project_assignment.role = '/IGNORE'
Project_assignment.assigned_project -> @assigned_project
Project_assignment.items -> @items

-- provide the role of the project assignment
/assigning_reference_data(
    items=^proj_asg,
    class_name=@role_class,
    ecl_id=@role_ecl_id)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Project_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:
/assigning_project(assigned_project='#2', role_class='Project_deliverable', role_ecl_id='urn:plcs:rdl:sample', items='#1')/
(an illustration of the consolidated assigning_project template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by assigning_project template

Figure 3 —  Entities instantiated by assigning_project template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = PART('/IGNORE','/IGNORE','/IGNORE'); #2 = PROJECT('/IGNORE','/IGNORE','/IGNORE',(),$,$,$,$); #3 = PROJECT_ASSIGNMENT(#2,'/IGNORE',(#1)); #5 = CLASSIFICATION_ASSIGNMENT(#6,(#3),'/IGNORE'); #6 = EXTERNAL_CLASS('/NULL','Project_deliverable','/IGNORE',#7); #7 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample','/IGNORE');
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:
/assigning_project(assigned_project='#2', role_class='Project_deliverable', role_ecl_id='urn:plcs:rdl:sample', items='#1')/


Figure 4 —  Instantiation of assigning_project template

Figure 4 —  Instantiation of assigning_project template

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

© OASIS 2010 — All rights reserved