Commit e91e4d37 authored by Mark Canterbury's avatar Mark Canterbury
Browse files

TS 102 657 v1.2.1 (2009-06-17) agreed at LI#20 (Levi, 2009-02-03)

parent f2cf65cc
Loading
Loading
Loading
Loading
+145 −87
Original line number Diff line number Diff line
RDMessage {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3) rdHeader(0) version1(1)}
RDMessage {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3) rdHeader(0) version2(2)}

DEFINITIONS IMPLICIT TAGS ::=

BEGIN

-- =============================
-- Object Identifier Definitions
-- Object Identifier definitions
-- =============================

-- RetainedData DomainId
retainedDataDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3)}

rdHeaderId OBJECT IDENTIFIER ::= {retainedDataDomainId rdHeader(0) version1(1)}
-- rdHeader
rdHeaderId OBJECT IDENTIFIER ::= {retainedDataDomainId rdHeader(0) version2(2)}

-- ======================================
-- Top level definitions for RDHI wrapper
@@ -26,7 +28,6 @@ RetainedDataMessage ::= SEQUENCE
		-- retainedDataPayload)
	...
}

-- ==========================================================================
-- Definitions for Retained Data header information, present in every message
-- ==========================================================================
@@ -95,10 +96,11 @@ RequestMessage ::= SEQUENCE
	maxHits						[4] INTEGER OPTIONAL,
		-- Maximum number of records to be returned.
		-- On a national basis maximum numbers could be considered
		-- In case of maxHit a responseFailed message is sent and no data is sent (see 6.3.3.2)
		-- In case of maxHit a responseFailed message is sent and no data is sent 
		-- (see clause 6.3.3.2)
	nationalRequestParameters	[5] NationalRequestParameters OPTIONAL,
		-- to be defined on a national basis 
		-- only to be used in case the present document can not fulfil the national requirements
		-- To be defined on a national basis 
		-- Only to be used in case the present document cannot fulfil the national requirements
	...
}

@@ -128,12 +130,11 @@ RequestPriority ::= OCTET STRING
	-- Priority considerations are a matter for national implementation
	-- This standard makes no statement regarding how such priorities are represented or used


RequestAcknowledgement ::= SEQUENCE
{
	suggestedCompletionTime		[1] GeneralizedTime OPTIONAL,
		-- indicative time that results will be ready
		-- purely informational, not binding for either party
		-- Indicative time that results will be ready
		-- Purely informational, not binding for either party
	...
}

@@ -164,7 +165,7 @@ ResponseStatus ::= CHOICE
	responseUnavailable	[3] NULL,
		-- See clause 6.3.3
	responseFailed		[4] FurtherInformation,
		-- See clause 6.3.3.2
		-- See clauses 6.2.2.2 and 6.3.3.2
	...
}

@@ -191,13 +192,13 @@ RetainedDataRecord ::= CHOICE
	telephonyRecord		[1] TelephonyRecord,
	messageRecord		[2] MessageRecord,
	networkAccess		[3] NetworkAccessRecord,
		-- other services will be included (like multimedia) as they are implemented
		-- Other services will be included (like multimedia) as they are implemented
	...
}

ResponseAcknowledgement ::= CHOICE
{
	-- acknowledges a response has been sent
	-- Acknowledges a response has been sent
	acknowledgeCompleteResults		[1] NULL,
	acknowledgePartialResults		[2] NULL,
	...
@@ -346,16 +347,20 @@ PersonName ::= SEQUENCE
{
	salutation				[1] UTF8String OPTIONAL,
	surname					[2] UTF8String OPTIONAL,
		-- the non-chosen or inherited name of an individual, e.g. “Arend”
		-- the non-chosen or inherited name of an individual, e.g. "Arend"
	surnamePrefix			[3] UTF8String OPTIONAL,
		-- any prefix before the surname, e.g. “von”, “van der”
		-- any prefix before the surname, e.g. "von", "van der"
	surnameSuffix			[4] UTF8String OPTIONAL,
		-- any suffix after the surname, e.g. “Jr”, “III”
		-- any suffix after the surname, e.g. "Jr", "III"
	middleNames				[5] UTF8String OPTIONAL,
		-- that part of the name excluding forename, separable and preceding the surname
	firstname				[6] UTF8String OPTIONAL,
		-- the first name or initials, e.g. “Peter”
	...
		-- the first name or initials, e.g. "Peter"
	...,
	secondsurname			[7] UTF8String OPTIONAL,
		-- a second surname is used in several countries
	secondsurnamePrefix		[8] UTF8String OPTIONAL,
	secondsurnameSuffix		[9] UTF8String OPTIONAL
}

ContactDetails ::= SEQUENCE
@@ -391,7 +396,7 @@ AddressInformation ::= SEQUENCE
AuthenticationInfo ::= SEQUENCE
{
	authenticationType		[1] UTF8String OPTIONAL,
		-- the type of document used to authenticate, e.g. passport, driver’s license
		-- the type of document used to authenticate, e.g. passport, driver's license
	authenticationNumber	[2] UTF8String OPTIONAL,
		-- the number of the document used to authenticate
	...
@@ -437,7 +442,7 @@ SubscribedTelephonyServices ::= SEQUENCE
	providerID				[2] UTF8String OPTIONAL,
		-- Unique identifier for the service provider
	timeSpan				[3] TimeSpan OPTIONAL,
		-- Start and end data, if applicable, of the subsription
		-- Start and end data, if applicable, of the subscription
	registeredNumbers		[4] SEQUENCE OF PartyNumber OPTIONAL,
		-- The set of telephone numbers registered for this service
	registeredICCID			[5] UTF8String OPTIONAL,
@@ -450,8 +455,7 @@ SubscribedTelephonyServices ::= SEQUENCE
	iMSI					[9] IMSI OPTIONAL,
	carrierPreselect		[10] BOOLEAN OPTIONAL,
	lineStatus				[11] UTF8String OPTIONAL,
		-- CSP-specific description of current line status,
		-- e.g. “Active”, “Ceased”, etc.
		-- CSP-specific description of current line status, e.g. "Active", "Ceased", etc.
	...
}

@@ -526,7 +530,7 @@ TelephonyPartyInformation ::= SEQUENCE
		-- Integrated Circuit Card ID (ICCID) number of the party, in ASCII format
	iMSI							[8] IMSI OPTIONAL,
	natureOfAddress					[9] UTF8String OPTIONAL,
		-- Nature of address indicator, e.g. “National”, “International”
		-- Nature of address indicator, e.g. "National", "International"
	forwardedTransferredNumber		[10] PartyNumber OPTIONAL,
	terminatingTransferredNumber	[11] PartyNumber OPTIONAL,
	...
@@ -583,11 +587,11 @@ SmsInformation ::= SEQUENCE
		...
	} OPTIONAL,
	smsCmRefNr		[4] OCTET STRING (SIZE(1..2)) OPTIONAL,
		-- format as per 3GPP 23.040 [16]
		-- format as per 3GPP TS 23.040 [16]
	smsNumOfSM		[5] INTEGER (0..65535) OPTIONAL,
	smsNotifyInd	[6] BOOLEAN OPTIONAL,
	smsProtocolId	[7] OCTET STRING (SIZE(1)) OPTIONAL,
		-- format as per 3GPP 23.040 [16]
		-- format as per 3GPP TS 23.040 [16]
	...
}

@@ -737,7 +741,10 @@ TelephonyDevice ::= SEQUENCE
	} OPTIONAL,
	telephonyDeviceID	[2] TelephonyDeviceID OPTIONAL,
		-- Unique identifier for this telephony device according to type of identifier
	...
	...,
	subscriberID		[3] TelephonySubscriberId OPTIONAL
		-- Identifier for a known user of this equipment. 
		-- Usage of this parameter is subject to national legislation.
}

TelephonyDeviceID ::= OCTET STRING
@@ -788,7 +795,8 @@ Location ::= SEQUENCE
		-- 3GPP TS 24.008 [9] without the Routing Area Identification IEI
		-- (only the last 6 octets are used)
		-- This parameter is duplicated from 3GPP TS 33.108 [11]
	...
	...,
	postalLocation		[8] AddressInformation OPTIONAL
}

GSMLocation ::= CHOICE
@@ -842,7 +850,7 @@ GSMLocation ::= CHOICE
			--			squareID					PU
			--			numericalLocationEasting	9129
			--			mumericalLocationNorthing	4045
			-- In both panels, utm-GridBand and squareID the ‘I’ and ‘O’ characters are not used 
			-- In both panels, utm-GridBand and squareID the 'I' and 'O' characters are not used 
			-- because of their similarity to the digits one and zero.
		mapDatum				[6] MapDatum OPTIONAL,
		azimuth					[7] INTEGER (0..359) OPTIONAL,
@@ -851,8 +859,26 @@ GSMLocation ::= CHOICE
	},
	wGS84Coordinates 	[4] OCTET STRING,
		-- format is as defined in 3GPP TS 03.32 [12]
	...,
	geoCoordinatesDec 	[5] SEQUENCE
	{
		latitudeDec		[1] UTF8String (SIZE(3..12)) OPTIONAL,
			-- format: XDD.nnnnnnnn
		longitudeDec	[2] UTF8String (SIZE(4..13)) OPTIONAL,
			-- format: XDDD.nnnnnnnn
		mapDatum		[3] MapDatum OPTIONAL,
		azimuth			[4] INTEGER (0..359) OPTIONAL,
			-- The azimuth is the bearing, relative to true north
		...
	}
		-- format: XDD.nnnnnnnn (on latitudes) or XDDD.nnnnnnnn (on longitudes)
		-- 		X			: N(orth), S(outh), E(ast), W(est)
		-- 		DD or DDD 	: degrees (numeric characters)
		-- 		nnnnnnnn	: post decimal positions (numeric characters)
		-- Example:
		-- 		latitude		N50.38666667
		-- 		longitude		E112.38671670
}

MapDatum ::= ENUMERATED
{
@@ -944,14 +970,14 @@ MsgSubscriber ::= SEQUENCE
	-- asynchronous message services
{
	validity		[1] TimeSpan OPTIONAL,
	subscriberID	[2] MsgSubscriberId OPTIONAL,
	subscriberID	[2] MsgSubscriberID OPTIONAL,
	msgStores		[3] SEQUENCE OF MsgStore OPTIONAL,
		-- message stores allocated to this subscriber
	subscriber		[4] GenericSubscriberInfo OPTIONAL,
	...
}

MsgSubscriberId ::= OCTET STRING
MsgSubscriberID ::= OCTET STRING
	-- Unique identifier for this subscriber, e.g. account number

MsgStore ::= SEQUENCE
@@ -959,23 +985,25 @@ MsgStore ::= SEQUENCE
	-- definition require some message store. E.g. in the case of e-mail this will be a mailbox
{
	validity		[1] TimeSpan OPTIONAL,
	msgStoreId		[2] MsgStoreId OPTIONAL,
	msgStoreID		[2] MsgStoreID OPTIONAL,
	aliases			[3] SEQUENCE OF MsgAddress OPTIONAL,
		-- The complete list of all addresses that get delivered into this message store.
	providerID		[4] MsgProviderId OPTIONAL,
	providerID		[4] MsgProviderID OPTIONAL,
	...
}

MsgStoreId ::= OCTET STRING
MsgStoreID ::= OCTET STRING
    -- Unique identifier of the message store. Since not all IDs will necessarily be human
    -- readable, a generic byte string is used

MsgAddress ::= OCTET STRING
MsgAddress ::= UTF8String
    -- Messaging address, an address to which messages can be sent. In the case of Internet e-mail
    -- this will be an RFC822-style address
    -- NOTE – as of v1.2.1, this field has changed from OCTET STRING to UTF8String

MsgProviderId ::= OCTET STRING
MsgProviderID ::= UTF8String
	-- Unique identifier for a service provider, e.g. company name
     -- NOTE – as of v1.2.1, this field has changed from OCTET STRING to UTF8String

-- ====================================
-- Definitions of Message Service Usage
@@ -994,10 +1022,10 @@ MsgTransmission ::= SEQUENCE
	-- Sending of an outgoing message, or reception of an incoming message
{
	dateTime				[1] GeneralizedTime OPTIONAL,
	subscriberId		[2] MsgSubscriberId OPTIONAL,
	subscriberID			[2] MsgSubscriberID OPTIONAL,
	senderAddress			[3] MsgAddress OPTIONAL,
	recipients				[4] SEQUENCE OF MsgAddress OPTIONAL,
	msgStores			[5] SEQUENCE OF MsgStoreId OPTIONAL,
	msgStores				[5] SEQUENCE OF MsgStoreID OPTIONAL,
		-- List of all local msgStores that received a copy of the message
		-- For transit messages this field is not used
	deliveryStatus			[6] ENUMERATED
@@ -1019,15 +1047,18 @@ MsgTransmission ::= SEQUENCE
	} OPTIONAL,
	clientID				[8] IPAddress OPTIONAL,
	serverID				[9] IPAddress OPTIONAL,
	...
	...,
	messageID				[10] MessageID OPTIONAL,
	sourceServerName		[11] UTF8String OPTIONAL,
	destinationServerName	[12] UTF8String OPTIONAL
}

MsgStoreOperation ::= SEQUENCE
	-- Manipulation of a message store.
{
	dateTime		[1] GeneralizedTime OPTIONAL,
	subscriberId	[2] MsgSubscriberId OPTIONAL,
	msgStore		[3]	MsgStoreId OPTIONAL,
	subscriberID	[2] MsgSubscriberID OPTIONAL,
	msgStore		[3] MsgStoreID OPTIONAL,
	operation		[4] ENUMERATED
	{
		connect(0),
@@ -1040,7 +1071,8 @@ MsgStoreOperation ::= SEQUENCE
		deleteMsg(4),
		addMsg(5),
			-- E.g. the APPEND command in IMAP
		...
		...,
		editMsg(6)
	} OPTIONAL,
	senderAddress	[5] MsgAddress OPTIONAL,
		-- For Internet email, use the From address in the mail headers
@@ -1050,13 +1082,19 @@ MsgStoreOperation ::= SEQUENCE
	{
		pop(0),
		imap(1),
		...
		...,
		webmail(2)
	} OPTIONAL,
	clientID		[8] IPAddress OPTIONAL,
	serverID		[9] IPAddress OPTIONAL,
	...
	...,
	messageID		[10] MessageID OPTIONAL
}


MessageID ::= UTF8String
	-- Unique identifier for this message, e.g RFC 822 header

NetworkAccessRecord::= CHOICE
{
	naSubscriber		[1] NASubscriber,
@@ -1190,6 +1228,21 @@ GprsInformation ::= SEQUENCE
	aPN						[6] UTF8String OPTIONAL,
	pDP-type				[7] OCTET STRING (SIZE(2)) OPTIONAL,
		-- format as per TS 101 671 [6]
	...,
	gPRSEvent				[8] GPRSEvent OPTIONAL
		-- format as per 3GPP TS 33.108 [11]
}

GPRSEvent ::= ENUMERATED 
{
	pDPContextActivation(1),
	pDPContextDeactivation(4),
	gPRSAttach(5),
	gPRSDetach(6),
	locationInfoUpdate(10),
		-- sMS ommited from 3GPP TS 33.108 [11],
	pDPContextModification(11),
	servingSystem(12),
	...
}

@@ -1260,7 +1313,13 @@ NAAssignedAddress ::= SEQUENCE
		...
	} OPTIONAL,
	assignedTime				[4] TimeSpan OPTIONAL,
	...
	...,
	destinationAddress			[5] IPAddress OPTIONAL,
		-- used in cases where a single external IP/port pair is translated to multiple internal 
		-- IP/port pairs, with the destination IP/port used to multiplex them
	destinationPort				[6] INTEGER OPTIONAL
		-- used in cases where a single external IP/port pair is translated to multiple internal 
		-- IP/port pairs, with the destination IP/port used to multiplex them
}

IPAddressSetOrRangeOrMask ::= CHOICE
@@ -1294,7 +1353,6 @@ NABillingDetails ::= SEQUENCE
	...
}

END -- of RDMessage

END -- end of RDMessage

+96 −26
Original line number Diff line number Diff line
<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            xmlns="http://uri.etsi.org/02657/v1.1.2#/RetainedData"
            targetNamespace="http://uri.etsi.org/02657/v1.1.2#/RetainedData"
            xmlns="http://uri.etsi.org/02657/v1.2.1#/RetainedData"
            targetNamespace="http://uri.etsi.org/02657/v1.2.1#/RetainedData"
			elementFormDefault="qualified">

	<xsd:annotation>
		<xsd:documentation xml:lang="en">
			XSD translated from ASN.1 derived from outcome of LI-rap20 (TS 102 657 v1.1.2) 
			XSD translated from ASN.1 derived from outcome of LI-rap21 (TS 102 657 v1.2.1) 
		</xsd:documentation>
	</xsd:annotation>

@@ -259,20 +259,20 @@
      <xsd:restriction base="xsd:string"/>
   </xsd:simpleType>

   <xsd:simpleType name="MsgSubscriberId">
   <xsd:simpleType name="MsgSubscriberID">
      <xsd:restriction base="xsd:hexBinary"/>
   </xsd:simpleType>

   <xsd:simpleType name="MsgStoreId">
   <xsd:simpleType name="MsgStoreID">
      <xsd:restriction base="xsd:hexBinary"/>
   </xsd:simpleType>

   <xsd:simpleType name="MsgAddress">
      <xsd:restriction base="xsd:hexBinary"/>
      <xsd:restriction base="xsd:string"/>
   </xsd:simpleType>

   <xsd:simpleType name="MsgProviderId">
      <xsd:restriction base="xsd:hexBinary"/>
   <xsd:simpleType name="MsgProviderID">
      <xsd:restriction base="xsd:string"/>
   </xsd:simpleType>

   <xsd:simpleType name="NAProviderID">
@@ -505,6 +505,9 @@
         <xsd:element name="surnameSuffix" minOccurs="0" type="xsd:string"/>
         <xsd:element name="middleNames" minOccurs="0" type="xsd:string"/>
         <xsd:element name="firstname" minOccurs="0" type="xsd:string"/>
         <xsd:element name="secondsurname" minOccurs="0" type="xsd:string"/>
         <xsd:element name="secondsurnamePrefix" minOccurs="0" type="xsd:string"/>
         <xsd:element name="secondsurnameSuffix" minOccurs="0" type="xsd:string"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -764,6 +767,7 @@
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="telephonyDeviceID" minOccurs="0" type="TelephonyDeviceID"/>
		 <xsd:element name="subscriberID" minOccurs="0" type="TelephonySubscriberId"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -892,6 +896,38 @@
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="wGS84Coordinates" type="xsd:hexBinary"/>
         <xsd:element name="geoCoordinatesDec">
            <xsd:complexType>
               <xsd:sequence>
                  <xsd:element name="latitudeDec" minOccurs="0">
                     <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                           <xsd:minLength value="3"/>
                           <xsd:maxLength value="12"/>
                        </xsd:restriction>
                     </xsd:simpleType>
                  </xsd:element>
                  <xsd:element name="longitudeDec" minOccurs="0">
                     <xsd:simpleType>
                        <xsd:restriction base="xsd:string">
                           <xsd:minLength value="4"/>
                           <xsd:maxLength value="13"/>
                        </xsd:restriction>
                     </xsd:simpleType>
                  </xsd:element>
                  <xsd:element name="mapDatum" minOccurs="0" type="MapDatum"/>
                  <xsd:element name="azimuth" minOccurs="0">
                     <xsd:simpleType>
                        <xsd:restriction base="xsd:unsignedShort">
                           <xsd:minInclusive value="0"/>
                           <xsd:maxInclusive value="359"/>
                        </xsd:restriction>
                     </xsd:simpleType>
                  </xsd:element>
                  <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:any namespace="##other" processContents="lax"/>
      </xsd:choice>
   </xsd:complexType> 
@@ -1010,6 +1046,7 @@
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="postalLocation" minOccurs="0" type="AddressInformation"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -1037,13 +1074,15 @@
   <xsd:complexType name="MsgStore">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="msgStoreId" minOccurs="0" type="MsgStoreId"/>
         <xsd:element name="msgStoreID" minOccurs="0" type="MsgStoreID"/>
         <xsd:element name="aliases" minOccurs="0">
            <xsd:simpleType>
               <xsd:list itemType="MsgAddress"/>
            </xsd:simpleType>
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="providerID" minOccurs="0" type="MsgProviderId"/>
         <xsd:element name="providerID" minOccurs="0" type="MsgProviderID"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -1051,7 +1090,7 @@
   <xsd:complexType name="MsgSubscriber">
      <xsd:sequence>
         <xsd:element name="validity" minOccurs="0" type="TimeSpan"/>
         <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberId"/>
         <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
         <xsd:element name="msgStores" minOccurs="0">
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
@@ -1064,20 +1103,28 @@
      </xsd:sequence>
   </xsd:complexType>

   <xsd:simpleType name="MessageID">
      <xsd:restriction base="xsd:string"/>
   </xsd:simpleType>
   
   <xsd:complexType name="MsgTransmission">
      <xsd:sequence>
         <xsd:element name="dateTime" minOccurs="0" type="GeneralizedTime"/>
         <xsd:element name="subscriberId" minOccurs="0" type="MsgSubscriberId"/>
         <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
         <xsd:element name="senderAddress" minOccurs="0" type="MsgAddress"/>
         <xsd:element name="recipients" minOccurs="0">
            <xsd:simpleType>
               <xsd:list itemType="MsgAddress"/>
            </xsd:simpleType>
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="msgStores" minOccurs="0">
            <xsd:simpleType>
               <xsd:list itemType="MsgStoreId"/>
            </xsd:simpleType>
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgStoreID" type="MsgStoreID"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="deliveryStatus" minOccurs="0">
            <xsd:complexType>
@@ -1099,6 +1146,9 @@
         </xsd:element>
         <xsd:element name="clientID" minOccurs="0" type="IPAddress"/>
         <xsd:element name="serverID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="messageID" minOccurs="0" type="MessageID"/>
		 <xsd:element name="sourceServerName" minOccurs="0" type="xsd:string"/>
		 <xsd:element name="destinationServerName" minOccurs="0" type="xsd:string"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -1106,8 +1156,8 @@
   <xsd:complexType name="MsgStoreOperation">
      <xsd:sequence>
         <xsd:element name="dateTime" minOccurs="0" type="GeneralizedTime"/>
		 <xsd:element name="subscriberId" minOccurs="0" type="MsgSubscriberId"/>
		 <xsd:element name="msgStore" minOccurs="0" type="MsgStoreId"/>
		 <xsd:element name="subscriberID" minOccurs="0" type="MsgSubscriberID"/>
		 <xsd:element name="msgStore" minOccurs="0" type="MsgStoreID"/>
         <xsd:element name="operation" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
@@ -1117,25 +1167,30 @@
				  <xsd:element name="partialretrieveMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="deleteMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="addMsg" type="NULL" minOccurs="0"/>
				  <xsd:element name="editMsg" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="senderAddress" minOccurs="0" type="MsgAddress"/>
         <xsd:element name="recipients" minOccurs="0">
            <xsd:simpleType>
               <xsd:list itemType="MsgAddress"/>
            </xsd:simpleType>
            <xsd:complexType>
               <xsd:sequence minOccurs="0" maxOccurs="unbounded">
                  <xsd:element name="MsgAddress" type="MsgAddress"/>
               </xsd:sequence>
            </xsd:complexType>
         </xsd:element>         
         <xsd:element name="protocol" minOccurs="0">
            <xsd:complexType>
               <xsd:choice>
                  <xsd:element name="pop" type="NULL" minOccurs="0"/>
				  <xsd:element name="imap" type="NULL" minOccurs="0"/>
				  <xsd:element name="webmail" type="NULL" minOccurs="0"/>
               </xsd:choice>
            </xsd:complexType>
         </xsd:element>
		 <xsd:element name="clientID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="serverID" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="messageID" minOccurs="0" type="MessageID"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -1207,6 +1262,8 @@
            </xsd:complexType>
         </xsd:element>
         <xsd:element name="assignedTime" minOccurs="0" type="TimeSpan"/>
		 <xsd:element name="destinationAddress" minOccurs="0" type="IPAddress"/>
		 <xsd:element name="destinationPort" minOccurs="0" type="xsd:integer"/>
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>
@@ -1220,6 +1277,18 @@
      </xsd:sequence>
   </xsd:complexType>

   <xsd:complexType name="GPRSEvent">
      <xsd:choice>
         <xsd:element name="pDPContextActivation" type="NULL" minOccurs="0"/>
         <xsd:element name="pDPContextDeactivation" type="NULL" minOccurs="0"/>
         <xsd:element name="gPRSAttach" type="NULL" minOccurs="0"/>
         <xsd:element name="gPRSDetach" type="NULL" minOccurs="0"/>
         <xsd:element name="locationInfoUpdate" type="NULL" minOccurs="0"/>
         <xsd:element name="pDPContextModification" type="NULL" minOccurs="0"/>
		 <xsd:element name="servingSystem" type="NULL" minOccurs="0"/>
      </xsd:choice>
   </xsd:complexType>
   
   <xsd:complexType name="GprsInformation">
      <xsd:sequence>
         <xsd:element name="iMSI" minOccurs="0" type="IMSI"/>
@@ -1241,6 +1310,7 @@
               </xsd:restriction>
            </xsd:simpleType>
         </xsd:element>
         <xsd:element name="gPRSEvent" minOccurs="0" type="GPRSEvent"/>		 
         <xsd:any namespace="##other" processContents="lax" minOccurs="0"/>
      </xsd:sequence>
   </xsd:complexType>