In industries such as banking, finance, and insurance, compliance with a number of location-specific rules and government regulations is critical. For example, in the context of preparing a workers compensation insurance policy, coverage rules can vary by state and by legal entity type, e.g., corporation, partnership, sole proprietorship, etc. Each state can set its own limits for minimum payroll limits and maximum payroll limits per legal entity type. Additionally, some states can define different limits depending upon business type. Each state may update respective rules and limits at different times. Furthermore, each state may define its own set of forms to cover particular situations related to insurance coverage options. The high degree of variability between state-specific rules, limits, and forms, as well as variable timing of updating rules, limits, and forms makes it challenging for professionals to ensure accuracy, particularly when working across multiple regulatory jurisdictions. This can result in a time consuming process of frequently researching, locating, and identifying proper rules, limits, and forms using a number of different industry sites and/or publications. The risk of errors increases where multiple systems for lookup are used and unbounded data/form selection is performed.
If multiple individual searches of various databases occur across a computing network, then computer system and network performance is typically degraded, as each search requires processing resource time, network bandwidth, and temporary storage space to capture results of multiple searches. Repeated data entry and numerous searches across multiple computer systems to retrieve similar and sometimes redundant information can reduce overall computer system and network performance.
The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The features and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
According to an embodiment, a system for location-based policy preparation guidance is provided as part of a data entry and analysis system. The system may be used in preparing an insurance policy or in other location-specific activities in which rules, limits, and/or forms depend upon a geographic location. In order to improve computing system performance and throughput, multiple geographic locations can be selected using a common interface to determine rule sets specific to each geographic location. A link can be generated between each of the selected geographic locations and a respective rule set specific to each of the selected geographic locations. A record set can be output on an interactive display that includes an instance of the link for each of the selected geographic locations to display the rule set specific to each of the selected geographic locations based on a link selection. As one example, the system can be used as part of an insurance rate/quote/issue system that gathers policy information; performs underwriting and eligibility analysis, including determining one or more associated geographic location-based rule sets; presents a user with rules, limits, and forms; and generates a quotation for an insurance policy. Based on the analysis by the system, links can be presented during the insurance rate/quote/issue process to display rule sets specific to selected geographic locations and may also include links to forms and other guidance based on the selected geographic locations, while data associated with the selected geographic locations are locally available in computer system memory, such that the number or volume of network and data storage system accesses can be reduced, thereby improving overall computer system performance and throughput. The term “guidance,” as used herein, can refer to regulating bureau-mandated or state-mandated requirements, as well as information that may be of assistance, but is not necessarily advice.
In an exemplary embodiment, policy guidance is provided that simplifies a policy preparation process by integrating geographic location-based rules, forms, and limit guidance to constrain a number of options available in the policy preparation process based on location and legal entity type. Geographic location-based rules can be bureau-mandated or regionally-mandated requirements, such as rules promulgated from an agency or department at a state level, a territory level, a municipality level, etc. The processes disclosed herein may be used for insurance quotation generation, financial systems, legal services, banking services, medical record management, shipping classification, economic data classification, or any such application where location-based rule sets can be linked to selection of multiple geographic locations. Accordingly, although a detailed example is described herein in reference to an insurance rate/quote/issue process, the system described herein may be generally applicable to any number of industry or governmental systems beyond insurance.
Turning now to
The database 111 may include or link to records stored in other data storage systems, such as an auxiliary data storage system 110A. The auxiliary data storage system 110A can hold auxiliary data 115 that supports or supplements data retrieval from the policy guidance data 112. For instance, certain record types and data, such as compliance forms, can be stored in the auxiliary data 115 of the auxiliary data storage system 110A. The auxiliary data storage system 110A may represent a legacy data source that is accessible by the query server 108 as part of searching and presentation of extended and related data sets. Alternatively, the auxiliary data storage system 110A can be omitted and the auxiliary data 115 can be merged with the database 111 in the data storage system 110.
The data entry and analysis system 101 may access an external network 118 via the mediation layer gateway 104 and/or one or more other firewalls or gateways (not depicted). One or more remote servers 120 can be accessed through the external network 118. Each remote server 120 can include one or more remote applications 122 and remote data 124. The external network 118 can be a large-scale, global network, such as the Internet. The remote data 124 may be accessed by the user system 106, for instance, via a hyperlink. The remote data 124 can also be used to update data in the database 111 and/or auxiliary data 115. In one embodiment, the policy guidance data 112 is updated by the data entry and analysis system 101 making requests to access the remote data 124 and reformatting the remote data 124 as needed to store in the policy guidance data 112. In an alternate embodiment, one of the remote applications 122 with proper authentication can push updates from the remote data 124 to the policy guidance data 112 and mark the data as updated.
The application server 102 can source a number of application programs 126 that may be executed by the application server 102, the user system 106, or in a distributed manner between the application server 102, the user system 106, and/or other systems. The user system 106 includes an interactive user display 128 to display information and a user input interface 129 that collects inputs from a user. The interactive user display 128 can be generated by one or more of the applications 126 on the application server 102 and provides information and input options for the user input interface 129. For example, the interactive user display 128 can appear as a data entry template where the user input interface 129 includes user modifiable fields to enter data values or make selections.
The mediation layer gateway 104 can provide an enterprise service bus (ESB) that routes various communications and supports a number of protocols within the system 100. For example, the mediation layer gateway 104 may process Simple Object Access Protocol (SOAP) requests and responses relative to the application server 102, Representational State Transfer (REST) requests and responses using Asynchronous JavaScript™ and extensible markup language (XML) (AJAX) relative to the user system 106, Hypertext Transfer Protocol (HTTP) query requests and responses relative to the query server 108, and any number of known protocols relative to the external network 118. A number of other protocols can be used throughout the system 100. For instance, the application server 102 and user system 106 may support JavaServer™ Faces (JSF)/Facelet requests and responses, and the query server 108 may access the data storage system 110 and/or the auxiliary data storage system 110A using Structured Query Language (SQL) and/or Open Database Connectivity (ODBC).
In the example of
In some embodiments, the application server 102 may include one or more electronic and/or computerized controller devices such as computer servers communicatively coupled to interface with the user system 106 (e.g., one or more client computers) and/or third-party devices (directly and/or indirectly). According to some embodiments, the application server 102 may be located remote from the user system 106. The application server 102 may also or alternatively include a plurality of electronic processing devices located at one or more various sites and/or locations. In an exemplary embodiment, the application server 102 is a JBoss™ application server.
According to some embodiments, the application server 102 and/or the user system 106 may store and/or execute specially programmed instructions to operate in accordance with one or more embodiments described in this disclosure. The application server 102 and/or the user system 106 may, for example, execute one or more programs that provide location-based policy preparation guidance as part of a policy preparation process.
The user system 106 may be implemented using a computer executing one or more computer programs for carrying out processes described herein. In one embodiment, the user system 106 may be a personal computer (e.g., a laptop, desktop, etc.), a network server-attached terminal (e.g., a thin client operating within an internal network of the application server 102), or a portable device (e.g., a tablet computer, personal digital assistant, smart phone, etc.). In an embodiment, the user system 106 is operated by an insurance professional, such as a product manager, broker, or agent of an insurance company. It will be understood that while only a single user system 106 is shown in
Various networks may be used to establish communication within the system 100, such as a wide area network (WAN), a local area network (LAN), a global network (e.g., Internet), a virtual private network (VPN), and/or an intranet. Communication within the system 100 may be implemented using a wireless network or any kind of physical network implementation known in the art.
Information stored in the data storage system 110 and/or the auxiliary data storage system 110A may be retrieved and manipulated via the query server 108, based on requests from the application server 102 or the user system 106, for example. The data storage system 110 and/or the auxiliary data storage system 110A may be implemented using a variety of devices for storing electronic information. It is understood that the data storage system 110 and/or the auxiliary data storage system 110A may be implemented using memory contained in the query server 108 or it may be a separate physical system, as shown in
Each of the application server 102, the mediation layer gateway 104, the user system 106, the query server 108, the data storage system 110, the auxiliary data storage system 110A, and the remote servers 120 can include a local data storage device, such as a memory device. A memory device, also referred to herein as “computer-readable memory” (e.g., non-transitory memory devices as opposed to transmission devices or media), may generally store program instructions, code, and/or modules that, when executed by a processing device, cause a particular machine to function in accordance with one or more embodiments described herein.
The applications 126 of application server 102 can include multiple application programs or sequences of instructions to implement processes as described herein. For example, a data entry and analysis (DEA) application 130 may include a sequence of executable instructions that enable a user to enter relevant information, access associated application data 114, perform analysis tasks such as determining eligibility, initiate a classification process, and provide results and reports. Although depicted as a single block in
According to a design pattern of the interactive user display 128 and user input interface 129, the user system 106 can include one or more instances of a DEA interactive user display 134 with a DEA user input interface 135 that interacts with the DEA application 130. The DEA interactive user display 134 may define one or more form templates to be populated with data obtained through the application server 102 and/or the query server 108 as a Web browser-based or stand-alone application implementation. The DEA interactive user display 134 and DEA user input interface 135 may include a sequence of display screens and user interfaces to be presented at different points during progression of the process. For example, different interactive interface views can be produced to enter specific data items, respond to questions, and output results.
Also according to a design pattern of the interactive user display 128 and user input interface 129, a PG interactive user display 136 and PG user input interface 137 can be defined separately or be included as part of the DEA interactive user display 134 and DEA user input interface 135. The PG interactive user display 136 and PG user input interface 137 interact with the PG application 132 according to one or more form templates populated with user data and data obtained through the application server 102 and/or the query server 108 as a Web browser-based or stand-alone application implementation.
One example of a general sequence of interactions that can be initiated by a user in the system 100 begins with user input received on the user input interface 129 (which may be the DEA user input interface 135 or PG user input interface 137), for instance, from a keyboard and/or mouse/pointer device. When a request is received at the user system 106, the request may be forwarded to the mediation layer gateway 104 using an AJAX interface as a REST-based request. In response, the mediation layer gateway 104 can generate a query request for the query server 108 as an HTTP query request. The query processor 116 performs a query process to find potential matches to the query request in the data storage system 110 and/or the auxiliary data storage system 110A and a response may be provided as an HTTP query response from the query server 108 to the mediation layer gateway 104. Subsequently, the mediation layer gateway 104 can make the query response available to be obtained by an AJAX interface as a REST-based response for the user system 106. With regard to the application server 102, a request from a client can be obtained, such as a facelet request obtained by the application server 102 from the user system 106. The request can be sent from the application server 102 to the mediation layer gateway 104 as a SOAP-based request using a JAX-web service. Again, the mediation layer gateway 104 can use an HTTP query request and an HTTP query response in communicating with the query server 108. A response can be obtained from the mediation layer gateway 104 by the application server 102 as a SOAP-based response using a JAX-web service. The application server 102 can provide the facelet response to the user system 106.
In an exemplary embodiment, in terms of hardware architecture, as shown in
In an exemplary embodiment, a keyboard 250 and mouse 255 or similar devices can be coupled to the input/output controller 235. Alternatively, input may be received via a touch-sensitive or motion sensitive interface (not depicted). The computer 201 can further include a display controller 225 coupled to a display 230.
The processing device 205 is a hardware device for executing software, particularly software stored in secondary storage 220 or memory device 210. The processing device 205 can be any custom made or commercially available computer processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the computer 201, a semiconductor-based microprocessor (in the form of a microchip or chip set), a macro-processor, or generally any device for executing instructions.
The memory device 210 can include any one or combination of volatile memory elements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM, etc.)) and nonvolatile memory elements (e.g., ROM, erasable programmable read only memory (EPROM), electronically erasable programmable read only memory (EEPROM), flash memory, programmable read only memory (PROM), tape, compact disc read only memory (CD-ROM), flash drive, disk, hard disk drive, diskette, cartridge, cassette or the like, etc.). Moreover, the memory device 210 may incorporate electronic, magnetic, optical, and/or other types of storage media. Accordingly, the memory device 210 is an example of a tangible computer readable storage medium 240 upon which instructions executable by the processing device 205 may be embodied as a computer program product. The memory device 210 can have a distributed architecture, where various components are situated remote from one another, but can be accessed by the processing device 205.
The instructions in memory device 210 may include one or more separate programs, each of which comprises an ordered listing of executable instructions for implementing logical functions. In the example of
The computer 201 of
Turning now to
The policy guidance table 300 of
The location code 304 can be a text field, such as a two-digit state code or a numeric code used to map to a location code formatted with any number of characters. For example, the location code 304 could be formatted to include a value of “AZ” for the state of Arizona or a number that serves as an index to a separate table (not depicted), e.g., numeric code “03” mapping to “Arizona”. The inclusion and exclusion rule set 306 may define rules about the types of individuals (typically owners, officers, etc.) that can be included in or excluded from coverage, such as workers compensation insurance coverage, based on the geographic location defined by the location code 304. The inclusion and exclusion rule set 306 can be further refined as separate entries for different legal entity types as defined by the legal entity type 310 for a same geographic location defined by the location code 304. For example, separate entries or rows 316 can be defined for the state of Arizona as the location code 304 for legal entity types 310 of sole proprietor and corporation. Each geographic location defined by the location code 304 can have one or more forms defined in the form data 308, such as compliance forms, that are location specific. For legal entity types 310 that have common definitions, the legal entity type 310 may be defined as a compound entry, such as a common entry or row 316 for a sole proprietor and a partnership. Additional fields may also be included in the policy guidance table 300 beyond those depicted in
The table identifier 352 may serve as an index to a particular entry or row 366 in the minimum-maximum guide table 350. Similar to the location code 304 of
In an alternate embodiment, the minimum-maximum guide table 350 is omitted, and minimum-maximum guidance is defined as a file stored in the data storage system 110 or auxiliary data storage system 110A of
The PG application 132 of
A record set 505 is output on the interactive user display 500 that includes records 505A and 505B of the selected geographic locations 502B, 502C and an instance of the link 504 for each of the selected geographic locations 502B, 502C operable to display the inclusion and exclusion rule set 306 of
Each of the selected geographic locations 502B, 502C can be analyzed to determine whether one or more compliance forms based on form data 308 of
Selection of the geographic locations 502 can result in displaying one or more questions on the on the interactive user display 500. Customized questions can be incorporated in the record set 505 on the interactive user display 500 based on the legal entity type 310 of
When a user deselects one of the selected geographic locations 502B, 502C, an associated record 505A, 505B of the record set 505 can be cleared from memory, such as from the memory device 210 of
A payroll field 811 can also be populated when creating the classification record 810. The payroll field 811 may be constrained by various minimum and maximum payroll rules, a number of which may be directly accessible via a minimum-maximum guide link 820. In embodiments where minimum-maximum guidance is generally provided as a non-customized list, the minimum-maximum guide link 820 may be available regardless of whether at least one party subject to minimum-maximum guidance is located at the geographic location 802. In an alternate embodiment, the minimum-maximum guide link 820 is provided based on determining that at least one party subject to minimum-maximum guidance is located in a selected geographic location identified by the geographic location 802. As one example, the questions 508A, 508B of
A number of other fields can also be populated when creating the classification record 810, such as a number of full time employees 812, a number of part time employees 814, a federal coverage field 816, and a voluntary compensation field 818. The federal coverage field 816 can indicate whether the employees at a particular location defined by the geographic location 802 and location number 804 qualify for coverage under the U.S. Longshore and Harbor (USL&H) Workers Compensation Act, for example. The voluntary compensation field 818 may be used to indicate whether additional insurance coverage is desired beyond the minimum requirements to comply with various workers compensation insurance laws and regulations.
A class code look up 824 can trigger a lookup operation to assist in populating the numeric classification code 806 and description 808. An Add-to-List button 826 may be selected by a user to save any updates to data in fields 802-818 in a list 830 of classification records, while a Cancel button 828 can prevent any changes to data in the fields 802-818 from being saved. An Add New Class button 832 can add additional classification records to the list 830. Classification records in the list 830 can be edited and/or viewed using an Edit/View button 834. Classification records can be deleted from the list 830 using a Delete Class button 836.
Turning now to
At step 1002, a list is displayed that includes two or more geographic locations in which an entity has assets, such as geographic locations 502 of
At step 1010, a record set is output on an interactive user display, such as record set 505 of
A user can make additional adjustments, such as de-selecting one or more of the selected geographic locations, e.g., de-selecting the selected geographic location 502B. A record of the record set can be cleared based on determining that an associated selected geographic location has been de-selected. The interactive user display, e.g., interactive user display 500 of
At step 1102, each of the selected geographic locations, such as selected geographic locations 502B and 502C of
At step 1202, the PG application 132 of
At step 1206, the minimum-maximum guide link can be displayed as a selectable link, for instance, on a classification input interface, and the minimum-maximum guide, such as minimum-maximum guide 900 of
At step 1208, data in the minimum-maximum guide may be filtered based on geographic location and legal entity type of the entity. As such, only a subset of data in the minimum-maximum guide may be displayed to the user. Alternatively, the minimum-maximum guide can be displayed in its entirety including all geographic locations and legal entity types. At a further alternative, filtering can be selectable to allow the user to change the viewing perspective between showing all data and limiting the view based on geographic location, legal entity type, and/or other criteria. For instance, filtering of the data in the minimum-maximum guide 900 of
The PG application 132 of
It will be appreciated that aspects of the present invention may be embodied as a system, method, or computer program product and may take the form of a hardware embodiment, a software embodiment (including firmware, resident software, micro-code, etc.), or a combination thereof. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
One or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In one aspect, the computer readable storage medium may be a tangible medium containing or storing a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
The computer readable medium may contain program code embodied thereon, which may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing. In addition, computer program code for carrying out operations for implementing aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
It will be appreciated that aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block or step of the flowchart illustrations and/or block diagrams, and combinations of blocks or steps in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks. The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
In addition, some embodiments described herein are associated with an “indication”. As used herein, the term “indication” may be used to refer to any indicia and/or other information indicative of or associated with a subject, item, entity, and/or other object and/or idea. As used herein, the phrases “information indicative of” and “indicia” may be used to refer to any information that represents, describes, and/or is otherwise associated with a related entity, subject, or object. Indicia of information may include, for example, a code, a reference, a link, a signal, an identifier, and/or any combination thereof and/or any other informative representation associated with the information. In some embodiments, indicia of information (or indicative of the information) may be or include the information itself and/or any portion or component of the information. In some embodiments, an indication may include a request, a solicitation, a broadcast, and/or any other form of information gathering and/or dissemination.
Numerous embodiments are described in this patent application, and are presented for illustrative purposes only. The described embodiments are not, and are not intended to be, limiting in any sense. The presently disclosed invention(s) are widely applicable to numerous embodiments, as is readily apparent from the disclosure. One of ordinary skill in the art will recognize that the disclosed invention(s) may be practiced with various modifications and alterations, such as structural, logical, software, and electrical modifications. Although particular features of the disclosed invention(s) may be described with reference to one or more particular embodiments and/or drawings, it should be understood that such features are not limited to usage in the one or more particular embodiments or drawings with reference to which they are described, unless expressly specified otherwise.
Devices that are in communication with each other need not be in continuous communication with each other, unless expressly specified otherwise. On the contrary, such devices need only transmit to each other as necessary or desirable, and may actually refrain from exchanging data most of the time. For example, a machine in communication with another machine via the Internet may not transmit data to the other machine for weeks at a time. In addition, devices that are in communication with each other may communicate directly or indirectly through one or more intermediaries.
A description of an embodiment with several components or features does not imply that all or even any of such components and/or features are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the present invention(s). Unless otherwise specified explicitly, no component and/or feature is essential or required.
Further, although process steps, algorithms or the like may be described in a sequential order, such processes may be configured to work in different orders. In other words, any sequence or order of steps that may be explicitly described does not necessarily indicate a requirement that the steps be performed in that order. The steps of processes described herein may be performed in any order practical. Further, some steps may be performed simultaneously despite being described or implied as occurring non-simultaneously (e.g., because one step is described after the other step). Moreover, the illustration of a process by its depiction in a drawing does not imply that the illustrated process is exclusive of other variations and modifications thereto, does not imply that the illustrated process or any of its steps are necessary to the invention, and does not imply that the illustrated process is preferred.
“Determining” something can be performed in a variety of manners and therefore the term “determining” (and like terms) includes calculating, computing, deriving, looking up (e.g., in a table, database or data structure), ascertaining and the like.
It will be readily apparent that the various methods and algorithms described herein may be implemented by, e.g., appropriately and/or specially-programmed general purpose computers and/or computing devices. Typically a processor (e.g., one or more microprocessors) will receive instructions from a memory or like device, and execute those instructions, thereby performing one or more processes defined by those instructions. Further, programs that implement such methods and algorithms may be stored and transmitted using a variety of media (e.g., computer readable media) in a number of manners. In some embodiments, hard-wired circuitry or custom hardware may be used in place of, or in combination with, software instructions for implementation of the processes of various embodiments. Thus, embodiments are not limited to any specific combination of hardware and software.
A “processor” generally means any one or more microprocessors, CPU devices, computing devices, microcontrollers, digital signal processors, or like devices, as further described herein.
The term “computer-readable medium” refers to any medium that participates in providing data (e.g., instructions or other information) that may be read by a computer, a processor or a like device. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media include, for example, optical or magnetic disks and other persistent memory. Volatile media include DRAM, which typically constitutes the main memory. Transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise a system bus coupled to the processor. Transmission media may include or convey acoustic waves, light waves and electromagnetic emissions, such as those generated during RF and IR data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer can read.
The term “computer-readable memory” may generally refer to a subset and/or class of computer-readable medium that does not include transmission media such as waveforms, carrier waves, electromagnetic emissions, etc. Computer-readable memory may typically include physical media upon which data (e.g., instructions or other information) are stored, such as optical or magnetic disks and other persistent memory, DRAM, a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, computer hard drives, backup tapes, Universal Serial Bus (USB) memory devices, and the like.
Various forms of computer readable media may be involved in carrying data, including sequences of instructions, to a processor. For example, sequences of instruction (i) may be delivered from RAM to a processor, (ii) may be carried over a wireless transmission medium, and/or (iii) may be formatted according to numerous formats, standards or protocols, such as Bluetooth™, TDMA, CDMA, 3G.
Where databases are described, it will be understood by one of ordinary skill in the art that (i) alternative database structures to those described may be readily employed, and (ii) other memory structures besides databases may be readily employed. Any illustrations or descriptions of any sample databases presented herein are illustrative arrangements for stored representations of information. Any number of other arrangements may be employed besides those suggested by, e.g., tables illustrated in drawings or elsewhere. Similarly, any illustrated entries of the databases represent exemplary information only; one of ordinary skill in the art will understand that the number and content of the entries can be different from those described herein. Further, despite any depiction of the databases as tables, other formats (including relational databases, object-based models and/or distributed databases) could be used to store and manipulate the data types described herein. Likewise, object methods or behaviors of a database can be used to implement various processes, such as the described herein. In addition, the databases may, in a known manner, be stored locally or remotely from a device that accesses data in such a database.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one more other features, integers, steps, operations, element components, and/or groups thereof.