Commit 79ff2398 authored by kzangeli's avatar kzangeli
Browse files

testsuite-doubts §15: resolved - the map form; § 10.5.7 says so explicitly (the note had missed it)

parent ad9138df
Loading
Loading
Loading
Loading
+14 −15
Changes for testsuite-doubts.md: 14 added lines, 15 removed lines.
Original line number Diff line number Diff line
@@ -494,21 +494,20 @@ LanguageProperty, the two fixtures disagree on the wire form:
                "previousLanguageMap": { fr: ..., nl: ... } }
    ```

Spec TS 104-175 § 10.5.7 only says "the value (or object) shall be set to
`urn:ngsi-ld:null`". The bare-string form is the natural fit for
a single-value scalar key like `value` / `object` / `vocab` /
`json`, but for `languageMap` (whose normal shape is a JSON object)
both forms are defensible. The fixtures should pick one and stick
with it.

**Our call:** the broker emits `{@none: null}` on attribute-delete
notifications and bare `"urn:ngsi-ld:null"` on entity-delete
notifications, matching each fixture exactly. Both are spec-allowed.

**Fix wanted:** fixtures should agree (preferably both bare null,
since other types use bare null and TS 104-175 § 10.5.7 reads more naturally
that way). Once aligned, the broker's two code paths can be
unified.
**RESOLVED 2026-10-02 - the map form, and the spec is explicit.** TS 104-175
§ 10.5.7 (Notification behaviour), on deleted Attributes: "...a JSON object
with all the required information is provided, where the `value` or the
`object` is set to the URI "urn:ngsi-ld:null" respectively or, in the case
of a LanguageProperty, the `languageMap` is set to
`{"@none":"urn:ngsi-ld:null"}`." An entity deletion with showChanges lists
every attribute as deleted, so the same form applies. (This note first
claimed the clause only said "set to urn:ngsi-ld:null" and leaned towards
the bare string - it missed that sentence; corrected after
geolonia/ngsi-ld-test-suite-patches#2 pointed it out.)

**Fixed:** `entity-different-attributes-types-deleted-entity.json` (046_37)
now expects `{"@none": "urn:ngsi-ld:null"}`; the broker sends the map on
both paths (coraine: corNgsild#58).


## 16. `051_02_01`, `051_04_02/03`, `053_03_01` — missing resource imports