throbber
Twitter Exhibit 1020
`Twitter, Inc. v. BlackBerry Ltd.
`Page 00001
`
`

`

`US. Patent
`
`Mar. 5, 2002
`
`Sheet 1 0f 5
`
`US 6,353,398 B1
`
`/—10
`
`20
`
`LOCATION
`
`lg.
`
`SPECIFIC
`
`SYSTEM
`
`29
`
`pm
`N?
`2m
`nc<
`“Jr—
`*‘<
`
`Page 00002
`
`Page 00002
`
`

`

`US. Patent
`
`Ddar.5,2002
`
`SheetZ 0f5
`
`US 6,353,398 B1
`
`____
`
`______
`
`_awn/mom<o"S.
`
`._.Z<mD<.rmm_m
`
`Allmww:
`
`m_I__mO_2
`
`Page 00003
`
`Page 00003
`
`

`

`US. Patent
`
`aM
`
`mm.
`
`59
`
`5M
`
`SU
`
`m
`
`momI\4
`
`ON
`
`
`
`wFzmzzmjmxxwmmm<m<25m323%823mm5mm>j<o_zn_<mwo_>_mo>j<o_In_<moo_>_mo
`
`
`
`
`
`
` 8._mman.m3«mm:pz<>mjmm
`6,Alli>j<o_1m<moozmo
`
`
`
`Page 00004
`
`Page 00004
`
`
`

`

`US. Patent
`
`Mar. 5, 2002
`
`Sheet 4 0f 5
`
`US 6,353,398 B1
`
`1'
`CD
`
`5,-
`._
`LI.
`
`0O
`
`)
`
`DU)
`
`
`
`ii“-
`2
`5g
`'33::
`co
`>3_l
`_1£fl
`<<
`05
`9m
`
`a
`
`I
`
`E
`1.1—
`0&3
`Em
`
`a E
`
`Page 00005
`
`OI
`
`"
`
`INTERNET
`
`Page 00005
`
`

`

`US. Patent
`
`LaM
`
`20025,
`
`S
`
`5f05w
`
`353,6SU
`
`1B
`
`8Imm9".
`
`
`
`
`
`
`mo_>m_n_512.mo_>mo><dw5mamaom<_._mamaxma
`
`Page 00006
`
`h.6528SE28
`._<z__2mmfim>_mo$2:._oEzoox20
`
`
`
`
`
`¥m0>>._.m_Z
`
`mw._.&<o<
`
`o:K8292
`
`rI | :||||||| | | | I
`
`Page 00006
`
`
`
`

`

`US 6,353,398 B1
`
`1
`SYSTEM FOR DYNAMICALLY PUSHING
`INFORMATION TO A USER UTILIZING
`GLOBAL POSITIONING SYSTEM
`
`FIELD OF THE INVENTION
`
`The present invention described below generally relates to
`a system for directing information to specific geographic
`locations at related points in time, and more particularly to
`dynamically communicating linked information to mobile
`users at specific geographic locations via a global satellite
`positioning system.
`
`BACKGROUND OF THE INVENTION
`
`Global positioning systems provide many conveniences
`for modem living. People may find themselves in com-
`pletely unknown areas, and yet, they may have the comfort
`of knowing a system has their location pinpointed and
`directed on a computer screen. Still better yet, global posi-
`tioning systems may provide directions for going from the
`unknown location to a known location. While many users of
`conventional global positioning systems value received
`location and directional
`information, more specific and
`detailed information related to the location is often needed.
`
`It is common experience to arrive at a particular destination
`(e.g., business or restaurant) after closing. Though a posi-
`tioning system may have provided the directions to the
`location,
`it would be useful
`to know what
`the normal
`business hours were for example when arriving at
`the
`location. Likewise, it would be useful for a system to present
`all known entity types in a certain region. If a person was in
`an unfamiliar city for example, and needed medical care,
`simply knowing the present location would not direct the
`person to the nearest hospital. A more powerful system is
`therefore necessary to provide mobile users with specific
`information relating to the point in time the user is at a
`specific location. This type of system is currently not pro-
`vided for with conventional systems.
`In view of the above issues, it would be desirable for a
`system which can provide relevant information to location-
`specific users at relevant points in time.
`
`SUMMARY OF THE INVENTION
`
`The present invention provides a system for directing and
`receiving information to and from geographically relevant
`locations. The system links information from the internet or
`other relevant databases that is related to region-specific
`areas and directs the information to users situated near the
`
`region-specific areas. The possibilities for the type of infor-
`mation that may be linked to a geographic location is
`virtually limitless. In one particular instance, a store may
`announce a bargain sale at the same point in time that a
`customer is in close proximity. In another instance, a mobile
`user could stop at a home and receive information from a
`homeowner who happens to be away or leave a message for
`the homeowner with the message easily retrieved from a
`web page or e-mail system. In still yet another instance, a
`menu may be observed for a restaurant simply by approach-
`ing the restaurant. The type of information received from
`substantially any location resides in data bases, such as the
`Internet, linked to the location by the present invention.
`The present
`invention also provides for bidirectional
`operations. For instance, a query can be made inquiring of
`all the hospitals located within a square mile of the present
`location. The query in fact may be substantially as broad or
`narrow as the user desires. The same hospital locations may
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`be queried for a given city or state, for example. As can be
`appreciated,
`this type of information may be crucial
`to
`receiving emergency health care when one is in a time
`critical situation and in unfamiliar surroundings.
`The present invention also provides for directing infor-
`mation to users who meet certain criteria. Citing the example
`above, the store advertisement may be directed to only those
`drivers who are above or below a certain income level, for
`example. This type of demographic information may be
`obtained, for example, from the vehicle type (e.g., expensive
`sports car), from past purchasing practices, or from surveys
`and studies. The present invention also provides a hand-held
`system which allows users to receive region-specific infor-
`mation directed to the user’s particular location. For
`example, a user may be situated in a new location, and the
`user may then request and receive information about res-
`taurants within a defined area defined by the user. For
`example, the user may query for restaurants within three
`blocks or within the entire city and receive specific audio
`and/or display information related to the query.
`To the accomplishment of the foregoing and related ends,
`the invention, then, comprises the features hereinafter fully
`described. The following description and the annexed draw-
`ings set forth in detail certain illustrative embodiments of the
`invention. These embodiments are indicative, however, of
`but a few of the various ways in which the principles of the
`invention may be employed. Other objects, advantages and
`novel features of the invention will become apparent from
`the following detailed description of the invention when
`considered in conjunction with the drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a block diagram of a global positioning directed
`information system in accordance with the present inven-
`tion;
`FIG. 2 is a block diagram depicting a region directed
`information system in accordance with the present inven-
`tion;
`FIG. 3 is a block diagram of a focus directed information
`system in accordance with the present invention;
`FIG. 4 is a block diagram of a hand-held directed infor-
`mation system in accordance with the present invention; and
`FIG. 5 is a schematic block diagram of a system in
`accordance with the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`The present invention will now be described with refer-
`ence to the drawings, wherein like reference numerals are
`used to refer to like elements throughout.
`Referring initially to FIG. 1, a global positioning directed
`information system (GPDIS) 20 having whereabout infor-
`mation from a location-specific user system 40 is shown.
`The GPDIS 20 has access to an information system such as
`the Internet 30 for providing region-directed information to
`a location-specific user system 40 at any suitable point in
`time. It is to be appreciated that the information system may
`include other data bases than the Internet 30. The GPDIS 20
`
`includes a satellite tracking system (not shown) such as a
`global positioning system (GPS) for locating users and
`transmitting information to and from the user. A directed
`information system (not shown) is combined with the GPS
`by the present invention to link the Internet system infor-
`mation with location-specific users. The directed informa-
`tion system is a bidirectional system that allows specific
`
`Page 00007
`
`Page 00007
`
`

`

`US 6,353,398 B1
`
`3
`information to be linked and transmitted to specific geo-
`graphic locations at specific points in time. Users may have
`information directed to them as they come within a prede-
`termined proximity to certain locations or conversely, users
`may acquire relevant information that is related to a par-
`ticular area the user may happen to be in.
`The directed information system includes an object ori-
`ented computing and software system for linking relevant
`regional information sources to users associated with the
`particular region. For example,
`the directed information
`system may define sectional regions in a city and associate
`particular information with those regions. Whenever a
`location-specific user is located within a particular region,
`the directed information system may automatically transmit
`the region-specific information to the location directed by
`the user. The location-specific user system 40 is preferably
`a mobile system and includes a display and audio informa-
`tion system for communicating information to the user. Also,
`a sending/receiving system is included for communicating
`with the GPS system. The display system communicates a
`plurality of relevant visual information related to a particular
`region at a particular point
`in time. The audio system
`provides audio related information to the mobile system. For
`example, as the user approaches a predetermined distance to
`a gas station, an audio message may alert the driver to a sale
`for motor oil. The audio and visual information may be
`changed as often as desired by any particular location by
`simply changing the contents of the Internet data base. The
`mobile location-specific user system 40 may be imple-
`mented in a plurality of systems. For example, automobile
`systems, cellular telephone systems, and hand-held mobile
`systems known as “palm pilots” may be employed to push
`information to users.
`
`Now referring to FIG. 2, a particular embodiment of the
`present invention is shown employing push technology. A
`mobile user 50 is shown passing by a restaurant 60 and a car
`dealership 70. The GPDIS 20 detects that the mobile user 50
`is within a predetermined region that the restaurant and
`dealership are part of The directed information system of the
`GPDIS 20 links a web page or data source residing on the
`Internet 30 related to the restaurant 60 and pushes the
`information via the GPS to the mobile user 50 as the user
`
`drives by the restaurant. Likewise, the directed information
`system pushes car dealership information to the user as the
`user passes or is near the predetermined vicinity of the car
`dealership by linking internet information related to the car
`dealership.
`Push technology is implemented as part of the directed
`information system of the GPDIS 20, however, since object
`oriented programming is employed,
`the push technology
`may be implemented across several systems. The technol-
`ogy is based in part on movement detection provided by a
`global positioning system. As a user moves within a prede-
`termined distance of any particular region,
`the directed
`information system pushes information to the user in con-
`nection to the movement. Upon notification of the users
`whereabouts by the GPS, the directed information system
`links relevant information that is associated with the par-
`ticular geographical location and subsequently provides the
`information to the GPS for transmittal to the user as the user
`
`is within the predetermined area for reception of the relevant
`information. As the user is moving, different audio and
`visual information is pushed in connection with the move-
`ment. For example, as a user is within a first geographical
`region, Internet data associated with a first storage data
`section is pushed to the user. As the user moves to a second
`geographical location, data associated with a second storage
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`data section is pushed to a user. Clearly, this sequence may
`be continued substantially.
`Now referring to FIG. 3 another embodiment of the
`present invention is shown. A focus directed information
`system 20a is shown. The focus directed system 20a com-
`bines the directed information system mentioned above with
`a selectively defined criteria parameter. The selectively
`defined criteria may include demographic and other related
`criteria for
`linking specific information to a regionally
`located user. For example, as shown in FIG. 3, a demo-
`graphically relevant user 84 may be riding in an expensive
`sports car. A demographically related data base 80 is the
`linked to by the GPDIS 20 that contains relevant businesses
`that may cater exclusively to persons above a certain income
`level. As the car is driven within a predetermined distance of
`a demographically related establishment 82,
`the GPDIS
`provides demographically related information 80 to the
`demographically relevant user 84. It is to be appreciated that
`demographic information may be obtained for users in a
`variety of ways. For example, users may provide survey
`information which is stored as part of the demographic data
`base. It is further to be appreciated that other information
`may trigger the directed information system to transmit
`relevant information to a user. For example, purchasers of
`electronic items may be sent notices as they pass within
`predetermined distances of the electronics store. The elec-
`tronics store data base is established from past purchases of
`electronics.
`
`Finally, referring to FIG. 4, another embodiment of the
`present invention is shown. A hand-held system 90 is shown
`which may wirelessly communicate with the directed infor-
`mation system of the GPDIS 20. The hand-held system (e. g.,
`palm pilot) contains a computing and data input/output
`system (e.g., keypad, microphone, speaker) for directing
`queries to and receiving information from the directed
`information system. For example, a user may have the
`hand-held system 90 in a city the user is new to. The user
`may direct a query to the GPDIS 20 inquiring which locally
`related establishments 94 (e.g.,
`restaurants, hospitals,
`businesses) are located within a square block of the user’s
`present location. Upon receiving the request, the directed
`information system finds the related establishments within
`the square block,
`locates related Internet 30 data base
`information and transmits the information to the hand-held
`
`system 90 for audio or visual display. It is to be appreciated
`that the user may have any suitable information delivered for
`which the directed information system has links for the
`specified region. As described above, push technology may
`also be employed to provide information to the hand-held
`system.
`Referring now to FIG. 5, a detailed block diagram of a
`computer system 10c is shown in accordance with the
`present invention. This system may be employed as either a
`client and/or a server in accordance with the present inven-
`tion and may be implemented by any of the systems includ-
`ing the directed information system or the hand-held system
`described above. The computer system 106 includes a cen-
`tral processing unit (CPU) 120 which is coupled to a bus
`122. The CPU or processor 120 can be any of a plurality of
`processors, such as the Pentium, Pentium 11, Pentium
`MMX, Pentium Merced, Power PC, SPARC, SGIiMIPS
`and other similar and compatible processors.
`It will be
`appreciated that since the present invention provides for a
`multi-platform environment as described in greater detail
`below, most major processors and/or computers may be
`employed to carry out the present invention. The processor
`120 functions to perform various operations described
`
`Page 00008
`
`Page 00008
`
`

`

`US 6,353,398 B1
`
`5
`herein as well as for carrying out other operations related to
`the system 106. The manner in which the processor 120 can
`be programmed to carry out the functions relating to the
`present invention will be readily apparent to those having
`ordinary skill in the art based on the description provided
`herein.
`
`The bus 122 includes a plurality of signal lines 124 for
`conveying addresses, data and controls between the CPU
`120 and a number of other system bus components. The
`other system bus components include a memory 128
`(including a Random Access Memory (RAM) 130 and a
`Read Only Memory (ROM) 132) and a plurality of input/
`output (I/O) devices. The memory 128 serves as data storage
`and may store appropriate operating code to be executed by
`the processor 120 for carrying out the functions described
`herein.
`
`The RAM 130 provides program instruction storage and
`working memory for the CPU 120. The ROM 132 contains
`software instructions known as the Basic Input/Output Sys-
`tem (BIOS) for performing interface operations with the I/O
`devices. Also stored in the ROM 132 is a software routine
`
`which operates to load a boot program from the booting
`device. The boot program will typically be executed when
`the computer system 106 is powered on or when initializa-
`tion of the system 106 is needed.
`The I/O devices (optionally included in the mobile
`systems) include basic devices such as data storage devices
`(e.g., floppy disks,
`tape drives, CD ROMs, hard disks).
`Typically, the I/O devices communicate with the CPU 120
`by generating interrupts. The CPU 120 distinguishes inter-
`rupts from among the I/O devices through individual inter-
`rupt codes assigned thereto. Responses of the CPU 120 to
`the I/O device interrupts differ, depending, among other
`things, on the devices generating the interrupts. Interrupt
`vectors are provided to direct the CPU 120 to different
`interrupt handling routines.
`The interrupt vectors are generated during initialization
`(e.g., boot up) of the computer system 106 by execution of
`the BIOS. Because responses of the CPU 120 to device
`interrupts may need to be changed from time to time, the
`interrupt vectors may need to be modified from time to time
`in order to direct the CPU 120 to different interrupt handling
`routines. To allow for modification of the interrupt vectors,
`they are stored in the RAM 130 during operation of the
`computer system 106.
`A disk control subsystem 140 bidirectionally couples one
`or more disk drives 142 (e.g., floppy disk drives, CD-ROM
`drives, etc.) to the system bus 122. The disk drive 142 works
`in conjunction with a removable storage medium such as a
`floppy diskette or CD-ROM.
`A hard drive control subsystem 146 bidirectionally
`couples a rotating fixed disk, or hard drive 148 to the system
`bus 122. The hard drive control subsystem 146 and hard
`drive 148 provide mass storage for CPU instructions and
`data.
`
`A terminal control subsystem 156 is also coupled to the
`bus 122 and provides output
`to a display device 158,
`typically a CRT monitor or LCD display, and receives inputs
`from a manual input device 160 such as a keyboard. The
`terminal control system, the display device, and the manual
`input device are typically included in the mobile systems
`described above, however, they may be optionally included
`with the directed information system and global positioning
`systems, for example.
`A network adapter 170 is provided for coupling the
`system 106 to a network.
`It
`is noted that
`the directed
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`information system requires a network adapter in order to
`access the Internet.
`
`One of the preferred implementations of the present
`invention is as several sets of instructions in a code module
`
`in the main memory (e.g., RAM 130). Until
`resident
`required by the computer system 106, the sets of instructions
`may be stored in another computer memory, for example, in
`a hard disk drive, or in a removable memory such as an
`optical disk for eventual use in a CDROM or a floppy disk
`for eventual use in the floppy disk drive.
`In the preferred embodiment,
`the present invention is
`implemented via object oriented programming techniques.
`Object oriented programming shifts the emphasis of soft-
`ware development away from function decomposition and
`towards the recognition of units of software called “objects”
`which encapsulate both data and functions. Object Oriented
`Programming (OOP) objects are software entities compris-
`ing data structures and operations on data. Together, these
`elements enable objects to model virtually any realworld
`entity in terms of its characteristics, represented by its data
`elements, and its behavior represented by its data manipu-
`lation functions. In this way, objects can model concrete
`things like people and computers, and they can model
`abstract concepts like numbers or geometrical concepts.
`The benefit of object technology arises out of three basic
`principles:
`encapsulation, polymorphism and inheritance.
`Objects hide or encapsulate the internal structure of their
`data and the algorithms by which their functions work.
`Instead of exposing these implementation details, objects
`present interfaces that represent their abstractions cleanly
`with no extraneous information. Polymorphism takes encap-
`sulation one step further—the idea being many shapes, one
`interface. A software component can make a request of
`another component without knowing exactly what that com-
`ponent is. The component that receives the request interprets
`it and figures out according to its variables and data how to
`execute the request. The third principle is inheritance, which
`allows developers to reuse pre-existing design and code.
`This capability allows developers to avoid creating software
`from scratch. Rather, through inheritance, developers derive
`subclasses that inherit behaviors which the developer then
`customizes to meet particular needs.
`In particular, an object includes, and is characterized by,
`a set of data (e.g., image data) and a set of operations (e.g.,
`methods), that can operate on the data. Generally, an obj ect’s
`data is ideally changed only through the operation of the
`object’s methods. Methods in an object are invoked by
`passing a message to the object (e.g., message passing). The
`message specifies a method name and an argument list.
`When the object receives the message, code associated with
`the named method is executed with the formal parameters of
`the method bound to the corresponding values in the argu-
`ment list. Methods and message passing in OOP are analo-
`gous to procedures and procedure calls in procedure-
`oriented software environments.
`
`However, while procedures operate to modify and return
`passed parameters, methods operate to modify the internal
`state of the associated objects (by modifying the data
`contained therein). The combination of data and methods in
`objects is called encapsulation. Encapsulation provides for
`the state of an object to only be changed by well-defined
`methods associated with the object. When the behavior of an
`object
`is confined to such well-defined locations and
`interfaces, changes (e.g., code modifications) in the object
`will have minimal impact on the other objects and elements
`in the system.
`
`Page 00009
`
`Page 00009
`
`

`

`US 6,353,398 B1
`
`7
`Each object is an instance of some class. A class includes
`a set of data attributes plus a set of allowable operations
`(e.g., methods) on the data attributes. As mentioned above,
`OOP supports inheritance—a class (called a subclass) may
`be derived from another class (called a base class, parent
`class, etc.), where the subclass inherits the data attributes
`and methods of the base class. The subclass may specialize
`the base class by adding code which overrides the data
`and/or methods of the base class, or which adds new data
`attributes and methods. Thus,
`inheritance represents a
`mechanism by which abstractions are made increasingly
`concrete as subclasses are created for greater levels of
`specialization.
`The use of object oriented programming provides for a
`framework approach to object based application develop-
`ment. The present invention employs abstract classes, which
`are designs of sets of objects that collaborate to carry out a
`set of responsibilities. Frameworks are essentially groups of
`interconnected objects and classes that provide a prefabri-
`cated structure for a working application.
`Accordingly, a user interface framework in accordance
`with the present invention may provide the support and
`default behavior of user display windows, tool bars, com-
`mand bars, etc. By basing the framework on object oriented
`technology, the behavior can be inherited and oven ridden to
`allow developers to extend the framework and create cus-
`tomized solutions in the push technology arena. As a result,
`significant advantages are achieved over employing conven-
`tional programming techniques used in the image analysis
`area since a programmer is not required to change original
`code but rather to extend from existing code. Moreover, the
`developers no longer have to work blindly through layers of
`code because the framework provides architectural guidance
`and modeling and also frees the programmers to supply
`specific actions unique to the image analysis problem
`domain.
`
`According to an exemplary embodiment of the present
`invention, Java is employed to carry out the present inven-
`tion. Java is an object-oriented, distributed, secure, archi-
`tecture neutral language. Java provides for object-oriented
`design which facilitates the clean definition of interfaces and
`makes it possible to provide reusable “software ICs.” Java
`has an extensive library of routines for copying easily with
`TCP/IP protocols like HTTP and FTP. Java applications can
`open and access objects across a network via URLs with the
`same ease to which programmers are accustomed to access-
`ing a local file system.
`Furthermore, Java utilizes “references” in place of a
`pointer model and so eliminates the possibility of overwrit-
`ing memory and corrupting data. Instead of pointer arith-
`metic that is employed in many conventional systems, the
`Java “virtual machine” mediates access to Java objects
`(attributes and methods) in a type-safe way. In addition, it is
`not possible to turn an arbitrary integer into a reference by
`casting (as would be the case in C and C++ programs). In so
`doing, Java enables the construction of virus-free, tamper-
`free systems. The changes to the semantics of references
`make it virtually impossible for applications to forge access
`to data structures or to access private data in objects that they
`do not have access to. As a result, most activities of viruses
`are precluded from corrupting a Java system.
`Java affords for the support of applications on networks.
`Networks are composed of a variety of systems with a
`variety of CPU and operating system architectures. To
`enable a Java application to execute anywhere on the
`network, a compiler generates an architecture neutral object
`file format—the compiled code is executable on many
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`processors, given the presence of the Java runtime system.
`Thus, Java is useful not only for networks but also for single
`system software distribution. In the present personal com-
`puter market, application writers have to produce versions of
`their applications that are compatible with the IBM PC and
`with the Apple Macintosh. However, with Java, the same
`version of the application runs on all platforms. The Java
`compiler accomplishes this by generating bytecode instruc-
`tions which have nothing to do with a particular computer
`architecture. Rather, they are designed to be both easy to
`interpret on any machine and easily translated into native
`machine code on the fly.
`Being architecture neutral, the “implementation depen-
`dent” aspects of the system are reduced or eliminated. The
`Java virtual machine (VM) can execute Java bytecodes
`directly on any machine to which the VM has been ported.
`Since linking is a more incremental and lightweight process,
`the development process can be much more rapid and
`exploratory. As part of the bytecode stream, more compile-
`time information is carried over and available at runtime.
`Thus, the use of Java in the present invention provides a
`server to send region-specific and related information pro-
`grams over the network as easily as traditional servers send
`data. These programs can display and manipulate data, such
`as related advertising information on a client computer. The
`present invention through the use of Java supports execution
`on multiple platforms. That is the same programs can be run
`on substantially all computers—the same Java program can
`work on a Macintosh, a Windows 95 machine, a Sun
`workstation, etc. It should be appreciated, however, that a
`Java stand-alone application may be constructed to achieve
`a substantially equivalent result. Although the present inven-
`tion is described with respect to employing Java, it will be
`appreciated that any suitable programming language may be
`employed to carry out the present invention.
`The present invention instantiates Java client classes by
`name at run time to implement client interfaces to changing
`server components. That is the present invention integrates
`the Java programming to communicate with services dis-
`tributed on various computers (e.g., mobile and stationary)
`on the intranet
`through the use of distributed object
`technology, which is discussed in greater detail below.
`Using this technology, a related task can be performed by
`the computer most optimally suited for it, and these deci-
`sions can be made dynamically. For example, if a given
`computer that provides a service is busy or down, the system
`will find an alternate source for that service, and provide it
`to the client immediately. The combination of Java-based
`client software and distributed object based services leads to
`a client/server system that facilitates push technology sub-
`stantially.
`Most current and past object oriented programming
`(OOP) systems are restricted to utilizing and making calls to
`objects within the same address space as the process utiliz-
`ing or calling the objects. That is, a process cannot typically
`access objects located within other processes including
`where those other processes are located on the same or
`different host computers. However, distributed OOP systems
`allow processes to access objects located in remote address
`spaces located in the same or other host systems. Astandard
`for such distributed OOP systems currently exists called
`Common Object Request Broker Architecture (CORBA)
`and is described in The Common Object Request Broker:
`Architecture and Specification, published by the Object
`Management Group (OMG), which is hereby incorporated
`by reference. This architecture allows a process to make
`calls to objects in other address spaces typically by con-
`structing the necessary communication paths during com-
`pilation.
`
`Page 00010
`
`Page 00010
`
`

`

`US 6,353,398 B1
`
`9
`In simple items, CORBA allows applications to interact
`and communicate closely at a higher level of abstraction
`than merely sending packets of data back and forth. Appli-
`cations in a heterogeneous computing environment can
`interact without worries of how the two different machines
`
`and operating systems can interface. Thus, CORBA specifies
`a system which provides interoperability between objects in
`a heterogeneous distributed environment and in a way
`transparent to the programmer. It is to be appreciated that
`CORBA is but one way of communicating with distributed
`objects. For example, a DCOM (Distributed Component
`Object Model) developed by Microsoft may be employed to
`accomplish the same task.
`What has been described above are prefer led embodi-
`ments of the present invention. It is, of course, not possible
`to describe every conceivable combination of components or
`methodologies for purposes of describing the present
`invention, but one of ordinary skill in the art will recognize
`that many further combinations and permutations of the
`present
`invention are possible. Accordingly,
`the present
`invention is intended to embrace all such alterations, modi-
`fications and variations that fall within the spirit and scope
`of the appended claims.
`What is claimed is:
`
`1. A system for directing region-specific information;
`comprising:
`a system for locating and transmitting information to
`location-specific users; and
`a directed information system for linking information
`related to the location specific users, the directed infor-
`mation system having access to a regionally defined
`data base for directing region-specific information to
`location-specific users, and employing push technology
`to push information to the location-specific users.
`2. The system of claim 1 wherein a GPS is employed to
`locate users and to transmit information.
`
`3. The system of claim 1 wherein queries are made of the
`directed information system.
`4. The system of claim 1 employing object oriented
`technology.
`5. The system of claim 1 including display and audio
`systems for receiving information from the directed infor-
`mation system.
`6. The system of claim 1 wherein the directed information
`system links to

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket