Template:— representing_structured_task_sequential (rep_struct_task_seq) Date: 2009/03/20 15:55:45
Revision: 1.8

This section specifies the template representing_structured_task_sequential.

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 structured task where the task steps are performed in sequence.

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


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

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

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

Figure 2 —  The graphical representation of the representing_structured_task_sequential template

Input parameters
The following input parameters are defined for this template:
task_id (Type='STRING')
The task identifier, e.g. the task number.
task_id_class_name (Default=Task_method_identification_code,Type='CLASS')
The name of the class being used to classify the identifier being assigned to the task (i.e. the @task_id)
The following classes and their sub-classes can be used:
classifications: "Task_method_identification_code" (urn:plcs:rdl:std:Task_method_identification_code)
task_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 @task_id_class_name.
task_org_id (Type='STRING')
The name or identifier of the Organization that owns the @task_id.
task_org_id_class_name (Default=Organization_name,Type='CLASS')
The name of the class being used to classify the identification of the Organization responsible for creating the @task_id.
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)
task_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 @task_org_id_class_name.
task_ver_id (Type='STRING')
The task version identifier, for example, the sequence number of the version.
task_ver_id_class_name (Default=Version_identification_code,Type='CLASS')
The name of the class being used to classify the task version identifier (@tesk_ver_id) assigned to Task_method_version.
The following classes and their sub-classes can be used:
classifications: "Progression_identification_code" (urn:plcs:rdl:std:Progression_identification_code)
task_ver_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 @task_ver_id_class_name.
task_ver_org_id (Type='STRING')
The name or identifier of the organization that owns the task version identifier.
task_ver_org_id_class_name (Default=Organization_name,Type='CLASS')
The name of the class being used to classify the identification of the Organization responsible for creating the @task_ver_id.
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)
task_ver_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 @task_ver_org_id_class_name.
task_name (Type='STRING')
The task name.
task_name_class_name (Default=Task_method_name,Type='CLASS')
The name of the class being used to classify the task name assigned to Task_method.
The following classes and their sub-classes can be used:
classifications: "Task_method_name" (urn:plcs:rdl:std:Task_method_name)
task_name_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 @task_name_class_name.
task_name_org_id (Type='STRING')
The name or identifier of the organization that owns the task name.
task_name_org_id_class_name (Default=Organization_name,Type='CLASS')
The name of the class being used to classify the identification of the Organization responsible for creating the @task_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)
task_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 @task_name_org_id_class_name.
task_step (Type= 'ENTITY (Task_element)' )
The details on how to perform the task.
Reference parameters
The following reference parameters are defined for this template:
task(Type='ENTITY (Task_method)')
Allow the Task_method entity instantiated in this path to be referenced when this template is used.
Note: The Task_method entity can be referenced in a template path by:
%^target = $representing_structured_task_sequential.task%
where target is the parameter to which the Task_method is bound.
task_vn(Type='ENTITY (Task_method_version)')
Allow the Task_method_version entity instantiated in this path to be referenced when this template is used.
Note: The Task_method_version entity can be referenced in a template path by:
%^target = $representing_structured_task_sequential.task_vn%
where target is the parameter to which the Task_method_version is bound.
task_seq(Type='ENTITY (Task_element_sequence)')
Allow the Task_element_sequence entity instantiated in this path to be referenced when this template is used.
Note: The Task_element_sequence entity can be referenced in a template path by:
%^target = $representing_structured_task_sequential.task_seq%
where target is the parameter to which the Task_element_sequence is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique task
Each instance of the entity (Task_method) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_structured_task_sequential) namely: task_id, task_id_class_name, task_id_ecl_id, task_org_id, task_org_id_class_name, task_org_id_ecl_id.
The instance is referenced by the following template parameter: task.
Unique constraint: Unique task version
Each instance of the entity (Task_method_version) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_structured_task_sequential) namely: task_id, task_id_class_name, task_id_ecl_id, task_org_id, task_org_id_class_name, task_org_id_ecl_id, task_ver_id, task_ver_id_class_name, task_ver_id_ecl_id, task_ver_org_id, task_ver_org_id_class_name, task_ver_org_id_ecl_id.
The instance is referenced by the following template parameter: task_vn.
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 Task_method
Task_method
%^task = Task_method%
Task_method.name = '/IGNORE'
Task_method.description = '/IGNORE'
Task_method.consequence = '/IGNORE'
Task_method.purpose = '/IGNORE'

-- Identify the Task_method
/assigning_identification(
    items= ^task,
    id= @task_id,
    id_class_name= @task_id_class_name,
    id_ecl_id= @task_id_ecl_id,
    org_id= @task_org_id,
    org_id_class_name= @task_org_id_class_name,
    org_id_ecl_id= @task_org_id_ecl_id )/

-- Assign the task name to Task_method
/assigning_identification(
    items= ^task,
    id= @task_name,
    id_class_name= @task_name_class_name,
    id_ecl_id= @task_name_ecl_id,
    org_id= @task_name_org_id,
    org_id_class_name= @task_name_org_id_class_name,
    org_id_ecl_id= @task_name_org_id_ecl_id )/

-- Create Task_element_sequence
Task_element_sequence
%^task_seq = Task_element_sequence%
Task_element_sequence.name = '/IGNORE'
Task_element_sequence.description = '/IGNORE'
Task_element_sequence.consequence = '/IGNORE'
Task_element_sequence.purpose = '/IGNORE'
Task_element_sequence.elements -> @task_step

-- Create Task_method_version
Task_method_version
%^task_vn = Task_method_version%
Task_method_version.name = '/IGNORE'
Task_method_version.description = '/IGNORE'
Task_method_version.consequence = '/IGNORE'
Task_method_version.purpose = '/IGNORE'
Task_method_version.of_task_method -> ^task
Task_method_version.content -> ^task_seq

-- Identify the Task_method_version as version
/assigning_identification(
    items= ^task_vn,
    id= @task_ver_id,
    id_class_name= @task_ver_id_class_name,
    id_ecl_id= @task_ver_id_ecl_id,
    org_id= @task_ver_org_id,
    org_id_class_name= @task_ver_org_id_class_name,
    org_id_ecl_id= @task_ver_org_id_ecl_id )/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Task_method.name '/IGNORE' Activity_method.name
Task_method.description '/IGNORE' Activity_method.description
Task_method.consequence '/IGNORE' Activity_method.consequence
Task_method.purpose '/IGNORE' Activity_method.purpose
Task_element_sequence.name '/IGNORE' Activity_method.name
Task_element_sequence.description '/IGNORE' Activity_method.description
Task_element_sequence.consequence '/IGNORE' Activity_method.consequence
Task_element_sequence.purpose '/IGNORE' Activity_method.purpose
Task_method_version.name '/IGNORE' Activity_method.name
Task_method_version.description '/IGNORE' Activity_method.description
Task_method_version.consequence '/IGNORE' Activity_method.consequence
Task_method_version.purpose '/IGNORE' Activity_method.purpose
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_structured_task_sequential(task_id='BK123', task_id_class_name='Task_method_identification_code', task_ecl_id='urn:plcs:rdl:std', task_org_id='Bike Ltd', task_org_id_class_name='Organization_name', task_org_id_ecl_id='urn:plcs:rdl:std', task_ver_id='3', task_ver_id_class_name='Version_identification_code', task_ver_ecl_id='urn:plcs:rdl:std', task_ver_org_id='Bike Ltd', task_ver_org_id_class_name='Organization_name', task_ver_org_id_ecl_id='urn:plcs:rdl:std', task_name='Remove front wheel', task_name_class_name='Task_method_name', task_name_ecl_id='urn:plcs:rdl:std', task_name_org_id='Bike Ltd', task_name_org_id_class_name='Organization_name', task_name_org_id_ecl_id='urn:plcs:rdl:std', task_step='#1, #69')/
(an illustration of the consolidated representing_structured_task_sequential template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_structured_task_sequential template

Figure 3 —  Entities instantiated by representing_structured_task_sequential 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_structured_task_sequential(task_id='BK123', task_id_class_name='Task_method_identification_code', task_ecl_id='urn:plcs:rdl:std', task_org_id='Bike Ltd', task_org_id_class_name='Organization_name', task_org_id_ecl_id='urn:plcs:rdl:std', task_ver_id='3', task_ver_id_class_name='Version_identification_code', task_ver_ecl_id='urn:plcs:rdl:std', task_ver_org_id='Bike Ltd', task_ver_org_id_class_name='Organization_name', task_ver_org_id_ecl_id='urn:plcs:rdl:std', task_name='Remove front wheel', task_name_class_name='Task_method_name', task_name_ecl_id='urn:plcs:rdl:std', task_name_org_id='Bike Ltd', task_name_org_id_class_name='Organization_name', task_name_org_id_ecl_id='urn:plcs:rdl:std', task_step='#1, #69')/


Figure 4 —  Instantiation of representing_structured_task_sequential template

Figure 4 —  Instantiation of representing_structured_task_sequential template

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