Template:— message (msg)
Context:— UK_Defence
Date: 2010/03/22 12:23:19
Revision: 1.4

This section specifies the template message.

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 message in terms of PLCS model elements (templates, entities, and reference data).

Business perspective

The Message business object is used by those UK_Defence Data Exchange Specifications that require information about communications between people and organizations.

Business object definition


Figure 1 —  Graphical Representation for Business Object Message

Figure 1 —  Graphical Representation for Business Object Message

Message:

The definition of a message object is: Data about a messages that is intended to be communicated between people / organizations.

NOTE    This represents a basic message structure, that may be used for feedback messages, information item distribution etc.

Attribute name

Attribute description

Attribute type

Optionality

Communication Medium This is the method by which the message is transmitted.

EXAMPLE    Radio, Channel 5, email.

Intrinsic Mandatory
Contents This is the reference to the records that may be contained within the message. Record Mandatory
Date Created This is the date on which the message was created. Intrinsic Mandatory
Date Released This is the date on which the message is sent. Intrinsic Optional
ID This is the identifier of the Message. Identifier Mandatory
Name This is the name of the Message. Intrinsic Optional
Priority This is the priority of the message. Intrinsic Optional
Purpose This is the purpose of the message. Intrinsic Mandatory
Recipients This is the reference to persons and/or organizations that receive the message. SELECT Mandatory
Related Contract This is the reference to the contract under which the message is exchanged. Contract Mandatory
Response Required By This is the date on which a response to the message is required from the recipients. Intrinsic Optional
Security Classification This is the security classification of the message. Intrinsic Mandatory
Sender This is the reference to the person and/or organization that sends the message. Person or Organization Mandatory
Subject This is the subject of the message Intrinsic Optional
Type This is the type of the message.

EXAMPLE    "comment", "status change", "routine communication", "data import", "data export", "for comment", "for review", "for information", "for approval".

Intrinsic Optional

Table 1 — Message attribute details

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


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

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

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

Figure 3 —  The graphical representation of the message template

Input parameters
The following input parameters are defined for this template:
Communication_medium (Type='CLASS')
The name of the class used to classify the Message with the medium used to communicate the data in the message.
The following classes and their sub-classes can be used:
classifications: [Message_communication_medium]
[warning:]Error RDL4: The URI urn:plcs:rdl:uk_defence is not listed in dexlib/data/refdata/rdl_index.xml
ID (Type='STRING')
The identifier of the message.
ID_source_organization (Type='STRING')
The identifier of the organization responsible for identifying the message .
Date_created_year (Type= 'TYPE (year_number)' )
Calendar_date year_component of the date that the message was created.
Date_created_month (Type= 'TYPE (month_in_year_number)' )
Calendar_date month_component of the date that the message was created.
Date_created_day (Type= 'TYPE (day_in_month_number)' )
Calendar_date day_component of the date that the message was created.
Date_created_hour (Type= 'TYPE (hour_in_day)' )
Local_time hour_component of the date and time that the message was created.
Date_created_minute (Type= 'TYPE (minute_in_hour)' , Optional)
Local_time minute_component of the date and time that the message was created. This parameter is optional. If not given, it will remain unset.
Date_created_second (Type= 'TYPE (second_in_minute)' , Optional)
Local_time second_component of the date and time that the message was created. This parameter is optional. If not given, it will remain unset.
Purpose (Type='STRING')
Text that describes the purpose of the message.
Recipient_organization (Type='STRING')
The name or identifier of the receiving organization.
Security_Classification (Type='CLASS')
The name of the class used to classify the security level. (Security_classification_assignment)
The following classes and their sub-classes can be used:
classifications: "Security_classification" (urn:plcs:rdl:std:Security_classification)
Contents (Type= 'SELECT (message_content_item)' )
The content of the message.
Related_contract (Type= 'ENTITY (Contract)' )
The content of the message.
Reference parameters
The following reference parameters are defined for this template:
message(Type='ENTITY (Message)')
Allow the Message entity instantiated in this path to be referenced when this template is used.
Note: The Message entity can be referenced in a template path by:
%^target = $message.message%
where target is the parameter to which the Message is bound.
contract(Type='ENTITY (Contract)')
Allow the Contract entity instantiated in this path to be referenced when this template is used.
Note: The Contract entity can be referenced in a template path by:
%^target = $message.contract%
where target is the parameter to which the Contract is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique id
Each instance of the entity (Message) within the data set shall be uniquely identified by a combination of the following parameters on this template (message) namely: ID, ID_source_organization.
The instance is referenced by the following template parameter: message.
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.
-- Message
/representing_message(
    rep_msg_id=@ID,
    rep_msg_id_class_name='Message_identification_code',
    rep_msg_id_ecl_id='urn:plcs:rdl:std',
    rep_msg_id_owner=@ID_source_organization,
    rep_msg_id_owner_class_name='Organization_name',
    rep_msg_id_owner_ecl_id='urn:plcs:rdl:std',
    date_class_name='Date_actual_creation',
    date_ecl_id='urn:plcs:rdl:std',
    year=@Date_created_year,
    month=@Date_created_month,
    day=@Date_created_day,
    hour=@Date_created_hour,
    minute=@Date_created_minute,
    second=@Date_created_second,
    sense='.EXACT.',
    hour_offset='0',
    minute_offset='0',
    ap239_id_class_name='AP239_ed1_tc1_message',
    ap239_id_ecl_id='urn:plcs:rdl:std',
    dex_id_class_name='DEX_message_uk_defence',
    dex_id_ecl_id='urn:plcs:rdl:uk_defence',
    content=@Contents)/
%^message = $representing_message.message%

-- Purpose
/assigning_descriptor(
    descr=@Purpose,
    class_name='Purpose',
    ecl_id='urn:plcs:rdl:uk_defence',
    is_assigned_to=^message)/

-- Recipient (organization)
/assigning_organization(
    org_id=@Recipient_organization,
    org_id_class_name='Organization_name',
    org_id_ecl_id='urn:plcs:rdl:std',
    org_assgn_class_name='Receiver_of',
    org_assgn_ecl_id='urn:plcs:rdl:std',
    items=^message)/

-- Security classification
/assigning_security_classification(
    security_class_name=@Security_Classification,
    security_ecl_id='urn:plcs:rdl:uk_defence',
    items=^message)/

-- Communication medium
/assigning_reference_data(
    items=^message,
    class_name=@Communication_medium,
    ecl_id='urn:plcs:rdl:uk_defence')/

-- Contract reference
Contract_assignment
Contract_assignment.items -> ^message
Contract_assignment.assigned_contract -> @Related_contract
Instance diagrams
The instance diagram in Figure  4 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/message(receiver_organization='UK_Defence', contract_identifier='C123', extract_year='2007', extract_month='11', extract_day='27', extract_hour='16', extract_minute='14', extract_second='22', security_class='Secret', Communication_medium='Radio', ID='M123', Date_created_year='2008', Date_created_month='2', Date_created_day='22', Date_created_hour='17', Date_created_minute='0', Date_created_second='0', Sender_organization='Express Delivery Ltd', Purpose='For information', Recipient_organization='UK_Defence', Security_Classification='Secret', Contents='#266')/
(an illustration of the consolidated message template is shown in Figure 5 below.)


Figure 4 —  Entities instantiated by message template

Figure 4 —  Entities instantiated by message 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:
/message(receiver_organization='UK_Defence', contract_identifier='C123', extract_year='2007', extract_month='11', extract_day='27', extract_hour='16', extract_minute='14', extract_second='22', security_class='Secret', Communication_medium='Radio', ID='M123', Date_created_year='2008', Date_created_month='2', Date_created_day='22', Date_created_hour='17', Date_created_minute='0', Date_created_second='0', Sender_organization='Express Delivery Ltd', Purpose='For information', Recipient_organization='UK_Defence', Security_Classification='Secret', Contents='#266')/


Figure 5 —  Instantiation of message template

Figure 5 —  Instantiation of message template

Characterizations
The following section details how the message template can be optionally characterized by assigning other constructs to it. These are characterizations commonly applied to the template. The ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
The EXPRESS-G diagram in Figure 6 shows the possible characterizations of the template "message".


Figure 6 —  Characterizations for message

Figure 6 —  Characterizations for message

The following characterizations may apply:
Characterization Date released

NOTE   this characterization is optional.

The date/time when a message is created is applied to the message using instances of the template assigning_time. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_time(date_class_name='Date_actual_release', date_ecl_id='urn:plcs:rdl:std', year='2008', month='01', day_in_month_number='30', hour='17', minute='0', second='0', sense='.EXACT.', hour_offset='0', minute_offset='0', items='@1')/
Characterization Name

NOTE   this characterization is optional.

A name for the message is provided using instances of the template assigning_identification. These are applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_identification(id='The name of the message', id_class_name='Name', id_ecl_id='urn:plcs:rdl:std', org_id='UK_Defence', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', items='@1')/
Characterization Priority

NOTE   this characterization is optional.

Priorities can be applied to the message using instances of the template assigning_reference_data. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_reference_data(class_name='Urgent', ecl_id='urn:plcs:rdl:std', items='@1')/
Characterization Recipient (person)

NOTE   this characterization is optional.

The person who receives the message is recorded using instances of the template UK_Defence.assigned_person. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigned_person(family_name='Brown', first_name='John', ID='JB001', source_organization='BAE Systems', type='Message_recipient', middle_name='', prefix_title='', suffix_title='', items='@1')/
Characterization Response required by

NOTE   this characterization is optional.

The date/time when by which a response is required can be applied to the message using instances of the template assigning_time. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_time(date_class_name='Response_required_byt', date_ecl_id='urn:plcs:rdl:uk_defence', year='2008', month='01', day_in_month_number='30', hour='17', minute='0', second='0', sense='.EXACT.', hour_offset='0', minute_offset='0', items='@1')/
Characterization Sender (person)

NOTE   this characterization is optional.

The person who sends the message is recorded using instances of the template UK_Defence.assigned_person template and the Organization_or_person_in_organization_assignment entity. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigned_person(family_name='Smith', first_name='John', ID='JS001', source_organization='BAE Systems', type='Message_Sender', middle_name='', prefix_title='', suffix_title='', items='@1')/
Characterization Sender (organization)

NOTE   this characterization is optional.

The organization who sends the message is recorded using instances of the UK_Defence.organization template and the Organization_or_person_in_organization_assignment entity. This is applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/organization(id='K0999', source_organization='BAE Systems', ID_type='Identification_code', name='BAE SYSTEMS', items='@1')/
Characterization Type

NOTE   this characterization is optional.

The message type is provided using instances of the template assigning_reference_data. These are applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_reference_data(class_name='Routine_communication', ecl_id='urn:plcs:rdl:uk_defence', items='@1')/
Characterization Assigning subject

NOTE   this characterization is optional.

The subject of the message can be provided using instances of the template assigning_descriptor. These are applied to the ^message reference parameter. See Figure 6 for the an abstract view of this. The following template call shows how this might be instantiated with respect to Figure 5.

/assigning_descriptor(descr='This describes the transmission method for the message', class_name='Message_transmission_method', ecl_id='urn:plcs:rdl:uk_defence', is_assigned_to='@1')/

© UK MOD 2010 — All rights reserved