Thanks Maciej. That did the trick.
I didn't put in the definition earlier because I was creating a script that automatically included other required nodes (e.g. message, operation, and item definitions) based on the activities in the process. The process file I attached was actually an output of that script. It looks like I also need to automatically include a timeCycle node when I find a timerEventDefinition.
The only item I'm stuck now is how to get two start nodes to work (one "normal" start and one message start).
Again, many thanks for your your response.