you are absolutely right that it should not alter the Node object as that might get flushed to doctrine. i think the solution is what i propose below - createItem does not know about nodes, so the event handler can use that if it needs to fiddle with the data.