Question: dsolve event handling question, general

dsolve event handling looks like a great tool, but I can't understand how it works and it's not sufficiently popular to google my way to examples online. There are two things I'd like to do: 1) interrupt the computation once some variable leaves a certain range, 2) interrupt the computation if the solver gets stuck into an infinite loop. Both are documented in the help, but I don't understand it. Suggestions welcome, thanks!

http://www.maplesoft.com/support/help/Maple/view.aspx?path=dsolve/numeric/Events

The help page gives this syntax:

dsolve(..., numeric, events=eventlist, event_maxiter=miter)

So I tried stuff like this:

dsolve({diff(x(t),t)=x(t), x(0)=.5}, x(t), type=numeric, range=0..10, 
events=[[x(t)=0..1],halt]);

or this:  

event_maxiter=1
or this:

events=[event_maxiter=1]

but I get:
Error, (in dsolve/numeric) invalid 'events' specification
 
Please Wait...