Null keys do not have a semantic and make API more difficult.
- remove null keys, i.e. keyValue always returns a string (e.g. empty string on new keys)
Null keys get clear semantics: they are for representing keys that do not have a value, i.e., only represent structure in configuration files.
For example, an INI section is a null key:
[section]
key = valueFor example, in other config formats there might be keys without any value.
Here key1 would be a null-key and thus is different to the value of key2, i.e., an empty string:
key1
key2 = ""