← Back to Patent Explorer
US5561803A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer program product and program storage device for incremental processing of computer objects

Assignee: International Business Machines Corp
•
Filing: 1995-06-07
•
Granted: 1996-10-01
•
Expires: 2015-06-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Method and system for incrementally processing a source representation of a set of objects into intermediate representation is disclosed. The invention is used after the objects have been processed once and, therefore, have a previous intermediate representation. The object of the invention is to re-process only those objects which have been changed in some way when a modification is made. Each changed facet of a changed object is selected in turn for processing. If the selected changed facet affects the object itself, then the previous intermediate representation of the object is modified. If the selected changed facet affects objects referencing or being referenced by the first object, then the references to the first object are detached and the intermediate representation of the objects referencing or being referenced by the object are modified accordingly. If the selected changed facet modifies an attribute of other objects, due to inter-relationships such as inheritance, etc., recursively propagate the change to the intermediate representations of the objects in the affected objects by repeating the propagating step for each of the affected objects until the attribute changes to each modified object have been propagated to all affected objects. Semantic checking is then performed on each of the objects changed.

Inventors

  • 👤 Danny Kilis

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 08:43
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/48

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 300 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for 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, said method steps comprising: (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).
Claim 2
Dependent Claim 300 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for 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, said method steps comprising: (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).
Claim 3
Dependent Claim 344 words
The program storage device of claim 1 wherein the propagating action of method step (e)(iv) is performed by a callable re-entrant procedure (PROP -- CHANGE) which accepts an object and an action code as parameters, the action codes being "Type A" for deletion of a slot, "Type B" for modification of an attribute of a slot, "Type C" for undoing of inheritance for attributes of a slot, and "Type D" for addition of a slot, the first object being a parent object of one or more child objects and one or more of the child objects inheriting attributes from the parent object, the PROP -- CHANGE procedure of step (e)(iii) further comprising the following method steps executed for each child object: (a) if the child object does not inherit attributes from the parent, then returning to a point from which PROP -- CHANGE was last called; (b) if modification of an attribute is caused by a deletion of a slot, then if the slot is locally specified, recursively calling PROP -- CHANGE with the child object and "Type C" as the parameters for PROP -- CHANGE, else: recursively calling PROP -- CHANGE with the child object and "Type A" as the parameters for PROP -- CHANGE; deleting the slot; modifying the intermediate representation of objects inter-related with the child object to implement the change; (c) recursively calling PROP -- CHANGE with the child object and the action code as the parameters for PROP -- CHANGE; (d) if the modification of an attribute is caused by a "Type B" action and if the attribute is not locally specified, then processing inter-related objects to implement the change; (e) if the modification of an attribute is caused by a "Type C" action and if the attribute is not locally specified, then reverting to a default attribute and processing inter-related objects to implement the change; (f) if the modification of an attribute is caused by a "Type D" action, then reprocessing static instances to implement the change; and (g) marking the child object for inheritance during semantic checking.
Claim 4
Dependent Claim 352 words
A computer program product for use in knowledge- or object-based systems, said computer program product comprising: a computer readable medium having computer readable program means embodied in said medium for causing a computer to incrementally process a source representation of a set of objects into an intermediate representation, the objects having a previous intermediate representation, comprising: (a) computer readable program code means for making a change in a source representation of a first object; (b) computer readable program code means for transferring information identifying the change made in the source representation of the first object to a parser; (c) computer readable program code means for running the parser on the modified source representation of the first object to check for correct syntax; (d) computer readable program code means for preparing a list of changed facets of the first object included in the change; (e) computer readable program code means for examining the characteristics of the change in order to determine the effects of a change to a facet of the changed object; (f) computer readable program code means for modifying the previous intermediate representation of the first object when the selected changed facet affects the first object; (g) computer readable program code means for detaching the references to the first object and modifying the intermediate representation of the objects referencing or being referenced by the first object to implement the change when the selected changed facet affects objects referencing or being referenced by the first object; (h) computer readable program code means for recursively propagating the change to each of the intermediate representation of the objects in the first set of objects when the selected changed facet modifies an attribute of a first set of objects, and repeatedly activating the propagating means for each of the objects in the first set of objects until the attribute changes to each modified object have been propagated; (i) computer readable program code means for repeatedly activating means (e), (f) and (g) for each changed facet in the list; and (j) computer readable program code means for performing semantic checking on each of the objects changed.
Claim 5
Dependent Claim 352 words
A computer program product for use in knowledge- or object-based systems, said computer program product comprising: a computer readable medium having computer readable program means embodied in said medium for causing a computer to incrementally process a source representation of a set of objects into an intermediate representation, the objects having a previous intermediate representation, comprising: (a) computer readable program code means for making a change in a source representation of a first object; (b) computer readable program code means for transferring information identifying the change made in the source representation of the first object to a parser; (c) computer readable program code means for running the parser on the modified source representation of the first object to check for correct syntax; (d) computer readable program code means for preparing a list of changed facets of the first object included in the change; (e) computer readable program code means for examining the characteristics of the change in order to determine the effects of a change to a facet of the changed object; (f) computer readable program code means for modifying the previous intermediate representation of the first object when the selected changed facet affects the first object; (g) computer readable program code means for detaching the references to the first object and modifying the intermediate representation of the objects referencing or being referenced by the first object to implement the change when the selected changed facet affects objects referencing or being referenced by the first object; (h) computer readable program code means for recursively propagating the change to each of the intermediate representation of the objects in the first set of objects when the selected changed facet modifies an attribute of a first set of objects, and repeatedly activating the propagating means for each of the objects in the first set of objects until the attribute changes to each modified object have been propagated; (i) computer readable program code means for repeatedly activating means (e), (f) and (g) for each changed facet in the list; and (j) computer readable program code means for performing semantic checking on each of the objects changed.

References Cited (Backward Citations)

DE406028C Cited
US4558413A Cited
US4742467A Cited
US4658370A Cited
US4924408A Cited
US5170465A Cited
US5182806A Cited
US5193191A Cited
US5201050A Cited
US5313387A Cited
US5325531A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-10-01 2000-04-01 2000-10-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-10-01 2004-04-01 2004-10-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-10-01 2008-04-01 2008-10-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag