`(12) Patent Application Publication (10) Pub. No.: US 2004/0049599 A1
`(43) Pub. Date: Mar. 11, 2004
`
`Friend et al.
`
`US 20040049599A1
`
`(54) SYSTEM AND METHOD FOR MAPPING
`IDENTIFICATION CODES
`
`Related US. Application Data
`
`(76)
`
`Inventors: John Friend, Los Altos, CA (US);
`Michael Belshe, Sunnyvale, CA (US);
`David Hofi'man, Menlo Park, CA (US)
`
`Correspondence Address:
`BLAKELY, SOKOLOFF, TAYLOR & ZAFMAN
`LLP
`Seventh Floor
`12400 Wilshire Boulevard
`
`Los Angeles, CA 90025-1026 (US)
`
`(21) Appl. No.:
`
`10/404,976
`
`(22)
`
`Filed:
`
`Mar. 31, 2003
`
`(63) Continuation-in-part of application No. 10/109,928,
`filed on Mar. 29, 2002, which is a continuation-in-part
`of application No. 09/924,283, filed on Aug. 7, 2001.
`
`Publication Classification
`
`Int. Cl.7 ..................................................... G06F 15/16
`(51)
`(52) us. Cl.
`............................................ 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
`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.
`
`Service 102
`(e.g., email)
`
`Standard Data
`Object IDs
`220
`
`210
`
`Wireless
`Synchronization
`System Data
`Object IDs
`
`Object ID
`Mapping
`Logic 200
`
`Data Object ID Map
`205
`
`Synch IDs 210
`4038902009
`
`-0045928307
`
`0019289100
`
`. 02903
`
`Standard IDs 220
`9830 .
`.
`.
`. 12093
`
`. 20204
`
`8827 .
`
`9810 .
`
`.
`
`.
`
`.
`
`.
`
`1
`
`APPLE 1010
`
`APPLE 1010
`
`1
`
`
`
`Patent Application Publication
`
`Mar. 11, 2004 Sheet 1 0f 3
`
`US 2004/0049599 A1
`
`3050ms.Hmrmdv
`
`
`
`8300memmooiA.............{III/II-
`Emammw_m__>>III/1
`
`
`
`omr
`
`H£7“va
`
`szo
`
`0:.
`
`_..................................................._wwm_9_>>
`
`ON_‘02m52.6530"tmEEmcflh
`
`"528mm
`
`Ewow0CE269tu_0hr
`
`12..825_x5362
`
`98899%
`
`nor52mmm02>me
`
`__mmm_m:>>
`
`28:6:93u\\
`
`N883meuEa:"{oz/“$2\\xc]
`__525.58223
`
`_\
`
`x/a?
`
`Ill/IIIIIIA:UmO-_m5:0:_.m.mv
`
`
`
`
`{IV@0300mEmmmooE
`
`2
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 2 0f 3
`
`US 2004/0049599 A1
`
` __
`
`cummn:Emucflm2Nmn:£056
`mONENDEmvcmum
`m2:”momtBE
`
`.
`
`N.0;
`
`288._..R888888-8582$85296
`
`880....2885828SN
`
`8m083an:8.30
`
`n__BwEOcoszEoEoEm
`
`8:Q693098
`
`
`
`69—.gmawm.
`
`«2328
`
`£95:03
`
`8.8.30
`
`
`
`80$....8888882-$29.2,
`
`
`
`3
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 3 0f 3
`
`US 2004/0049599 A1
`
`\
`
`ommmsm
`
`Iomfiow@0802maE.Nmmmmmmam58mmam
`
`Emomm
`
`0mm
`
`EEl
`
`4
`
`m.0:
`
`4
`
`
`
`US 2004/0049599 A1
`
`Mar. 11, 2004
`
`SYSTEM AND METHOD FOR MAPPING
`IDENTIFICATION CODES
`
`PRIORITY
`
`[0001] This application is a continuation-in-part of co-
`pending US. 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
`patent files or records, but otherwise reserves all 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 BlackberryTM wire-
`less pager developed by Research In Motion (“RIM”).TM
`
`[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 manual redirection
`command initiated by the user (e.g., via the wireless device
`or the corporate desktop). One such message redirection
`system is described in US. 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 a result, these systems are (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 point in 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
`when the user is 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] Abetter 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;
`
`[0014] FIG. 2 illustrates one embodiment of a mechanism
`that maps synchronization identification codes to standard
`identification codes;
`
`5
`
`5
`
`
`
`US 2004/0049599 A1
`
`Mar. 11, 2004
`
`[0015] FIG. 3 illustrates one embodiment of a computer
`system.
`
`DETAILED DESCRIPTION
`
`In the following description, for the purposes of
`[0016]
`explanation, numerous specific 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-known struc-
`tures and devices are shown in 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” means that a particular feature,
`structure, or characteristic described in connection with the
`embodiment is included in at least one embodiment of 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“customer site”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.TM 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 out of the 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 management transactions
`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 A1
`
`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 amount of time to wait to begin
`entering a new e-mail message or calendar entry.
`
`[0033] Alternatively, in one embodiment, the range of all
`possible data object codes is divided between the wireless
`device 130 and the service 103. In other words, a certain
`percentage (e.g., 1/2) of all 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 and all 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 (231) negative codes and 2,147,483,
`648 (231) 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
`
`[0038] FIG. 3 illustrates a computer system 300 on which
`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/or other static 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. Aplurality 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 A1
`
`Mar. 11, 2004
`
`readable medium suitable for storing electronic instructions.
`For example, the present invention may be downloaded as a
`computer program which may be transferred from a remote
`computer (e.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 communication link (e.g., a
`modem or network connection).
`
`[0044] Throughout the foregoing description, for the pur-
`poses of explanation, numerous specific details were set
`forth in order to provide a thorough understanding of the
`invention. It will be apparent, however, to one skilled in the
`art that the invention may be practiced without some of 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 appreciated that the underlying principles of the
`invention may be implemented on a single client in which
`the client transmits data over a network.
`
`[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.
`What is claimed is:
`
`1. A system comprising:
`
`a wireless data processing device; and
`
`a server, communicatively coupled to the wireless device,
`having mapping logic 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 codes to the 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 manner that the server has a 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
`
`application and all positive synchronization ID codes are
`assigned to the wireless device.
`10. The system of claim 3 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.
`11. A method comprising:
`
`receiving a first data object at a server having a first object
`identification (ID) code;
`translating the first object ID code to a first synchroniza-
`tion ID code; and
`
`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 code at the server from the wireless device;
`and
`
`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 mapping logic 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.
`
`14. The server of claim 13 wherein the mapping logic
`translates data objects received from the wireless device
`having the second set of ID codes to the first 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 manner that the server has a 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
`
`