nodestream
nodestream copied to clipboard
[BUG] `do_lowercase_strings` is being applied to all property values by default
Describe the bug
All the string properties are being lowercased due to the do_lowercase_strings normalization being applied
To Reproduce Given the configuration below:
- implementation: nodestream.interpreting:Interpreter
arguments:
interpretations:
- type: source_node
node_type: Artist
key:
id: !jmespath nconst
properties:
name: !jmespath primaryName
All the name properties are being lowercased due to the do_lowercase_strings normalization being applied. This is an unexpected behavior from a CX perspective.
Expected behavior The string values are not changed
Additional context
This also happens to key properties but I see the logic here in lowercasing all key values, to ensure consistency in key lookups so that does not need to change.
I think the solution here could be something like this:
- Introduce
key_normalizationandproperty_normalizationfields and deprecatenormalization. - Keep the default of
key_normalizationto be whatnormalizationcurrently is. - Have the default of
property_normalizationbe blank. - If
normalizationis set, then apply it to both taking precedence. - Error if both
normalizationand one ofkey_normalizationorproperty_normalization.
This issue has been resolved and will be released with 0.13.