Template:— justification (jstfn)
Context:— UK_Defence
Date: 2009/11/06 15:29:01
Revision: 1.3

This section specifies the template justification.

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 the UK_Defence concept of a Justification in terms of PLCS model elements (templates, entities, and reference data).

Business perspective

This information object represents a justification for a decision or for something having been done.

Business object definition


Figure 1 —  Graphical Representation for Business Object Justification

Figure 1 —  Graphical Representation for Business Object Justification

Justification:

The definition of a Justification is: This information object represents a justification for a decision or for something having been done.

The item that is justified is defined by whatever references this object.

Attribute name

Attribute description

Attribute type

Optionality

A justification for This is the reference to the item that is justified. SELECT Mandatory
Author This is the author of the justification. Person Mandatory
Description This is the description of the justification. intrinsic Mandatory
Effective from date This is the date on which the justification became effective. intrinsic Optional
ID This is the identifier of the justification. Identifier Mandatory
Issuing authority This is the reference to the person or organization that issued the justification. This may or may not be the same as the person or organization that created the justification. SELECT Optional
Justified by This is the reference to the information object that justifies the related information object referenced by attribute A Justification For. Example: a fault may justify a task being defined to prevent or correct it. SELECT Optional
Purpose This is the purpose of the justification. This might for example be a justification that is required for Project Management or QA purposes, or to satisfy regulatory requirements. intrinsic Mandatory

Table 1 — Justification attribute details

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


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

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

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

Figure 3 —  The graphical representation of the justification template

Input parameters
The following input parameters are defined for this template:
description (Type='STRING')
This is the description of the justification.
ID (Type='STRING')
This is the identifier of the justification.
ID_class_name (Type='CLASS')
The type of identifier used for the parameter @justification_identifier.
The following classes and their sub-classes can be used:
classifications: "Identification_code" (urn:plcs:rdl:std:Identification_code)
ID_organization (Type='STRING')
The organization that owns the identifier specified by the parameter @justification_identifier.
purpose (Type='CLASS')
This is the purpose of the justification.

EXAMPLE    This might for example be a justification that is required for Project Management or QA purposes, or to satisfy regulatory requirements.

The following classes and their sub-classes can be used:
classifications: "Justification_assignment" (urn:plcs:rdl:std:Justification_assignment)
purpose_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 @purpose.
a_justification_for (Type= 'SELECT (justification_item)' )
This is the reference to the item that is justified.
justified_by (Type= 'SELECT (justification_support_item)' )
This is the reference to the information object that justifies the related information object referenced by attribute a_justification_for.
author (Type= 'SELECT (organization_or_person_in_organization_select)' )
The person responsilbe for providing the justification.
issuing_authority (Type= 'SELECT (organization_or_person_in_organization_select)' )
This is the reference to the person or organization that issued the justification. This may or may not be the same as the person or organization that created the justification.
effectivity_from_date_year (Type= 'TYPE (year_number)' )
Year_component of tthe date on which the justification became effective. This parameter is optional. If not given, it will remain unset.
effectivity_from_date_month (Type= 'TYPE (month_in_year_number)' )
Month_component of tthe date on which the justification became effective. This parameter is optional. If not given, it will remain unset.
effectivity_from_date_day (Type= 'TYPE (day_in_month_number)' )
Day_component of tthe date on which the justification became effective. This parameter is optional. If not given, it will remain unset.
Reference parameters
The following reference parameters are defined for this template:
justification(Type='ENTITY (Justification)')
Allow the Justification entity instantiated in this path to be referenced when this template is used.
Note: The Justification entity can be referenced in a template path by:
%^target = $justification.justification%
where target is the parameter to which the Justification is bound.
justification_assignment(Type='ENTITY (Justification_assignment)')
Allow the Justification_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Justification_assignment entity can be referenced in a template path by:
%^target = $justification.justification_assignment%
where target is the parameter to which the Justification_assignment is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Justification
Each instance of the entity (Justification) within the data set shall be uniquely identified by a combination of the following parameters on this template (justification) namely: ID, a_justification_for.
The instance is referenced by the following template parameter: justification.
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.
-- Justification, Description, and Purpose
/assigning_justification(
    just_item=@a_justification_for,
    just_asgn_role=@purpose,
    role_ecl_id=@purpose_ecl_id,
    just_txt=@description)/

-- Assign reference parameters
%^justification = $assigning_justification.justification%
%^justification_assignment = $assigning_justification.just_asgn%

-- Justification ID
/identifier(
    items=^justification,
    ID=@ID,
    type=@ID_class_name,
    source_organization=@ID_organization)/

-- [OPTIONAL effectivty date from]
/assigning_dated_effectivity(
    start_year=@effectivity_from_date_year,
    start_month=@effectivity_from_date_month,
    start_day=@effectivity_from_date_day,
    start_hour='0',
    start_minute='0',
    start_second='0',
    start_sense='.EXACT.',
    start_hour_offset='0',
    start_minute_offset='0',
    end_year='',
    end_month='',
    end_day='',
    end_hour='0',
    end_minute='0',
    end_second='0',
    end_sense='.EXACT.',
    end_hour_offset='0',
    end_minute_offset='0',
    role_class_name='Actual_effectivity',
    role_ecl_id='urn:plcs:rdl:uk_defence',
    items=^justification_assignment)/

-- [OPTIONAL justified_by]
/assigning_justification_support_item(
    support_item_role='Justification_support_assignment_role',
    role_ecl_id='urn:plcs:rdl:std',
    justification=^justification,
    just_supp_item=@justified_by)/

-- Instantiate Organization_or_person_in_organization_assignment entity
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 justification
Organization_or_person_in_organization_assignment.items -> ^justification

-- Create the owned_by parameter
Organization_or_person_in_organization_assignment.assigned_entity -> @author

-- [OPTIONAL issuing_authority]
-- Instantiate Organization_or_person_in_organization_assignment entity
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 justification
Organization_or_person_in_organization_assignment.items -> ^justification

-- Create the owned_by parameter
Organization_or_person_in_organization_assignment.assigned_entity -> @issuing_authority
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Organization_or_person_in_organization_assignment.role '/IGNORE'
Organization_or_person_in_organization_assignment.role '/IGNORE'
Instance diagrams
The instance diagram in Figure  4 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/justification(description='It was necessary', ID='JCTJ1234', effectivity_from_date_year='2009', effectivity_from_date_month='11', effectivity_from_date_day='05', ID_class_name='Identification_code', ID_organization='P12345678-801', purpose='Task_justification', purpose_ecl_id='urn:plcs:rdl:std', a_justification_for='#1', justified_by='#235', author='#78', issuing_authority='#136')/
(an illustration of the consolidated justification template is shown in Figure 5 below.)


Figure 4 —  Entities instantiated by justification template

Figure 4 —  Entities instantiated by justification 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:
/justification(description='It was necessary', ID='JCTJ1234', effectivity_from_date_year='2009', effectivity_from_date_month='11', effectivity_from_date_day='05', ID_class_name='Identification_code', ID_organization='P12345678-801', purpose='Task_justification', purpose_ecl_id='urn:plcs:rdl:std', a_justification_for='#1', justified_by='#235', author='#78', issuing_authority='#136')/


Figure 5 —  Instantiation of justification template

Figure 5 —  Instantiation of justification template

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