10 Appendix E: Contact Management XML Schemas
See [MS-SIP] section 9 for the full contact management schema.
The deltaNum attribute is the last attribute in the fullContactList type described in [MS-SIP] section 9.
<xs:complexType name="fullContactList"> ………. ….. <xs:element name="contact" type="tns:contact" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation> Although the schema allows for an unbounded number of contacts, the administrator can configure a server to disallow more than a certain number of contacts. </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:attribute name="deltaNum" type="tns:contactDeltaNm" use="required"/> </xs:complexType> <xs:element name="contactList" type="tns:fullContactList" />
This section contains the schema for the fullContactList type extension<50>
<xs:complexType name="fullContactList"> <xs:sequence> <xs:element name="group" type="tns:group" minOccurs="0" maxOccurs="64" /> <xs:element name="contact" type="tns:contact" minOccurs="0" maxOccurs="unbounded" > <xs:annotation> <xs:documentation> Although the schema allows for an unbounded number of contacts, the administrator can configure a server to disallow more than a certain number of contacts. </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:attribute name="deltaNum" type="tns:contactDeltaNum" use="required" /> <xs:attribute name="ucsMode" type="tns:contactUcsMode" use="required" />
</xs:complexType> <xs:element name="contactList" type="tns:fullContactList" />
The fullContactList type has been extended with a new attribute called ucsMode as shown above.
The prevDeltaNum attribute is the last attribute in the deltaContactList type described in [MS-SIP] section 9.
<xs:complexType name="deltaContactList"> ………. …..
<xs:attribute name="deltaNum" type="tns:contactDeltaNum" use="required" > <xs:annotation> <xs:documentation> The value of this attribute is the new delta number after the SERVICE operation was performed. </xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="prevDeltaNum" type="tns:contactDeltaNum" use="required" > <xs:annotation> <xs:documentation> The value of this attribute equals the value of the delta number specified in the SERVICE operation. </xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType>
<xs:element name="contactDelta" type="tns:deltaContactList" />
This section contains the schema for the deltaContactList type extension<51>
<xs:complexType name="deltaContactList"> <xs:choice> <xs:element name="addedGroup" type="tns:group" /> <xs:element name="modifiedGroup" type="tns:group" /> <xs:element name="addedContact" type="tns:contact" /> <xs:element name="modifiedContact" type="tns:contact" /> <xs:element name="deletedGroup"> <xs:complexType> <xs:attribute name="id" type="tns:groupID" use="required" /> </xs:complexType> </xs:element> <xs:element name="deletedContact"> <xs:complexType> <xs:attribute name="uri" type="tns:sipURI" use="required" /> </xs:complexType> </xs:element> </xs:choice> <xs:attribute name="deltaNum" type="tns:contactDeltaNum" use="required" > <xs:annotation> <xs:documentation> The value of this attribute is the new delta number after the SERVICE operation was performed. </xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="prevDeltaNum" type="tns:contactDeltaNum" use="required" > <xs:annotation> <xs:documentation> The value of this attribute equals the value of the delta number specified in the SERVICE operation. </xs:documentation> </xs:annotation> </xs:attribute> <xs:attribute name="ucsMode" type="tns:contactUcsMode" use="required" /> </xs:complexType>
<xs:element name="contactDelta" type="tns:deltaContactList" />
The deltaContactList type has been extended with a new attribute called ucsMode as shown above.
The definition for new type contactUcsMode is shown below
<xs:simpleType name="contactUcsMode"> <xs:restriction base="xs:string"> <xs:annotation> <xs:documentation> The server maintains the ucs mode for every user. The ucs mode indicates if the contact list for the user is stored on the server or another external store such as Exchange. The ucs mode can be disabled, allowed, migrating or migrated. If the mode is disabled, the contact list is stored on the server. If the mode is allowed, it indicates that the contact list is stored on the server but will be moved to the external store anytime. If the ucs mode is set to migrating, it indicates that the contact list is in the process of being migrated to the external store. If the mode is migrated, migration has already happened and contact list is now on the external store. When the ucs mode is set to migrating or migrated, all operations that will modify the contact list are rejected by the server though an implementation may choose to suppose modifications while the contact list is migrating and/or after it has migrated. </xs:documentation> </xs:annotation> </xs:restriction> </xs:simpleType>