This page is part of the FHIR Core Extensions Registry (v5.1.0: Release 5.1) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions
Page standards status: Trial-use | Maturity Level: 1 |
{
"resourceType" : "StructureMap",
"id" : "PractitionerRole5to4B",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><pre class=\"fml\">\r\n<span style=\"color: #cc00cc\">/// <b>url</b> = </span><span style=\"color: blue\">'http://hl7.org/fhir/StructureMap/PractitionerRole5to4B'</span>\r\n<span style=\"color: #cc00cc\">/// <b>name</b> = </span><span style=\"color: blue\">'PractitionerRole5to4B'</span>\r\n<span style=\"color: #cc00cc\">/// <b>title</b> = </span><span style=\"color: blue\">'FML Conversion for PractitionerRole: R5 to R4B'</span>\r\n<span style=\"color: #cc00cc\">/// <b>status</b> = </span><span style=\"color: blue\">'active'</span>\r\n\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"http://hl7.org/fhir/R5/practitionerrole.html\" title=\"PractitionerRole\">http://hl7.org/fhir/StructureDefinition/PractitionerRole</a><span style=\"color: navy\">" </span><b>alias </b>PractitionerRoleR5 <b>as </b><b>source</b>\r\n<b>uses</b><span style=\"color: navy\"> "</span><a href=\"http://hl7.org/fhir/R4B/practitionerrole.html\" title=\"PractitionerRole\">http://hl7.org/fhir/4.3/StructureDefinition/PractitionerRole</a><span style=\"color: navy\">" </span><b>alias </b>PractitionerRoleR4B <b>as </b><b>target</b>\r\n\r\n<b>imports</b><span style=\"color: navy\"> "</span>http://hl7.org/fhir/StructureMap/*5to4B<span style=\"color: navy\">"\r\n</span>\r\n<b>group </b>PractitionerRole<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span><span style=\"color: navy\"> : </span>PractitionerRoleR5, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\"> : </span>PractitionerRoleR4B<span style=\"color: navy\">)</span><b> extends </b>DomainResource<b> <<type+>></b><span style=\"color: navy\"> {\r\n</span> src.identifier<span style=\"color: navy\"><b> -> </b></span>tgt.identifier<span style=\"color: navy\">;</span>\r\n src.active<span style=\"color: navy\"><b> -> </b></span>tgt.active<span style=\"color: navy\">;</span>\r\n src.period<span style=\"color: navy\"><b> -> </b></span>tgt.period<span style=\"color: navy\">;</span>\r\n src.practitioner<span style=\"color: navy\"><b> -> </b></span>tgt.practitioner<span style=\"color: navy\">;</span>\r\n src.organization<span style=\"color: navy\"><b> -> </b></span>tgt.organization<span style=\"color: navy\">;</span>\r\n src.code<span style=\"color: navy\"><b> -> </b></span>tgt.code<span style=\"color: navy\">;</span>\r\n src.specialty<span style=\"color: navy\"><b> -> </b></span>tgt.specialty<span style=\"color: navy\">;</span>\r\n src.location<span style=\"color: navy\"><b> -> </b></span>tgt.location<span style=\"color: navy\">;</span>\r\n src.healthcareService<span style=\"color: navy\"><b> -> </b></span>tgt.healthcareService<span style=\"color: navy\">;</span>\r\n src.contact<b> as </b><span style=\"color: maroon\">s</span><b> then</b><span style=\"color: navy\"> {\r\n</span> s.telecom<span style=\"color: navy\"><b> -> </b></span>tgt.telecom<span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span>\r\n src.availability<b> as </b><span style=\"color: maroon\">sav</span><b> then</b><span style=\"color: navy\"> {\r\n</span> sav.availableTime<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -> </b></span>tgt.availableTime<b> as </b><span style=\"color: maroon\">t</span><b> then </b>PractitionerRoleAvailabilityAvailableTime<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span><span style=\"color: navy\">;</span>\r\n sav.notAvailableTime<b> as </b><span style=\"color: maroon\">s</span><span style=\"color: navy\"><b> -> </b></span>tgt.notAvailable<b> as </b><span style=\"color: maroon\">t</span><b> then </b>PractitionerRoleAvailabilityNotAvailableTime<span style=\"color: navy\">(</span><span style=\"color: maroon\">s</span><span style=\"color: navy\">, </span><span style=\"color: maroon\">t</span><span style=\"color: navy\">)</span> <i>"availableTime"</i><span style=\"color: navy\">;</span>\r\n <span style=\"color: navy\">}</span><span style=\"color: navy\">;</span> <span style=\"color: navy\">// </span><span style=\"color: green\">src.characteristic -> tgt.characteristic;</span>\r\n src.endpoint<span style=\"color: navy\"><b> -> </b></span>tgt.endpoint<span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>PractitionerRoleAvailabilityAvailableTime<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>Element<span style=\"color: navy\"> {\r\n</span> src.daysOfWeek<span style=\"color: navy\"><b> -> </b></span>tgt.daysOfWeek<span style=\"color: navy\">;</span>\r\n src.allDay<span style=\"color: navy\"><b> -> </b></span>tgt.allDay<span style=\"color: navy\">;</span>\r\n src.availableStartTime<span style=\"color: navy\"><b> -> </b></span>tgt.availableStartTime<span style=\"color: navy\">;</span>\r\n src.availableEndTime<span style=\"color: navy\"><b> -> </b></span>tgt.availableEndTime<span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span><b>group </b>PractitionerRoleAvailabilityNotAvailableTime<span style=\"color: navy\">(</span><b>source</b> <span style=\"color: maroon\">src</span>, <b>target</b> <span style=\"color: maroon\">tgt</span><span style=\"color: navy\">)</span><b> extends </b>Element<span style=\"color: navy\"> {\r\n</span> src.description<span style=\"color: navy\"><b> -> </b></span>tgt.description<span style=\"color: navy\">;</span>\r\n src.during<span style=\"color: navy\"><b> -> </b></span>tgt.during<span style=\"color: navy\">;</span>\r\n<span style=\"color: navy\">}\r\n\r\n</span></pre></div>"
},
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
"valueCode" : "fhir"
},
{
"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/extensions/ImplementationGuide/hl7.fhir.uv.extensions"
}
]
}
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode" : "trial-use",
"_valueCode" : {
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical" : "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.extensions"
}
]
}
}
],
"url" : "http://hl7.org/fhir/StructureMap/PractitionerRole5to4B",
"version" : "5.1.0",
"name" : "PractitionerRole5to4B",
"title" : "FML Conversion for PractitionerRole: R5 to R4B",
"status" : "active",
"date" : "2024-04-27T18:54:50+10:00",
"publisher" : "HL7 International / FHIR Infrastructure",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "http://www.hl7.org/Special/committees/fiwg"
}
]
}
],
"description" : "FMLConversionforPractitionerRoleR5toR4B",
"jurisdiction" : [
{
"coding" : [
{
"system" : "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code" : "001"
}
]
}
],
"structure" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
"mode" : "source",
"alias" : "PractitionerRoleR5"
},
{
"url" : "http://hl7.org/fhir/4.3/StructureDefinition/PractitionerRole",
"mode" : "target",
"alias" : "PractitionerRoleR4B"
}
],
"import" : [
"http://hl7.org/fhir/StructureMap/*5to4B"
],
"group" : [
{
"name" : "PractitionerRole",
"extends" : "DomainResource",
"typeMode" : "type-and-types",
"input" : [
{
"name" : "src",
"type" : "PractitionerRoleR5",
"mode" : "source"
},
{
"name" : "tgt",
"type" : "PractitionerRoleR4B",
"mode" : "target"
}
],
"rule" : [
{
"name" : "identifier",
"source" : [
{
"context" : "src",
"element" : "identifier",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "identifier",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "active",
"source" : [
{
"context" : "src",
"element" : "active",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "active",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "period",
"source" : [
{
"context" : "src",
"element" : "period",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "period",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "src",
"element" : "practitioner",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "practitioner",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "src",
"element" : "organization",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "organization",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "code",
"source" : [
{
"context" : "src",
"element" : "code",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "code",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "specialty",
"source" : [
{
"context" : "src",
"element" : "specialty",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "specialty",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "location",
"source" : [
{
"context" : "src",
"element" : "location",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "location",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "healthcareService",
"source" : [
{
"context" : "src",
"element" : "healthcareService",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "healthcareService",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "contact",
"source" : [
{
"context" : "src",
"element" : "contact",
"variable" : "s"
}
],
"rule" : [
{
"name" : "telecom",
"source" : [
{
"context" : "s",
"element" : "telecom",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "telecom",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
},
{
"name" : "availability",
"source" : [
{
"context" : "src",
"element" : "availability",
"variable" : "sav"
}
],
"rule" : [
{
"name" : "availableTime",
"source" : [
{
"context" : "sav",
"element" : "availableTime",
"variable" : "s"
}
],
"target" : [
{
"context" : "tgt",
"element" : "availableTime",
"variable" : "t"
}
],
"dependent" : [
{
"name" : "PractitionerRoleAvailabilityAvailableTime",
"parameter" : [
{
"valueId" : "s"
},
{
"valueId" : "t"
}
]
}
]
},
{
"name" : "availableTime",
"source" : [
{
"context" : "sav",
"element" : "notAvailableTime",
"variable" : "s"
}
],
"target" : [
{
"context" : "tgt",
"element" : "notAvailable",
"variable" : "t"
}
],
"dependent" : [
{
"name" : "PractitionerRoleAvailabilityNotAvailableTime",
"parameter" : [
{
"valueId" : "s"
},
{
"valueId" : "t"
}
]
}
]
}
],
"documentation" : "src.characteristic -> tgt.characteristic;"
},
{
"name" : "endpoint",
"source" : [
{
"context" : "src",
"element" : "endpoint",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "endpoint",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
},
{
"name" : "PractitionerRoleAvailabilityAvailableTime",
"extends" : "Element",
"input" : [
{
"name" : "src",
"mode" : "source"
},
{
"name" : "tgt",
"mode" : "target"
}
],
"rule" : [
{
"name" : "daysOfWeek",
"source" : [
{
"context" : "src",
"element" : "daysOfWeek",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "daysOfWeek",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "allDay",
"source" : [
{
"context" : "src",
"element" : "allDay",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "allDay",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "availableStartTime",
"source" : [
{
"context" : "src",
"element" : "availableStartTime",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "availableStartTime",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "availableEndTime",
"source" : [
{
"context" : "src",
"element" : "availableEndTime",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "availableEndTime",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
},
{
"name" : "PractitionerRoleAvailabilityNotAvailableTime",
"extends" : "Element",
"input" : [
{
"name" : "src",
"mode" : "source"
},
{
"name" : "tgt",
"mode" : "target"
}
],
"rule" : [
{
"name" : "description",
"source" : [
{
"context" : "src",
"element" : "description",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "description",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
},
{
"name" : "during",
"source" : [
{
"context" : "src",
"element" : "during",
"variable" : "vvv"
}
],
"target" : [
{
"context" : "tgt",
"element" : "during",
"variable" : "vvv",
"transform" : "create"
}
],
"dependent" : [
{
"name" : "DefaultMappingGroupAnonymousAlias",
"parameter" : [
{
"valueId" : "vvv"
},
{
"valueId" : "vvv"
}
]
}
]
}
]
}
]
}