Application module: Envelope | ISO/TS 10303-1265:2004(E) © ISO |
This clause specifies the information requirements for the Envelope application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.
NOTE 1 A graphical representation of the information requirements is given in Annex C.
NOTE 2 The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.
The following EXPRESS specification begins the Envelope_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Envelope_arm;
(*
The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.
EXPRESS specification:
*)
USE FROM
Approval_arm;
--
ISO/TS 10303-1012
USE FROM
Date_time_assignment_arm;
--
ISO/TS 10303-1014
USE FROM
Message_arm;
--
ISO/TS 10303-1270
USE FROM
Person_organization_assignment_arm;
--
ISO/TS 10303-1013
USE FROM
Property_assignment_arm;
--
ISO/TS 10303-1030
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Approval_arm ISO/TS 10303-1012 Date_time_assignment_arm ISO/TS 10303-1014 Message_arm ISO/TS 10303-1270 Person_organization_assignment_arm ISO/TS 10303-1013 Property_assignment_arm ISO/TS 10303-1030
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.
The envelope_approval_select type is an extension of the approval_item type. It adds the data type Envelope to the list of alternate data types.
NOTE 1 The list of entity data types may be extended in application modules that use the constructs of this module.
The approval is to be interpreted as meaning that the Message contained in the Envelope is approved to be sent to the identified recipients.
NOTE There is an implied constraint on the business process that recipients cannot be added or removed after the approval is given.
EXPRESS specification:
*)
TYPE
envelope_approval_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
approval_item
WITH
(Envelope);
END_TYPE;
(*
The envelope_date_time_select type is an extension of the date_or_date_time_item type. It adds the data type Envelope to the list of alternate data types.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
An Envelope may have associated with it a date sent, for which role shall be given the value "Envelope sent". In the receiving system, an Envelope may also have a reception date, for which role shall be given the value "Envelope received".EXPRESS specification:
*)
TYPE
envelope_date_time_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
date_or_date_time_item
WITH
(Envelope);
END_TYPE;
(*
The envelope_person_organization_select type is an extension of the organization_or_person_in_organization_item type. It adds the data type Envelope to the list of alternate data types.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
This extends organization_or_person_in_organization_item to allow one or more recipients to be associated with the Envelope. For a recipient, the role shall be given the value "Envelope recipient".EXPRESS specification:
*)
TYPE
envelope_person_organization_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
organization_or_person_in_organization_item
WITH
(Envelope);
END_TYPE;
(*
The envelope_property_select type is an extension of the property_assignment_select type. It adds the data type Envelope to the list of alternate data types.
NOTE 1 The list of entity data types may be extended in application modules that use the constructs of this module.
There are no properties predefined in this module.
NOTE Property can be used to reference Envelope properties such as encoding, however its use is subject to particular exchange agreements.
EXPRESS specification:
*)
TYPE
envelope_property_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
property_assignment_select
WITH
(Envelope);
END_TYPE;
(*
This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.
EXPRESS specification:
*)
ENTITY Envelope;
id : STRING;
acknowledge :
OPTIONAL
STRING;
wrapping :
OPTIONAL
Message;
END_ENTITY;
(*
Attribute definitions:
id: an identifier for the Envelope.
NOTE 1 The id is unique and is used to identify which Envelope an acknowledgement is referring to.
acknowledge: the request for and acknowledgement of receipt of the Envelope. The value of this attribute need not be specified.
On transmission of a Message this attribute shall take one of the values "" (blank), "ask message arrival" or "ask message read". A blank value expects no reply. A value of "ask message arrival" asks if the Message arrived at the recepients' mailbox, and requires the reply Envelope to have values "acknowledge arrival" if the Message arrives at the destination, or "delivery failure" if failure of the delivery is detected.
NOTE 2 Envelope is used to provide an audit trail. There is no assumption that the transmission system has any knowledge of Envelope or its usage. However, if it reports some failure, this can then be recorded in the way described.
A value of "ask message read" asks if the recipient has actually opened the Message to read it, and expects the reply "acknowledge read" on success, or "contents corrupt" if it is not possible to for it to be read.
NOTE 3 For any single Envelope, there should be an acknowledgement per recipient. The acknowledgement will not contain a Message.
NOTE 4 The Envelope being acknowledged is referenced using an Envelope_relationship.
wrapping: the Message that the Envelope is wrapping. A Message should be present unless the Envelope is being used to carry an acknowledgement. The value of this attribute need not be specified.
An Envelope_relationship is an association of one Envelope with another.
NOTE The most obvious use of the association is to link an Envelope to its acknowledgements.
EXPRESS specification:
*)
ENTITY Envelope_relationship;
relating : Envelope;
related : Envelope;
relation_type :
OPTIONAL
STRING;
END_ENTITY;
(*
Attribute definitions:
relating: one of the instances of Envelope participating in the relationship
related: the other instance of the Envelope participating in the relationship. If one Envelope participating in the relationship is dependent upon the other, this attribute shall be the dependent one.
relation_type: the role the relationship takes. The value of this attribute need not be specified.
EXAMPLE If Envelope with id = 123 gets is acknowledged by Envelope id = 246, then Envelope_relationship.relating points to Envelope.id=123, Envelope_relationship.related points to Envelope.id=246 and Envelope_relationship.relation_type="acknowledges".
*)
END_SCHEMA; -- Envelope_arm
(*
© ISO 2004 — All rights reserved