This strategy is not guaranteed to get an never-used ID. For example:

- add a format string
- set this format string for an expression
- remove the format string
- add a format string again -> this reuses the same ID, and now the previously associated expression is pointing at the new format string

Hmmm, maybe if we want to avoid this, we need to track the last-used ID in the graph config? I'm open for better ideas :)