3.3.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 specification does not mandate that implementations adhere to this model as long as their external behavior is consistent with what is described in this specification.

The client MAY use a Boolean flag, BatchSubscribeEnabled, for each subscription to track whether batched SUBSCRIBE/NOTIFY requests are supported.

The server MAY also use a similar Boolean flag, BatchSubscribeEnabled, for each subscription to track whether batched SUBSCRIBE/NOTIFY requests are supported.

The server MAY also have a configurable parameter, MaxNumberOfContacts, per user to keep track of the limit on how many contacts that user can have.

Note The preceding conceptual data can be implemented by using a variety of techniques. An implementation is at liberty to implement such data in any way convenient.