Claims
- 1. A method for maintaining relationships between entities in a computer system, each entity having a plurality nodes, the method comprising the steps of:
modifying one of the plurality of nodes; searching for a plurality of dependent nodes from the plurality of nodes coupled to the one node; ordering the plurality of dependent nodes into an order; and evaluating the plurality of dependent nodes in the order.
- 2. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes and a plurality of function nodes, each of the plurality of function nodes having an evaluation function; and
wherein the evaluating step comprises the steps of:
identifying a second plurality of function nodes in the plurality of dependent nodes; and evaluating the evaluation functions of the second plurality of function nodes.
- 3. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes and a plurality of predicate nodes, each of the plurality of predicate nodes having value nodes associated therewith;
wherein the evaluating step comprises the steps of:
identifying a second plurality of predicate nodes in the plurality of dependent nodes; identifying each of the second plurality of predicate nodes and associated value nodes; passing each predicate node and the associated value nodes to a solver; and solving the predicate.
- 4. The method of claim 3, wherein the solving step comprises the step of:
simultaneously manipulating the associated value nodes until each predicate node is satisfied.
- 5. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes and a plurality of function nodes; and
wherein the modifying step comprises modifying one of the plurality of value nodes.
- 6. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes and a plurality of function nodes, each of the plurality of function nodes having an evaluation function; and
wherein the modifying step comprises modifying the evaluation function of one of the plurality of function nodes.
- 7. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes, a plurality of function nodes, and a plurality of predicate nodes, each of the plurality of function nodes having value nodes in a parent and child dependency relation, each of the plurality of predicate nodes having value nodes in an equivalence relation; and
wherein the searching step comprises:
identifying nodes of the plurality of nodes directly coupled to the one node; identifying nodes of the plurality of nodes indirectly coupled to the one node as children of dependency relations; and identifying nodes of the plurality of nodes indirectly coupled to the one node in equivalence relations.
- 8. The method of claim 1, wherein the plurality of nodes comprises a plurality of value nodes, a plurality of function nodes, and a plurality of predicate nodes, each of the plurality of function nodes having value nodes in a parent and child dependency relation, each of the plurality of predicate nodes having value nodes in an equivalence relation; and
wherein the ordering step further comprises ordering parent value nodes before children value nodes.
- 9. A method for copying an entity from a plurality of entities in a computer system, and maintaining relationships of the entity, each of the plurality of entities having relationships with other entities, the method comprising the steps of:
determining an entity of the plurality of entities to copy, the entity having a set of relationships; determining a domain of interest from the plurality of entities for the entity based upon the set of relationships; obtaining a duplicate of each entity in the domain of interest to form a set of entities; and establishing the set of relationships among each of the set of entities.
- 10. The method of claim 9, wherein the plurality of entities comprises a plurality of nodes, and a plurality of copy semantic nodes, each of the plurality of nodes having value nodes in a parent and child dependency relation with a copy semantic node; and
wherein the determining a domain step comprises:
identifying entities of the plurality of entities having nodes directly coupled to the entity; and identifying entities of the plurality of entities having nodes indirectly coupled to the entity as children of a copy semantic node.
- 11. The method of claim 10, wherein the identifying entities having nodes indirectly coupled to the entity steps, are repeated for entities having transitive nodes.
- 12. The method of claim 9, wherein the duplicating step further comprises:
determining whether each entity in the domain of interest must be duplicated; duplicating entities in the domain of interest that must be duplicated; and duplicating entities in the domain of interest that have no replacement in the plurality of entities.
- 13. The method of claim 9, further comprising the step of establishing relations between the set of entities and the plurality of entities.
- 14. A method for deleting an entity from a plurality of entities in a computer system, each of the plurality of entities having relationships with other entities, the method comprising the steps of:
determining an entity of the plurality of entities to delete, the entity having a set of relationships; determining a domain of interest from the plurality of entities for the entity based upon the set of relationships; disconnecting each entity in the domain of interest from entities in the plurality of entities.
- 15. The method of claim 14, wherein the plurality of entities comprises a plurality of value nodes, and a plurality of delete semantic nodes, each of the plurality of delete semantic nodes having value nodes in a parent and child dependency relation; and
wherein the determining a domain step comprises:
identifying entities of the plurality of entities having nodes directly coupled to the entity; and identifying entities of the plurality of entities having nodes indirectly coupled to the entity as children of dependency relations.
- 16. The method of claim 15, wherein the identifying entities having nodes indirectly coupled to the entity steps, recurse for entities having transitive nodes.
- 17. A method for reestablishing relationships between entities in a computer system, each entity having a plurality nodes, the method comprising the steps of:
maintaining a list commands for a transaction; maintaining a batch list of nodes affected by each of the list of commands; creating relationships that were deleted between nodes; modifying relationships that were modified between nodes; and deleting relationships that were created between nodes.
- 18. A method for creating, maintaining, and deleting relationships among a plurality nodes of entities in a computer system, the plurality of nodes including value nodes, function nodes, predicate nodes, delete semantic nodes, and copy semantic nodes, the method comprising the steps of:
providing a first entity; providing a second entity; establishing relationships between a plurality of nodes in the first entity; establishing relationships between the plurality of nodes in the first entity and a plurality of nodes in the second entity; deleting nodes in the first entity according to delete semantic nodes in the first entity; and copying nodes in the second entity according to copy semantic nodes in the second entity.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This patent application is related to and incorporates by reference the subject matter of commonly owned and assigned co-pending U.S. patent application Ser. No. 08/378,251 entitled “OLE For Design and Modeling”, filed Jan. 23, 1995, by Mark Fortenbery, Robert Patience, Dominique Payannet, and Cameron Stubbs, which is directed towards extensions of OLE enabling the transfer of two and three-dimensional data objects between computer-aided design and computer-aided manufacturing (CAD/CAM) software applications.
[0002] A portion of the disclosure of this patent contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever
Continuations (3)
|
Number |
Date |
Country |
| Parent |
09459812 |
Dec 1999 |
US |
| Child |
09850727 |
May 2001 |
US |
| Parent |
08937147 |
Sep 1997 |
US |
| Child |
09459812 |
Dec 1999 |
US |
| Parent |
08437942 |
May 1995 |
US |
| Child |
08937147 |
Sep 1997 |
US |