1. A method of recognizing events, implemented by a processor in an event recognition system, processing temporal data from at least one data source with a temporal decision tree comprising nodes at different levels of the temporal decision tree structure, the method comprising: recording data samples sequentially at a predetermined interval from the at least one data source; and processing the data samples with the temporal decision tree, the processing including: testing at least one feature of the data samples from the at least one data source for a predetermined time window at a node of the temporal decision tree, the predetermined time window being a discrete time period within a time domain of the recorded sequential data samples, and based on a result of the testing, making a decision regarding an event or testing a same or a different feature at a node at a next level below a previous node.