Skip to content

Commit 40a8593

Browse files
Merge pull request #313496 from EXPEkesheth/patch-475454
Revise DICOM update-files.md
2 parents 97446bf + da108a1 commit 40a8593

1 file changed

Lines changed: 95 additions & 7 deletions

File tree

articles/healthcare-apis/dicom/update-files.md

Lines changed: 95 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
22
title: Update files in the DICOM service in Azure Health Data Services
33
description: Learn how to use the bulk update API in Azure Health Data Services to modify DICOM attributes for multiple files in the DICOM service. This article explains the benefits, requirements, and steps of the bulk update operation.
4-
author: varunbms
4+
author: Expekesheth
55
ms.service: azure-health-data-services
66
ms.subservice: dicom-service
77
ms.topic: how-to
88
ms.date: 07/23/2025
9-
ms.author: buchvarun
9+
ms.author: kesheth
1010
---
1111

1212
# Update DICOM files
@@ -21,7 +21,7 @@ There are a few limitations when you use the bulk update operation:
2121
- A maximum of 50 studies can be updated in a single operation.
2222
- Only one bulk update operation can be performed at a time for a given study.
2323
- For updates involving UID changes, only one study can be updated in a single operation.
24-
- Only Study Instance UID and Series Instance UID can be updated as part of UID update. SOP Instance UID cannot be updated for an instance.
24+
- Study Instance UID, Series Instance UID, and SOP Instance UID can be updated.SOP Instance UID updates require `seriesInstanceUid`. Missing this results in HTTP 400 (Bad Request).
2525
- UID update operation would fail when the target UIDs (`studyInstanceUID`, `seriesInstanceUid` and `sopInstanceUId`) already exists.
2626
- You can't delete only the latest version of a study, or revert back to the original version.
2727
- You can't update any field from non-null to a null value.
@@ -101,6 +101,29 @@ For updating the UIDs, new UIDs have to be provided in the change dataset as fol
101101
}
102102
}
103103
```
104+
3. Use the request below to update the 'SOPInstanceUid' for a specific instance within a series. Note that a single instance is updated at a time, and both the 'studyInstanceUid' and 'seriesInstanceUid' must be provided along with the current 'sopInstanceUid' and the new value in the changeDataset.
105+
106+
```
107+
{
108+
"studyInstanceUids": ["1.2.3.4"],
109+
"seriesInstanceUid": "5.6.7.8",
110+
"sopInstanceUid": "9.10.11.12",
111+
"changeDataset": {
112+
"0020000D": {
113+
"vr": "UI",
114+
"Value": ["1.2.3.5"]
115+
},
116+
"0020000E": {
117+
"vr": "UI",
118+
"Value": ["5.6.7.9"]
119+
},
120+
"00080018": {
121+
"vr": "UI",
122+
"Value": ["9.10.11.13"]
123+
}
124+
}
125+
}
126+
```
104127

105128
#### Responses
106129
When a bulk update operation starts successfully, the API returns a `202` status code. The body of the response contains a reference to the operation.
@@ -178,22 +201,43 @@ GET {dicom-service-url}/{version}/operations/{operationId}
178201
| 404 (Not Found) | | Operation not found |
179202

180203
## Retrieving study versions
181-
The [Retrieve (WADO-RS)](dicom-services-conformance-statement-v2.md#retrieve-wado-rs) transaction allows you to retrieve both the original and latest version of a study, series, or instance. By default, the latest version of a study, series, or instance is returned. The original version is returned by setting the `msdicom-request-original` header to `true`. For bulk updates involving UID update, the original and latest version can be retrieved using the newer UIDs only. An example request follows.
204+
The [Retrieve (WADO-RS)](dicom-services-conformance-statement-v2.md#retrieve-wado-rs) transaction allows you to retrieve both the original and latest version of a study, series, or instance. By default, the latest version of a study, series, or instance is returned.
205+
* To retrieve the original version, set the `msdicom-request-original` header to `true`.
206+
* For bulk updates involving UID update, including Study, Series, or SOP Instance UID updates, the original and latest version can be retrieved using the newer UIDs only.
207+
* When SOP Instance UID filtering was used in a bulk update, you can retrieve specific instances by providing the updated SOP Instance UID.
208+
209+
Example request for retrieving a specific instance after a bulk update:
182210

183211
```http
184212
GET {dicom-service-url}/{version}/studies/{study}/series/{series}/instances/{instance}
185213
Accept: multipart/related; type="application/dicom"; transfer-syntax=*
186214
msdicom-request-original: true
187215
Content-Type: application/dicom
188216
```
189-
190-
For bulk updates involving UID update, the original and latest version can be retrieved using the newer UIDs only.
217+
This ensures precise retrieval even after hierarchy or UID changes in bulk updates.
191218

192219
## Delete
193220
The [delete](dicom-services-conformance-statement-v2.md#delete) method deletes both the original and latest version of a study, series, or instance.
194221

195222
## Change feed
196-
The [change feed](change-feed-overview.md) records update actions in the same manner as create and delete actions. For UID updates, change feed entries for the older UIDs will not be updated. The update action would be present only for the new UIDs.
223+
The [change feed](change-feed-overview.md) records update actions in the same manner as create and delete actions.
224+
* For UID updates, including Study, Series, or SOP Instance UID, change feed entries for the older UIDs are not updated.
225+
* Update actions are recorded only for the new UIDs.
226+
* When SOP Instance UID filtering is applied, the change feed reflects updates only for the targeted instances.
227+
228+
## Summary of DICOM UID Update Behavior by Hierarchy Level
229+
This table outlines how bulk updates behave at different levels of the DICOM hierarchy—Study, Series, and Instance—highlighting when updates are allowed, whether a SOP Instance UID filter is required, how instances are moved, and the resulting impact on the UID hierarchy.
230+
✅ Allowed ❌ Not allowed
231+
| Scenario | Study-Level Update | Series-Level Update | Instance-Level Update | SOP Instance UID Filter Applied | Movement of Instances | Resulting Action / Notes |
232+
| -------------------------------------------------- | ----------------- | ----------------- | ------------------- | ------------------------------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
233+
| Update patient demographic attributes only ||||Not required | No movement | Attributes updated in place; original UID hierarchy preserved. |
234+
| Update Study Instance UID ||||| Study → New Study | All instances in study get new Study UID; series and instance UIDs remain unless explicitly changed. |
235+
| Update Series Instance UID |||| Not required | Series → New Series | All instances in series get new Series UID; Study UID remains unless updated; SOP Instance UID unchanged. |
236+
| Update SOP Instance UID |||| Required | Instance → New Instance | Only the filtered SOP Instance(s) are updated; new SOP Instance UID assigned; Study/Series UID preserved. |
237+
| Update Study & Series UIDs |||| Not required | Study → New Study → Series → New Series | Hierarchy updated; all instances in series adopt new UIDs. |
238+
| Update Study, Series, and SOP Instance UIDs |||| Required | Study → New Study → Series → New Series → Instance → New Instance | Complete hierarchy updated with filtered SOP instance selection where applicable. |
239+
| Filter specific SOP Instance(s) without UID change|||| Required | Instance → No movement | Only selected SOP instances updated in place; other instances untouched. |
240+
197241

198242
## Supported DICOM modules
199243
Any attributes in the [Patient Identification Module](https://dicom.nema.org/dicom/2013/output/chtml/part03/sect_C.2.html#table_C.2-2) and [Patient Demographic Module](https://dicom.nema.org/dicom/2013/output/chtml/part03/sect_C.2.html#table_C.2-3) that aren't sequences can be updated using the bulk update operation. Supported attributes are called out in the tables.
@@ -259,4 +303,48 @@ The UID `1.3.6.1.4.1.311.129` is a registered under [Microsoft OID arc](https://
259303
| Accession Number | (0008,0050) | A RIS generated number that identifies the order for the Study |
260304
| Study Description | (0008,1030) | Institution-generated description or classification of the Study (component) performed |
261305

306+
307+
## Study module attributes
308+
309+
| Attribute Name | Tag | Description |
310+
|--------------------------------|------------|-----------------------------------------------------------------------------|
311+
| Accession Number | (0008,0050)| A RIS-generated number that identifies the order for the study |
312+
| Referring Physician's Name | (0008,0090)| Name of the patient's referring physician |
313+
| Study Description | (0008,1030)| Institution-generated description or classification of the study performed |
314+
| Study Date | (0008,0020)| Date the study started |
315+
| Study Time | (0008,0030)| Time the study started |
316+
| Study ID | (0020,0010)| User or equipment generated study identifier |
317+
| Admitting Diagnoses Description| (0008,1080)| Description of the admitting diagnosis |
318+
| Requested Procedure ID | (0040,1001)| Identifier that identifies the requested procedure in the Imaging Service Request |
319+
320+
## Series module attributes
321+
322+
| Attribute Name | Tag | Description |
323+
|----------------------|------------|-----------------------------------------------------------------------------|
324+
| Series Description | (0008,103E)| Description of the series |
325+
| Frame of Reference UID | (0020,0052)| Uniquely identifies the frame of reference for a series |
326+
| Series Number | (0020,0011)| A number that identifies the series |
327+
| Series Date | (0008,0021)| Date the series started |
328+
| Series Time | (0008,0031)| Time the series started |
329+
| Body Part Examined | (0018,0015)| Text description of the part of the body examined |
330+
| Laterality | (0020,0060)| Laterality of (paired) body part examined; Enumerated Values: R (right), L (left) |
331+
332+
## Instance module attributes
333+
334+
| Attribute Name | Tag | Description |
335+
|---------------------|------------|-----------------------------------------------------------------------------|
336+
| Instance Number | (0020,0013)| A number that identifies the instance |
337+
| Acquisition Date | (0008,0022)| The date the acquisition of data that resulted in this image started |
338+
| Acquisition Time | (0008,0032)| The time the acquisition of data that resulted in this image started |
339+
| Image Laterality | (0020,0062)| Laterality of (possibly paired) body part examined in the image; Enumerated Values: R (right), L (left), U (unpaired), B (both) |
340+
| Measurement Laterality | (0024,0113)| The laterality of the measurement |
341+
342+
## UID attributes
343+
344+
| Attribute Name | Tag | Description |
345+
|--------------------|------------|----------------------------------------------|
346+
| Study Instance UID | (0020,000D)| Unique identifier for the study |
347+
| Series Instance UID| (0020,000E)| Unique identifier for the series |
348+
| SOP Instance UID | (0008,0018)| Uniquely identifies the SOP Instance |
349+
262350
[!INCLUDE [DICOM trademark statements](../includes/healthcare-apis-dicom-trademark.md)]

0 commit comments

Comments
 (0)