Handling of personal patient information may prove difficult at times. On the one hand, a patient may wish to keep his or her unique information private. On the other hand, many parties, including doctors, nurses, hospital personnel, insurance agents, and others may require access to the personal patient information in order to provide efficient and/or effective administration.
In order to balance these potentially competing interests, various regulations direct how organizations may handle and use personal patient information. One such regulation, which applies to the medical industry, is the Health Insurance Portability and Accountability Act (HIPAA). It ensures patients' right to privacy by specifying confidentiality rules. These rules apply to a set of data called Patient Health Information (PHI), which includes the patient's name, Social Security Number, birthday, or any attribute which is unique to the patient.
Hospitals and corporations are liable for HIPAA violations. To reduce this liability, extensive measures may be adopted to ensure that certain medical documents or reports do not contain PHI. However, these measures may be problematic. Visual inspection may be time-consuming and tedious. Moreover, the number of regulations may be too complex and are subject to change. Finally, adherence of employees to HIPAA-compliant processes may not be flawless.
There is a need, therefore, for an improved method and system for monitoring patient information in a medical records system in an efficient and accurate manner.
The present invention is defined by the following claims, and nothing in this section should be taken as a limitation on those claims.
A system and method for monitoring patient information may review data in a medical records system for patient information. The review may occur when the data is transferred in the medical records system, such as inputting data into the medical records system, generating reports of the data, outputting data from the medical records system, displaying data on the medical records system, e-mailing the data, or saving data in the medical records system.
In one aspect, the patient information monitor may extract a portion of data transferred, compare the portion of data with a predetermined sequence in a database, determine whether the portion of data comprises patient information based on the comparison, and modify the portion of data if it comprises patient information. Extracting a portion of data may comprise parsing the data or may comprise reading a structured form. Further, comparing the portion of data with a predetermined sequence may comprise comparing the portion of data with a predetermined format. Alternatively, comparing the portion of data the portion of data with a predetermined sequence in a database and determining whether the portion of data comprises patient information may comprise using rules (such as an expert system) to specify a sequence of characters that includes patient information. Moreover, modifying the portion of data if it comprises patient information may comprise manual or automatic modification.
In another aspect, the patient information monitor may identify at least one characteristic of the data stream, determine whether the data stream comprises patient information based on the characteristic, and modify at least a portion of the data stream. Identifying a characteristic of the data stream may comprise determining whether the data stream comprises a form. Identifying a characteristic of the data stream may comprise identifying a field or tag in the data stream. The form, field, or tag may indicate which portion of the data stream may comprise patient information.
Turning to the drawings,
With reference to
The computing environment 20 may further include a hard disk drive 42 for reading from and writing to a hard disk (not shown), and an external disk drive 46 for reading from or writing to a removable external disk 48. The hard disk and/or the external disk 48 may store patient information. The removable disk may be a magnetic disk for a magnetic disk driver or an optical disk such as a CD ROM for an optical disk drive. The hard disk drive 42 and external disk drive 46 are connected to the system bus 38 by a hard disk drive interface 40 and an external disk drive interface 44, respectively. The drives and their associated computer-readable media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the computing environment 20. Although the exemplary environment described herein employs a hard disk and an external disk 48, it should be appreciated by those skilled in the art that other types of computer readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, random access memories, read only memories, and the like, may also be used in the exemplary operating environment.
A number of program modules may be stored on the hard disk, external disk 48, ROM 30 or RAM 24, including an operating system (not shown), one or more application programs 26, other program modules (not shown), and program data 28. One such application program may include the patient information monitor as detailed in
A user may enter commands and/or information, as discussed below, into the computing environment 20 through input devices such as mouse 56 and keyboard 58. For example, the computing environment 20 may be a patient data entry console using the input devices to input patient data. Other input devices (not shown) may include a microphone (or other sensors), joystick, game pad, scanner, or the like. These and other input devices may be connected to the processing unit 32 through a serial port interface 54 that is coupled to the system bus 38, or may be collected by other interfaces, such as a parallel port interface 50, game port or a universal serial bus (USB).
Further, patient information may be output using different output devices. One such output device is printer 52. The printer 52, and other parallel input/output devices may be connected to the processing unit 32 through parallel port interface 50. Another such output device is monitor 36. The monitor 36, or other type of display device, is connected to the system bus 38 via an interface, such as a video input/output 34. In addition to the monitor 36, computing environment 20 may include other peripheral output devices (not shown), such as speakers or other audible output.
The computing environment 20 may exchange patient information, such as by sending or retrieving patient information, by communicating with other electronic devices such as remote computer 68. Remote computer 68 may be another computing environment such as a server, router, network PC, peer device, telephone (wired or wireless), personal digital assistant, television, or the like. Remote computer 68 may include many or all of the elements described above relative to the computing environment 20. To communicate, the computer environment 20 may operate in a networked environment using connections (wired, wireless or both wired and wireless) to one or more electronic devices.
When used in a LAN networking environment, the computing environment 20 may be connected to the LAN 64 through a network I/O 62. When used in a WAN networking environment, the computing environment 20 may include a modem 60 or other means for establishing communications over the WAN 66. The modem 60, which may be internal or external to computing environment 20, is connected to the system bus 38 via the serial port interface 54. In a networked environment, program modules depicted relative to the computing environment 20, or portions thereof, may be stored in a remote memory storage device resident on or accessible to remote computer 68. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the electronic devices may be used.
With reference to
The operator may request privacy checking in the report, such as a PHI check in the report, as shown at block 104. Privacy checking, such as PHI checking, may be initiated, as shown at block 106. The privacy checking may determine whether there is a potential violation of privacy, as shown at block 108. Block 108 is discussed in more detail in
There are several potential solutions which may be suggested including: encrypting the data; protecting the entire report (or a portion of the report) with a password; deleting a portion or all of the patient data; scrambling the patient data (such as by replacing the patient data with different characters, such as XXX); and/or modifying presentation of the patient data (such as changing the font, size, background, etc.).
The operator may select a solution, as shown at block 114. If the operator selects a solution, the transferred data may be modified, as shown at block 118. For example, if the operator opts to password protect the data, the operator may enter a password. If the operator elects not to select a solution, the report may be flagged as a potential violation, as shown at block 116. Alternatively, instead of requesting input from the operator, the patient data may be automatically modified by computing environment 20.
The data may then be checked for additional patient information, as shown at block 120. If there is additional information to be checked in the transferred data, the system may loop back to block 106. The program may resume PHI checking of the transferred data at the point where PHI checked left off in the previous iteration. Alternatively, the program may resume PHI checking from the beginning of the transferred data. On the next iteration, the operator need not be notified of potential violations which were modified or flagged in a previous iteration.
If there are no more potential violations or the privacy checker has checked all of the data transferred, the operator may be notified of the number of potential violations, as shown at block 122. Alternatively, the operator may be notified of the potential violations.
With reference to
As shown in block 142, it is determined whether the data transferred, such as a report, is in structured form. Determining whether the data transferred is in structure form may be performed in a variety of ways including: parsing the data transferred to determine if it conforms to a predetermined form; parsing the data to determine if certain fields indicate the data transferred is in a predetermined form; determining from where the data was transferred (e.g., if input at a particular terminal, the data may be in a predetermined form).
If the data transferred is in structured form, this may indicate at least one characteristic of the data transferred. For example, once the form of the data transferred is determined, the elements (e.g., the data) in the form, the property (e.g., a field or tag indicating whether the element is PHI data) of the elements, and/or the location (e.g., location in the report) may be read, as shown at block 146. One example of a structured form is a DICOM (Digital Imaging and Communications in Medicine) structured report.
If the report is not in a structured form, the report may be parsed, as shown at block 144. Through parsing, the structure may be read to determine the elements, property, and/or location.
After which, the database may be accessed to determine if an element is private information, such as PHI data, as shown at block 148. The element, property, and/or location may be examined to determine whether the element comprises private information, as shown at block 150. As discussed in more detail below, there are several ways in which to determine whether an element is private information including: examining a characteristic of the data transferred (e.g., determining whether it conforms to a certain form, includes a certain tag or field, etc.); checking patterns in the transferred data; and/or using a rule-based system (such as an expert system) to identify private information. If the data transferred is in a particular form, the particular form may be accessed in the database to determine what portions of the form, if any, may contain patient data. For example, a DICOM structured report may include predetermined sections in the form which contain the patients name, address, etc. If the data transferred has certain properties associated with it, such as a particular field or a tag, the database may be reviewed for the particular field or tag. The database may indicate that data associated with the particular field or tag comprises patient information.
If the element is private information, such as PHI data, the property is marked as PHI data, as shown at block 156. A flag is also set as a potential violation so that block 108 in
As discussed above, there are a variety of ways to check for private information. In one embodiment, the privacy checker tool may monitor the transferred data, such as monitoring user input or parsing a report, to look for characters which conform to specific formats or patterns. An exemplary pattern is shown below:
Patterns may be checked in a variety of ways. One way is to use the scripting language PERL. Denoted as regular expressions in PERL, the above-referenced patterns are, respectively:
Alternatively, the privacy checker tool may search for fields, tags, etc. in the transferred data. The examples above demonstrate that the patient information monitor may use rules to specify which sequence of characters may be confidential. The set of rules may be larger than that included in the example above. To check for HIPAA compliance, the privacy checker may include complex rules and may resemble, in software design, an expert system.
Expert systems, in the most general definition of the term, are software whose behavior is the result of inferences based on declarative “if-then” rules. These rules may form a complex basis for automated reasoning. The design and implementation of expert systems are heavily researched fields in the discipline of artificial intelligence. Expert systems exist for numerous applications from thermodynamics modeling (TEST) to legal research (SHYSTER). There are readily available frameworks and tools to build an expert system including JESS (Java Expert System) and CLIPS (C Language Integrated Production System).
As discussed above, the privacy checker can take as input a report that may contain confidential information. An example of this is shown in
The output of the inference engine may be used to: notify the user of any (potential) HIPAA (or other patient privacy) violations via the GUI; identify the source of the violation via the GUI (i.e. font and format changes, blinks, voice, helping agent, etc) (see, for example,
Each of the acts in the method shown in