Template:— representing_message (rep_msg) |
Date: 2010/02/26 01:54:41 Revision: 1.32
|
This section specifies the template representing_message.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the representation and identification of a message and
the relationships between a message and its contents.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"representing_message".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for representing_message
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_message template
The following input parameters are defined for this template:
The identifier of the message.
The name of the class being used to classify the identification
(
Identification_assignment)
of the message. This provides the role or reason for the identification.
The following classes and their sub-classes can be used:
The identifier of the
External_class_library
storing the definition of the class referenced by the parameter @id_class_name.
The name or identifier of the organization owning the id or name.
The name of the class being used to classify the
identification of the organization. For example CAGE code, or organization name.
The following classes and their sub-classes can be used:
The name of the class being used to classify the
role date assignment, e.g. the message sending date.
The following classes and their sub-classes can be used:
The 'year' component of: the date the data was extracted from the system and the message created.
The 'month' component of: the date the data was extracted from the system and the message created.
The 'day' component of: the date the data was extracted from the system and the message created. This can be in local
time or UTC
The 'hour' component of: the date the data was extracted from the system and the message created. This can be in local
time or UTC.
The 'minute' component of: the date the data was extracted from the system and the message created. This can be in local
time or UTC.
The 'second' component of: the date the data was extracted from the system and the message created. This can be in local
time or UTC
The direction of the offset. Enumeration values: 'ahead', 'exact' or 'behind'.
The number of hours by which a time is offset from Coordinated Universal Time.
The number of minutes by which a time is offset from Coordinated Universal Time.
The value of this attribute need not be specified.
This parameter is optional. If not given, it will remain unset.
The name of the class being used to classify the
Message
as a container of ISO 10303-239 data of a given version.
The subclasses identify the version of ISO 10303-239 to which the data in the message conforms. A subclass of the
following is to be used.
The following classes and their sub-classes can be used:
The name of the class being used to classify the
Message
as a container of an identified DEX. The subclasses define the DEX to which the data in the message conforms. A subclass
of the following is to be used.
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
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 = $representing_message.message%
where
target
is the parameter to which the
Message
is bound.
Allow the
Content_item_selected
entity instantiated in this path to be referenced when this template is used.
%^target = $representing_message.content_item%
AP239 Issue (RBN-4)
The ISO-10303-239 1st edition does not support the Content_item_selected entity.
This has been raised as issue,
RBN-4, against ISO
10303-239. The EXPRESS schema has been modified in DEXlib (Long form: dexlib/data/schemas/ap239_arm_lf.exp,
short form: dexlib/data/schemas/ap239_arm_sf.exp).
These changes will be made to ISO 10303-239 as a Technical Corrigendum at
some stage.
Content_item should never be instantiated; only Content_item_selected should be instantiated. In other words, Content_item
should be used (in effect) as though it were an abstract supertype.
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-- Mark the Message entity as -- referable when this template is used by binding it to the reference -- parameter message %^message =
Message%
Message.id = '/IGNORE'
Message.message_type = '/IGNORE'
Message.purpose = '/IGNORE'
Message.contains ->
Content_item_selected-- Mark the Content_item_selected entity as -- referable when this template is used by binding it to the reference -- parameter content_item %^content_item =
Content_item_selected%
Content_item_selected.contents ->
@contentContent_item_selected.item_identifier = '/IGNORE'
Content_item_selected.item_type = '/IGNORE'
Content_item_selected.access_comment = '/IGNORE'
-- assign ID to message /
assigning_identification(
id=@rep_msg_id,
id_class_name=@rep_msg_id_class_name,
id_ecl_id=@rep_msg_id_ecl_id,
org_id=@rep_msg_id_owner,
org_id_class_name=@rep_msg_id_owner_class_name,
org_id_ecl_id=@rep_msg_id_owner_ecl_id,
items=^message)/
-- provide the version of the AP /
assigning_reference_data(
items=^message,
class_name=@dex_id_class_name,
ecl_id=@dex_id_ecl_id)/
-- provide the version of the AP /
assigning_reference_data(
items=^message,
class_name=@ap239_id_class_name,
ecl_id=@ap239_id_ecl_id)/
-- assigning an actual date of the message - the date the message was created /
assigning_time(
date_class_name=@date_class_name,
date_ecl_id=@date_ecl_id,
year=@year,
month=@month,
day=@day,
hour=@hour,
minute=@minute,
second=@second,
sense=@sense,
hour_offset=@hour_offset,
minute_offset=@minute_offset,
items= ^message)/
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_message(rep_msg_id='CM1234', rep_msg_id_class_name='Message_identification_code', rep_msg_id_ecl_id='urn:plcs:rdl:std', rep_msg_id_owner='Express Delivery Inc', rep_msg_id_owner_class_name='Organization_name', rep_msg_id_owner_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_extraction', date_ecl_id='urn:plcs:rdl:std', year='2007', month='6', day='13', hour='11', minute='23', second='54', 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_aviation_maintenance_v1', dex_id_ecl_id='urn:plcs:rdl:std')/
(an illustration of the consolidated representing_message template is shown in
Figure
4 below.)
Note that the
assigning_organization
or
assigning_person_in_organization
template must be used with the representing_message template to indicate both the sender and the receiver
of the message as indicated below:
/assigning_organization(org_id='Parts R Us Ltd', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', org_assign_class_name='Sender_of', org_assign_ecl_id='http://www.plcs.org', items='#124')/
/assigning_person_in_organization(items='#124', last_name='Berry', first_name='Janet', middle_names='', prefix_titles='', suffix_titles='', person_role_class_name='Receiver_of', person_role_ecl_id='urn:plcs:rdl:std', org_id='Express Delivery Inc', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std')/
Note that the
assigning_reference_data,
assigning_time and
assigning_identification templates are used in the diagram.
Namely:
/assigning_reference_data(items='#124', class_name='DEX_message_aviation_maintenance_v1', ecl_id='urn:plcs:rdl:std')/
/assigning_reference_data(items='#124', class_name='AP239_ed1_tc1_message', ecl_id='urn:plcs:rdl:std')/
/assigning_identification(items='#124', id='CM1234', id_class_name='Message_identiification_code', id_ecl_id='urn:plcs:rdl:std', org_id='Express Delivery Inc', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std')/
/assigning_time(items='#124', date_class_name='Date_message_sent', date_ecl_id='urn:plcs:rdl:std', year='2007', month='6', day='13', hour='11', minute='23', second='54', sense='.EXACT.', hour_offset='0', minute_offset='0')/
Figure 3 — Entities instantiated by representing_message 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_message(rep_msg_id='CM1234', rep_msg_id_class_name='Message_identification_code', rep_msg_id_ecl_id='urn:plcs:rdl:std', rep_msg_id_owner='Express Delivery Inc', rep_msg_id_owner_class_name='Organization_name', rep_msg_id_owner_ecl_id='urn:plcs:rdl:std', date_class_name='Date_actual_extraction', date_ecl_id='urn:plcs:rdl:std', year='2007', month='6', day='13', hour='11', minute='23', second='54', 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_aviation_maintenance_v1', dex_id_ecl_id='urn:plcs:rdl:std')/
Note that the
assigning_organization
or
assigning_person_in_organization
template must be used with the representing_message template to indicate both the sender and the receiver
of the message as indicated below:
/assigning_organization(org_id='Parts R Us Ltd', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std', org_assign_class_name='Sender_of', org_assign_ecl_id='http://www.plcs.org', items='#124')/
/assigning_person_in_organization(items='#124', last_name='Berry', first_name='Janet', middle_names='', prefix_titles='', suffix_titles='', person_role_class_name='Receiver_of', person_role_ecl_id='urn:plcs:rdl:std', org_id='Express Delivery Inc', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std')/
Figure 4 — Entities instantiated by representing_message template
The following section details how the
representing_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
5
shows the possible characterizations of the template
"representing_message".
Figure 5 — Characterizations for representing_message template
The following characterizations may apply:
Characterization Assigning descriptor
NOTE this characterization is optional.
Access comments of the message, the message purpose and the transmission purpose and
can be provided using instances
of the template assigning_descriptor.
These are applied to the ^message reference parameter for the message purpose and the transmission
purpose and to ^content_item reference parameter for the access comments . See Figure 5 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 purpose of the message', class_name='Description', ecl_id='urn:plcs:rdl:std', is_assigned_to='@124')/
Characterization Assigning date/time
NOTE this characterization is optional.
Date/times can be assigned to the message using instances of
the template assigning_time.
This is applied to the ^message reference parameter.
See Figure 5 for an abstract view of this.
The following template call shows how this might be instantiated with respect to Figure 5.
This illustrates assigning the time that a message was sent.
/assigning_time(date_class_name='Date_message_sent', 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='@97')/
Characterization Assigning reference data
NOTE this characterization is optional.
Security classification and content item type can be applied to the message using instances of
the template assigning_reference_data.
This is applied to the ^message reference parameter for the security classification and ^content_item
reference parameter for the content item type. See Figure 5 for
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='Security_classification_assignment', ecl_id='urn:plcs:rdl:std', items='@124')/
Characterization Assignments of approvals
NOTE this characterization is optional.
A message may have approvals assigned to it, through the use of the
assigning_approval template.
This is applied to the ^message reference parameter.
See Figure 5 for
an abstract view of this.
The following template call shows how this might be instantiated with
respect to Figure 5.
/assigning_approval(status='Approved', status_ecl_id='urn:plcs:rdl:std', items='#124')/
Characterization Assignments of asserted state
NOTE this characterization is optional.
A message may have a state, which has been observed and confirmed by evidence, assigned to it, through the use of
the
assigning_asserted_state
template.
This is applied to the ^message reference parameter.
See Figure 5 for
an abstract view of this.
The following template call shows how this might be instantiated with
respect to Figure 5.
/assigning_asserted_state(state_class_name='Final', state_ecl_id='urn:plcs:rdl:std', assigned_to='#124')/
Characterization Assignments of contract
NOTE this characterization is optional.
A message may have a contract assigned to it, through the use of the
assigning_contract
template.
This is applied to the ^message reference parameter.
See Figure 5 for
an abstract view of this.
The following template call shows how this might be instantiated with
respect to Figure 5.
/assigning_contract(cnt_id='123456', cnt_id_class_name='Contract_identification_code', cnt_id_ecl_id='urn:plcs:rdl:std', cnt_org_id='Express Delivery Inc', cnt_org_id_class_name='Organization_name', cnt_org_id_ecl_id='urn:plcs:rdl:std', items='#124')/
Characterization Assignments of security classification
NOTE this characterization is optional.
A message may have a a security classification assigned to it, through the use of the
assigning_security_classification
template.
This is applied to the ^message reference parameter.
See Figure 5 for
an abstract view of this.
The following template call shows how this might be instantiated with
respect to Figure 5.
/assigning_security_classification(items='#124', class_name='Secret', ecl_id='urn:plcs:rdl:sample')/