1. A computer system at least one data input, the at least one data input for providing a data stream from at least one of a sensor, a data output from another computer, a computer program and a message containing encoded intelligible human language; at least one processor for processing each data stream for creating software objects corresponding to discrete informational elements present in the data stream; a first model comprising an object structure in which objects therein represent real world entities; a context model, dynamically updated by processing of the data stream; and a mapping function which communicates with the at least one processor and the context model and which associates the software objects with corresponding objects within the first model which causes computer code attached to the software objects of the first model to be executed and causes an alteration of the context model and depending on a result of the alteration providing at least one update to the first model including at least one of creation of a new model class representing a class of real world objects, creation of a new model object which represents an instance of a class, creation of a new defined property of the class or an object, and updating a value of a property of a class or an object, the creations providing an extended model.