1. A method of incrementally processing a source representation of a set of knowledge- or object-based objects into an intermediate representation, the objects having a previous intermediate representation, including the steps of: (a) making a change in a source representation of a first object; (b) transferring information identifying the change made in the source representation of the first object to a parser; (c) running the parser on the modified source representation of the first object to check for correct syntax; (d) preparing a list of changed facets of the first object included in the change; (e) for a selected changed facet performing the following steps: (i) examining characteristics of the change in order to determine effects of a change to a facet of the changed object; (ii) if the selected changed facet affects the first object, then modify the previous intermediate representation of the first object to implement the change; (iii) if the selected changed facet affects objects referencing or being referenced by the first object, then detach all references to the first object and modify the intermediate representation of the objects referencing or being referenced by the first object to implement the change; (iv) if the selected changed facet modifies an attribute of a first set of objects, propagating the change to each of the intermediate representations of the objects in the first set of objects and then recursively repeating the propagating step for each of the objects in the first set of objects until the attribute changes to each modified object have been propagated; (f) repeating step (e) for each changed facet in the list; and (g) performing semantic checking on each of the objects changed in step (e).