Template:— parts_list (prts_lst)
Context:— UK_Defence
Date: 2009/04/17 10:29:33
Revision: 1.7

This section specifies the template parts_list.

NOTE  The template has been defined in the context of UK_Defence. Refer to the business context for details 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 list of parts.

Business perspective

This information object represents a list of items which can be used for the purposes of supply, or any other purpose.

Business object definition


Figure 1 —  Graphical Representation for Business Object parts_list

Figure 1 —  Graphical Representation for Business Object parts_list

The definition of a parts_list object is: a collection of Product Designs. This list could be used as a list of non-codified items for supply, or any other general purpose.

Attribute name

Attribute description

Attribute type

Optionality

Id This is the identifier of the parts list. Identifier Mandatory
Identifier.id This is the value of the id attribute of the Identifier applied to the parts list. intrinsic Mandatory
Identifier.type This attribute is the type associated with the id of the Identifier given to the parts list. Parts_list_identification_code Mandatory
Identifier.source_organization This attribute is the value representing the source organization that provides the id of the Identifier given to the parts list. This value is assumed to be a type of Organization_identification_code. Organization_name_or_identification_code Mandatory
Items This is a reference to the parts (product design) in the list. Relationship to Product_design Mandatory (1:?)
Name This is the name of the parts list. intrinsic Mandatory
Description This is the description of the parts list. intrinsic Mandatory

Table 1 — parts_list attribute details

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


Figure 2 —  An EXPRESS-G representation of the Information model for parts_list

Figure 2 —  An EXPRESS-G representation of the Information model for parts_list

The graphic for the template to be used in other EXPRESS-G diagrams is shown in Figure  3 below.


Figure 3 —  The graphical representation of the parts_list template

Figure 3 —  The graphical representation of the parts_list template

Input parameters
The following input parameters are defined for this template:
id (Type='STRING')
This is the identifier of the parts list.
source_organization (Type='STRING')
The organization or information system that created the associated identifier. Alternatively this could be set to /NULL when Person or Information System is the source; see Identifier template characterizations.
name (Type='STRING')
This is the name of the parts list.
description (Type='STRING')
This is a description of the parts list.
list_item (Type= 'ENTITY (Part_view_definition)' )
The related list item. Note a new instance of this template is required to relate more than one item at a time.
Reference parameters
The following reference parameters are defined for this template:
parts_list_view(Type='ENTITY (Part_view_definition)')
Allow the Part_view_definition entity instantiated in this path to be referenced when this template is used.
Note: The Part_view_definition entity can be referenced in a template path by:
%^target = $parts_list.parts_list_view%
where target is the parameter to which the Part_view_definition is bound.
This reference parameter provides a reference to the view definition that represents the head (or top) of the list itself. All items in the list are related using an instance of promissory_usage relationship. There is one relationship for each item.
parts_list_version(Type='ENTITY (Part_version)')
Allow the Part_version entity instantiated in this path to be referenced when this template is used.
Note: The Part_version entity can be referenced in a template path by:
%^target = $parts_list.parts_list_version%
where target is the parameter to which the Part_version is bound.
This reference parameter provides a reference to the Part_version that represents the head (or top) of the list itself. There is one version for each view definition.
parts_list(Type='ENTITY (Part)')
Allow the Part entity instantiated in this path to be referenced when this template is used.
Note: The Part entity can be referenced in a template path by:
%^target = $parts_list.parts_list%
where target is the parameter to which the Part is bound.
This reference parameter provides a reference to the Part that represents the head (or top) of the list itself. There is one part for each version.
parts_list_contxt(Type='ENTITY (View_definition_context)')
Allow the View_definition_context entity instantiated in this path to be referenced when this template is used.
Note: The View_definition_context entity can be referenced in a template path by:
%^target = $parts_list.parts_list_contxt%
where target is the parameter to which the View_definition_context is bound.
This reference parameter provides a reference to the Part that represents the head (or top) of the list itself. There is one part for each version.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Parts_list_id_rule
Each instance of the entity (Part) within the data set shall be uniquely identified by a combination of the following parameters on this template (parts_list) namely: id, name, source_organization.
The instance is referenced by the following template parameter: parts_list.
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.
-- Create the Promissory_usage entity
/representing_promissory_usage(
    quantity=1)/
%^parts_list_relationship = $representing_promissory_usage.promissory_usage%
/assigning_reference_data(
    class_name='Parts_list_membership',
    ecl_id='urn:plcs:rdl:uk_defence',
    items=^parts_list_relationship)/

-- Create the part to represent the head/top of the list
/representing_part(
    part_id=@id,
    part_id_class_name='Parts_list_identification_code',
    part_id_ecl_id='urn:plcs:rdl:uk_defence',
    part_org_id=@source_organization,
    part_org_id_class_name='Organization_name_or_identification_code',
    part_org_id_ecl_id='urn:plcs:rdl:uk_defence',
    part_vn_id='/NULL',
    part_vn_id_class_name='Part_version_identification_code',
    part_vn_id_ecl_id='urn:plcs:rdl:uk_defence',
    part_vn_org_id=@source_organization,
    part_vn_org_id_class_name='Organization_name_or_identification_code',
    part_vn_org_id_ecl_id='urn:plcs:rdl:uk_defence',
    domain='Product_life_cycle_support',
    domain_ecl_id='urn:plcs:rdl:uk_defence',
    life_cycle_stage='support_stage',
    life_cycle_stage_ecl_id='urn:plcs:rdl:uk_defence')/

-- re-direct the output from the call
%^parts_list = $representing_part.part%
%^parts_list_version = $representing_part.version%
%^parts_list_view = $representing_part.view%
%^parts_list_contxt = $representing_part.contxt%

-- Name
/identifier(
    ID=@name,
    source_organization=@source_organization,
    type='Name',
    items=^parts_list)/
/assigning_descriptor(
    descr=@description,
    class_name='Description',
    ecl_id='urn:plcs:rdl:uk_defence',
    is_assigned_to=^parts_list)/

-- Map the input parameters to those for rep_prom_usg, first is the top item
^parts_list_relationship.related_view -> @list_item
^parts_list_relationship.relating_view -> ^parts_list_view
Instance diagrams
The instance diagram in Figure  4 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/parts_list(id='', source_organization='', name='', description='', list_item='@251')/
(an illustration of the consolidated parts_list template is shown in Figure 5 below.)


Figure 4 —  Entities instantiated by parts_list template

Figure 4 —  Entities instantiated by parts_list template

The instance diagram in Figure 5 shows the graphic symbol for the template that is to be used in other instance diagrams. The example template is:
/parts_list(id='', source_organization='', name='', description='', list_item='@251')/


Figure 5 —  Instantiation of parts_list template

Figure 5 —  Instantiation of parts_list template

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

© UK MOD 2010 — All rights reserved