I think you are describing something the binding does, unless I misunderstand you. Examples:
String Str "Str [%s]" { expire="1m,idle" } // changes item state to word "idle" after 1m of no updates or commands
Number Num "Num [%d]" { nest=">[thermostats(Office).temperature_f]", expire="30m" } // go to Undefined state after nothing for thirty minutes
Switch Sw "Sw [%s]" { zwave="3", expire="10m,command=OFF" } // turn light off after ten minutes