Navigating Health Data Exchange

An Interactive Guide to Direct Secure Messaging (DSM) & the XDM Profile

Clearing the Confusion: Transport vs. Content

Welcome! This guide is designed to clarify a common point of confusion in health IT: the difference between Direct Secure Messaging (DSM) and the XDM profile. Your question about "controlling the XDM profile dsm transport method" highlights a key misunderstanding. They aren't different transport methods at all.

Direct Secure Messaging (DSM)

🚚

Think of DSM as the **armored truck**. It's the secure **transport method** responsible for getting a package from point A to point B safely. It doesn't care what's inside the package.

XDM Profile

πŸ“¦

Think of XDM as the **standardized box** the contents are packed in. It's a specific **packaging format**β€”a `.zip` file with a defined structure. Some recipients require this specific box.

The Core Takeaway:

You don't choose an "XDM transport method." You choose what to **put inside** the secure DSM transport. Your application needs to decide whether to send a raw file or a file packaged in an XDM `.zip` bundle, based on your trading partner's requirements. Let's explore how this works.

1. The Transport Layer: Direct Secure Messaging (DSM)

Direct Secure Messaging is a national standard for securely exchanging health information. It's like a specialized, highly secure email system built only for healthcare. It provides the "pipe" or "envelope" for your data, but it's fundamentally content-agnosticβ€”it can securely carry almost any file type. Its security is built on three key pillars.

πŸ₯

Sender

πŸ”‘ PKI & Certificates: Messages are encrypted with the recipient's public key, ensuring only they can decrypt it with their private key.
πŸ›‘οΈ HISP (like HealthBus): A Health Information Service Provider acts as a trust agent, managing the complex encryption/decryption process.
βœ… MDN Confirmation: A Message Disposition Notification is sent back, acting as a receipt that the message was successfully and securely delivered.

🏒

Recipient

Hover over the icons to learn about the security features.

2. The Packaging Layer: XDM Profile vs. Raw XML

The "control" you're looking for lies in how you package the clinical document before attaching it to a Direct message. Your trading partners (TDSOs) might require one of two common formats. Both are sent using the exact same DSM transport.

Scenario A: Raw XML/CDA Attachment

πŸ“„

summary_of_care.xml

A single clinical document (like a C-CDA) is attached directly to the Direct message. The receiving system must be able to process this standalone file.

Scenario B: XDM Profiled Attachment

πŸ“¦

clinical_documents.zip

The same clinical document is placed inside a `.zip` file that follows a specific directory structure defined by the IHE XDM profile. Click the bundle above to see its structure.

At-a-Glance: Role Comparison

3. The Solution: Programmatic Control with the HealthBus API

The HealthBus platform acts as your HISP, handling the secure DSM transport. The API is content-agnostic; it will send whatever file you provide. Therefore, the "control" is handled within your application's code *before* you call the API. You must determine the recipient's requirement and prepare the attachment accordingly.

Interactive API Call Demo

Select the payload type your trading partner requires. Notice how the attachment changes, but the API endpoint remains the same.

1. Your Application's Logic:

Your application identifies that the recipient requires a raw XML file. It prepares the `summary_of_care.xml` document to be sent as the attachment.

2. The API Call to HealthBus:

PUT /MailManagement/ws/v3/send/message/attachment

Headers: {
  "Authorization": "Bearer ...",
  "Content-Type": "multipart/form-data"
}

Body: {
  "to": "recipient@direct.theirdomain.org",
  "subject": "Summary of Care",
  "attachment": "summary_of_care.xml"
}

Best Practices & Resources

Effective interoperability is a combination of technology and process. Here are some strategic recommendations and links to help you succeed.

Maintain a Trading Partner Directory

The most robust solution is to maintain a simple database or configuration file that lists your trading partners and their specific payload requirements (e.g., `TDSO_A: 'XDM'`, `TDSO_B: 'XML'`). Your application can then use this directory to dynamically generate the correct attachment format for each recipient, ensuring successful data exchange every time.

Leverage HealthBus Advanced Features

Our platform offers advanced transaction reporting and a powerful rules engine. As your needs evolve, you can configure rules to automatically handle transformations and routing based on message content, reducing the need for custom code changes.