Blocks could have ids. It is used by 3rd parties for:
- interaction of Blocks Dom (like scroll to block)
- working with some API method
Since Blocks are created by the Editor Document, ids should be generated in there.
Also, Document should preserve existing ids passed to it.