3.1.1 Abstract Data Model

This section describes a conceptual model of possible data organization that an implementation maintains to participate in this protocol. The described organization is provided to facilitate the explanation of how the protocol behaves. This document does not mandate that implementations adhere to this model as long as their external behavior is consistent with that described in this document.

The abstract data model for this protocol comprises elements that are private to this protocol and others that are shared between multiple MSMQ protocols that are co-located at a common queue manager. The shared abstract data model is defined in [MS-MQDMPR] section 3.1.1, and the relationship between this protocol, a queue manager, and other protocols that share a common queue manager is described in [MS-MQOD].

Section specifies the elements from the shared data model that are manipulated by this protocol. Sections through specify the data model elements that are private to this protocol.

Abstract Data Model Syntax

Throughout this document, the following standard syntactic conventions are observed:

  1. Unqualified and scalar abstract data model (ADM) element names are suffixed with "ADM element".

  2. Unqualified ADM attribute names are suffixed with "ADM attribute".

  3. Non-scalar ADM <element name>.<attribute name> constructions are unsuffixed.

  4. Definitions:

    • An attribute is a property of an ADM element.

    • A scalar ADM element does not define attributes.

    • A non-scalar ADM element defines at least one attribute. Attributes can be nested to an arbitrary depth within a non-scalar ADM element.