`a2) Patent Application Publication 0) Pub. No.: US 2004/0049599 Al
`(43) Pub. Date: Mar.11, 2004
`
`Friend et al.
`
`US 20040049599A1
`
`(54) SYSTEM AND METHOD FOR MAPPING
`IDENTIFICATION CODES
`
`Related U.S. Application Data
`
`(76)
`
`Inventors: John Friend, Los Altos, CA (US);
`Michael Belshe, Sunnyvale, CA (US);
`David Hoffman, Menlo Park, CA (US)
`
`Correspondence Address:
`BLAKELY, SOKOLOFEF, TAYLOR & ZAFMAN
`LLP
`Seventh Floor
`12400 Wilshire Boulevard
`Los Angeles, CA 90025-1026 (US)
`
`(63) Continuation-in-part of application No. 10/109,928,
`filed on Mar. 29, 2002, whichis a continuation-in-part
`of application No. 09/924,283,filed on Aug. 7, 2001.
`
`Publication Classification
`
`(SL) Ute C07 casccccssssssssstenssnssssssttntsnsstn GOG6F 15/16
`(52) US. Ch.
`cecescssesssssnstssssstnsensssen 709/248; 709/247
`
`(57)
`
`ABSTRACT
`
`According to one embodiment, a system is disclosed. The
`system includes a wireless data processing device and a
`server communicatively coupled to the wireless device. The
`server comprises mapping logic that translates data objects
`havingafirst set of identification (ID) codes to a second set
`of ID codes for transmission to the wireless device to
`(21) Appl. No.:
`10/404,976
`maintain synchronization of data objects with the wireless
`device over a wireless network.
`
`(22)
`
`Filed:
`
`Mar. 31, 2003
`
`Server 103
`
`Service 102
`(e.g., email)
`
`Standard Data
`Object IDs
`220
`
`100
`
`Object ID
`Mapping
`Logic 200
`
`Interface
`
`Wireless
`Synchronization
`System Data
`Object IDs
`210
`
`Data Object ID Map
`205
`
`9810... . 02903 '
`
`Standard IDs 220
`9830... . 12093
`
`8827 .... 20204
`
`i
`{
`1
`i
`(
`1
`4
`U
`
`SynchIDs 210
`- 1038902009
`
`-0045928307
`
`0019289100
`
`‘
`1
`1
`y
`1
`1
`It
`
`1
`
`APPLE 1010
`
`APPLE 1010
`
`1
`
`
`
`Patent Application Publication
`
`Mar.11, 2004 Sheet 1 of 3
`
`US 2004/0049599 Al
`
`
`
`
`
`OZbAllsJEWOYSNDpoyusued
`
`SSOIAM
`
`(ao1yjoouyye“B-a)
`|acevenu_|
`
`9deU3}u
`
`JUSIIDO}atOLt
`
`yuryangYIOMON
`
`‘B°e)aZO}SOlJegbZb/ovb
`(jlewe
`
`,
`
`ed)
`
`YIOMONeoMun
`
`JEPlAQddsso[al
`
`
`
`COLJ9A19$BOIAIBS
`
`SSOIONMA
`
`Janaoey
`
`OfL
`
`
`901neqBuisseo0ldoonrnreneneeeee
`BYESSElSJ1Ma
`
`TOld
`
`Ssofl
`
`ae(,P2BOlayud,“Bra)
`
`
`
`
`~--F g01n9qBulsse0olg
`
`BessejalM
`
`2
`
`
`
`
`
`Patent Application Publication Mar. 11,2004 Sheet 2 of 3
`
`US 2004/0049599 Al
`
`youAS
`
`
`
`vOc0c"°°L288
`
`2O€8Z6SP00-
`
`€06c0°°"°°OL86
`
`0016826100
`
`
`
`dewqipelqoejeq
`
`G0z
`
`0ZzSG]puepueys
`
`OlZSal
`
`C6021°°°°OF86
`
`600ZO68E01-
`
`
`
`eyeqpuepueys
`
`sqlpelqo
`
`COLJaNlas
`
`ZOLSOIAISS
`
`
`
`(jjeuua‘*Ba)
`
`alj}a!qo
`
`Buiddeyy
`
`00z2/507
`
`S02N9}U|
`
`00l
`
`cOld
`
`SSBISIIAA
`
`UONeZIUGIUDUAS
`
`2}eqWa}shS
`
`
`
`sql}9e!qo
`
`OL2
`
`3
`
`
`
`
`Ocesng
`
`OleOe
`
`€OW
`
`Patent Application Publication Mar. 11, 2004 Sheet 3 of 3
`
`US 2004/0049599 Al
`
`LZEoz¢Se
`
`”|feosAIOWD]AS|WOtereyeeETECEZe
`OSE|sossaoog||on(
`
`4
`
`
`
`US 2004/0049599 Al
`
`Mar. 11, 2004
`
`SYSTEM AND METHOD FOR MAPPING
`IDENTIFICATION CODES
`
`PRIORITY
`
`[0001] This application is a continuation-in-part of co-
`pending U.S. application entitled SYSTEM AND METHOD
`FOR FULL WIRELESS SYNCHRONIZATION OF A
`DATA PROCESSING APPARATUS WITH A DATA SER-
`
`VICE, application Ser. No. 10/109,928,filed Mar. 29, 2002,
`which is a continuation-in-part of co-pending U'S. applica-
`tion entitled APPARATUS AND METHOD FOR CON-
`SERVING BANDWIDTH BY BATCH PROCESSING
`
`DATA TRANSACTIONS,application Ser. No. 09/924,283,
`filed Aug. 7, 2001.
`
`COPYRIGHT NOTICE
`
`to
`is subject
`that
`[0002] Contained herein is material
`copyright protection. The copyright owner has no objection
`to the facsimile reproduction of the patent disclosure by any
`person as it appears in the Patent and Trademark Office
`patentfiles or records, but otherwise reservesall rights to the
`copyright whatsoever.
`
`FIELD OF THE INVENTION
`
`[0003] This invention relates generally to the field of
`network data services. More particularly,
`the invention
`relates to an apparatus and method for synchronizing a
`wireless data processing device with a wireless messaging
`service.
`
`BACKGROUND
`
`[0004] A variety of wireless data processing devices have
`been introduced over the past several years. These include
`wireless personal digital assistants (“PDAs”) such as the
`Palm® VIIx handheld, cellular phones equipped with data
`processing capabilities (e.g., those which include wireless
`application protocol (“WAP”) support), and, more recently,
`wireless messaging devices such as the Blackberry™ wire-
`less pager developed by Research In Motion (“RIM”).™
`
`[0005] Personal digital assistants such as the Palm devices
`typically provide only limited wireless messaging capabili-
`ties (e.g., instant messaging and basic Internet access). For
`example, these devices typically require a user to manually
`establish a connection to the Internet via an Internet Service
`Provider (“ISP”) or to a corporate server to check e-mail
`messages.
`
`[0006] Although corporate messaging systems such as the
`RIM Blackberry provide more comprehensive messaging
`capabilities, there are significant limitations to these sys-
`tems. Specifically, these systems employ e-mail “redirec-
`tion” or “forwarding” techniques in which messages are
`redirected to the wireless device only if certain conditions
`are met. These conditions,
`referred to as “redirection
`events,” may include, for example, an indication that the
`user is not working at his corporate desktop (e.g., removal
`of the wireless device from the desktop cradle, a screen
`saver firing on the desktop, .
`.
`. etc) or a manualredirection
`commandinitiated by the user(e.g., via the wireless device
`or the corporate desktop). One such message redirection
`system is described in U.S. Pat. No. 6,219,694 (“System and
`
`Method for Pushing Information From a Host System to a
`Mobile Data Communication Device Having a Shared Elec-
`tronic Address”).
`
`[0007] As aresult, these systemsare (as a practical matter)
`incapable of providing complete synchronization between
`the wireless device and the corporate e-mail database. For
`example, because messages are only redirected to the wire-
`less device under certain conditions (e.g., following a redi-
`rection event), at any given pointin time, the wireless device
`may contain an incomplete set of e-mail data. Moreover,
`even when messages are actively being forwarded to the
`wireless device, the e-mail data stored at the wireless device
`and the e-mail database are not truly synchronized. For
`example, certain types of transactions performed on the
`wireless device, such as an indication that a message has
`been viewed by the user, message deletions, movement of
`messages from one folder to another,
`.
`.
`. etc., are not
`updated at the e-mail service wirelessly.
`
`[0008] Moreover, only basic e-mail functions such as
`sending and receiving messages may be controlled at the
`wireless device. More advanced e-mail management func-
`tions must be set at the user’s desktop (e.g., configuring
`e-mail filters, outgoing e-mail signatures, security settings
`such as passwords, .
`.
`. etc).
`
`In addition, prior messaging systems require a
`[0009]
`corporate desktop to which the device must be attached
`whenthe useris in the office. The problem with this is not
`merely that a corporate desktop is required, but also that the
`corporate desktop must be configured with software and a
`proprietary “cradle” that allows it to communicate directly
`to the wireless device.
`
`is needed is a system and
`[0010] Accordingly, what
`method for providing complete synchronization and man-
`agement between a wireless device and a messaging service
`(e.g., a corporate e-mail account). What is also needed is a
`wireless apparatus for receiving and sending e-mail mes-
`sages, which does not require a corporate desktop or any
`software to be installed and executed on the corporate
`desktop.
`
`SUMMARY
`
`[0011] According to one embodiment, a system is dis-
`closed. The system includes a wireless data processing
`device and a server communicatively coupled to the wireless
`device. The server comprises mapping logic that translates
`data objects having a first set of identification (ID) codes to
`a second set of ID codes for transmission to the wireless
`
`device to maintain synchronization of data objects with the
`wireless device over a wireless network.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0012] A better understanding of the present invention can
`be obtained from the following detailed description in
`conjunction with the following drawings, in which:
`
`[0013] FIG. 1 illustrates an exemplary network architec-
`ture used to implement elements of the present invention;
`
`FIG.2 illustrates one embodiment of a mechanism
`[0014]
`that maps synchronization identification codes to standard
`identification codes;
`
`5
`
`5
`
`
`
`US 2004/0049599 Al
`
`Mar. 11, 2004
`
`[0015]
`system.
`
`FIG.3 illustrates one embodiment of a computer
`
`DETAILED DESCRIPTION
`
`In the following description, for the purposes of
`[0016]
`explanation, numerousspecific details are set forth in order
`to provide a thorough understanding of the present inven-
`tion. It will be apparent, however, to one skilled in the art
`that the present invention may be practiced without some of
`these specific details. In other instances, well-knownstruc-
`tures and devices are shownin block diagram form to avoid
`obscuring the underlying principles of the present invention.
`
`[0017] Reference in the specification to “one embodi-
`ment” or “an embodiment” meansthat a particular feature,
`structure, or characteristic described in connection with the
`embodimentis included in at least one embodimentof the
`
`invention. The appearances of the phrase “in one embodi-
`ment” in various places in the specification are not neces-
`sarily all referring to the same embodiment.
`
`An Exemplary Network Architecture
`
`[0018] FIG. 1 illustrates one embodiment of a network
`architecture. A “customersite”120 illustrated in FIG. 1 may
`be any local-area or wide-area network over which a plu-
`rality of servers 103 and clients 110 communicate. For
`example, customer site 120 may include all servers and
`clients maintained by a single corporation.
`
`[0019] Servers 103 may be configured to provide a variety
`of different messaging and groupware services 102 to net-
`work users (e.g., e-mail, instant messaging, calendaring,. .
`. etc). In one embodiment, these services are provided by
`Microsoft Exchange.™ However, the underlying principles
`of the invention are not limited to any particular messaging/
`groupware platform.
`
`In one embodiment, an interface 100 forwards data
`[0020]
`objects maintained by service 102 (e.g., e-mail messages,
`instant messages, calendar data,
`.
`.
`. etc) to a plurality of
`wireless data processing devices (represented in FIG. 1 by
`wireless device 130) via an external data network 170 and/or
`a wireless service provider network 171. For example, if the
`service 102 includes an e-mail database, the interface 100
`transmits any new e-mails, which arrive in a user’s mailbox
`on the service 102 to the user’s wireless data processing
`device 130 (over the network(s) 170 and/or 171).
`
`[0021] Alternatively, or in addition, the service 102 may
`provide the e-mail to the user’s local computer (e.g., client
`110) upon request (i.e., so that the user will receive the
`e-mail on his/her wireless device 130 when outofthe office
`and on his/her personal computer 110 when in the office).
`Conversely, e-mail messages sent from the user’s wireless
`data processing device 130 are transmitted to the service 102
`via the interface 100.
`
`In one embodiment,the interface 100 is a software
`[0022]
`module adapted to work with the particular service 120.It
`should be noted, however, that interface 100 may be imple-
`mented in hardware or any combination of hardware and
`software while still complying with the underlying prin-
`ciples of the invention.
`
`In one embodiment, the external data network 170
`[0023]
`is comprised of a plurality of databases, servers/clients (not
`
`shown) and other networking hardware(e.g., routers, hubs,
`... etc) for transmitting data between the interface 100 and
`the wireless devices 130. In one embodiment, the interface
`100 encapsulates data in one or more packets containing an
`address identifying the wireless devices 130 (e.g., such as a
`24-bit Mobitex Access Number (“MAN #”)).
`
`[0024] The external data network 170 transmits the pack-
`ets to a wireless service provider network 171, which in turn,
`transmits the packets (or the data contained therein) over a
`wireless communication link to the wireless device 130. In
`one embodiment, the wireless service provider network is a
`2-way paging network. However, various other network
`types may be employed (e.g., CDMA 2000, GPRS, PCS, . .
`. etc) while still complying with the underlying principles of
`the invention.
`
`It should be noted that the network service provider
`[0025]
`network 171 and the external data network 170 (and asso-
`ciated interface 100) may be owned/operated by the same
`organization or, alternatively,
`the owner/operator of the
`external data network 170 may lease wireless services from
`the wireless service provider network. The underlying prin-
`ciples of the invention are not limited to any particular
`service arrangement.
`
`In one embodiment, service 102 (e.g., the e-mail
`[0026]
`database) is fully synchronized with wireless data process-
`ing device 130. Thus, any actions performed on wireless
`device 130 are automatically updated on service 102 and any
`transactions occurring at service 102 are automatically
`reflected on device 130.
`
`In a further embodiment, synchronization updates
`[0027]
`of this type may include, but are not limited to, device
`configuration modifications, calendar updates, e-mail mes-
`sage updates, instant messages,to-do list updates and/or any
`other type of personal information managementtransactions
`or corporate data management
`transactions (hereinafter
`“message transactions”).
`
`[0028] As one example, when a user views an e-mail
`message using device 130, a message transaction indicating
`that the user viewed the message is transmitted to service
`102 (via the interface 100). Accordingly, if the user subse-
`quently connects to e-mail via a client 110, the e-mail will
`appear as having already been viewed.
`
`[0029] Other actions such as message deletions, filing
`activities (e.g., moving a message to a particular folder),
`message responses, meeting confirmations/additions. . . etc,
`will automatically be reflected in the service 102, thereby
`providing complete synchronization between the service
`102, the device 130 and/or the client 110 (if one is being
`used).
`
`[0030] Current messaging systems do not offer complete
`wireless device synchronization. As such,
`these systems
`require that the user have a desktop computer with a “cradle”
`to which the device is attached to receive certain types of
`synchronization updates. One reason for this is that prior
`systems process message transactions in a relatively ineffi-
`cient manner and employ only limited compression tech-
`niques, thereby making complete synchronization impracti-
`cal. As
`such,
`in order
`to realize complete wireless
`synchronization, embodiments of the invention employ one
`or more of the following compression and/or message
`processing techniques.
`6
`
`6
`
`
`
`US 2004/0049599 Al
`
`Mar. 11, 2004
`
`Identification Code Allocation
`
`[0031] According to one embodiment, each e-mail mes-
`sage, calendar entry, to-do list entry, .. . etc, is assigned a
`unique identification code by service 102. For example, if
`the service is Microsoft Exchange, a 128-byte identification
`code is generated for each new data object. Accordingly,
`when fully synchronizing a wireless device 130 to the
`service 102, a mechanism is to be provided to ensure that no
`duplicate identification codes are assigned for two distinct
`data objects. For example, if both the service 102 and the
`wireless device 130 are capable of independently generating
`data objects,
`they may both concurrently generate data
`objects with the same identification codes, resulting in a
`conflict.
`
`[0032] One mechanism for solving this problem is to
`require the wireless device 130 to request a new identifica-
`tion code from the service 102 each time it generates a new
`data object. One potential problem with this scenario is that
`it may take an unreasonably long time for the wireless
`device 130 to acquire the identification code from service
`102 via data network 170, depending on the speed of the
`wireless network. For instance, several seconds may be
`considered an unreasonable amountof time to wait to begin
`entering a new e-mail message or calendar entry.
`
`[0033] Alternatively, in one embodiment, the range ofall
`possible data object codes is divided between the wireless
`device 130 and the service 103. In other words, a certain
`percentage(e.g., 4) ofall possible codes are allocated to the
`wireless device 130 and the remaining possible codes are
`allocated to the service 103. In operation, when a new data
`object is generated at the wireless device (e.g., a new “to-do”
`list entry) the wireless device 130 will select a data object
`code only from within its pre-assigned range, thereby pre-
`venting a conflict at the service 102.
`
`In one embodiment, all negative codes are assigned
`[0034]
`to the wireless device 130 andall positive codes are assigned
`to the service 102. If a 32-bit (4-byte) code is used, this will
`result in 2,147,483,648 (2°") negative codes and 2,147,483,
`648 (2) positive codes. It should be noted, however, that
`the particular manner in which codes are divided up is not
`pertinent to the underlying principles of the invention.
`
`Identification Code Translation
`
`[0035] Another potential problem which exists when fully
`synchronizing a wireless device with a service is that the
`standard data object identification codes employed by many
`services are unnecessarily large. As mentioned above,
`Microsoft Exchange generates a 128-byte (1024 bit) code to
`identify each unique data object.
`
`[0036] Accordingly, in one embodiment of the invention
`illustrated in FIG. 2, interface 100 includes object identifi-
`cation code mapping logic 200 for mapping standard data
`object identification codes 220 (e.g., such as the 128-byte
`codes used by Microsoft Exchange) to data object identifi-
`cation codes 210 generated specifically for use in the syn-
`chronization system described herein (hereinafter “synchro-
`nization system identification codes”).
`
`[0037] As illustrated, object identification code mapping
`logic 200 maintains a data object identification table 205 in
`which each standard identification code 220 is associated
`
`with a corresponding synchronization system identification
`
`the
`in one embodiment,
`code 210. As described above,
`synchronization system identification codes 210 are 32-bits
`in length,
`thereby significantly reducing the amount of
`information transmitted across the wireless network.
`In
`
`addition, as indicated in FIG. 2, negative identification
`codes 210 identify data objects created by the wireless
`device 130 and positive identification codes 210 identify
`data objects created at service 102 (e.g., from a local desktop
`PC).
`
`Exemplary Computer System
`
`FIG.3 illustrates a computer system 300 on which
`[0038]
`wireless device 130 and or server 103 may be implemented.
`Computer system 300 includes a system bus 320 for com-
`municating information, and a processor 310 coupled to bus
`320 for processing information. According to one embodi-
`ment, processor 310 is implemented using one of the mul-
`titudes of Motorola DragonBall MC68328-family of micro-
`processors. Nevertheless one of ordinary skill in the art will
`appreciate that other processors may be used.
`
`[0039] Computer system 300 further comprises a random
`access memory (RAM)or other dynamic storage device 325
`(referred to herein as main memory), coupled to bus 320 for
`storing information and instructions to be executed by
`processor 310. Main memory 325 also may be used for
`storing temporary variables or other intermediate informa-
`tion during execution of instructions by processor 310.
`Computer system 300 also may include a read only memory
`(ROM)and/orotherstatic storage device 326 coupled to bus
`320 for storing static information and instructions used by
`processor 310.
`
`[0040] A data storage device 325 such as a magnetic disk
`or optical disc and its corresponding drive may also be
`coupled to computer system 300 for storing information and
`instructions. Computer system 300 can also be coupled to a
`second I/O bus 350 via an I/O interface 330. A plurality of
`I/O devices may be coupled to I/O bus 350, including a
`display device 324, an input device (e.g., an alphanumeric
`input device 323 and/or a cursor control device 322).
`
`[0041] The communication device 321 is for accessing
`other computers (servers or clients) via network 170. The
`communication device 321 may comprise a modem, a
`network interface card, or other well-known interface
`device, such as those used for coupling to Ethernet, token
`ring, or other types of networks.
`
`[0042] Embodiments of the invention may include various
`steps as set forth above. The steps may be embodied in
`machine-executable instructions. The instructions can be
`
`used to cause a general-purpose or special-purpose proces-
`sor to perform certain steps. Alternatively, these steps may
`be performed by specific hardware components that contain
`hardwired logic for performing the steps, or by any combi-
`nation of programmed computer components and custom
`hardware components.
`
`invention may also be
`[0043] Elements of the present
`provided as a machine-readable medium for storing the
`machine-executable
`instructions. The machine-readable
`
`medium may include,but is not limited to, floppy diskettes,
`optical disks, CD-ROMs,
`and magneto-optical disks,
`ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical
`cards, propagation media or other type of media/machine-
`7
`
`7
`
`
`
`US 2004/0049599 Al
`
`Mar. 11, 2004
`
`application and all positive synchronization ID codes are
`assigned to the wireless device.
`10. The system of claim 3 wherein thefirst set of ID codes
`comprises a 128-byte standard ID and the second set of ID
`codes is a 4-byte synchronization ID code.
`11. A method comprising:
`
`readable medium suitable for storing electronic instructions.
`For example, the present invention may be downloaded as a
`computer program which maybetransferred from a remote
`computer (¢.g., a server) to a requesting computer(e.g., a
`client) by way of data signals embodied in a carrier wave or
`other propagation medium via a communicationlink(e.g., a
`modem or network connection).
`receiving a first data object at a server havingafirst object
`identification (ID) code;
`[0044] Throughout the foregoing description, for the pur-
`poses of explanation, numerous specific details were set
`translating the first object ID codeto a first synchroniza-
`forth in order to provide a thorough understanding of the
`tion ID code; and
`invention. It will be apparent, however, to one skilled in the
`art that the invention may be practiced without someof these
`specific details. For example, while illustrated as an inter-
`face 100 to a service 102 executed on a server 103 (see FIG.
`1),it will be appreciatedthat the underlying principles of the
`invention may be implemented on a single client in which
`the client transmits data over a network.
`
`transmitting the first object to a wireless device over a
`wireless network using the first synchronization ID
`code.
`
`12. The method of claim 11 further comprising:
`receiving a second data object having a second synchro-
`nization ID codeat the server from the wireless device;
`and
`
`[0045] Moreover, although described in the context of a
`wireless data processing device, the underlying principles of
`the invention may be implemented to compress data in
`virtually any networking environment, both wired and wire-
`less. Accordingly,
`the scope and spirit of the invention
`should be judged in terms of the claims which follow.
`Whatis claimedis:
`
`translating the second synchronization ID code to a sec-
`ond object ID code.
`13. A server comprising:
`an interface, communicatively coupled to a wireless
`device,
`to maintain synchronization of data objects
`with the wireless device over a wireless network, the
`interface having mappinglogicto translate data objects
`1. A system comprising:
`havingafirst set of identification (ID) codes to a second
`set of ID codes for transmission to the wireless device.
`a wireless data processing device; and
`
`a server, communicatively coupled to the wireless device,
`having mappinglogic to translate data objects having a
`first set of identification (ID) codes to a second set of
`ID codes for transmission to the wireless device to
`
`maintain synchronization of data objects with the wire-
`less device over a wireless network.
`
`2. The system of claim 1 wherein the mapping logic
`translates data objects received from the wireless device
`having the second set of ID codestothe first set of ID codes.
`3. The system of claim 2 further comprising a database,
`coupled to the mapping logic, having an object ID table to
`associate each ID in the first set of ID codes with a
`corresponding ID in the second set of ID codes.
`4. The system of claim 3 wherein the second set of ID
`codes comprises a synchronization ID code.
`5. The system of claim 4 wherein a range of synchroni-
`zation ID codes generated at the server and the wireless
`device are divided in a mannerthat the server hasa first code
`
`range and the wireless device has a second code range.
`6. The system of claim 5 wherein a new data object
`generated at the server is assigned a synchronization ID code
`from within the first code range.
`7. The system of claim 6 wherein a new data object
`generated at the wireless device is assigned a synchroniza-
`tion ID code from within the second code range.
`8. The system of claim 6 wherein all negative synchro-
`nization ID codes are assigned to the wireless device and all
`positive synchronization ID codes are assigned to the mes-
`saging service application.
`9. The system of claim 6 wherein all negative synchro-
`nization ID codes are assigned to the messaging service
`
`14. The server of claim 13 wherein the mapping logic
`translates data objects received from the wireless device
`having the secondset of ID codestothefirst set of ID codes.
`15. The server of claim 14 further comprising a database,
`coupled to the mapping logic, having an object ID table to
`associate each ID in the first set of ID codes with a
`
`corresponding ID in the second set of ID codes.
`16. The server of claim 15 wherein the second set of ID
`codes comprises a synchronization ID code.
`17. The server of claim 16 wherein a range of synchro-
`nization ID codes generated at the server and the wireless
`device are divided in a mannerthat the server hasa first code
`range and the wireless device has a second code range.
`18. The server of claim 17 wherein a new data object
`generated at the server is assigned a synchronization ID code
`from within the first code range.
`19. The server of claim 18 wherein a new data object
`generated at the wireless device is assigned a synchroniza-
`tion ID code from within the second code range.
`20. The server of claim 18 wherein all negative synchro-
`nization ID codes are assigned to the wireless device and all
`positive synchronization ID codes are assigned to the mes-
`saging service application.
`21. The server of claim 18 wherein all negative synchro-
`nization ID codes are assigned to the messaging service
`application and all positive synchronization ID codes are
`assigned to the wireless device.
`22. The server of claim 15 wherein the first set of ID codes
`
`comprises a 128-byte standard ID and the second set of ID
`codes is a 4-byte synchronization ID code.
`*
`*
`*
`*
`*
`
`8
`
`