Claims
- 1. A method for exchanging information between entities on a network comprising:
installing an annotation management system on the network; identifying a plurality of annotatable data objects manipulated by a plurality of applications on the network; providing a set of annotation structures, each associated with one or more of the annotatable data objects; and providing, via the annotation management system, one or more interfaces for manipulating annotations for the annotatable data objects, wherein the information presented in each interface is dependent on an associated one of the annotation structures.
- 2. The method of claim 1, wherein the one or more interfaces comprise at least one graphical user interface, based on an associated annotation structure.
- 3. The method of claim 2, wherein providing the at least one graphical user interface comprises transforming the associated annotation structure.
- 4. The method of claim 3, further comprising providing one or more transforms for use in transforming annotations structures into graphical user interfaces.
- 5. The method of claim 4, wherein the one or more transforms comprise one or more Extensible Stylesheet Language transforms.
- 6. The method of claim 1, further comprising installing one or more plug-in components for interfacing between the one or more applications and the annotation management system.
- 7. The method of claim 6, further comprising installing an annotation broker on the one or more client computers, the annotation broker providing an interface between one or more of the plug-in components and the annotation server.
- 8. The method of claim 1, further comprising installing a set of application programming interface functions for the annotation management system, callable from the one or more applications.
- 9. The method of claim 8, wherein the set of application programming interface functions comprise functions for manipulating annotations.
- 10. The method of claim 8, wherein the set of application programming interface functions comprise functions for retrieving annotations for a specified data object.
- 11. The method of claim 8, wherein the set of application programming interface functions include functions for retrieving an indication of data objects described by an annotation.
- 12. The method of claim 8, wherein the set of application programming interface functions comprise at least one function for retrieving an indication of the plurality of annotatable data objects.
- 13. The method of claim 1, wherein providing the annotation structures comprises selecting, for each annotation structure, one or more annotation fields to include in the annotation structure.
- 14. The method of claim 13, wherein at least some of the one or more interfaces for manipulating the annotatable data objects allow a user to enter information corresponding to one or more annotation fields included in an associated annotation structure.
- 15. A method of creating annotations for a plurality of different type data objects manipulated by a plurality of applications, comprising:
receiving a request from a user to create an annotation for a data object; retrieving one or more annotation structures associated with the data object, each annotation structure containing one or more annotation fields; generating a graphical user interface based on one of the annotation structures, the graphical user interface allowing entry of the one or more annotation fields associated with the one annotation structure; and creating an annotation record comprising the information entered, via the graphical user interface, for the one or more annotation fields.
- 16. The method of claim 15, wherein the one or more annotation structures retrieved depends, at least in part, on at least one credential of a user initiating the request.
- 17. The method of claim 16, wherein the at least one credential comprises a role of the user.
- 18. The method of claim 15, wherein a plurality of annotation structures are associated with the data object and the method further comprises:
presenting, to a user, the plurality of annotation structures associated with the data object; receiving, from the user, a selection of one of the plurality of annotation structures; and generating the graphical user interface based on the selected annotation structure.
- 19. The method of claim 18, further comprising receiving, from the user, a selected role in which the user has chosen to act.
- 20. The method of claim 19, wherein the plurality of annotation structures presented to the user is dependent on the selected role.
- 21. The method of claim 19, further comprising:
retrieving, via an application programming interface, a plurality of roles associated with the user; and presenting, to the user, the plurality of roles associated with the user.
- 22. The method of claim 15, wherein retrieving one or more annotation structures associated with the data object comprises passing an application programming interface function at least an indication of the data object.
- 23. The method of claim 22, wherein retrieving the one or more annotation structures associated with the data object further comprises passing the application programming interface function at least one credential of a user.
- 24. The method of claim 22, wherein the at least one user credential comprises at least one of a role and a user identification.
- 25. A computer-readable medium containing an executable component for managing annotations created for data objects manipulated by one or more applications on a network which, when executed by a processor, performs operations comprising:
receiving a request from one of the applications to create an annotation for a data object; retrieving one or more annotation structures associated with the data object. each annotation structure containing one or more annotation fields; generating a graphical user interface based on one of the annotation structures, the graphical user interface allowing entry of the one or more annotation fields associated with the one annotation structure; and creating an annotation record comprising the information entered, via the graphical user interface, for the one or more annotation fields.
- 26. The computer-readable medium of claim 25, wherein receiving a request from one of the applications to create an annotation for a data object comprises receiving the request from a plug-in component that provides an interface between the requesting application and the executable component for managing annotations.
- 27. The computer-readable medium of claim 26, wherein receiving a request from one of the applications to create an annotation for a data object comprises receiving the request from an annotation broker that provides an interface between plug-in components of one or more applications and the executable component for managing annotations.
- 28. A system for managing annotations for different type data objects manipulated by a plurality of different type applications, comprising:
an annotation database for storing annotations separately from the data objects associated with the annotations; a set of annotation structures, each defining a set of annotation fields; a set of plug-in components, each specific to one or more applications running on a client computer, configured to communicate with an annotation server; and an annotation server configured to receive, via the annotation broker, requests to access annotations issued by the one or more of the applications running on the client computer and generate a graphical user interface screen, based on an annotation structure associated with the data object identified in the request, for creating or viewing annotations for a data object identified in the request.
- 29. The system of claim 28, wherein the one or more applications are installed on a client computer and the annotation system further comprises an annotation broker providing an interface between the one or more plug-in components and the annotation system.
- 30. A system for managing annotations for different type data objects manipulated by a plurality of different type applications, comprising:
an annotation database for storing annotations separately from the data objects associated with the annotations; a set of annotation structures, each defining a set of annotation fields; an annotation server configured to receive requests, issued by the applications, to access annotations for data objects identified in the requests; and a set of application programming interface functions providing an interface between the applications and the annotation server.
- 31. The system of claim 30, further comprising a set of application plug-ins, each specific to one or more of the applications and configured to communicate with the annotation server via the application programming interface functions.
- 32. The system of claim 30, wherein the annotation server is configured to retrieve, via one or more application programming function calls, annotations associated with a data object identified in a request.
- 33. The system of claim 31, wherein the annotation server is configured to:
retrieve, via a first application programming function call, one or more annotation identifications associated with the data object identified in the request; and using the annotation identifications, retrieve, via a second application programming interface function call, the corresponding annotations from the annotation store.
- 34. The system of claim 30, wherein the annotation server is configured to: retrieve, via an application programming interface function call, a list of one or more roles associated with a user; and
present, to the user, the one or more roles associated with the user.
- 35. The system of claim 33, wherein the annotation server is further configured to:
receive, from the user, a selected one of the one or more roles associated with the user; and indicate to the system, via an application programming interface function call, the role selected by the user.
- 36. The system of claim 29, wherein the annotation server is configured to:
retrieve, via an application programming interface function call, annotation structures associated with data objects identified in requests; and transform the annotation structures into graphical user interfaces for creating annotations for the data objects.
- 37. The system of claim 36, wherein the annotation server is further configured to retrieve, via an application programming interface function call, one or more transforms associated with an annotation structure for use in transforming the annotation structure into a graphical user interface.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application is related to commonly-owned U.S. Pat. No. 6,519,603, entitled “Method And System For Organizing An Annotation Structure And For Querying Data And Annotations”, commonly-owned, co-pending application Ser. No. 10/083,075, entitled “Improved Application Portability And Extensibility Through Database Schema And Query Abstraction,” commonly owned, co-pending application Ser. No. 10/310,192, entitled “Annotation Validity Using Partial Checksums,” and commonly owned co-pending application, entitled “Heterogeneous Multi-Level Extendable Indexing For General Purpose Annotation Systems,” filed herewith (Attorney Docket No. ROC920030127US1), which are herein incorporated by reference.