WO1994012943A1 - System of unique number assignment and genealogical data retrieval - Google Patents

System of unique number assignment and genealogical data retrieval Download PDF

Info

Publication number
WO1994012943A1
WO1994012943A1 PCT/US1993/011443 US9311443W WO9412943A1 WO 1994012943 A1 WO1994012943 A1 WO 1994012943A1 US 9311443 W US9311443 W US 9311443W WO 9412943 A1 WO9412943 A1 WO 9412943A1
Authority
WO
WIPO (PCT)
Prior art keywords
unique
numbers
information
time
entry
Prior art date
Application number
PCT/US1993/011443
Other languages
French (fr)
Inventor
Frank E. Frost
Original Assignee
Frost Frank E
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Frost Frank E filed Critical Frost Frank E
Priority to AU58691/94A priority Critical patent/AU5869194A/en
Publication of WO1994012943A1 publication Critical patent/WO1994012943A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables

Definitions

  • This invention is generally directed to automated data processing systems used by computers to identify and retrieve data and, more specifically, to a method and apparatus for assigning to entities in the database unique identity numbers which are based on real time.
  • the assigned numbers also relate to other information by being referenced to genealogical data stored in one or more records or tuples in the database.
  • the unique numbers are assigned to individuals within a health care system with the numbers being based upon the individual's date and time of entry into the system. Additional information is also recorded against each number assigned with regard to other information effecting the individual including relationships of family members, identification of insurance providers, benefits and limitations of insurance and service providers, data effecting rights and/or limitations of subscriber service dependent upon employers and the like.
  • Previous number identification systems for identifying individuals usually assign numbers according to a scheme that was originally meaningful to the service provider such as a credit card company. Oftentimes problems are encountered with number assignments not being specifically unique or being limited so that the database cannot accommodate expanding data input. In most systems, the numbers assigned require the application of a serially assigned number so that the next available number has to be stored and maintained in the database. This presents an opportunity for errors to be made when making number assignments. For instance, if the database is set to provide a nine digit number, when the serial number fills up with all nines, the next number assigned would be all zeros creating a duplication of number assignments within the database. Further, such number assignments are not suitable for straight forward arithmetic computations thus compromising a recursive retrieval process where information relative to specific entities having an assigned number must be unique.
  • the concept of controlling a transaction based upon individual number assignments to authorize immediate actions to be taken such as authorizing a sale to an individual at the time of purchase is generally limited to credit card processes or companies including MASTERCARD, VISA, DISCOVERY, AMERICAN EXPRESS, individual banks, credit unions, and the like. In each of these situations, the credit card processors authorize credit purchases and aid in the collection, control and crediting of payments for purchases. To date, however, the use of number assignment systems has not been effectively utilized in other industries or areas wherein authorization of services or goods are required, such as in the health care industry.
  • the cost of health care delivery in the United States is reportedly approaching four hundred billion dollars per year and is growing at approximately eight billion dollars per month. Of this amount, the administrative costs for health care delivery is estimated at forty percent or approximately one hundred and sixty billion dollars per year. The majority of the administrative costs are going to the insurance companies to support their focus on which claims are to be paid and which are to be excluded or denied.
  • the system is such that when patients seek health care provider service either from a doctor, hospital or clinic, information with regard to their insurance carrier must be given to the health care provider. Frequently, patient service is denied until verification of information from an insurance carrier can be obtained.
  • This invention is directed to a computerized identification and genealogical information storage and retrieval system which may be utilized to provide unique numbers to each entity within the system.
  • Entities may be real persons, businesses, partnerships, corporations or any other legally defined organization or activity such as governmental and private agencies, insurance and health care providers such as doctors, hospitals and clinics, and the like. Numbers are assigned chronologically to each entity based upon a real time sequence so that additional numbers need not be maintained in a computer database but are available due to the passage of time alone.
  • the invention includes three basic elements including; the assignment of a unique time base number to each entity within the system, the selection of a time interval used in the unique number assignment such as hours, minutes, seconds, microseconds, or fractions of microseconds and recursive retrieval either backward or forward in time to determine and obtain genealogical information relative to entities within the system.
  • the unique number assignment may be based on a number corresponding to a person's birth date. In those instances where a person's birth date is utilized, it is more likely that the number would be reflected in a measure of a minute or less, or even a second or fraction thereof.
  • each unique number may incorporate a number identifying the particular work station so that if two numbers are assigned simultaneously, they will differ by the number of the assigning work station. Accordingly, the assurance of unique numbers for each entity in the system is maintained.
  • the present invention is utilized to assign unique numbers to individuals in a health care system where the focus is on the immediate authorization and payment of health care delivery and not upon avoidance of claims being sought by a person within the system.
  • Each individual within the health care system is assigned a unique number either based upon the date of entry into the system or upon some other parameter such as the individual's date and time of birth.
  • the number assigned may also include a number indicative of the work station into which the individual 's number was entered in the event that similar numbers for the same times and dates are entered into other work stations within the health care system.
  • Information is thereafter recorded with respect to each individual within the system as to other genealogical data including family relationships such as mothers, fathers, sons and daughters, information as to carrier service coverages such as insurance organizations subscribed to by the individual or coverage provided by governmental or private agencies or places of employment.
  • Other information is also recorded as to the medical history of the entity and related genealogical entities which may be easily accessed for provider service review at the time treatment is sought.
  • each number will also include cross-referencing to numbers of each of the entities identified in the genealogical breakdown of information by their separately assigned numbers so that the accumulation of information upon search and retrieval is quickly facilitated. Utilizing the system of the present invention all parameters and limitations defining an individual ' s health care coverage may be immediately accessed upon the entry of the individual's unique number for data retrieval.
  • the system provides for an immediate authorization for the sought service and/or product.
  • the system is also designed to make automatic transfer of payment to the providers for services requested and rendered. Due to the availability of the information, authorizations may be provided within a matter of seconds under normal circumstances.
  • Current technology employed in credit card processing accommodates up to two hundred transactions per second, 17,280,000 per day, which rate would easily accommodate health care delivery requirements.
  • the number of transactions covered can be effectively increased.
  • FIG. 1 is a schematic block diagram showing the basic network of local and primary control processing units used to assign unique real time numbers and to monitor transactions involving system subscribers.
  • Fig. 2 is a flow chart showing in general detail the unique number assignment processing utilized with the database of the present invention.
  • Fig. 3 is a block diagram showing in general detail the sorting activity that takes place utilizing the database of one form of the present invention.
  • Fig. 4 is a flow chart showing the general detail of the searching logic utilized with one form of database applicable to the present invention.
  • Figs. 5A and 5B are recursive retrieval flow charts showing the general detail of the process for retrieving information utilizing the computer database of the present invention.
  • Fig. 6 is a flow chart showing a preferred application of the invention in the providing of authorization and patient identification and genealogical information storage and retrieval which may be utilized in keeping with the teachings of the present invention.
  • Fig. 1 discloses the basic concept of assigning a unique number to an individual or entity (I) who, or which, is to be entered into the database of the system.
  • the entities will be referred to as individuals in a health care provider system, however, the assignment of numbers is not exclusive to use in providing health care services.
  • the present number assignment system may be used to identify and select and retrieve information on all types of entities including, but not limited to, real people, corporations, businesses, partnerships, private and governmental agencies, and the like.
  • the individual ( I ) is initially identified into a local area central processing unit (CPU) 15 which in drawing Fig. 1, is identified as site location (N).
  • the central processing unit 15 is accessed by keyboard or other entry device and includes display 17.
  • Each CPU also includes an internal clock or timer chip which runs on preselected increments of time.
  • each individual will have a number assigned according to the date and time of either the entry of the individual into the system or some other parameter such as the individual's date of birth.
  • the database includes a base reference time (B) which could be, for instance, a date of 1/1/1900 at midnight.
  • the clock increments will thereafter be advanced based upon a predetermined selected time interval (G) which may be in days, hours, minutes, seconds, micro-seconds, or fractions of microseconds, depending upon the number of entities to be regulated by the system.
  • G time interval
  • each system will include an epoch value (E) representing the total of the time intervals embraced by the system.
  • the epoch value is equal to the total time it would take the number of time intervals (G) to fill up and overflow the system so that a number value would revert back to zero.
  • time interval (G) since the numbering system is based upon a continuity of time, it is possible to select that time interval (G) to absolutely ensure a unique number assignment to each entity in the system.
  • the number associated with each entity being entered into the system would be based initially on the date and time of their birth or the date and time, to the nearest micro-second, of the entry of the individual's identity into the system.
  • Other information with respect to the individual is also entered into the system, as shown in Fig. 1, which information would include reference to other individuals or entities having a genealogical association with the entity to which a number is being assigned. For instance, in a health provider service system, information with regard to an individual's health background, relatives including parents, grandparents, children, grandchildren and the like may all be entered into the system.
  • Each referenced individual may also be identified by a unique number.
  • information with regard to insurance providers, employers and governmental agencies providing or controlling health care coverage for the individual are entered into tables cross-referenced in the system. It is important to ensure that as much information is entered into the system to allow easy cross-referencing of related entities by their association with numbers assigned to each entity.
  • the health provider information will include reference to policy provisions or coverage provided by insurance companies and/or agencies under which the individual is insured for purposes of receiving health care. This information may be easily referenced to the insurance providers by other unique numbers assigned in the same system. As each unique individual identity number represents a specific time and date, the number may be easily converted to conventional dates and times which with most individuals are familiar, such as Julian or Gregorian date. With continued reference to Fig.
  • unique numbers may be assigned from different local or regional central processing units such as shown at 15 and 18.
  • Unit 18 is identified as site location N+l.
  • Each regional central processing unit, such as 15 and 18, may be linked to a primary processing unit 20.
  • a prefix or suffix number may be appended to each number based on real time which identifies the source, such as N for the assigning CPU 15 or N+l for CPU 18.
  • the CPU 18 would operate on the same real time frame and have the same time interval (G) and base reference (B) and epoch (E) as other CPU units on the system.
  • Additional prefix or suffix numbers may be added to the real time number to provide additional critical information relating to geography, companies, agencies and other matters effecting the individual.
  • the size of numbers and how many digits each number includes will be determined by the number of digits required by the epoch divided by the time interval ( E ⁇ G ) .
  • a program flow control diagram is disclosed relating to the unique assignment of numbers to entities or individuals within the system.
  • the flow chart is divided into a left and right side, with the left side reflecting the creation or assignment of a new number and the right side showing the processing of an existing number into the database system.
  • Information is requested from one of the local area processing units such as 15 or 18 by entering through an appropriate terminal 16 and through display device 17 information requesting the assignment of a new number.
  • Drawing Fig. 23 use the letter A to identify the text as relating to computer manufacturer or operating system assigned variables, and the letter C to refer to user assigned application variables.
  • a graphic example of these relations are:
  • the base adjustment in converting from computer to application variables and back again is defined by (base B(A) - base B(C)) of the same time intervals.
  • the flow chart of Fig. 2 is operatively defined as follows:
  • GET TIMER COUNTER this retrieves the timer value from the computer central processing unit, the timer chip, or fixed memory location.
  • CONVERT GRANULARITY A TO C if the granularity of A is micro seconds and B is seconds the timer counter needs to be divided by 1,000,000 to produce a counter in B granularity units.
  • SIZE THE COUNTER TO EPOCH C adjust the converted counter from 2 to the size in digits required for the application unique number.
  • COMPUTE SCALAR DAY DATE this is a count in days from the beginning of the machine base reference. For instance, if the base reference date is 1/1/1900 its Scalar Day Date would be 0, if the date is 1/2/1900 the Scalar Day Date would be 1.
  • ADJUST SCALAR DATE TO 1/1/0000 use this date as a base reference date for internal processing.
  • COMPUTE JULIAN DATE FROM SCALAR DATE convert the Scalar Day Date to a Julian date format. This date is made up of a year followed by number representing the day of the year 1 - 365/366.
  • COMPUTE H:M:S.NN TIME FROM TIMER COUNTER this value is determined by converting the remainder of the timer counter value divided by the Scalar Day Date using 24 hours per day, 60 minutes per hour, and 60 seconds per minute.
  • the database of the local area central processing unit would receive a timer value from the computer clock or timer chip and assign the real time number to the individual being entered into the system.
  • the application will require unique numbers for a maximum time from the second 0 established above.
  • a maximum number of unique numbers of 4,294,967,295 is chosen. This then will represent the epoch E(C) of the above graphic example. This number was chosen because it is the 32nd power of 2 minus 1 and it requires 8 base 16 digits to be represented. It also sizes the number to 32 bits or 4 bytes for storage and arithmetic.
  • the epoch (time span) represented here is approximately 136. This represents the three things required to define the present application.
  • Computers and computer operating systems also employ the previous three things when keeping track of time. There is no standard established for these values but it is beneficial that the present application work transparently with respect to differing computers and operating systems.
  • the world is divided into 96 15 minute time zones 0 being Greenwich Mean Time (Coordinated Universal Time) and 24 being Central Standard Time, GMT minus 6 hours.
  • the left most bit of the first 8 bit suffix identifies the use of daylight savings time, 1, or non-use of daylight savings time 0.
  • the first 8 bit byte of the suffix is 98 base 16. Assuming a machine is 00 base 16 in the network. Based on this a 2 byte, 16 bit suffix will be 9800 base 16 for all numbers assigned.
  • the present system is designed to assign unique numbers based upon real time to various entities which entities may be individuals. Further, the system is designed to provide genealogical and other data relating to the individual or entity to which a number is assigned so that decisions can be made on a real time basis as to authorizations for service providers, particularly within the health care industry. In this respect, each number is related to one or more data records or tuples within the computer database. The information contained within the tuples may be entered at various times and therefore the database must be capable of entering, sorting, scanning and retrieving such information regardless of the time and manner in which it is entered.
  • Fig. 3 shows a flow diagram of the method of sorting information utilizing the database of the present invention.
  • the sort system requires as much random access memory (RAM) as is needed to efficiently store the data into tuples or records relating to each entity or individual and/or an abbreviated index containing pointers to such tuples or table entries that may be in a sequence which is not preferred within the program.
  • the table entries may be initially physically stored in the order that they are acquired or they may be physically stored in a desired sequence when received and an index physically created which points to the entries in the order required.
  • the buffer space for the sorted physical data tuples or index pointers is managed in a right to left manner.
  • Block 41 indicates the next tuple or table entry and may be information acquired from an external media such as a disk, tape, keyed input or scanning device, or may be an object already in RAM, referenced either directly or indirectly.
  • Block 42 reflects the last tuple within the database and is determined by any sequence of bits that mark the end of the input tuples. On a keying device, this could be the "Enter" key without any preceding data.
  • the counter in the RAM is initialized to zero at the start of each sort cycle. This counter is used to indicate where the buffer ends to aid in the management of the entire buffer.
  • a search routine is made in the computer database for information regarding tuple or record counts, tuple or record locations, length of the data being searched, definitions and locations and limits of the search. The search routine is more definitively defined with respect to the flow diagram of Fig. 4 which will be discussed hereinafter.
  • Block 45 indicates a pointer entry.
  • the search routine returns a pointer to the entry in the buffer where the tuple (or tuple pointer) is to be stored. If the pointer is equal to the tuple count, the entry is in sequence and no shifting of the buffer is required and thus the sort is expedited. If the entry needs to be inserted somewhere in the midst of the buffer, the length of the data to be shifted and the length of the data to be entered is determined and a move instruction is executed to shift the buffer to the left at block 46.
  • the new tuple data (or pointer to new tuple data) is stored.
  • the search routine services requirements of the sort routine and also relates to the recursive retrieval routine which will be discussed with respect to Figs. 5A and 5B.
  • the search will operate from right to left on a table stored in RAM. The table must be in sequentially ascending order from right to left in memory.
  • One of the parameters passed to the search routine the threshold for serial searching, determines whether the search will be serial from right to left or binary searched. The preferred embodiment for this parameter may be adjusted to accommodate the performance requirements of a specific brand or model of computer.
  • the threshold for serial searching parameter must be greater than 1 to ensure the return of a correct pointer . to an empty table. The most popular selection for this number is 17.
  • control parameters There are eight control parameters that must be passed with the calling request. They are: a) the search argument; b) the count of tuples stored in the table being searched; c) the length of the search key in bytes; d) the offset in bytes to the start of the search key; e) the length of each entry in the table; f) a pointer to the start of the table; g) a threshold for serial searching count; and h) an indicator (0 or 1) controlling the search.
  • the search routine returns the pointer to the entry containing the key of the item requested or the place in the table to insert a new item, if that is what is required.
  • the binary search logic described hereinbelow will return the required pointer in N +1 or less examinations to the table where N is a number such that the Nth power of 2 examinations of the table is less than the number of entries in the table. For example, if a table contains 256 million entries, N would be selected as 28 and no more than 29 references to the table would be made to locate any required entry or verify that it is not in the table.
  • the flow chart will be explained by reference to the falling program identities.
  • INITIAL. . . initial search control values.
  • TEST the entry to be examined.
  • LOW the lowest entry that is eligible to examine.
  • LAST_L0W the last entry examined in Block 64 of the routine. This value is saved because we may want to use it as the return value on exit.
  • HIGH is initialized to 1 as seed data to develop a binary number greater than the number of entries in the table. This ensures that the difference between HIGH and LOW is always an even number and thus divisible by 2 with a zero remainder.
  • TEST 1: the number of entries in the table are less than the serial search threshold, therefore we will do a serial search of the table beginning at entry number one.
  • TEST SEARCH: compare the key of the entry to be tested to the search argument.
  • ENTRIES SERIAL: check the entries in the table against the serial search value defined in Parameter E passed to the Search Routine.
  • TEST SEARCH: compare the key for this entry to the search argument supplied by Parameter 1.
  • STOP ON 1ST : it may be possible in some cases to terminate the search early on encountering an equal search argument. This will occur if there are equal keys in the table and we can accept any equal, or if the key is unique for each entry and the desired entry occurs on a boundary that is also a binary power of 2.
  • TEST SEARCH: compare the key of the entry pointed to by test to the search argument passed as Parameter 1. If this is true we may be eligible for an early termination of the search.
  • TEST SEARCH: compare the key of the entry pointed to by TEST to the search argument passed as Parameter 1. This determines how to adjust the upper and lower boundaries, HIGH and LOW respectively, and whether the adjustment value will be positive or negative.
  • TEST 1: if TEST is equal to 1 the adjustment value will be zero and the entry at offset 0 will never be referenced. This forces reference to the first entry in the table if necessary.
  • TEST 0: the last entry referenced was 1. Force the next entry to be referenced to be 0. 71.
  • ITERATIONS N N - 1: reduce the number of entries to be examined by 1. This is the search iteration count, the (N+l)th power of 2 that is controlling the search.
  • TEST LAST_LOW: since the logic in the ( leg of logic Block 15 saves the Value of TEST, this saved value at LAST_L0W is the correct value to be returned.
  • ITERATIONS 0: if we have exhausted the search iterations, N+l, the required result is stored in TEST or LAST LOW.
  • FIG. 5A and 5B flow diagrams of retrieval of information from the RAM of the present invention is disclosed.
  • the recursive retrieval routine shown assumes the presence of an appropriately sorted table of data tuples relating to each of the assigned numbers for entities within the database and of related genealogical data entries related thereto. Each entry has a unique identifying number.
  • the data portion of each record or tuple contains one or more unique numbers that are the key to additional tuples. These unique data numbers identify some relationship of one tuple to other tuples.
  • a data portion unique number may represent the key to a parent tuple which may be a genealogical parent such as a father or mother or may be a business parent such as a controlling company or organization, regulating government agency or the like.
  • the flow diagram of Figs. 5A and 5B define the processing of a complete table of tuples which could be done for any one record or tuple, processing all tuples within a specific family, wherein the family may include genealogical information as discussed above or may include associated relationships between businesses, government agencies, insurance companies, health providers and the like.
  • the routine precedes as set forth hereinbelow.
  • NEXT TUPLE reference the first or next tuple in the table.
  • LAST TUPLE if no additional tuples are available end the process of retrieval.
  • LEVEL 0: initialize the level counter LEVEL to 0.
  • LEVEL is a local variable that is passed to LEVEL PROCESSOR.
  • CALL LEVEL PROCESSOR issue a call to the LEVEL PROCESSOR routine passing the tuple and table by reference parameters.
  • each tuple is updated to indicate that it has been processed. This routine is entered recursively and its local variables are pushed onto a last in first out (LIFO) stack. If a tuple is being referenced for the second time an immediate exit is taken to pop the stack of local variables to the next level up.
  • LIFO last in first out
  • PROCESS TUPLE AT THIS LEVEL this is where individual tuple processing occurs.
  • the level counter indicates the parental relationship that controls this processing.
  • ENTRY AT NEXT LEVEL this is accomplished by using the search routine to locate the first occurrence of this tuple as a parent tuple to other tuples in the table. In this case we want the first instance of a parent tuple or no tuples are available under this tuple.
  • LEVEL LEVEL + 1: add one to the level counter to indicate the level descent to accompany the pending recursive call
  • CALL LEVEL PROCESSOR issue a call to the LEVEL PROCESSOR routine passing the tuple and table by reference parameters.
  • Fig. 6 the application of the invention to the authorization of health care services within the health care industry is described in greater detail.
  • the unique real time number assignments of the present invention will allow all information with regard to a patient to be readily accessed for purposes of authorizing provider services such as by doctors, dentists, surgeons, clinics, health supply outlets and the like for enabling such provider services to obtain immediate authorization from the regionally located central processing units such as shown at 15 and 18 in Fig. 1.
  • provider services and products may be authorized by immediately acknowledging eligibility and the reasonable appropriateness of the service and products requested by the patient.
  • the system also would supply complete current medical records by access to the tuples stored in RAM to the service/product providers whenever it is appropriate to receive such information to aid in the providing of the service or product.
  • the system will contain sufficient information to verify that the patient is eligible for the service or product and that the pricing of the service and/or product is within an appropriate range.
  • the records of the system may thereafter be immediately updated to reflect activities authorized on behalf of the patient and services rendered.
  • the system is also designed to transact an immediate electronic funds transfer to a demand deposit account of the service or product provider, thus doing away with the need for the multitudinous submissions and review of paper requests currently being utilized by insurance agencies when reviewing and either allowing or denying insurance claims.
  • Each individual within the health care authorization system is given a unique real time number as previously discussed and information regarding the patient, the patient's health history, genealogically related records and information effecting levels of health care services and the amounts authorized for health care services and/or products are initially stored in the local central processing unit 15.
  • a patient seeks health care provider service such as a doctor's office or hospital
  • the patient' s identity number is entered into a keyboard 101 associated with a suitable display device 102 which is connected to the on-site central processing unit 103.
  • the site CPU 103 is connected by modem 104 to the modem 105 of the centrally located CPU 15. Utilizing the search procedure previously discussed, information with regard to the patient requesting service is immediately accessible from the local CPU.
  • Block 106 reflects various accessible tables within the database which are identified as services provided, provider table, service table, and subscriber table.
  • the subscriber table is maintained in ascending sequence by the unique ID number of each subscriber within the system.
  • Data stored in the subscriber records or tuples is associated with the unique ID number assigned in real time. They include genealogical data such as information as to relatives, including mothers and fathers, who have also been assigned unique numbers. Other information as to demographic, personal data, summary or totals of usage of the system, financial data relating to authorizations of payment made for services and/or products, and activity data are also available.
  • the daily activity totals may be updated as service and products are posted against the subscriber service/product table.
  • the service table contains all eligible services and products supplied by health care providers associated with the individual seeking the service. This table is in ascending sequence by effective date with a unique ID number identifying each service/product in the table.
  • the data stored in each record or tuple of this table includes information as to the unique ID number, the service/product pricing in the system based upon limitation of the adjudication authority and all limitations of an individual's benefits provided through any adjudication authority. This information is retained so that immediate assessment may be made with respect to requested services or products and a verification obtained as to the authorization of such services in keeping with the benefit limits available to the individual.
  • the provider service table identifies providers who are eligible to supply services and/or products to the individuals within the health care system. This table is sequentially ascending again by unique ID number assigned in keeping with the teachings of the present invention. Tuples of this table contain unique ID numbers of the providers, provider demographics, appropriate fees and current activities and financial summary data related to the providers. These tables also determine the class or group of service each provider is eligible to provide to the individual seeking service or products and updates are made as are necessary.
  • the service provider table contains the services and products delivered to each individual to which authorization has been approved by the system of the present invention. Then records are also cross- referenced to the unique ID number of the individual and of the provider and all financial summary information related to payments which may be authorized on behalf of a provider for services rendered to a patient are retained and updated.
  • the RAM of the central processing unit is searched to verify that the patient identified by unique number is qualified to receive service from the provider identified and that the service being requested is within the limits defined by the policies which cover the health care service to the individual. Once this information has been retrieved from memory, if all parameters of the requested services are proper, an immediate approval is forwarded to the site central processing unit 103 thereby allowing the provider to render the service requested on a real time basis. Once the service has been provided, information with regard to the service provided and the charge is again forwarded from the site central processing unit 103 to the centrally localized central processing unit 15.
  • each individual within the health care system may be provided with a machine readable card.
  • the machine readable card 110 may be entered into a reader 111 located at each provider site location thereby further facilitating the access to ' the database of the regional and primary central processing units.

Abstract

A method and system for identifying and retrieving data relating to entities by computer (103, 15, 108) wherein unique real time base numbers are assigned to each entity. The numbers also identify one or more records in the computer database (106) which relate to one another according to a genealogical relationship defined by the database (106). In a preferred embodiment, the invention is used to provide immediate on-line service/product authorization and verification and payment authorization to health care providers relating to eligible patients requesting services or products.

Description

SYSTEM OF UNIQUE NUMBER ASSIGNMENT AND GENEALOGICAL DATA RETRIEVAL
BACKGROUND OF THE INVENTION
Field of the Invention This invention is generally directed to automated data processing systems used by computers to identify and retrieve data and, more specifically, to a method and apparatus for assigning to entities in the database unique identity numbers which are based on real time. The assigned numbers also relate to other information by being referenced to genealogical data stored in one or more records or tuples in the database.
In a preferred embodiment of the present invention, the unique numbers are assigned to individuals within a health care system with the numbers being based upon the individual's date and time of entry into the system. Additional information is also recorded against each number assigned with regard to other information effecting the individual including relationships of family members, identification of insurance providers, benefits and limitations of insurance and service providers, data effecting rights and/or limitations of subscriber service dependent upon employers and the like.
History of the Related Art The creation of a large database of information about entities or things that are related genealogically in a manner that can be efficiently searched by computer and updated is a problem. An example of such a genealogically related database would be with respect to a personal family tree wherein information regarding not only the relationships of the family members is recorded but other information which effects each of the family members is also recorded. Such additional information would include relationships to employers, goods and service providers including insurance companies, related health care providers including doctors, clinics and the like, as well as specific information concerning health care and other records relating to each of the individuals in the database. Although there have been large databases of information created by assigning individuals a specific number, such as a charge account number for a credit card, such database systems have not closely coupled related number assignments with regard to allowing the retrieval of genealogical data relative to a specific individual.
Previous number identification systems for identifying individuals usually assign numbers according to a scheme that was originally meaningful to the service provider such as a credit card company. Oftentimes problems are encountered with number assignments not being specifically unique or being limited so that the database cannot accommodate expanding data input. In most systems, the numbers assigned require the application of a serially assigned number so that the next available number has to be stored and maintained in the database. This presents an opportunity for errors to be made when making number assignments. For instance, if the database is set to provide a nine digit number, when the serial number fills up with all nines, the next number assigned would be all zeros creating a duplication of number assignments within the database. Further, such number assignments are not suitable for straight forward arithmetic computations thus compromising a recursive retrieval process where information relative to specific entities having an assigned number must be unique.
In an effort to create unique numbers some credit card companies have assigned as many as twenty-seven digits to a given account transaction. This is an attempt to ensure that a number will be unique, however, such numbers are frequently not unique. In addition to the foregoing, data retrieval is frequently in compromise by including additional data which is necessary for the retrieval of information regarding an assigned number. The need to enter additional data weakens the number assignment system and makes retrieval of information impossible to manage especially as related information continues to be entered into the database regarding genealogical or other relationships which effect any of the entities given an assigned number.
The concept of controlling a transaction based upon individual number assignments to authorize immediate actions to be taken such as authorizing a sale to an individual at the time of purchase is generally limited to credit card processes or companies including MASTERCARD, VISA, DISCOVERY, AMERICAN EXPRESS, individual banks, credit unions, and the like. In each of these situations, the credit card processors authorize credit purchases and aid in the collection, control and crediting of payments for purchases. To date, however, the use of number assignment systems has not been effectively utilized in other industries or areas wherein authorization of services or goods are required, such as in the health care industry.
The cost of health care delivery in the United States is reportedly approaching four hundred billion dollars per year and is growing at approximately eight billion dollars per month. Of this amount, the administrative costs for health care delivery is estimated at forty percent or approximately one hundred and sixty billion dollars per year. The majority of the administrative costs are going to the insurance companies to support their focus on which claims are to be paid and which are to be excluded or denied. The system is such that when patients seek health care provider service either from a doctor, hospital or clinic, information with regard to their insurance carrier must be given to the health care provider. Frequently, patient service is denied until verification of information from an insurance carrier can be obtained. Record keeping requires that paperwork be filled out by the patient seeking service; that the health care provider submit forms and paperwork directed to the service provided, and that the health insurance company, thereafter, verify whether or not claims are justified under a given policy. This process is burdensome, time consuming and economically wasteful.
SUMMARY OF THE INVENTION This invention is directed to a computerized identification and genealogical information storage and retrieval system which may be utilized to provide unique numbers to each entity within the system. Entities may be real persons, businesses, partnerships, corporations or any other legally defined organization or activity such as governmental and private agencies, insurance and health care providers such as doctors, hospitals and clinics, and the like. Numbers are assigned chronologically to each entity based upon a real time sequence so that additional numbers need not be maintained in a computer database but are available due to the passage of time alone. The invention includes three basic elements including; the assignment of a unique time base number to each entity within the system, the selection of a time interval used in the unique number assignment such as hours, minutes, seconds, microseconds, or fractions of microseconds and recursive retrieval either backward or forward in time to determine and obtain genealogical information relative to entities within the system. By way of example, the unique number assignment may be based on a number corresponding to a person's birth date. In those instances where a person's birth date is utilized, it is more likely that the number would be reflected in a measure of a minute or less, or even a second or fraction thereof. If numbers are being assigned from multiple work stations or satellite computer stations, each unique number may incorporate a number identifying the particular work station so that if two numbers are assigned simultaneously, they will differ by the number of the assigning work station. Accordingly, the assurance of unique numbers for each entity in the system is maintained.
In a preferred embodiment, the present invention is utilized to assign unique numbers to individuals in a health care system where the focus is on the immediate authorization and payment of health care delivery and not upon avoidance of claims being sought by a person within the system. Each individual within the health care system is assigned a unique number either based upon the date of entry into the system or upon some other parameter such as the individual's date and time of birth. The number assigned may also include a number indicative of the work station into which the individual 's number was entered in the event that similar numbers for the same times and dates are entered into other work stations within the health care system.
Information is thereafter recorded with respect to each individual within the system as to other genealogical data including family relationships such as mothers, fathers, sons and daughters, information as to carrier service coverages such as insurance organizations subscribed to by the individual or coverage provided by governmental or private agencies or places of employment. Other information is also recorded as to the medical history of the entity and related genealogical entities which may be easily accessed for provider service review at the time treatment is sought. In addition, each number will also include cross-referencing to numbers of each of the entities identified in the genealogical breakdown of information by their separately assigned numbers so that the accumulation of information upon search and retrieval is quickly facilitated. Utilizing the system of the present invention all parameters and limitations defining an individual ' s health care coverage may be immediately accessed upon the entry of the individual's unique number for data retrieval. In view of the foregoing, when a person seeks provider service or products within the health care system, it is only necessary to enter the individual 's number to obtain immediate access to all levels of information regarding limits of coverage. The system provides for an immediate authorization for the sought service and/or product. The system is also designed to make automatic transfer of payment to the providers for services requested and rendered. Due to the availability of the information, authorizations may be provided within a matter of seconds under normal circumstances. Current technology employed in credit card processing accommodates up to two hundred transactions per second, 17,280,000 per day, which rate would easily accommodate health care delivery requirements. In addition, by providing regionalization of authorization databases, the number of transactions covered can be effectively increased.
It is a primary object of the present invention to provide a unique real time base number assignment system to identify entities for purposes of allowing immediate retrieval of information with respect to the entities and which further includes genealogical data with respect to each entity and wherein the assignment of numbers is assured to be unique without requiring complicated programming to maintain additional numbers in a database for future assignment. It is yet another object of the present invention to provide a computerized identification and genealogical information storage and retrieval system which has unique application in the health care industry and which may be utilized to significantly decrease health care provider service costs by eliminating the administrative costs currently associated therewith. Utilizing the present invention, timely data for each entity within the system is available to each provider in a health care system at the time service is requested.
It is a further object of the present invention to provide a unique computerized number assignment for an identification and genealogical information storage and retrieval system which has particular use in the providing of health care services in a health care system and which allows for the immediate authorization of services and/or products and which also provides immediate access to patient information and medical history or background; provides immediate payment for services rendered by authorization of payment to the provider's financial account; and maintain a record of services by patient number and related grouping numbers for all services requested and/or required.
It is also an object of the present invention to provide a health service provider authorization system which eliminates the need for insurance company intervention in the authorization of services requested thereby enabling services to be immediately authorized and paid when requested by a provider.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a schematic block diagram showing the basic network of local and primary control processing units used to assign unique real time numbers and to monitor transactions involving system subscribers.
Fig. 2 is a flow chart showing in general detail the unique number assignment processing utilized with the database of the present invention. Fig. 3 is a block diagram showing in general detail the sorting activity that takes place utilizing the database of one form of the present invention.
Fig. 4 is a flow chart showing the general detail of the searching logic utilized with one form of database applicable to the present invention.
Figs. 5A and 5B are recursive retrieval flow charts showing the general detail of the process for retrieving information utilizing the computer database of the present invention.
Fig. 6 is a flow chart showing a preferred application of the invention in the providing of authorization and patient identification and genealogical information storage and retrieval which may be utilized in keeping with the teachings of the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT As previously discussed, the basis of the present invention is in allowing identification to be made to provide service to entities wherein the entities are identified by uniquely assigned numbers on a real time basis. In this respect, Fig. 1 discloses the basic concept of assigning a unique number to an individual or entity (I) who, or which, is to be entered into the database of the system. Throughout this specification the entities will be referred to as individuals in a health care provider system, however, the assignment of numbers is not exclusive to use in providing health care services. The present number assignment system may be used to identify and select and retrieve information on all types of entities including, but not limited to, real people, corporations, businesses, partnerships, private and governmental agencies, and the like.
The individual ( I ) is initially identified into a local area central processing unit (CPU) 15 which in drawing Fig. 1, is identified as site location (N). The central processing unit 15 is accessed by keyboard or other entry device and includes display 17. Each CPU also includes an internal clock or timer chip which runs on preselected increments of time. As numbers for individuals ( I ) in the database are to be assigned based on a real time value, each individual will have a number assigned according to the date and time of either the entry of the individual into the system or some other parameter such as the individual's date of birth. In this respect, the database includes a base reference time (B) which could be, for instance, a date of 1/1/1900 at midnight. The clock increments will thereafter be advanced based upon a predetermined selected time interval (G) which may be in days, hours, minutes, seconds, micro-seconds, or fractions of microseconds, depending upon the number of entities to be regulated by the system. In addition to the foregoing values, each system will include an epoch value (E) representing the total of the time intervals embraced by the system. The epoch value is equal to the total time it would take the number of time intervals (G) to fill up and overflow the system so that a number value would revert back to zero. In the present embodiment, since the numbering system is based upon a continuity of time, it is possible to select that time interval (G) to absolutely ensure a unique number assignment to each entity in the system. In the preferred embodiment of the health provider system, it may be necessary, on a worldwide basis, to assign numbers based upon microseconds, or fractions of microseconds. Therefore, the number associated with each entity being entered into the system would be based initially on the date and time of their birth or the date and time, to the nearest micro-second, of the entry of the individual's identity into the system. Other information with respect to the individual is also entered into the system, as shown in Fig. 1, which information would include reference to other individuals or entities having a genealogical association with the entity to which a number is being assigned. For instance, in a health provider service system, information with regard to an individual's health background, relatives including parents, grandparents, children, grandchildren and the like may all be entered into the system. Each referenced individual may also be identified by a unique number. In addition, information with regard to insurance providers, employers and governmental agencies providing or controlling health care coverage for the individual are entered into tables cross-referenced in the system. It is important to ensure that as much information is entered into the system to allow easy cross-referencing of related entities by their association with numbers assigned to each entity. The health provider information will include reference to policy provisions or coverage provided by insurance companies and/or agencies under which the individual is insured for purposes of receiving health care. This information may be easily referenced to the insurance providers by other unique numbers assigned in the same system. As each unique individual identity number represents a specific time and date, the number may be easily converted to conventional dates and times which with most individuals are familiar, such as Julian or Gregorian date. With continued reference to Fig. 1 of the drawings, unique numbers may be assigned from different local or regional central processing units such as shown at 15 and 18. Unit 18 is identified as site location N+l. Each regional central processing unit, such as 15 and 18, may be linked to a primary processing unit 20. To avoid the duplication of numbers assigned, a prefix or suffix number may be appended to each number based on real time which identifies the source, such as N for the assigning CPU 15 or N+l for CPU 18. The CPU 18 would operate on the same real time frame and have the same time interval (G) and base reference (B) and epoch (E) as other CPU units on the system. Additional prefix or suffix numbers may be added to the real time number to provide additional critical information relating to geography, companies, agencies and other matters effecting the individual. The size of numbers and how many digits each number includes will be determined by the number of digits required by the epoch divided by the time interval ( E ÷ G ) .
With particular reference to Fig. 2 of the drawings, a program flow control diagram is disclosed relating to the unique assignment of numbers to entities or individuals within the system. The flow chart is divided into a left and right side, with the left side reflecting the creation or assignment of a new number and the right side showing the processing of an existing number into the database system. Information is requested from one of the local area processing units such as 15 or 18 by entering through an appropriate terminal 16 and through display device 17 information requesting the assignment of a new number.
Computer manufacturers and operating systems for computers use different values for the three variables B, G, and E defined above. Drawing Fig. 23 use the letter A to identify the text as relating to computer manufacturer or operating system assigned variables, and the letter C to refer to user assigned application variables. A graphic example of these relations are:
base B(A) j-j time interval G(A) !(- epoch E(A) -)| B j base B(C) |-| time interval G(C) j(- epoch E(C) -)
The base adjustment in converting from computer to application variables and back again is defined by (base B(A) - base B(C)) of the same time intervals. The flow chart of Fig. 2 is operatively defined as follows:
1. GET TIMER COUNTER: this retrieves the timer value from the computer central processing unit, the timer chip, or fixed memory location.
2. CONVERT GRANULARITY A TO C: if the granularity of A is micro seconds and B is seconds the timer counter needs to be divided by 1,000,000 to produce a counter in B granularity units.
3. SIZE THE COUNTER TO EPOCH C: adjust the converted counter from 2 to the size in digits required for the application unique number.
4. ADD BASE REFERENCE (A-C) TO SIZED TIME CTR: adjust the number sized in 3 to reference the start of the epoch for this unique number.
5. SUBTRACT BASE REFERENCE (A-C) FROM UNIQUE #: this is the reverse of 4 adjusting the number to the beginning of epoch A.
6. SIZE # TO EPOCH (A): this is the reverse of 3 above, and converts the number to the size of the machine or operating system number.
7. CONVERT THE NUMBER FROM B TO A GRANULARITY: this is the reverse of 2 above. For example, if granularity A is microseconds and granularity B is seconds the sized number is multiplied by 1,000,000.
8. STORE TIMER COUNTER: stage the number to be used in Block 9. This number is the same size and format as the number produced in Block 1.
9. COMPUTE SCALAR DAY DATE: this is a count in days from the beginning of the machine base reference. For instance, if the base reference date is 1/1/1900 its Scalar Day Date would be 0, if the date is 1/2/1900 the Scalar Day Date would be 1.
10. ADJUST SCALAR DATE TO 1/1/0000: use this date as a base reference date for internal processing.
11. COMPUTE JULIAN DATE FROM SCALAR DATE: convert the Scalar Day Date to a Julian date format. This date is made up of a year followed by number representing the day of the year 1 - 365/366.
12. COMPUTE GREGORIAN DATE FROM JULIAN DATE: make a month/day/year date format from the Julian Date computed in Block 11.
13. COMPUTE H:M:S.NN TIME FROM TIMER COUNTER: this value is determined by converting the remainder of the timer counter value divided by the Scalar Day Date using 24 hours per day, 60 minutes per hour, and 60 seconds per minute.
Thus, the database of the local area central processing unit would receive a timer value from the computer clock or timer chip and assign the real time number to the individual being entered into the system.
With specific reference to Fig. 2A, consider an application that is generating unique numbers where it is never required that more than 1 number per second be issued. The granularity of this numbering system will then be 1 second. This is the time interval G(C) in the above graphic example.
In order to anchor this numbering system it is necessary to establish what is a meaningful starting point. Or, more specifically, when was second 0. January 1 1970, 12:00:00 AM is selected as the start of the number generation. This is base B(C) in the above graphic example.
The application will require unique numbers for a maximum time from the second 0 established above. A maximum number of unique numbers of 4,294,967,295 is chosen. This then will represent the epoch E(C) of the above graphic example. This number was chosen because it is the 32nd power of 2 minus 1 and it requires 8 base 16 digits to be represented. It also sizes the number to 32 bits or 4 bytes for storage and arithmetic. The epoch (time span) represented here is approximately 136. This represents the three things required to define the present application.
Computers and computer operating systems also employ the previous three things when keeping track of time. There is no standard established for these values but it is beneficial that the present application work transparently with respect to differing computers and operating systems.
An example of the differences are in IBM ( International Business Machines) 3090 mainframe computer counts time in microseconds, granularity G(A) of 1 microsecond. Microsecond 9 (base B(A)) is 12:00:00 AM
January 1, 1900. The size of this counter is 52 bits, 13 base 16 digits. Its maximum value is 2 to the 52 power minus 1. This represents an epoch of approximately 142 years. A set of the three parameters, granularity, base, and epoch/size has been chosen that is consistent with the Intel 80x86 computer chip and the Microsoft DOS operating system for this example to assign 20 example unique numbers to the entities in the drawing. To preserve the international integrity of the numbers an 8 bit suffix for time zone and an 8 bit machine reference to identify the machine that generated the number will be appended.
The world is divided into 96 15 minute time zones 0 being Greenwich Mean Time (Coordinated Universal Time) and 24 being Central Standard Time, GMT minus 6 hours. The left most bit of the first 8 bit suffix identifies the use of daylight savings time, 1, or non-use of daylight savings time 0. The numbers representing the unique numbers will be presented here in the base 16 format. That is, there are 16 possible digit representations for each digit position, 0,1 . . . . .9,a,b,c,d,e,f, where f + 1 = 10. Thus, the first 8 bit byte of the suffix is 98 base 16. Assuming a machine is 00 base 16 in the network. Based on this a 2 byte, 16 bit suffix will be 9800 base 16 for all numbers assigned.
Figure imgf000018_0001
Assuming a genealogical tuple with a 2 parent relationship containing the following data:
Unique Id
Parent 1
Parent 2
Sex Male or Female
Name
The tuples based on Figure 2A and the assigned numbers above will look like:
Figure imgf000019_0001
To do a genealogical recursive retrieval use the above data sorted into ascending sequence by the parent of interest. For example, consider the following table referencing sibling unique ID within parent 2:
Figure imgf000020_0001
All siblings of parent 2 are grouped together. Note half sister relationship of siblings issuing from F. Genealogical relationships are described recursively any time a sibling appears in the sibling unique ID column. For example, F is the second sibling of J and F has 4 siblings that are not also in the parent 2 column. This means that J is the mother of F and J has 4 grandchildren by F. Genealogical relationships are handled in the same way for parent 1 using a table sequenced by sibling unique ID within parent 1.
With specific reference to Figs. 3-5B, the flow diagrams with respect to sorting, searching and retrieving information from the database of the present invention are reflected in detail. It should be noted that variations may be made in database entry formats without departing from the scope of the present invention. As was previously discussed, the present system is designed to assign unique numbers based upon real time to various entities which entities may be individuals. Further, the system is designed to provide genealogical and other data relating to the individual or entity to which a number is assigned so that decisions can be made on a real time basis as to authorizations for service providers, particularly within the health care industry. In this respect, each number is related to one or more data records or tuples within the computer database. The information contained within the tuples may be entered at various times and therefore the database must be capable of entering, sorting, scanning and retrieving such information regardless of the time and manner in which it is entered.
Fig. 3 shows a flow diagram of the method of sorting information utilizing the database of the present invention. The sort system requires as much random access memory (RAM) as is needed to efficiently store the data into tuples or records relating to each entity or individual and/or an abbreviated index containing pointers to such tuples or table entries that may be in a sequence which is not preferred within the program. In other words, the table entries may be initially physically stored in the order that they are acquired or they may be physically stored in a desired sequence when received and an index physically created which points to the entries in the order required. The buffer space for the sorted physical data tuples or index pointers is managed in a right to left manner. Thus, the data/index entries are inserted on the left of the last entry into the buffer, if the current entry is larger than the last entry stored, otherwise the buffer is shifted to the left to accommodate the current data/index information being inserted somewhere after the start or at the start of the buffer. This allows one or more entries to be shifted with one move instruction' instead of executing a move instruction for each previous entry into the buffer that has to be shifted to accommodate the placement of current entry data. Block 41 indicates the next tuple or table entry and may be information acquired from an external media such as a disk, tape, keyed input or scanning device, or may be an object already in RAM, referenced either directly or indirectly. Block 42 reflects the last tuple within the database and is determined by any sequence of bits that mark the end of the input tuples. On a keying device, this could be the "Enter" key without any preceding data. In Fig. 3 at block 43, the counter in the RAM is initialized to zero at the start of each sort cycle. This counter is used to indicate where the buffer ends to aid in the management of the entire buffer. At block 44 a search routine is made in the computer database for information regarding tuple or record counts, tuple or record locations, length of the data being searched, definitions and locations and limits of the search. The search routine is more definitively defined with respect to the flow diagram of Fig. 4 which will be discussed hereinafter.
Block 45 indicates a pointer entry. The search routine returns a pointer to the entry in the buffer where the tuple (or tuple pointer) is to be stored. If the pointer is equal to the tuple count, the entry is in sequence and no shifting of the buffer is required and thus the sort is expedited. If the entry needs to be inserted somewhere in the midst of the buffer, the length of the data to be shifted and the length of the data to be entered is determined and a move instruction is executed to shift the buffer to the left at block 46.
This duplicates the entry where the current data entry is to be stored just to the left of itself. At block 47 the new tuple data (or pointer to new tuple data) is stored. With specific reference to Fig. 4, one example of buffer search routine (block 44 of Fig. 3) is disclosed in greater detail. The search routine services requirements of the sort routine and also relates to the recursive retrieval routine which will be discussed with respect to Figs. 5A and 5B. The search will operate from right to left on a table stored in RAM. The table must be in sequentially ascending order from right to left in memory. One of the parameters passed to the search routine the threshold for serial searching, determines whether the search will be serial from right to left or binary searched. The preferred embodiment for this parameter may be adjusted to accommodate the performance requirements of a specific brand or model of computer. The threshold for serial searching parameter must be greater than 1 to ensure the return of a correct pointer . to an empty table. The most popular selection for this number is 17.
There are eight control parameters that must be passed with the calling request. They are: a) the search argument; b) the count of tuples stored in the table being searched; c) the length of the search key in bytes; d) the offset in bytes to the start of the search key; e) the length of each entry in the table; f) a pointer to the start of the table; g) a threshold for serial searching count; and h) an indicator (0 or 1) controlling the search.
0 indicating the search will stop at the first occurrence of an equal key. 1 indicating the first tuple of equal keys is required. This parameter is also used to preserve the entry sequence while sorting tuples of equal keys. The indicator in parameter "g" is used to position at the start of a genealogical relationship such as a parent with multiple siblings. The search routine returns the pointer to the entry containing the key of the item requested or the place in the table to insert a new item, if that is what is required. The binary search logic described hereinbelow will return the required pointer in N +1 or less examinations to the table where N is a number such that the Nth power of 2 examinations of the table is less than the number of entries in the table. For example, if a table contains 256 million entries, N would be selected as 28 and no more than 29 references to the table would be made to locate any required entry or verify that it is not in the table. The flow chart will be explained by reference to the falling program identities.
51. INITIAL. . .: initial search control values. TEST: the entry to be examined. LOW: the lowest entry that is eligible to examine. LAST_L0W: the last entry examined in Block 64 of the routine. This value is saved because we may want to use it as the return value on exit. HIGH: is initialized to 1 as seed data to develop a binary number greater than the number of entries in the table. This ensures that the difference between HIGH and LOW is always an even number and thus divisible by 2 with a zero remainder.
52. ADJ = +1 SEARCH ITERATIONS = 1: this continues the initialization. ADJ is a value that will either + or - 1 and be used as a multiplicative identity moving test to the right or left in the table. SEARCH ITERATIONS will be the number N+l controlling the number of times to reference the table.
53. TEST = 1: the number of entries in the table are less than the serial search threshold, therefore we will do a serial search of the table beginning at entry number one.
54. TEST : SEARCH: compare the key of the entry to be tested to the search argument.
55. ENTRIES ( SERIAL: check the entries in the table against the serial search value defined in Parameter E passed to the Search Routine.
56. TEST += 1: add 1 to test. We are serially searching for entry.
57. HIGH = HIGH TIMES 2: compute the upper test boundary as an exact power of 2.
58. HIGH ( ENTRIES: check if the developing upper search limit is less than the number of entries stored in the table.
59. HIGH = TEST + : this computes h the value of
HIGH - LOW and adds or subtracts the result from the last entry examined.
60. TEST = SEARCH: compare the key for this entry to the search argument supplied by Parameter 1.
61. ADD ONE TO SEARCH ITERATIONS N: this value controls the number of times we have to examine an entry in the table to locate the entry required or ensure that the required entry is not present.
62. TEST ) ENTRIES: since HIGH is an exact binary power of 2, it may yield a test value that is for an entry that is beyond the end of the table. If this eventuality presents itself we adjust the upper boundary HIGH and move back in the table to a valid entry. This eliminates any possible problems that can arise from dividing an odd number by 2.
63. STOP ON 1ST =: it may be possible in some cases to terminate the search early on encountering an equal search argument. This will occur if there are equal keys in the table and we can accept any equal, or if the key is unique for each entry and the desired entry occurs on a boundary that is also a binary power of 2.
64. TEST = SEARCH: compare the key of the entry pointed to by test to the search argument passed as Parameter 1. If this is true we may be eligible for an early termination of the search.
65. TEST : SEARCH: compare the key of the entry pointed to by TEST to the search argument passed as Parameter 1. This determines how to adjust the upper and lower boundaries, HIGH and LOW respectively, and whether the adjustment value will be positive or negative.
66. HIGH = TEST: the key pointed to by TEST is less than the search argument passed as Parameter 1. There is now a new upper boundary for the search.
67. LAST_L0W = TEST: save the value of test at
LAST_L0W each time this logic leg is executed. This may be the value we want to return at exit time.
68. LOW = TEST ADJ = +1: test replaces the old lower limit at LOW. The adjustment factor ADJ is set to +1 to direct the next adjustment to TEST.
69. TEST = 1: if TEST is equal to 1 the adjustment value will be zero and the entry at offset 0 will never be referenced. This forces reference to the first entry in the table if necessary.
70. TEST = 0: the last entry referenced was 1. Force the next entry to be referenced to be 0. 71. ITERATIONS N = N - 1: reduce the number of entries to be examined by 1. This is the search iteration count, the (N+l)th power of 2 that is controlling the search.
72. ADJ = -1: the next table entry to be examined will be referenced by a smaller value of TEST. The adjustment is less than zero instead of greater than zero for the )= leg of this logic.
73. TEST = LAST_LOW: since the logic in the ( leg of logic Block 15 saves the Value of TEST, this saved value at LAST_L0W is the correct value to be returned.
74. LAST_L0W ) 0: if this test is true this search visited the ( leg of logic Block 15 at least once and the value to be returned is at LAST_L0W.
75. ITERATIONS = 0: if we have exhausted the search iterations, N+l, the required result is stored in TEST or LAST LOW.
With specific reference to Figs. 5A and 5B, flow diagrams of retrieval of information from the RAM of the present invention is disclosed. The recursive retrieval routine shown assumes the presence of an appropriately sorted table of data tuples relating to each of the assigned numbers for entities within the database and of related genealogical data entries related thereto. Each entry has a unique identifying number. The data portion of each record or tuple contains one or more unique numbers that are the key to additional tuples. These unique data numbers identify some relationship of one tuple to other tuples. For example, a data portion unique number may represent the key to a parent tuple which may be a genealogical parent such as a father or mother or may be a business parent such as a controlling company or organization, regulating government agency or the like. The flow diagram of Figs. 5A and 5B define the processing of a complete table of tuples which could be done for any one record or tuple, processing all tuples within a specific family, wherein the family may include genealogical information as discussed above or may include associated relationships between businesses, government agencies, insurance companies, health providers and the like. The routine precedes as set forth hereinbelow.
81. NEXT TUPLE: reference the first or next tuple in the table.
82. LAST TUPLE: if no additional tuples are available end the process of retrieval.
83. LEVEL = 0: initialize the level counter LEVEL to 0. LEVEL is a local variable that is passed to LEVEL PROCESSOR.
84. CALL LEVEL PROCESSOR: issue a call to the LEVEL PROCESSOR routine passing the tuple and table by reference parameters.
85. TUPLE PROCESSED: each tuple is updated to indicate that it has been processed. This routine is entered recursively and its local variables are pushed onto a last in first out (LIFO) stack. If a tuple is being referenced for the second time an immediate exit is taken to pop the stack of local variables to the next level up.
86. PROCESS TUPLE AT THIS LEVEL: this is where individual tuple processing occurs. The level counter indicates the parental relationship that controls this processing.
87. ENTRY AT NEXT LEVEL: this is accomplished by using the search routine to locate the first occurrence of this tuple as a parent tuple to other tuples in the table. In this case we want the first instance of a parent tuple or no tuples are available under this tuple.
88. LEVEL = LEVEL + 1: add one to the level counter to indicate the level descent to accompany the pending recursive call,
89. CALL LEVEL PROCESSOR: issue a call to the LEVEL PROCESSOR routine passing the tuple and table by reference parameters.
With particular reference to Fig. 6, the application of the invention to the authorization of health care services within the health care industry is described in greater detail. As previously discussed, the unique real time number assignments of the present invention will allow all information with regard to a patient to be readily accessed for purposes of authorizing provider services such as by doctors, dentists, surgeons, clinics, health supply outlets and the like for enabling such provider services to obtain immediate authorization from the regionally located central processing units such as shown at 15 and 18 in Fig. 1. Utilizing the on-line systems, services and products may be authorized by immediately acknowledging eligibility and the reasonable appropriateness of the service and products requested by the patient. The system also would supply complete current medical records by access to the tuples stored in RAM to the service/product providers whenever it is appropriate to receive such information to aid in the providing of the service or product. In addition, the system will contain sufficient information to verify that the patient is eligible for the service or product and that the pricing of the service and/or product is within an appropriate range. The records of the system may thereafter be immediately updated to reflect activities authorized on behalf of the patient and services rendered. The system is also designed to transact an immediate electronic funds transfer to a demand deposit account of the service or product provider, thus doing away with the need for the multitudinous submissions and review of paper requests currently being utilized by insurance agencies when reviewing and either allowing or denying insurance claims.
Each individual within the health care authorization system is given a unique real time number as previously discussed and information regarding the patient, the patient's health history, genealogically related records and information effecting levels of health care services and the amounts authorized for health care services and/or products are initially stored in the local central processing unit 15. When a patient seeks health care provider service such as a doctor's office or hospital, the patient' s identity number is entered into a keyboard 101 associated with a suitable display device 102 which is connected to the on-site central processing unit 103. The site CPU 103 is connected by modem 104 to the modem 105 of the centrally located CPU 15. Utilizing the search procedure previously discussed, information with regard to the patient requesting service is immediately accessible from the local CPU.
In the embodiment of the invention wherein the system used to support health care delivery services, the database of the system would include information regulating the authorization of a service or product requested. Block 106 reflects various accessible tables within the database which are identified as services provided, provider table, service table, and subscriber table. The subscriber table is maintained in ascending sequence by the unique ID number of each subscriber within the system. Data stored in the subscriber records or tuples is associated with the unique ID number assigned in real time. They include genealogical data such as information as to relatives, including mothers and fathers, who have also been assigned unique numbers. Other information as to demographic, personal data, summary or totals of usage of the system, financial data relating to authorizations of payment made for services and/or products, and activity data are also available. The daily activity totals may be updated as service and products are posted against the subscriber service/product table.
The service table contains all eligible services and products supplied by health care providers associated with the individual seeking the service. This table is in ascending sequence by effective date with a unique ID number identifying each service/product in the table. The data stored in each record or tuple of this table includes information as to the unique ID number, the service/product pricing in the system based upon limitation of the adjudication authority and all limitations of an individual's benefits provided through any adjudication authority. This information is retained so that immediate assessment may be made with respect to requested services or products and a verification obtained as to the authorization of such services in keeping with the benefit limits available to the individual.
The provider service table identifies providers who are eligible to supply services and/or products to the individuals within the health care system. This table is sequentially ascending again by unique ID number assigned in keeping with the teachings of the present invention. Tuples of this table contain unique ID numbers of the providers, provider demographics, appropriate fees and current activities and financial summary data related to the providers. These tables also determine the class or group of service each provider is eligible to provide to the individual seeking service or products and updates are made as are necessary.
The service provider table contains the services and products delivered to each individual to which authorization has been approved by the system of the present invention. Then records are also cross- referenced to the unique ID number of the individual and of the provider and all financial summary information related to payments which may be authorized on behalf of a provider for services rendered to a patient are retained and updated.
As previously discussed, all information with regard to the various tables may be updated at a central processing unit 20, such as shown in Fig. 2, with information thereafter being updated to the regional or local central processing units as is necessary.
Once a patient ID number has been entered into the site CPU 103 and the service identified to the regional or local central processing unit 15, the RAM of the central processing unit is searched to verify that the patient identified by unique number is qualified to receive service from the provider identified and that the service being requested is within the limits defined by the policies which cover the health care service to the individual. Once this information has been retrieved from memory, if all parameters of the requested services are proper, an immediate approval is forwarded to the site central processing unit 103 thereby allowing the provider to render the service requested on a real time basis. Once the service has been provided, information with regard to the service provided and the charge is again forwarded from the site central processing unit 103 to the centrally localized central processing unit 15. At this time, an immediate authorization is made to electronically transfer funds from the adjudicating authority providing benefit payments to the provider. In Fig. 6, the centrally localized central processing unit 15 is connected by modem 105' to a modem 107 associated with a central processing unit of a financial institution 108. Authorization is immediately given to transfer funds to the deposit account 109 of the service provider. As opposed to entering data with respect to an individual by number into a keyboard such as shown at 101 in Fig. 6, each individual within the health care system may be provided with a machine readable card. The machine readable card 110 may be entered into a reader 111 located at each provider site location thereby further facilitating the access to' the database of the regional and primary central processing units.

Claims

1. A method of assigning unique numbers by computer to identify and retrieve data relative to a primary entity by way of a reference date and time of day associated with the entity wherein the computer includes an internal clock comprising the steps of: a) Selecting a base time by date and time of day at which an initial number may be referenced; b) selecting a time interval from a base time at which subsequent numbers may be assigned in chronological order; c) thereafter entering the reference date and time of day associated with the primary entity into the computer; and d) assigning to said entity a unique subsequent number which is directly related to the reference date and time of day associated with the entity.
2. The method of Claim 1 including the additional step of entering into the computer genealogical information of additional entities associated with the primary entity and assigning unique subsequent numbers to said additional entities.
PCT/US1993/011443 1992-12-03 1993-12-01 System of unique number assignment and genealogical data retrieval WO1994012943A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU58691/94A AU5869194A (en) 1992-12-03 1993-12-01 System of unique number assignment and genealogical data retrieval

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US98519892A 1992-12-03 1992-12-03
US07/985,198 1992-12-03

Publications (1)

Publication Number Publication Date
WO1994012943A1 true WO1994012943A1 (en) 1994-06-09

Family

ID=25531282

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1993/011443 WO1994012943A1 (en) 1992-12-03 1993-12-01 System of unique number assignment and genealogical data retrieval

Country Status (2)

Country Link
AU (1) AU5869194A (en)
WO (1) WO1994012943A1 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0919960A1 (en) * 1997-03-24 1999-06-02 Akira Sugiyama System for issuing authentication data based on a specific time, medium for storing authentication data issued by the issuing system and system for authenticating authentication data
WO2001055935A1 (en) * 2000-01-28 2001-08-02 Nu Skin International, Inc. Information system for tiered distribution network
FR2875033A1 (en) * 2004-09-09 2006-03-10 Olivier Cohen METHOD OF IDENTIFYING DATA RELATING TO INDIVIDUALS FOR THE REALIZATION OF CHAINING THESE DATA
US7904306B2 (en) 2004-09-01 2011-03-08 Search America, Inc. Method and apparatus for assessing credit for healthcare patients
US8930262B1 (en) 2010-11-02 2015-01-06 Experian Technology Ltd. Systems and methods of assisted strategy design
US20150179021A1 (en) * 2013-12-20 2015-06-25 Kizzang Llc System and method for allocating playing positions among players in a squares game
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US9251541B2 (en) 2007-05-25 2016-02-02 Experian Information Solutions, Inc. System and method for automated detection of never-pay data sets
US9256904B1 (en) 2008-08-14 2016-02-09 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US9558519B1 (en) 2011-04-29 2017-01-31 Consumerinfo.Com, Inc. Exposing reporting cycle information
US9563916B1 (en) 2006-10-05 2017-02-07 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US10255598B1 (en) 2012-12-06 2019-04-09 Consumerinfo.Com, Inc. Credit card account data extraction
US10735183B1 (en) 2017-06-30 2020-08-04 Experian Information Solutions, Inc. Symmetric encryption for private smart contracts among multiple parties in a private peer-to-peer network
US10757154B1 (en) 2015-11-24 2020-08-25 Experian Information Solutions, Inc. Real-time event-based notification system
US10909617B2 (en) 2010-03-24 2021-02-02 Consumerinfo.Com, Inc. Indirect monitoring and reporting of a user's credit data
US11157997B2 (en) 2006-03-10 2021-10-26 Experian Information Solutions, Inc. Systems and methods for analyzing data
US11227001B2 (en) 2017-01-31 2022-01-18 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
US11620403B2 (en) 2019-01-11 2023-04-04 Experian Information Solutions, Inc. Systems and methods for secure data aggregation and computation
US11887175B2 (en) 2006-08-31 2024-01-30 Cpl Assets, Llc Automatically determining a personalized set of programs or products including an interactive graphical user interface
US11954731B2 (en) 2023-03-06 2024-04-09 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5122886A (en) * 1989-06-19 1992-06-16 Pioneer Electronic Corporation Selective information playback from recording medium based on user input content codes
US5280611A (en) * 1991-11-08 1994-01-18 International Business Machines Corporation Method for managing database recovery from failure of a shared store in a system including a plurality of transaction-based systems of the write-ahead logging type

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5122886A (en) * 1989-06-19 1992-06-16 Pioneer Electronic Corporation Selective information playback from recording medium based on user input content codes
US5280611A (en) * 1991-11-08 1994-01-18 International Business Machines Corporation Method for managing database recovery from failure of a shared store in a system including a plurality of transaction-based systems of the write-ahead logging type

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ACM TRANSACTIONS ON DATABASE SYSTEMS, Volume 1, No. 1, issued March 1976, PETER P-S CHEN, "The Entity-Relationship Model - Toward a Unified View of Data", pages 9-36. *

Cited By (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0919960A1 (en) * 1997-03-24 1999-06-02 Akira Sugiyama System for issuing authentication data based on a specific time, medium for storing authentication data issued by the issuing system and system for authenticating authentication data
EP0919960A4 (en) * 1997-03-24 2004-08-25 Akira Sugiyama System for issuing authentication data based on a specific time, medium for storing authentication data issued by the issuing system and system for authenticating authentication data
WO2001055935A1 (en) * 2000-01-28 2001-08-02 Nu Skin International, Inc. Information system for tiered distribution network
US7904306B2 (en) 2004-09-01 2011-03-08 Search America, Inc. Method and apparatus for assessing credit for healthcare patients
US8930216B1 (en) 2004-09-01 2015-01-06 Search America, Inc. Method and apparatus for assessing credit for healthcare patients
FR2875033A1 (en) * 2004-09-09 2006-03-10 Olivier Cohen METHOD OF IDENTIFYING DATA RELATING TO INDIVIDUALS FOR THE REALIZATION OF CHAINING THESE DATA
WO2006030122A3 (en) * 2004-09-09 2006-05-04 Univ Bourgogne Method of identifying data relating to individuals for the purpose of chaining said data
US8229764B2 (en) * 2004-09-09 2012-07-24 Universite De Bourgogne Method of identifying data relating to individuals in order to chain said data
US11157997B2 (en) 2006-03-10 2021-10-26 Experian Information Solutions, Inc. Systems and methods for analyzing data
US11887175B2 (en) 2006-08-31 2024-01-30 Cpl Assets, Llc Automatically determining a personalized set of programs or products including an interactive graphical user interface
US10121194B1 (en) 2006-10-05 2018-11-06 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US9563916B1 (en) 2006-10-05 2017-02-07 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US10963961B1 (en) 2006-10-05 2021-03-30 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US11631129B1 (en) 2006-10-05 2023-04-18 Experian Information Solutions, Inc System and method for generating a finance attribute from tradeline data
US9251541B2 (en) 2007-05-25 2016-02-02 Experian Information Solutions, Inc. System and method for automated detection of never-pay data sets
US11636540B1 (en) 2008-08-14 2023-04-25 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US9489694B2 (en) 2008-08-14 2016-11-08 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US11004147B1 (en) 2008-08-14 2021-05-11 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US9792648B1 (en) 2008-08-14 2017-10-17 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US10115155B1 (en) 2008-08-14 2018-10-30 Experian Information Solution, Inc. Multi-bureau credit file freeze and unfreeze
US9256904B1 (en) 2008-08-14 2016-02-09 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US10650448B1 (en) 2008-08-14 2020-05-12 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US10909617B2 (en) 2010-03-24 2021-02-02 Consumerinfo.Com, Inc. Indirect monitoring and reporting of a user's credit data
US10417704B2 (en) 2010-11-02 2019-09-17 Experian Technology Ltd. Systems and methods of assisted strategy design
US8930262B1 (en) 2010-11-02 2015-01-06 Experian Technology Ltd. Systems and methods of assisted strategy design
US9684905B1 (en) 2010-11-22 2017-06-20 Experian Information Solutions, Inc. Systems and methods for data verification
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US11861691B1 (en) 2011-04-29 2024-01-02 Consumerinfo.Com, Inc. Exposing reporting cycle information
US9558519B1 (en) 2011-04-29 2017-01-31 Consumerinfo.Com, Inc. Exposing reporting cycle information
US10255598B1 (en) 2012-12-06 2019-04-09 Consumerinfo.Com, Inc. Credit card account data extraction
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US20150179021A1 (en) * 2013-12-20 2015-06-25 Kizzang Llc System and method for allocating playing positions among players in a squares game
US10757154B1 (en) 2015-11-24 2020-08-25 Experian Information Solutions, Inc. Real-time event-based notification system
US11729230B1 (en) 2015-11-24 2023-08-15 Experian Information Solutions, Inc. Real-time event-based notification system
US11159593B1 (en) 2015-11-24 2021-10-26 Experian Information Solutions, Inc. Real-time event-based notification system
US11227001B2 (en) 2017-01-31 2022-01-18 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
US11681733B2 (en) 2017-01-31 2023-06-20 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
US11652607B1 (en) 2017-06-30 2023-05-16 Experian Information Solutions, Inc. Symmetric encryption for private smart contracts among multiple parties in a private peer-to-peer network
US10735183B1 (en) 2017-06-30 2020-08-04 Experian Information Solutions, Inc. Symmetric encryption for private smart contracts among multiple parties in a private peer-to-peer network
US11620403B2 (en) 2019-01-11 2023-04-04 Experian Information Solutions, Inc. Systems and methods for secure data aggregation and computation
US11954731B2 (en) 2023-03-06 2024-04-09 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data

Also Published As

Publication number Publication date
AU5869194A (en) 1994-06-22

Similar Documents

Publication Publication Date Title
WO1994012943A1 (en) System of unique number assignment and genealogical data retrieval
US7774252B2 (en) Method and system for generating statistically-based medical provider utilization profiles
US5557514A (en) Method and system for generating statistically-based medical provider utilization profiles
US5784635A (en) System and method for the rationalization of physician data
US5933809A (en) Computer software for processing medical billing record information
US8612255B1 (en) System and method for standardized and automated appeals process
US20070162308A1 (en) System and methods for performing distributed transactions
Levit et al. Health care spending in 1994: Slowest in decades
US7181422B1 (en) Segregation and management of financial assets by rules
US20040260599A1 (en) System and methods for estimating product sales in highly fragmented geographically segments of service provider location
US8103522B1 (en) System and method for calculating claim reimbursement recommendations
WO2002093305A2 (en) System and method for managing interactions between healthcare providers and pharma companies
US20030154411A1 (en) Medical records categorization and retrieval system
Angelelli et al. Access to postacute nursing home care before and after the BBA
Anderson et al. Hospital employment trends in California, 1982-1994
McCall et al. Managed Medicaid cost savings: the Arizona experience
US20060253302A1 (en) System for facilitating healthcare services for cash paying patients
Binner DRGs and the administration of mental health services.
Averill et al. Impact of Socioeconomic Status on Delivery System Effectiveness
Roselle et al. Estimating private sector professional fees for VA providers
Janssen et al. Reimbursement for durable medical equipment
Moeller Projecting National Medical Expenditure Survey Data: A Framework for MEPS Projections
Bakker Integrated hospital information systems
Bradish Changing an automated drug inventory control system to a data base design
Saba Computerized management information system in community health nursing

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AT AU BB BG BR BY CA CH CZ DE DK ES FI GB HU JP KP KR KZ LK LU LV MG MN MW NL NO NZ PL PT RO RU SD SE SK UA UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

NENP Non-entry into the national phase

Ref country code: CA