2 Does every HL7 message have to be encoded with the characters |^~\& ? Ans- No,
the encoding characters can be any printable character.
2 Imagine that your message begins with MSH|^~\&|. How would you encode the string
“The
result is positive & has a value of 2.7 x 10^3.”? Ans- The result is positive \T\ has a
value of 2.7 x 10\S\3.
2 Why is the NTE segment special? Ans- Context; its meaning depends on the
segment it follows.
2 What is the difference between an empty field || and the delete character |””|? AnsAn empty field is ignored by the interface, whereas the delete character will delete
information from the
database, assuming the field in question supports the delete character.
2 Aside from HL7 Version 2, name two other standards supported in Bridges? AnsX12, FHIR, NCPDP, DICOM, and Direct.
2 Perform basic parsing of an HL7 message, such as identifying the contents of a
specific field
or component Ans- Make sure you can perform this task.
2 Escape the contents of a field that contains an encoding character by replacing it with
the
appropriate escape sequence Ans- Make sure you can perform this task.
2 The difference between a null field and the delete character Ans- Null is ignored
while delete will remove if allowed
2 The context of an NTE segment Ans- Varies based on segment
2 Which characters may be used as encoding characters Ans- Any printable character
2 The importance of MSH-11 and MSH-12 Ans- Epic will reject message if invalid
2 The expectations of using Z-segments Ans- They have been defined and coded for
within Epic
2 General use cases for X12 interfaces and FHIR Ans- Real-time eligibility and
provider/patient facing apps
3 What is Bridges? Ans- Epic’s interfacing application. It consists of both the interface
infrastructure to build, send, receive, and file messages along with the tools and utilities
to maintain those interfaces.
3 What are stored in the Event Queue? Ans- The Event Queue contains the
information needed to build a message. Usually this is a patient ID, an
encounter DAT, and the type of message to be built, among other information.
3 What are stored in the Data Queue? Ans- The Data Queue contains the text of HL7
messages and additional metadata.
3 What are stored in the Control Queue? Ans- The Control Queue is a to-do list with
instructions to send or file messages stored in the Data Queue.
3 Are messages ever manually deleted from the Data Queue? Ans- No, never. They
are purged only by an automated purge job.
3 What are two ways that interface messages are sent and received? Ans- TCP/IP
with an interface engine is the most common communication method.
Interconnect is used for HTTPS or other communication outside your local network.
3 Describe the flow of messages in and out of Bridges for an interface using a TCP/IP
connection. Ans- See diagram on page 3-14
3 Describe the flow of messages in and out of Bridges for an interface using
Interconnect. Ans- See diagram on page 3-15
3 Trigger Ans- A trigger is a single, clearly defined action that a user or process can
take that can result in an interface message being created and sent. A trigger is
generally an action in Hyperspace, like clicking a button or closing an activity.
3 Event Ans- An event consists of a small set of values with the necessary information
to build the message: the patient ID, the patient contact, the type of message, and other
additional information.
3 Event Queue Ans- List of events waiting for messages to be built and sent outbound.
The Event Queue is managed by the Event Demon.
3 Data Queue Ans- List of messages with metadata built by the Event Demon waiting
for messages to be sent. Messages are added to the Event Demon and deleted by the
Control Demon.
3 Control Queue Ans- Essentially just a to-do list of messages in the Data Queue and
contains very little data.
3 Event Daemon Ans- Processes the Event Queue by pulling the next event off and
using the information in the event to build the message (pulling additional data for the
message from Chronicles).
The Event Daemon then puts the message, along with some metadata including
timestamp information, onto the Data Queue and adds an instruction to the Control
Queue.
3 Filer Daemon Ans- Filer Daemon pulls an instruction from the Control Queue,
retrieves the corresponding message from the Data Queue, and then attempts to file the
message.
Filing means that the Filer Daemon attempts to store the data in Chronicles. If the Filer
Daemon is successful, the data is added to the appropriate records in Chronicles.
When there is a problem, and the data in the message cannot be filed, an interface
error message is logged.
3 Communication Daemon Ans- Manages communications for an interface (all types ,
e.g., TCP/IP, HTTPS, etc.) and processes messages on the Control Queue.
3 Locked Record Ans- A record is locked when a user or process is updating it. This
ensures that two people or processes aren’t trying to update the same record at the
same time and potentially corrupting the data.
Epic supports partial patient locking so that only portions of the patient record need to
be locked in order to file a message. For example, a lock on patient demographics
would not prevent a result from filing.
3 Message flows in and out of Bridges with TCP/IP Ans- See diagrams on 3-14 and 3-
15
3 Resequencing using the Holding Queue Ans- If a Filer Daemon attempts to file a
message for a patient, but that patient’s record is already being
updated with an active lock, then the Filer Daemon stores the instruction for that
message on another queue, the Holding Queue.
The message remains on the Holding Queue until the lock is released, so that the Filer
Daemon can move onto the next message in the Control Queue for processing.
3 Holding Queue Ans- Messages pending the release of locking