XML Input
FUME converts XML input to JSON before evaluation. Focus on the normalized JSON shape that the engine evaluates, not on the raw XML syntax.
Inspect normalized JSON
Use the root endpoint with fume: "$" to inspect the exact JSON representation that your mapping will run against.
{
"input": "<patientSummary>...</patientSummary>",
"contentType": "application/xml",
"fume": "$"
}
For XML requests, input is the original XML document as a string.
Original input file
Canonical XML input
This XML document is normalized to JSON before the mapping is evaluated.
XML
<?xml version="1.0" encoding="UTF-8"?>
<patientSummary>
<patientId>pat-0001</patientId>
<name>
<given>Avery</given>
<family>Reed</family>
<display>Avery Reed</display>
</name>
<birthDate>1990-06-12</birthDate>
<sex>female</sex>
<primaryCareTeam>
<organization>ExampleCare</organization>
<facility>ExampleCare Clinic</facility>
<practitioner practitionerId="prac-4001">
<display>Jordan Kim</display>
</practitioner>
</primaryCareTeam>
<identifiers>
<memberId>mbr-3001</memberId>
<recordNumber>rec-5001</recordNumber>
</identifiers>
<tags>demo</tags>
<tags>fictional</tags>
</patientSummary>
Normalized JSON before evaluation
Normalized JSON
This is the JSON shape that FUME evaluates after XML normalization.
{
"patientId": "pat-0001",
"name": {
"given": "Avery",
"family": "Reed",
"display": "Avery Reed"
},
"birthDate": "1990-06-12",
"sex": "female",
"primaryCareTeam": {
"organization": "ExampleCare",
"facility": "ExampleCare Clinic",
"practitioner": {
"practitionerId": "prac-4001",
"display": "Jordan Kim"
}
},
"identifiers": {
"memberId": "mbr-3001",
"recordNumber": "rec-5001"
},
"tags": [
"demo",
"fictional"
],
"_xmlTagName": "patientSummary"
}
What to expect
- XML normalization produces an object root rather than a bare array.
- Repeated sibling tags become arrays.
- XML primitive values remain strings.
- Attributes are exposed as JSON properties on the normalized object.
- For non-FHIR XML, the original root tag name is available as
_xmlTagName.
Once you know this JSON shape, you can author mappings against it the same way you would author mappings against any other JSON input.