Template:— utility (utl)
Context:— UK_Defence
Date: 2009/04/17 12:40:21
Revision: 1.2

This section specifies the template utility.

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 a represent a utility which may be referenced as a required resource for a task.

Business perspective

This is data about services that are provided at a given facility.

NOTE    Utilities include the provision of: electricity, air, gas, water, steam, hydraulics, sewerage, electricity and communications.

Business object definition


Figure 1 —  Graphical Representation for Business Object Utility

Figure 1 —  Graphical Representation for Business Object Utility

Utility

The definition of a Utility object is: Data about services that are provided at a given facility which may be referenced as a required resource for a task.

Attribute name

Attribute description

Attribute type

Optionality

ID This is the identifier of the Utility. Identifier Mandatory
Name This is the name of the Utility. Intrinsic Mandatory
Supplied to This is the reference to the Facility to which the Utility is supplied. Facility Mandatory
Type This is the reference to the reference to the type of the Utility. Utility Type Mandatory
Unit of supply This is the unit in which the Utility is supplied.

EXAMPLE    Kilowatt hour, Litres

Intrinsic Mandatory

Table 1 — Utility: attribute details

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


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

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

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

Figure 3 —  The graphical representation of the utility template

Input parameters
The following input parameters are defined for this template:
ID (Type='STRING')
The utility identifier.
ID_source_organization (Type='STRING')
The identifier of the organization responsible for the utility identifier.
Name (Type='STRING')
The utility name.
Name_source_organization (Type='STRING')
The identifier of the organization responsible for the utility name.
Supplied_to (Type= 'ENTITY (Product_as_individual)' )
The facility that the utility is supplied to.
Type (Type= 'ENTITY (Product_version)' )
The utility_type for this utility.
Unit_of_supply (Type='CLASS')
The class name of the unit in which the value is expressed.
The following classes and their sub-classes can be used:
classifications: "Unit" (urn:plcs:rdl:std:Unit)
SI_unit (Type='BOOLEAN')
Whether the unit of supply is an SI unit or not.
Reference parameters
The following reference parameters are defined for this template:
utility(Type='ENTITY (Product_as_individual)')
Allow the Product_as_individual entity instantiated in this path to be referenced when this template is used.
Note: The Product_as_individual entity can be referenced in a template path by:
%^target = $utility.utility%
where target is the parameter to which the Product_as_individual is bound.
uos(Type='ENTITY (Assigned_property)')
Allow the Assigned_property entity instantiated in this path to be referenced when this template is used.
Note: The Assigned_property entity can be referenced in a template path by:
%^target = $utility.uos%
where target is the parameter to which the Assigned_property is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique Utility
Each instance of the entity (Product_as_individual) within the data set shall be uniquely identified by a combination of the following parameters on this template (utility) namely: ID, ID_source_organization, Name, Name_source_organization, Type, Supplied_to.
The instance is referenced by the following template parameter: utility.
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.
-- Utility
/representing_product_as_realized(
    id=@ID,
    id_class_name='Utility_identification_code',
    id_ecl_id='urn:plcs:rdl:uk_defence',
    id_owner=@ID_source_organization,
    id_owner_class_name='Organization_identification_code',
    id_owner_ecl_id='urn:plcs:rdl:std',
    vn_id=''/NULL',
    vn_id_class_name='Product_as_individual_identification_code',
    vn_id_ecl_id='urn:plcs:rdl:std',
    vn_id_owner=''/NULL',
    vn_id_owner_class_name='Organization_name',
    vn_id_owner_ecl_id='urn:plcs:rdl:std',
    life_cycle_stage='Support_stage',
    life_cycle_stage_ecl_id='urn:plcs:rdl:std',
    domain='Through_life_support_standard',
    domain_ecl_id='urn:plcs:rdl:uk_defence',
    product_design_version=@Type)/
%^utility = $representing_product_as_realized.pai%
/identifier(
    ID=@Name,
    source_organization=@Name_source_organization,
    type='Utility_name',
    items=^utility)/
/assigning_product_property(
    property_class_name='Unit_of_supply',
    property_ecl_id='urn:plcs:rdl:uk_defence',
    described_element=^utility)/
%^uos = $assigning_product_property.property%
/product_property_numeric(
    value=/NULL,
    unit=@Unit_of_supply,
    unit_ecl_id='urn:plcs:rdl:std',
    si_unit=@SI_unit,
    context='Representation_context',
    context_ecl_id='urn:plcs:rdl:std',
    property=^uos)/

-- Instantiate a Product_relationship
Product_relationship

-- Set the Product_relationship attributes to be ignored
Product_relationship.description = '/IGNORE'
Product_relationship.relation_type = '/IGNORE'

-- Set the Product_relationship relationships
Product_relationship.relating_product -> ^utility
Product_relationship.related_product -> @Supplied_to
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Product_relationship.description '/IGNORE'
Product_relationship.relation_type '/IGNORE'
Instance diagrams
The instance diagram in Figure  4 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/utility(ID='U01', ID_source_organization='UK_Defence', Name='My utility', Name_source_organization='UK_Defence', Unit_of_supply='kilogram', SI_unit='True', Type='@100', Supplied_to='@178')/
(an illustration of the consolidated utility template is shown in Figure 5 below.)


Figure 4 —  Entities instantiated by utility template

Figure 4 —  Entities instantiated by utility 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:
/utility(ID='U01', ID_source_organization='UK_Defence', Name='My utility', Name_source_organization='UK_Defence', Unit_of_supply='kilogram', SI_unit='True', Type='@100', Supplied_to='@178')/


Figure 5 —  Instantiation of utility template

Figure 5 —  Instantiation of utility template

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