Skip to content

Commit 34b0a1b

Browse files
committed
docs: clarify DFG-only features in expressions reference, rename ToC entry
- Clarify ?? default syntax is DFG-only (not in data flow builtInTransformation) - Remove misleading 'and no last known value is available' from ?? description - Add evaluation order example for ?? without ? $last - Add footnotes to feature support table for DFG-only items (regex, ??) - Rename ToC entry from 'Expressions' to 'Expressions reference'
1 parent 90b51e2 commit 34b0a1b

2 files changed

Lines changed: 13 additions & 6 deletions

File tree

articles/iot-operations/connect-to-cloud/concept-dataflow-graphs-expressions.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.author: sethm
66
ms.service: azure-iot-operations
77
ms.subservice: azure-data-flows
88
ms.topic: reference
9-
ms.date: 03/19/2026
9+
ms.date: 03/26/2026
1010
ai-usage: ai-assisted
1111

1212
---
@@ -212,7 +212,10 @@ Last known value is supported in map, filter, and branch rules. It isn't availab
212212

213213
## Default values
214214

215-
Use the `?? <default>` suffix on an input to provide a fallback value when the field is missing and no last known value is available. Supported default types: integer, float, boolean, string, and null.
215+
Use the `?? <default>` suffix on an input to provide a fallback value when the field is missing. Supported default types: integer, float, boolean, string, and null.
216+
217+
> [!NOTE]
218+
> The `?? <default>` syntax is available in data flow graphs only. It isn't supported in data flow `builtInTransformation` inputs.
216219
217220
| Input | Fallback |
218221
|-------|----------|
@@ -223,11 +226,12 @@ Use the `?? <default>` suffix on an input to provide a fallback value when the f
223226

224227
### Combine last known value and default
225228

226-
You can combine `? $last` and `?? <default>`. The runtime checks the current message first, then the last known value, then the default.
229+
You can combine `? $last` and `?? <default>`. The runtime checks the current message first, then the last known value, then the default. If you use `?? <default>` without `? $last`, the runtime checks the current message and then the default directly.
227230

228231
| Input | Evaluation order |
229232
|-------|-----------------|
230-
| `temperature ? $last ?? 0` | Current value, then last known, then 0 |
233+
| `temperature ?? 0` | Current value, then default (0) |
234+
| `temperature ? $last ?? 0` | Current value, then last known, then default (0) |
231235

232236
Default values are supported in map, filter, and branch rules. They aren't available in window (accumulate) rules.
233237

@@ -256,9 +260,12 @@ JSON objects and arrays are preserved as-is when fields are copied without an ex
256260
| `$metadata` access | Yes | Yes | Yes | No |
257261
| `$context` enrichment | Yes | Yes | Yes | No |
258262
| `? $last` | Yes | Yes | Yes | No |
259-
| `?? <default>` | Yes | Yes | Yes | No |
263+
| `?? <default>` ¹ | Yes | Yes | Yes | No |
264+
| `str::regex_matches` / `str::regex_replace` ¹ | Yes | Yes | Yes | No |
260265
| Wildcards | Yes | No | No | No |
261266

267+
¹ Available in data flow graphs only. Not supported in data flow `builtInTransformation` inputs.
268+
262269
## Related content
263270

264271
- [Map data by using data flows](concept-dataflow-mapping.md)

articles/iot-operations/toc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ items:
250250
- name: Disk persistence
251251
href: connect-to-cloud/howto-configure-disk-persistence.md
252252
displayName: data flow, persistence, disk, restart, state
253-
- name: Expressions
253+
- name: Expressions reference
254254
href: connect-to-cloud/concept-dataflow-graphs-expressions.md
255255
displayName: data flow, expression, function, operator, metadata, variable, conversion
256256
- name: Profiles

0 commit comments

Comments
 (0)