Template:— representing_project (rep_proj)
Capability:representing_project_information
Date: 2011/04/26 14:55:30
Revision: 1.3

This section specifies the template representing_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 a project.

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


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

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

Figure 2 —  The graphical representation of the representing_project template

Input parameters
The following input parameters are defined for this template:
name (Type='STRING')
The name or identifier of the Project .
name_class (Default=Project_name,Type='CLASS')
The name of the class being used to classify the Project name or identifier (@name).
The following classes and their sub-classes can be used:
classifications: "Project_name" (urn:plcs:rdl:std:Project_name), "Project_identification_code" (urn:plcs:rdl:std:Project_identification_code)
name_class_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 @name_class.
name_owner (Type='STRING')
The name or identifier of the organization owning the project name/identifier.
name_owner_class (Default=Organization_name,Type='CLASS')
The name of the class being used to classify the identification of the organization. For example CAGE code, or organization name.
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)
name_owner_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the definition of the class referenced by the parameter @name_owner_class.
Reference parameters
The following reference parameters are defined for this template:
project(Type='ENTITY (Project)')
Allow the Project entity instantiated in this path to be referenced when this template is used.
Note: The Project entity can be referenced in a template path by:
%^target = $representing_project.project%
where target is the parameter to which the Project is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Project
Each instance of the entity (Project) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_project) namely: name, name_class, name_class_ecl_id, name_owner.
The instance is referenced by the following template parameter: project.
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
%^project = Project%
Project.id = '/IGNORE'
Project.name = '/IGNORE'
Project.description = '/IGNORE'
/assigning_identification(
    id= @name,
    id_class_name= @name_class,
    id_ecl_id= @name_class_ecl_id,
    org_id= @name_owner,
    org_id_class_name= @name_owner_class,
    org_id_ecl_id= @name_owner_ecl_id,
    items= ^project)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Project.id '/IGNORE'
Project.name '/IGNORE'
Project.description '/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_project(name='Speedo-project', name_class='Project_name', name_class_ecl_id='urn:plcs:rdl:std', name_owner='The Bike Company', name_owner_class='Organization_name', name_owner_ecl_id='urn:plcs:rdl:std')/
(an illustration of the consolidated representing_project template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_project template

Figure 3 —  Entities instantiated by representing_project template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#2 = PROJECT('/IGNORE','/IGNORE','/IGNORE',(),$,$,$,$); #4 = IDENTIFICATION_ASSIGNMENT('Speedo-project','/IGNORE','/IGNORE',(#2)); #6 = CLASSIFICATION_ASSIGNMENT(#7,(#4),'/IGNORE'); #7 = EXTERNAL_CLASS('/NULL','Project_name','/IGNORE',#8); #8 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std','/IGNORE'); #11 = ORGANIZATION('/IGNORE','/IGNORE'); #13 = IDENTIFICATION_ASSIGNMENT('The Bike Company','/IGNORE','/IGNORE',(#11)); #15 = CLASSIFICATION_ASSIGNMENT(#16,(#13),'/IGNORE'); #16 = EXTERNAL_CLASS('/NULL','Organization_name','/IGNORE',#8); #18 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#11,'/IGNORE',(#4)); #20 = CLASSIFICATION_ASSIGNMENT(#21,(#18),'/IGNORE'); #21 = EXTERNAL_CLASS('/NULL','Owner_of','/IGNORE',#8);
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_project(name='Speedo-project', name_class='Project_name', name_class_ecl_id='urn:plcs:rdl:std', name_owner='The Bike Company', name_owner_class='Organization_name', name_owner_ecl_id='urn:plcs:rdl:std')/


Figure 4 —  Instantiation of representing_project template

Figure 4 —  Instantiation of representing_project template

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