diff --git a/advanced/odata.md b/advanced/odata.md index ec2151848..13f1ad0ec 100644 --- a/advanced/odata.md +++ b/advanced/odata.md @@ -336,14 +336,16 @@ Primitive annotation values, meaning Strings, Numbers, `true`, and `false` are m ``` -Rendering a `null` value must be done as dynamic expression or as an [annotation expression](#expression-annotations): +#### Null Value { #null-value } + +A `null` value can be set either as an [annotation expression](#expression-annotations) or as a [dynamic expression](#dynamic-expressions): ```cds -@Some.Null: { $edmJson: { $Null } } -// or -@Some.Null: (null) +@Some.NullXpr: (null) // annotation expression, short form +@Some.NullFunc: ($Null()) // annotation expression, functional form +@Some.NullDyn: { $edmJson: { $Null } } // dynamic expression ``` -Both result in the following: +All three expressions result in the following rendering: ```xml @@ -662,7 +664,8 @@ The following operators and clauses of CDL are supported: * Logical: `and`, `or`, `not` * Relational: `=`, `<>`, `!=`, `<`, `<=`, `>`, `>=`, `in`, `between ... and ...` * Unary `+` and `-` -* Arithmetic: `+`, `-`, `*`, `/`, `||` +* Arithmetic: `+`, `-`, `*`, `/` +* Concat: `||` * `cast(...)` Example: @@ -718,7 +721,7 @@ service S { In addition, the following functions are supported: -* `$Null()` representing the `null` value +* `$Null()` representing the `null` value [`Null`]([annotation expression](#null-value)). * `Div(...)` (or `$Div(...)`) and `Mod(...)` (or `$Mod(...)`) for integer division and modulo * [`Has(...)`](https://docs.oasis-open.org/odata/odata/v4.02/csd01/part2-url-conventions/odata-v4.02-csd01-part2-url-conventions.html#Has) (or `$Has(...)`) * the functions listed in sections