Method of filing stapled documents with a staple relationship involving one or more application programs5101345Abstract This invention relates to a method of establishing a staple relationship between two documents within a context of an application program. An end user indicates to the system that a staple relationship is to be established between two identified documents. The end user enters a definition of the staple relationship which includes any attributes to be associated with the identified documents within the staple relationship and the identity of at least one application within whose context the relationship is to exist. The system will create the staple relationship and file the identified documents in a library within the context of the specified application. The system then maintains the staple relationship between the identified documents within the context of the specified application. Claims What I claim is: Description CROSS-REFERENCE TO RELATED APPLICATIONS
______________________________________
BEGIN REQUESTER PROC
INPUT
ACCESS CONTROL INFORMATION
CONTEXTUAL-SEARCH CHARACTERISTICS
DO FOR EACH DOCUMENT SPECIFIED IN
THIS
REQUEST:
A POINTER TO THE PHYSICAL
DOCUMENT (PPTR) WHICH WILL BE
EITHER THE LOCAL POINTER
OR THE LIBRARY IDENTIFIER.
A UNIQUE IDENTIFIER (DID) FOR THIS
DOCUMENT WITHIN THE SCOPE OF THIS
REQUEST.
A REFERENCE IDENTIFIER (RID) FOR
EACH STAPLER BY WHICH THIS
DOCUMENT IS ATTACHED.
AN INDICATOR SHOWING THAT THE
DOCUMENTS ARE STAPLED WITHIN THE
CONTEXT OF ONE OR MORE
APPLICATIONS.
NAMES OF THE APPLICATIONS IN WHOSE
CONTEXT THE STAPLE RELATION IS
DEFINED.
HISTORY ATTRIBUTES FOR THE
DOCUMENTS.
ENDDO
PROCESS
SET THE ACCESS CONTROL, CONTEXTUAL-
SEARCH CHARACTERISTICS, AND
IDENTIFIERS.
DO FOR EACH DOCUMENT (IDD OR RDD)
EXPLICITLY SPECIFIED IN THE
REQUEST:
IF THE DOCUMENT DOES NOT EXIST IN
THE LIBRARY, THEN
COPY THE DOCUMENT.
SET THE DOCUMENT ADDRESS (PPTR)
TO POINT TO THE POSITION OF THE
DOCUMENT IN THE REQUEST UNIT.
SET UP THE DATA OBJECT (DRO)
WHICH WILL CONTAIN THE UNIQUE
LIBRARY IDENTIFIER FOR THE
DOCUMENTS WHICH WILL BE STAPLED
TO THIS DOCUMENT (STETOC).
SET THE STAPLEE ATTRIBUTES
(HISTORY) IN THE (DRO) AS
SPECIFIED.
SET UP THE DATA OBJECT (DRO)
WHICH WILL CONTAIN THE UNIQUE
LIBRARY IDENTIFIER FOR THE
DOCUMENTS WHICH WILL BE STAPLED
BY THIS DOCUMENT (STRTOC).
SET THE STAPLER ATTRIBUTES
(HISTORY) IN THE (DRO) AS
SPECIFIED.
ENDIF
SET SPECIFIED IDENTIFIER FOR THIS
DOCUMENT (DID).
DO FOR EACH DOCUMENT (RID) STAPLED
TO THIS DOCUMENT:
SET THE RID FOR THE STAPLER FOR
THIS IDD OR RDD.
SET THE RELATIONSHIP TO STAPLE FOR
THIS IDD OR RDD.
DO FOR EACH APPLICATION IN WHOSE
CONTEXT THE PAIR IS STAPLED:
SET THE ACON FOR THIS RID SET
TO THE NAME OF THE
APPLICATION.
ENDDO
ENDDO
ENDDO
OUTPUT
SEND COMPLETED REQUEST TO
LIBRARY SERVER.
END REQUESTER PROC
______________________________________
An end user (EU) or an application program can create two documents, attach them in a staple relationship and file the attached pair of documents into the library 12. Moreover, the EU can stipulate that the staple relationship between the pair of documents only exists within an application. Subsequent operations on the pair of documents can be performed on the documents separately or as a stapled pair of documents within the context of the application or applications. For purposes of illustration and not limitation, a document and the document attached thereto can be retrieved or printed by only referring to one of the documents in the staple relationship. The EU interacts with the dialogue manager application program 14 and enters a request to create the staple relationship between two documents in the context of the application or applications which include the following data: access control, contextual-search characteristics, and requester/principle identifiers. The EU also defines the staple relationship by entering an indication that the relationship is restricted to the context of a specified application, a reference to each specified applications within whose context the staple relationship occurs, and stapler/staplee attributes of the documents to be filed including whether or not history is to be maintained. A stapler document is attached to a staplee document. Additionally, the definition of the staple relationship includes pointers to the physical location of all of the documents to be filed. These documents may be directly accessible to the requester application program 16 or accessible to the requester's server 18. Referring to FIG. 7, there is shown a flow diagram for the requester application program 16 in filing stapled documents in the library 12 in the context of an application or applications. The requester application program 16 interfaces with the dialogue manager application 14 in step 100 to get the request entered by the EU. In step 102, the requester application program 16 builds operands specifying the access, contextual-search characteristics, requester and principle identifiers for all of the specified documents. The requester application program 16, in steps 104 through 112, builds an operand for each document explicitly specified in the request. If the document is passed with the request, an IDD operand is generated. If the document is already stored in the library 12, a RDD operand is generated. The IDD and RDD operands, respectively, include a pointer to the physical location of the document (PPTR). The RDD operand will contain a library pointer. The IDD operand will contain a pointer to the document unit contained within the request. The IDD and RDD operands also include a unique document identifier (DID) within the scope of the request. Moreover, the IDD and RDD operands may include optional references to documents stapled to this document (RID=DID of the stapler document). The requester application program 16 also builds data areas which are associated with each of the documents specified in the request. A document relation object (DRO) contains the data for documents stapled by another (STETOC), the history attribute for documents stapled to another and data for documents stapled to another (STRTOC). After all of the documents which are not stored in the library 12 are copied, the specified identifier for this document is set in step 114. In steps 116 and 118, for each document (RID) which is stapled to a document (IDD or RDD) specified in the request, a document RID and the relationship to the stapler are set. The staplee operand IDD or RDD has a subfield which is called RID. The value of RID is set to the unique identifier (DID) associated with the stapler's operand (IDD or RDD). Moreover, the relationship suboperand for the staplee document is set to indicate the staple relationship. It should be noted that a document can be stapled by or to a plurality of documents. In step 120, a determination is made whether the staple relationship is to exist within the context of an application. In step 122, for each application specified in the request, an application context, ACON suboperand, is set equal to the name of the application. The ACON suboperand for the staplee operand indicates that the staple relationship occurs within the context of the application whose name equals the ACON value. Step 124 determines whether there are other documents to be stapled to the document under consideration. Steps 116 through 122 are repeated for each of the documents stapled to the document under consideration. Step 126 determines if all of the documents specified in the request have been processed and steps 104 through 124 are repeated for any remaining unprocessed documents. Otherwise, a completed request is transmitted to the requester's server 18 in step 128.
______________________________________
BEGIN LIBRARY SERVER PROC
INPUT
ACCESS CONTROL INFORMATION.
CONTEXTUAL-SEARCH CHARACTERISTICS.
REQUESTER/PRINCIPLE IDENTIFIERS.
DO FOR EACH DOCUMENT SPECIFIED IN
THIS REQUEST, BUILD AN IDD OR A RDD
OPERAND WHICH INCLUDES:
A POINTER TO THE PHYSICAL
DOCUMENT (PPTR) WHICH WILL BE
EITHER THE LOCAL POINTER (IDD
OPERAND) OR THE LIBRARY
IDENTIFIER (RDD OPERAND).
AN UNIQUE IDENTIFIER (DID) FOR THIS
DOCUMENT WITHIN THE SCOPE OF THIS
REQUEST.
A REFERENCE IDENTIFIER (RID) FOR
EACH DOCUMENT STAPLED TO THIS
DOCUMENT.
A NAME FOR EACH APPLICATION (ACON)
IN WHOSE CONTEXT THE PAIR IS
STAPLED.
A DOCUMENT RELATION OBJECT (DRO)
CONTAINING THE FOLLOWING:
DOCUMENT RELATION ATTRIBUTES.
A STAPLER ATTRIBUTE.
A STAPLER TABLE-OF-CONTENTS
(STRTOC) AREA WHICH WILL BE SET
UP BUT WILL NOT CONTAIN ANY
ENTRIES.
A STAPLEE ATTRIBUTE.
A STAPLEE TABLE-OF-CONTENTS
(STETOC) AREA WHICH WILL BE SET
UP BUT WILL NOT CONTAIN ANY
ENTRIES.
ENDDO
PROCESS
CALL BUILD TABLES PROC TO BUILD DID/LADN
AND RID/DID TABLES.
DO FOR EVERY STAPLER (RID ENTRY):
DO FOR EVERY STAPLEE (DID) TO BE
STAPLED BY THIS STAPLER:
PUT THE LADN ASSOCIATED WITH THIS
DID IN THE STAPLER'S
TABLE-OF-CONTENTS.
IF HISTORY IS SPECIFIED FOR THIS
STAPLER, THEN
SET THE REQUESTER'S ID IN THE
HISTORY PORTION OF THE ENTRY.
SET THE PRINCIPLE'S ID IN THE
HISTORY PORTION OF THE ENTRY.
SET THE CURRENT DATE AND TIME
IN THE HISTORY PORTION OF THE
ENTRY.
ENDIF
DO FOR EVERY APPLICATION IN WHOSE
CONTEXT THE STAPLE RELATION IS
DEFINED:
SET THE APPLICATION'S NAME
INTO THE APPLICATION CONTEXT
SECTION FOR THIS STAPLER
ENTRY.
SET THE APPLICATION NAME
INTO THE APPLICATION CONTEXT
SECTION FOR THIS STAPLEE
ENTRY.
ENDDO
PUT THE LADN ASSOCIATED WITH THIS
STAPLER (RID) IN THE STAPLEE
TABLE-OF-CONTENTS.
IF HISTORY IS SPECIFIED FOR THIS
STAPLEE, THEN
SET THE REQUESTER'S ID IN THE
HISTORY PORTION OF THE ENTRY.
SET THE PRINCIPLE'S ID IN THE
HISTORY PORTION OF THE ENTRY.
SET THE CURRENT DATE AND TIME
IN THE HISTORY PORTION OF THE
ENTRY.
ENDIF
ENDDO
ENDDO
END PROCESS
END LIBRARY SERVER PROC
______________________________________
As noted above, each document operand (IDD or RDD) has a unique identifier (DID) assigned thereto. The library server 18 than gets a LADN for every document explicitly specified in the request. As shown in Table 1 below, a BUILD TABLE PROC is called to build a temporary table to match every DID to an associated LADN.
TABLE 1
______________________________________
DID LADN
______________________________________
1 LADN1
2 LADN2
3 LADN3
4 LADN4
5 LADN5
6 LADN6
7 LADN7
8 LADN8
9 LADN9
______________________________________
Moreover, each document operand which corresponds to a document that will be stapled by a stapler document includes a reference (RID) to that stapler document's unique document identifier (DID). The RID with the document operand is set to the value of the stapler document's operand's DID. The library server 18 then facilitates the building of a temporary table containing an entry for each stapler document referenced. Each entry for a stapler document will contain a list of DIDs representing the documents that are stapled by this stapler document. Each DID will be associated with the application or applications in whose context the staple relationship occurs. For purposes of illustration and set forth in the Table 2 below, a stapler document with a DID of 1 is stapled to staplee documents with DIDs 3, 2, and 4. However, the stapler document 1 is only stapled to staplee document 3 in the context of applications having names A and B. A stapler document with a DID of 4 is stapled to staplee documents with DIDs 5, 2, and 6. However, the staplee document 6 is stapled by the stapler document 4 only in the context of an application having a name C. The document operand for staplee document 3 contains one RID for the specified stapler document 1. Moreover, the staplee document 3 also includes two ACONs associated with the stapler document 1.
TABLE 2
______________________________________
RID DID(ACON)
______________________________________
1 3(A,B)/2/4
4 5/2/6(C)
______________________________________
The operands for all of the documents may be similar to that shown in Table 3:
TABLE 3
______________________________________
DID=1
DID=2,(RID=1,RELATION=STAPLE),(RID=4,
RELATION=STAPLE)
DID=3,(RID=1,RELATION=STAPLE,ACON=A,
ACON=B)
DID=4,(RID=1,RELATION=STAPLE)
DID=5,(RID=4,RELATION=STAPLE)
DID=6,(RID=4,RELATION=STAPLE,ACON=C)
______________________________________
Referring to FIG. 8, there is shown a flow diagram for the server 18 in filing the stapled documents in the library 12. In step 130, the server 18 calls a build tables routine to build DID/LADN and RID/DID tables. In steps 132, 134 and 136, for each stapler document RID and each document DID in the RID table entry, find stapler table-of-contents (STRTOC) and create the appropriate entry for this staplee document therein. The entry in the STRTOC includes a LADN for the staplee document and any history information. In step 138, a determination is made as to whether the stapler document history is to be maintained. If history is to be maintained on the stapler document, requester and principle user IDs and the current date and time are set in step 140. The requester user is one who is performing the request. The principle user is one on whose behalf the requester user may be acting. Generally, the requester and principle users are the same person or application. Step 142 determines whether the staple relationship is to occur with an application context. In step 146, an entry is made in the staplee table-of-contents (STETOC) for the stapler document. The entry in the STETOC includes a LADN for the stapler document and any history information. Step 148 determines whether history is to be maintained for the staplee document. The requester/principle users, current date and time are set in step 150 if history is to be maintained. Step 160 determines whether all staplee document have been processed. If there are other staplee documents to be processed, steps 134 through 150 are repeated. Step 162 determines whether the last RID in the RID/DID table has been processed. If there are other RIDS to be processed, control is transferred to step 132. Set out below is an illustration of an application program useable by the server 18 in building the DID/LADN and RID/DID tables. The program is in program design language from which source code and machine code are derivable.
______________________________________
BEGIN BUILD TABLES PROC
DO FOR EACH DOCUMENT SPECIFIED IN THE
REQUEST:
IF THE DOCUMENT DOES NOT EXIST IN THE
LIBRARY, THEN
COPY THE DOCUMENT AND ITS
RELATED OBJECTS INTO THE LIBRARY.
ASSIGN AN UNIQUE LIBRARY
IDENTIFIER (LADN) TO THIS DOCUMENT.
ELSE
OBTAIN THE UNIQUE LIBRARY
IDENTIFIER (LADN) FOR THIS
DOCUMENT.
ENDIF
SAVE THE UNIQUE IDENTIFIER (DID) FOR
THE REQUEST WITH THE UNIQUE LIBRARY
IDENTIFIER (LADN) IN DID/LADN TABLE.
DO FOR EACH STAPLER REFERENCED (RID)
BY THIS DOCUMENT OPERAND:
IF THERE IS NO ENTRY IN THE RID/DID
TABLE, THEN
CREATE AN ENTRY FOR THIS RID IN
THE TABLE.
ENDIF
SET DID IN THE RID/DID TABLE.
IF THIS STAPLE RELATION IS IN THE
CONTEXT OF AN APPLICATION, THEN
SET THE APPLICATION'S NAME INTO
THE ACON FIELD FOR THIS STAPLER
ENTRY.
ENDIF
ENDDO
ENDDO
END BUILD TABLES PROC
______________________________________
The server 18 keeps track of the order in which document operands are specified. The server 18 builds an entry in the temporary table for every document specified in the IDD or RDD operand. Each entry matches a DID to a LADN. Additionally, if the current document operand references a stapler document by which is will be stapled, the RID/DID temporary table is updated. The server 18 then processes a IDD if the document does not exist in the library 12. The document is then filed into the library 12 along with its associated data areas which includes the DRO and assigns a new LADN to the document. Thereafter, server 18 processes a RDD if the document does exist in the library 12 and builds the appropriate entries in the RID/DID temporary table for the document. Referring to FIG. 9, there is shown a flow diagram for the build table routine in generating the RID/DID and DID/LADN tables. As noted above, the build table routine is called by the server 18. For each DID in the call command, a determination is made in steps 170 and 172 whether the document associated with each respective DID exists in the library 12. If the document is not in the library 12, a copy of the document and its related objects is made and a LADN is assigned thereto in step 176. Otherwise, the LADN for the document filed in the library 12 is fetched in step 174. For each stapler document RID referenced by this document, a determination is made in steps 178 and 180 whether an entry has to be made in the RID/DID table. An entry is made in the RID/DID table in step 182 if required. The DID is set in step 184. Step 186 determines whether the staple relationship occurs within an application context. The application's name is set in the ACON field for this stapler document entry. Step 190 determines whether all of the stapler documents have been processed and transfers control to step 178 if there are other stapler documents to be processed. Step 192 determines whether the last DID has been processed and transfers control to step 170 if there are other DIDs to be processed. In summary, the invention relates to a method of filing stapled documents in an information processing system within a context of an application. An end user indicates to the system that a staple relationship is to be created between at least two identified documents stored in therein. The staple relationship is then defined by entering an indication that the staple relationship is restricted to the context of the application, the name of the application, stapler/staplee attributes of the at least two documents including whether or not history is to be maintained and pointers to the physical locations of the at least two documents in the system. In response to the entry of data defining the staple relationship, a file request is transmitted to the library server along with copies of any documents which are not filed in the library. The server will set the data objects associated with the identified documents to reflect the staple relationship. Thereafter, the server files the identified documents into the library as specified by the staple relationship defined by the end user.
|
Same subclass Same class Consider this |
||||||||||
