Media
Overview
The Media API enables developers to build applications for storing, managing and accessing medical images, videos, illustrations and other multimedia content. It provides RESTful endpoints to securely upload, retrieve, update and delete files, allowing seamless integration of multimedia into healthcare workflows.
Use Cases
- Medical Image - Management Manage medical images like x-rays, MRI, CT scans in electronic health records
- Telemedicine Consultations - Enable video telemedicine consultations between patients and providers
- Wound Care Management - Allow uploading patient photos to track wound healing over time
- Patient Education - Build anatomy illustration libraries for patient education
- Visual Treatment Tracking - Attach photos/videos to patient charts to visually track treatment
- Clinical Image Analysis - Develop tools for providers to annotate and analyze medical images
EHR Data Model
EHR | Supported? | Mapped Source Object |
---|---|---|
Athena | ✅ | Insurance Card, Prescription Card |
Elation | ✅ | |
Epic | ✅ |
Object Definition
{ "resourceType": "Media", "id": "example", "text": { "status": "generated", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: example</p><p><b>status</b>: completed</p><p><b>type</b>: Image <span>(Details : {http://terminology.hl7.org/CodeSystem/media-type code 'image' = 'Image', given as 'Image'})</span></p><p><b>modality</b>: Diagram <span>(Details : {http://terminology.hl7.org/CodeSystem/media-modality code 'diagram' = 'Diagram)</span></p><p><b>subject</b>: <a>Patient/xcda</a></p><p><b>created</b>: 17/12/2017</p><p><b>issued</b>: 17/12/2017 2:56:18 PM</p><p><b>operator</b>: <a>Practitioner/xcda-author</a></p><p><b>device</b>: Acme Camera</p><p><b>height</b>: 145</p><p><b>width</b>: 126</p><p><b>frames</b>: 1</p><p><b>content</b>: </p></div>" }, "status": "completed", "type": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/media-type", "code": "image", "display": "Image" } ] }, "modality": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/media-modality", "code": "diagram" } ] }, "subject": { "reference": "Patient/xcda" }, "createdDateTime": "2017-12-17", "issued": "2017-12-17T14:56:18Z", "operator": { "reference": "Practitioner/xcda-author" }, "device": { "display": "Acme Camera" }, "height": 145, "width": 126, "frames": 1, "content": { "id": "a1", "contentType": "image/gif", "data": "R0lGODlhfgCRAPcAAAAAAIAAAACAAICAAAAAgIAA gACAgICAgMDAwP8AAAD/AP//AAAA//8A/wD///// /wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAMwAAZgAAmQAAzAAA /wAzAAAzMwAzZgAzmQAzzAAz/wBmAABmMwBmZgBm mQBmzABm/wCZAACZMwCZZgCZmQCZzACZ/wDMAADM MwDMZgDMmQDMzADM/wD/AAD/MwD/ZgD/mQD/zAD/ /zMAADMAMzMAZjMAmTMAzDMA/zMzADMzMzMzZjMz mTMzzDMz/zNmADNmMzNmZjNmmTNmzDNm/zOZADOZ MzOZZjOZmTOZzDOZ/zPMADPMMzPMZjPMmTPMzDPM /zP/ADP/MzP/ZjP/mTP/zDP//2YAAGYAM2YAZmYA mWYAzGYA/2YzAGYzM2YzZmYzmWYzzGYz/2ZmAGZm M2ZmZmZmmWZmzGZm/2aZAGaZM2aZZmaZmWaZzGaZ /2bMAGbMM2bMZmbMmWbMzGbM/2b/AGb/M2b/Zmb/ mWb/zGb//5kAAJkAM5kAZpkAmZkAzJkA/5kzAJkz M5kzZpkzmZkzzJkz/5lmAJlmM5lmZplmmZlmzJlm /5mZAJmZM5mZZpmZmZmZzJmZ/5nMAJnMM5nMZpnM mZnMzJnM/5n/AJn/M5n/Zpn/mZn/zJn//8wAAMwA M8wAZswAmcwAzMwA/8wzAMwzM8wzZswzmcwzzMwz /8xmAMxmM8xmZsxmmcxmzMxm/8yZAMyZM8yZZsyZ mcyZzMyZ/8zMAMzMM8zMZszMmczMzMzM/8z/AMz/ M8z/Zsz/mcz/zMz///8AAP8AM/8AZv8Amf8AzP8A //8zAP8zM/8zZv8zmf8zzP8z//9mAP9mM/9mZv9m mf9mzP9m//+ZAP+ZM/+ZZv+Zmf+ZzP+Z///MAP/M M//MZv/Mmf/MzP/M////AP//M///Zv//mf//zP// /yH5BAEAABAALAAAAAB+AJEAQAj/AP8JHEiwoMGD CBMqXMiwocOHECNKnEixosWLGFHAckaN2jRnsKZh HEmy5EMU0+L5EseNG654KEzKnGkShbN4uFq2xOWR ps+fE5nEy6Wz5a+XQJMqTeisGdGiLuNRi7m0qlJn 06iF7LhxKoqvX2FpnRYSq1eBX62qRYhCKzWzZDeK 3bqR7NSsb99uddZ2r1ZnINuanbrWp82tb8ly/Bjy a1aOKOu+5ZgXZFa7sARzBMl5a9rCJDl29ejxMuDK eb3mJYsSa93GIOW61QgWbEjQGStbrru7o2K3dkXj BUz242WUbj0u9vj1b2KquCn27Rq7I1+9nBkn7gyS K/HBnFd3/y8bUizf6CM76s0qduxp0pvN23UrOnF7 zB7nWiaMXuZhvGJNoxhjpr3G3WMfJfdbgtD1p1Rb xgkHX3uUbeYbdli5dp6DHHbo4YcghijiiCSWeJJG rJloIkoqPeXLNA2q+GFHm+yUSzzxiCQjiG3hVFQu N+74IQry4JSTTjfCImSHyE1TyS9I+iJPZkv21ySE +bE31VTjhZfZfhm2V+VJXLH3WH70MfZVeKfF9Z1i nv3mXldjEiTYmX9tpVhkXrW1JpfX6bVdnosh19xG INVpk3JydafYZjC6RhqMNlHa11u0aQbjl/mVJaB1 McrY16eSSeYle2AmqGp5wIl1KVxj+f8WIDV1/iOY Vote5lt4eZUn6WsI+kZgp6iVxV+tAs064aqUebdr aW55GqZ2AiIWKrIHQahfo3bBeaZ5zq1q17XYMoQl eQt+Jxt56jXrarnwxivvvPTWa++9TJYlGrn4+kdN PJv4kksz92zY709ExqPJkbncw+/BI9mEDy4Mx+MM xD/9+xQ3m+RIK8Yz2STPkS11s8nFIMvEhDw1FoVL xynLdI9KR+bUMMoxR+yML1BxIyWMOY+0kTxQuizV w0E3hOJjBTe9UYO1fZZ0Qlga59hYvgLX3W7GWo20 vLWV5uqjlHZUaVcDbukuZVTe29poqNYnZ2ZzrdbV 0hRmdZh9dX3/raKv5MknG19YVojmVPIJmtlwhBpX bq4V6trd1VhV6t5jfM6XWWVzaRmZ3yO+3WaAi3XG FZfP2vRnYogLp+tec4Ee4qLZ3dfV3XXpHanZMHJV d6WsucprXJiOyaZ+iaH60aJ1JxirRoCF5Wdmfnql J9uUVdma1m7CvTe74mHWLSyNgft6nmaDNSZy5o1m HvPWadW+aN9luVxglpnVeXF6Kxr/88MhX3wcJZsB uS81uDpc+5KDM0VBr3SlAQx1LBSSy1AHT2iSS1u2 E6DYwUtbGTQOacj3mPGg6TeSEZBrWAUnyMzrbVk6 XVyKsxgCwW0/62GMhVKErw12S1D5S0185RQnn8XQ xYUx45NyNOe87gCRPubZj+xeaB+smIl+yllirCho xKmhxExoK1Cv0BSftAVmamhMoxrXyMY2uvGNcIyj HOeoxkXBh44OOZdn8Ggu+DiPjwtJ2CZyUomCTRGO KJFHLljiEnkc8o0Sy0U3WpILoAGSLf9qmc86ckmE /MtHOfEFVjp5EGfc40jieAlgSFmQL27sF/GQx8dY iRaP8EwnL9ERLW1lS5L5whfxyMcubaWworVEHIX0 xzBRcI9NMBJJ9xgmMTW5E19QQ5m0tAlOjOkzeeiS lcwcJFSAeSxSomRjuDT/2y6ncQ9fkMwozMkmVhRW lFTGk5T5sAlgaCawjjWjnJcEYoYWRJU/CUdqbQSX bNYEGRQZjj630qAXO7MmRJ3pOq65DOOiBaqghaVy a4sUcrKYn+ugay+PXFJzgiOesGWISx3sFfRoaEHC qY9ePmzUpCoTnN5JyobF8lx9zJJSEZlqWNK6D0ar taDWsY4zOV2NVj5olq2VVIvCQ1GsjKURBSnnbCJk FbzihxdSqYc1MAyhZZBDPwZ1sKygKiqTHsOqPGFO L8JrX7cgxBmiYk2LagKo9uQ3LKv2zjGcMlbsVLUv I2YRUf+Z5fq2GqzRqO04Z2POlyo4m7KGB3oXsmSd /2Llps7Mh6mVK84FtQW9qllnccLJkFythBgUyo2F AlzTgMIyqECVDkZltSgSB6unZ8Vwc9jZHKUIJ8Ll 8YkvkmLUa3koJPaFdoGeK2Ln9KI6S4GFVMsDV31e M1vQqPZT+uMpcJYY2/V89y9+0tuoKuqp8mhvfKnx 7NNI95fiCIpx1Nmchrj1VbaWtzAOdSLr6MLX+5VH Px+BVIVQdLuXKk8v2pMg69wzFodez0x/Fa+37tQ4 CcbnwAge6Icbg9Ww6gpAALLrXer20mKhuDDGoWlg /Aveq8InizQsjwq7GkQEEVVRsWHQYYIYQ+cFK00G 4o1webxWZEEIsVAEznmH6N1Y4eiUNJaLaRex9UVf wWlSJCRhr+AiZElZsYZoi5xg12eqp3buNEJm3LRQ BcTeSZUx8/pLdk53w9p6CYKE/p+J83NjJuUPeemq 71bbqrjTkTEvjfaQDyFFnXbJr1lshqIKnaja4uHr tWEa4beqRZpJpXcvy3kaxhxD6U/NqaQ0xCr6jJhp FUlYPVl01HrsI8JYPSdpoCXhEG2YUVzrqT2mzpkS KVRAG955u3SJdhITZ766KosyNjQOnZAt6F3d7oQJ +inaJNPrHUXt3fCOt7ylSe962/ve+M63vvkYEAA7", "creation": "2009-09-03" }, "meta": { "tag": [ { "system": "http://terminology.hl7.org/CodeSystem/v3-ActReason", "code": "HTEST", "display": "test health data" } ] } }
Data Fields
Data Field | Type | Description |
---|---|---|
resourceType | Media | This is a Media resource |
id | id | The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes. |
meta | Meta | The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. |
implicitRules | uri | A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc. |
language | code | The base language in which the resource is written. |
text | Narrative | A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety. |
contained | BackboneElement | These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope. |
extension | Extension | May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
modifierExtension | Extension | May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself). |
identifier | Identifier | Identifiers associated with the image - these may include identifiers for the image itself, identifiers for the context of its collection (e.g. series ids) and context ids such as accession numbers or other workflow identifiers. |
basedOn | Reference | A procedure that is fulfilled in whole or in part by the creation of this media. |
partOf | Reference | A larger event of which this particular event is a component or step. |
status | code | The current state of the {{title}}. |
type | CodeableConcept | A code that classifies whether the media is an image, video or audio recording or some other media category. |
modality | CodeableConcept | Details of the type of the media - usually, how it was acquired (what type of device). If images sourced from a DICOM system, are wrapped in a Media resource, then this is the modality. |
view | CodeableConcept | The name of the imaging view e.g. Lateral or Antero-posterior (AP). |
subject | Reference | Who/What this Media is a record of. |
encounter | Reference | The encounter that establishes the context for this media. |
createdDateTime | string | The date and time(s) at which the media was collected. |
createdPeriod | Period | The date and time(s) at which the media was collected. |
issued | instant | The date and time this version of the media was made available to providers, typically after having been reviewed. |
operator | Reference | The person who administered the collection of the image. |
reasonCode | CodeableConcept | Describes why the event occurred in coded or textual form. |
bodySite | CodeableConcept | Indicates the site on the subject's body where the observation was made (i.e. the target site). |
deviceName | string | The name of the device / manufacturer of the device that was used to make the recording. |
device | Reference | The device used to collect the media. |
height | positiveInt | Height of the image in pixels (photo/video). |
width | positiveInt | Width of the image in pixels (photo/video). |
frames | positiveInt | The number of frames in a photo. This is used with a multi-page fax, or an imaging acquisition context that takes multiple slices in a single image, or an animated gif. If there is more than one frame, this SHALL have a value in order to alert interface software that a multi-frame capable rendering widget is required. |
duration | decimal | The duration of the recording in seconds - for audio and video. |
content | Attachment | The actual content of the media - inline or by direct reference to the media source file. |
note | Annotation | Comments made about the media by the performer, subject or other participants. |
Extensions
Name | URL |
---|---|
PRIORITY | http://xcaliber-fhir/structureDefinition/priority |
APPOINTMENTID | http://xcaliber-fhir/structureDefinition/appointment-id |
ASSIGNEDTO | http://xcaliber-fhir/structureDefinition/assigned-to |
CLINICALPROVIDERID | http://xcaliber-fhir/structureDefinition/clinical-provider-id |
CREATEDDATE | http://xcaliber-fhir/structureDefinition/created-date |
DELETEDDATETIME | http://xcaliber-fhir/structureDefinition/deleted-date-time |
DOCUMENTCLASS | http://xcaliber-fhir/structureDefinition/document-class |
DOCUMENTSOURCE | http://xcaliber-fhir/structureDefinition/document-source |
EXTERNALACCESSIONID | http://xcaliber-fhir/structureDefinition/external-accession-id |
EXTERNALNOTE | http://xcaliber-fhir/structureDefinition/external-note |
FILESIZE | http://xcaliber-fhir/structureDefinition/file-size |
INTERNALACCESSIONID | http://xcaliber-fhir/structureDefinition/internal-accession-id |
INTERNALNOTE | http://xcaliber-fhir/structureDefinition/internal-note |
LASTMODIFIEDDATE | http://xcaliber-fhir/structureDefinition/last-modified-date |
LASTMODIFIEDDATETIME | http://xcaliber-fhir/structureDefinition/last-modified-date-time |
PROVIDERID | http://xcaliber-fhir/structureDefinition/provider-id |
PROVIDERUSERNAME | http://xcaliber-fhir/structureDefinition/provider-user-name |
TIETOORDERID | http://xcaliber-fhir/structureDefinition/tie-to-order-id |
TIETOPROCEDUREORSURGERY | http://xcaliber-fhir/structureDefinition/tie-to-procedure-or-surgery |
ACTIONNOTE | http://xcaliber-fhir/structureDefinition/action-note |
SUBJECT | http://xcaliber-fhir/structureDefinition/subject |
PAGEORDERING | http://xcaliber-fhir/structureDefinition/page-ordering |