en

FHIR JSON and XML

Convert a FHIR R4 resource between JSON and XML, both ways - locally in the browser, with no upload.

Viewing and conversion only, not a diagnostic aid.

Running locally on your device ...

0%

Your files never left your device

    Is my file uploaded?

    No. Everything runs in your browser - your file never leaves your device. How this is verifiable

    No upload100% local
    Your content stays with youno third-party access
    Servers in GermanyGDPR by design
    Independently auditedTLS A+ · HTTP headers A+

    HL7 FHIR R4 allows two equivalent representations of the same resource: JSON and XML. Both carry the same content but do not map trivially into each other - FHIR XML follows its own rules: simple values live in a value attribute (e.g. <gender value="male"/>), the resourceType is the name of the root element, the namespace is http://hl7.org/fhir, repeatable fields become arrays in JSON, and an embedded resource (e.g. inside a Bundle entry) appears as a capitalized child element. A plain JSON-to-XML converter does not get these rules right.

    This tool detects the direction automatically from the content: drop a FHIR JSON file and you get valid FHIR XML (with the namespace and value attributes); drop FHIR XML and you get clean FHIR JSON (with arrays for repeatable elements). Embedded resources inside a Bundle are handled correctly both ways. You can drop several files at once, each is converted individually.

    Everything runs entirely locally in the browser (pure JavaScript, no server, no foreign library from a foreign CDN) - the resource with its patient data never leaves your device. Honest framing: this is a structural format conversion between the two FHIR serializations, not a profile validator and not a clinical tool. One technical note: XML does not carry JSON data types, so simple values come back from XML as text (except true/false); verify the result against the schema and profiles of your target system.

    Specifications

    Specifications
    Input formatsJSON, XML
    Output formatXML
    Batch processingYes
    ProcessingLocally in your browser (JavaScript)
    File uploadNone

    In 3 steps

    1. Drop a FHIR file: JSON (.json) or XML (.xml).
    2. The direction is detected automatically; the conversion runs locally in the browser.
    3. Download the result (JSON becomes XML, XML becomes JSON).

    Limitations: Converts an HL7 FHIR R4 resource (or Bundle) between its JSON and its XML serialization, both ways, with the FHIR rules: value attribute for simple values, resourceType as the root element, namespace http://hl7.org/fhir, repeatable elements as arrays, embedded resource as a capitalized child element. The direction is detected automatically from the content. Common repeatable elements (e.g. identifier, name, given, address, line, coding, entry, extension) are treated as arrays; for an unusual profile verify the cardinality. XML does not carry JSON data types: simple values come back from XML as text (true/false become boolean). It is a structural conversion, not a profile validator and not a clinical tool; verify the result against the schema and profiles of your target system.

    FAQ

    Is my patient data uploaded?

    No. The conversion runs entirely locally in the browser (pure JavaScript, no server); the FHIR resource never leaves your device.

    Which direction does it convert?

    Both. The tool detects from the content: FHIR JSON becomes FHIR XML, and FHIR XML becomes FHIR JSON.

    Is content preserved on a round-trip?

    The structure is preserved (JSON -> XML -> JSON). One technical point: XML does not carry JSON data types, so simple values come back from XML as text (except true/false).

    Are Bundles with embedded resources supported?

    Yes. An embedded resource (e.g. inside a Bundle entry) is handled correctly both ways - in XML as a capitalized child element.

    Does the tool validate my FHIR against a profile?

    No. It is purely a format conversion between JSON and XML, not a profile validator and not a clinical tool. Verify the result against the schema of your target system.

    Related tools