| Package | hl7.fhir.uv.omop |
| Resource Type | StructureMap |
| Id | AllergyMap |
| FHIR Version | R5 |
| Source | http://hl7.org/fhir/uv/omop/https://build.fhir.org/ig/HL7/fhir-omop-ig/StructureMap-AllergyMap.html |
| URL | http://hl7.org/fhir/uv/omop/StructureMap/AllergyMap |
| Version | 1.0.0-ballot |
| Status | draft |
| Date | 2025-07-29T17:40:15+00:00 |
| Name | AllergyMap |
| Title | Mapping Allergy resource to Observation OMOP Domain |
| Realm | uv |
| Authority | hl7 |
| Description | This mapping maps FHIR AllergyIntolerance instances to OMOP Observation Table objects. |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureMap AllergyMap
/// url = 'http://hl7.org/fhir/uv/omop/StructureMap/AllergyMap' /// name = 'AllergyMap' /// title = 'Mapping Allergy resource to Observation OMOP Domain' /// status = 'draft' uses "http://hl7.org/fhir/StructureDefinition/AllergyIntolerance" alias Allergy as source uses "http://hl7.org/fhir/uv/omop/StructureDefinition/Observation" alias ObservationTable as target group Observation(source src : Allergy, target tgt : ObservationTable) { src.code as s -> tgt then { s.coding as sc -> tgt then { sc.code -> tgt.observation_concept_id, tgt.observation_source_value, tgt.observation_source_concept_id; }; }; // src.id as id -> tgt.observation_id = cast(id, "integer"); src.onset : dateTime as osd -> tgt.observation_date = cast(osd, 'date'), tgt.observation_datetime = osd; // src.patient as s -> tgt then { src.reaction as s -> tgt then { s.manifestation as sman -> tgt then { sman.concept as smanc -> tgt then { smanc.coding as sc -> tgt then { sc.code -> tgt.value_as_concept_id, tgt.value_source_value; }; }; }; }; }
{
"resourceType": "StructureMap",
"id": "AllergyMap",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
"valueCode": "brr"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
"valueInteger": 1,
"_valueInteger": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/omop/ImplementationGuide/hl7.fhir.uv.omop"
}
]
}
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode": "informative",
"_valueCode": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/omop/ImplementationGuide/hl7.fhir.uv.omop"
}
]
}
}
],
"url": "http://hl7.org/fhir/uv/omop/StructureMap/AllergyMap",
"version": "1.0.0-ballot",
"name": "AllergyMap",
"title": "Mapping Allergy resource to Observation OMOP Domain",
"status": "draft",
"date": "2025-07-29T17:40:15+00:00",
"publisher": "HL7 International / Biomedical Research and Regulation",
"contact": [
{
"name": "HL7 International / Biomedical Research and Regulation",
"telecom": [
{
"system": "url",
"value": "http://www.hl7.org/Special/committees/rcrim"
}
]
}
],
"description": "This mapping maps FHIR AllergyIntolerance instances to OMOP Observation Table objects.",
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "001",
"display": "World"
}
]
}
],
"structure": [
{
"url": "http://hl7.org/fhir/StructureDefinition/AllergyIntolerance",
"mode": "source",
"alias": "Allergy"
},
{
"url": "http://hl7.org/fhir/uv/omop/StructureDefinition/Observation",
"mode": "target",
"alias": "ObservationTable"
}
],
"group": [
{
"name": "Observation",
"input": [
{
"name": "src",
"type": "Allergy",
"mode": "source"
},
{
"name": "tgt",
"type": "ObservationTable",
"mode": "target"
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "src",
"element": "code",
"variable": "s"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "s",
"element": "coding",
"variable": "sc"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "sc",
"element": "code"
}
],
"target": [
{
"context": "tgt",
"element": "observation_concept_id"
},
{
"context": "tgt",
"element": "observation_source_value"
},
{
"context": "tgt",
"element": "observation_source_concept_id"
}
]
}
]
}
],
"documentation": "src.id as id -> tgt.observation_id = cast(id, \"integer\");"
},
{
"name": "onsetDateTime",
"source": [
{
"context": "src",
"type": "dateTime",
"element": "onset",
"variable": "osd"
}
],
"target": [
{
"context": "tgt",
"element": "observation_date",
"transform": "cast",
"parameter": [
{
"valueId": "osd"
},
{
"valueString": "date"
}
]
},
{
"context": "tgt",
"element": "observation_datetime",
"transform": "copy",
"parameter": [
{
"valueId": "osd"
}
]
}
],
"documentation": "src.patient as s -> tgt then {"
},
{
"name": "reaction",
"source": [
{
"context": "src",
"element": "reaction",
"variable": "s"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "manifestation",
"source": [
{
"context": "s",
"element": "manifestation",
"variable": "sman"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "concept",
"source": [
{
"context": "sman",
"element": "concept",
"variable": "smanc"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "coding",
"source": [
{
"context": "smanc",
"element": "coding",
"variable": "sc"
}
],
"target": [
{
"transform": "copy",
"parameter": [
{
"valueId": "tgt"
}
]
}
],
"rule": [
{
"name": "code",
"source": [
{
"context": "sc",
"element": "code"
}
],
"target": [
{
"context": "tgt",
"element": "value_as_concept_id"
},
{
"context": "tgt",
"element": "value_source_value"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
}