You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* parameter[2].documentation = "Bulk export output format (for example csv, ndjson, parquet, json). Optional; if omitted, the server returns ndjson by default."
* parameter[2].documentation = "Bulk export output format (csv, ndjson, parquet, json). Optional; if omitted, the server returns ndjson by default. See Common Operation Behavior (operations-common.html)."
68
68
69
69
* parameter[3].name = #header
70
70
* parameter[3].use = #in
@@ -235,7 +235,7 @@ Description: "Execute a view definition against supplied or server data."
* parameter[0].documentation = "Output format for the result (for example json, ndjson, csv, parquet). Optional; if omitted, the server returns ndjson by default."
238
+
* parameter[0].documentation = "Output format for the result (json, ndjson, csv, parquet, fhir). Use fhir to return results as a FHIR Parameters resource. Optional; if omitted, the server returns ndjson by default. See Common Operation Behavior (operations-common.html)."
239
239
240
240
* parameter[1].name = #header
241
241
* parameter[1].use = #in
@@ -305,7 +305,7 @@ Description: "Execute a view definition against supplied or server data."
305
305
* parameter[7].scope[1] = #type
306
306
* parameter[7].scope[2] = #instance
307
307
* parameter[7].type = #Resource
308
-
* parameter[7].documentation = "FHIR resources to transform instead of using server data."
308
+
* parameter[7].documentation = "FHIR resources to transform instead of using server data. Repeatable. A Bundle supplied here is unwrapped: the ViewDefinition runs against each Bundle.entry[*].resource rather than against the Bundle itself. See OperationDefinition-ViewDefinitionRun notes (Resource Parameter and Bundle Inputs)."
309
309
310
310
* parameter[8].name = #_limit
311
311
* parameter[8].use = #in
@@ -333,7 +333,7 @@ Description: "Execute a view definition against supplied or server data."
333
333
* parameter[10].min=1
334
334
* parameter[10].max= "1"
335
335
* parameter[10].type = #Binary
336
-
* parameter[10].documentation = "Transformed data encoded in the requested output format."
336
+
* parameter[10].documentation = "Transformed data in the requested output format, returned as a raw binary stream in the format's native media type, not a serialized Binary resource envelope. When _format=fhir is requested, the response is a Parameters resource instead. See Common Operation Behavior (operations-common.html)."
337
337
338
338
Instance: SQLQueryRun
339
339
Usage: #definition
@@ -364,8 +364,8 @@ Description: "Execute a SQLQuery Library against ViewDefinition tables."
* parameter[0].documentation = "Output format for the result (json, ndjson, csv, parquet, fhir). Use fhir to return results as a FHIR Parameters resource. Optional; if omitted, the server returns ndjson by default."
* parameter[0].documentation = "Output format for the result (json, ndjson, csv, parquet, fhir). Use fhir to return results as a FHIR Parameters resource. Optional; if omitted, the server returns ndjson by default. See Common Operation Behavior (operations-common.html)."
369
369
370
370
* parameter[1].name = #header
371
371
* parameter[1].use = #in
@@ -430,14 +430,14 @@ Description: "Execute a SQLQuery Library against ViewDefinition tables."
* parameter[7].documentation = "Query resultsin the requested output format, returned as a raw binary stream in the format's native media type, not a serialized Binary resource envelope. When _format=fhir is requested, the response is a Parameters resource instead. See Common Operation Behavior (operations-common.html)."
435
435
436
436
Instance: SQLQueryExport
437
437
Usage: #definition
438
438
InstanceOf: OperationDefinition
439
439
Title: "SQLQuery Export"
440
-
Description: "Export SQLQuery Library results asynchronously using the FHIR Asynchronous Interaction Request Pattern."
440
+
Description: "Export SQLQuery Library results asynchronously using the FHIR Asynchronous Bulk Data Request Pattern."
* parameter[3].documentation = "Output format for the exported files (csv, ndjson, parquet, json). See Common Operation Behavior (operations-common.html)."
Copy file name to clipboardExpand all lines: input/fsh/terminology.fsh
+4-5Lines changed: 4 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -72,16 +72,15 @@ Description: "Output format codes for SQL on FHIR."
72
72
73
73
ValueSet: OutputFormatCodes
74
74
Title: "Output Format Codes"
75
-
Description: "ValueSet of all codes from Output Format Codes codesystem"
75
+
Description: "ValueSet of all codes from Output Format Codes codesystem. Used by the synchronous run operations; see Common Operation Behavior."
76
76
*^experimental = false
77
77
* codes from system OutputFormatCodes
78
78
79
-
ValueSet:SQLQueryRunOutputFormatCodes
80
-
Title: "SQLQuery Run Output Format Codes"
81
-
Description: "Output format codes supported by the $sqlquery-run operation."
79
+
ValueSet:ExportOutputFormatCodes
80
+
Title: "Export Output Format Codes"
81
+
Description: "Output format codes supported by the export operations. Excludes fhir, which applies to the run operations only; see Common Operation Behavior."
Copy file name to clipboardExpand all lines: input/pagecontent/OperationDefinition-SQLQueryExport-notes.md
+52-71Lines changed: 52 additions & 71 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,22 +4,22 @@
4
4
5
5
#### Asynchronous Pattern
6
6
7
-
This operation follows the FHIR Asynchronous Interaction Request Pattern:
7
+
This operation follows the [FHIR Asynchronous Bulk Data Request Pattern](https://www.hl7.org/fhir/async-bulk.html); the completion response is specified once in [Common Operation Behavior — Asynchronous Delivery](operations-common.html#asynchronous-delivery):
8
8
9
9
1. Client sends request with `Prefer: respond-async` header and query source parameters
10
10
2. Server returns `202 Accepted` with `Content-Location` header pointing to status URL
11
11
3. Client polls the status URL for export progress
12
12
4. Server responds with `202 Accepted` while export is in progress (MAY include interim results)
13
-
5. Upon completion, server returns `303 See Other` with `Location` header pointing to result URL
14
-
6. Client GETs the result URL to retrieve final output (identical to synchronous response format)
13
+
5. Upon completion, the status poll returns `200 OK` with the manifest `Parameters` resource (`exportId`, `status`, `output`, …) **in the response body**
14
+
6. Client downloads the exported files from the `output.location` URLs in the manifest
15
15
16
-
**Note**: This operation uses Parameters resource format instead of Bundle format to:
16
+
**Note**: This operation uses a FHIR `Parameters` resource as the manifest instead of the Bulk Data JSON manifest object to:
17
17
18
18
- Provide structured status reporting and metadata
19
19
- Allow extensible output metadata specific to export operations
20
20
- Maintain consistency with other FHIR operations
21
21
22
-
**Note**: The `303 See Other` redirect pattern cleanly separates status polling from result retrieval, eliminating ambiguity around error handling and request header scope.
22
+
**Note**: Completion is signalled by `200 OK` with the manifest in the body of the status-poll response, as in the FHIR Asynchronous Bulk Data Request Pattern. The operation does not use a `303 See Other` redirect to a separate result resource, so standard Bulk Data clients interoperate without special handling.
23
23
24
24
##### Async Flow Diagram
25
25
@@ -43,17 +43,11 @@ sequenceDiagram
43
43
rect rgb(240, 255, 240)
44
44
Note over C,S: Step 3: Completion
45
45
C->>S: GET /status/abc123
46
-
S-->>C: 303 See Other<br/>Location: /result/abc123
0 commit comments