This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2018-077968 filed Apr. 13, 2018.
The present disclosure relates to information processing apparatuses, information processing systems, and non-transitory computer readable media.
Japanese Unexamined Patent Application Publication No. 2006-276912 discloses a document editing apparatus, a computer program, and a document editing method that flexibly and readily perform a confidential editing process in accordance with the contents of a document. A confidential editing process involves, for example, replacing a part of text (e.g., a specific word or phrase, a proper noun, or a numerical value) with another phrase so as to hide confidential information when disclosing a document.
Japanese Unexamined Patent Application Publication No. 2013-242688 discloses a data output apparatus, a data output method, and a program that flexibly cope with a non-disclosure section when outputting a structural document that contains non-disclosure information.
PCT Japanese Translation Patent Publication No. 2009-515253 discloses a correction system that observes a difference between a draft document and a corresponding edited document so as to extract an editing pattern and derive a correction rule from the pattern.
It is often necessary to change expressions of elements (such as words, phrases, proper nouns, and numerical values) in a document depending on the disclosure range of the document. However, searching for expressions appropriate for different disclosure ranges in view of previous examples is time-consuming and troublesome.
Aspects of non-limiting embodiments of the present disclosure relate to using a previous example of a document approved for disclosure by changing an expression when changing the disclosure range of the document so as to give a suggestion about an expression to be changed to a user who is trying to newly change the disclosure range.
Aspects of certain non-limiting embodiments of the present disclosure overcome the above disadvantages and/or other disadvantages not described above. However, aspects of the non-limiting embodiments are not required to overcome the disadvantages described above, and aspects of the non-limiting embodiments of the present disclosure may not overcome any of the disadvantages described above.
According to an aspect of the disclosure, there is provided an information processing apparatus including an acquiring unit, an identifying unit, an extracting unit, and a notifying unit. The acquiring unit acquires a document designated by a user. The identifying unit identifies a first disclosure range of the document. The extracting unit extracts an expression change previously made to accommodate a disclosure range change from the first disclosure range to a second disclosure range, the expression change being stored in a storage unit. The notifying unit notifies, if the document includes an expression before the expression change, the user of the expression change.
An exemplary embodiment of the present disclosure will be described in detail based on the following figures, wherein:
An exemplary embodiment of the present disclosure will be described below with reference to the drawings.
A communication line 2 serves as a means of data communication. The communication line 2 is connected to a plurality of computers that perform data communication. The communication line 2 may be wired or wireless. As shown in
In this exemplary embodiment, the client apparatus 20 is a computer having a document viewer function and a document editing function. A specific example of the client apparatus 20 includes a personal computer in which software for viewing a document (e.g., viewer software) and software for editing a document (e.g., editor software) are installed. The personal computer has a display (e.g. a liquid crystal display) and an operating part (e.g. a button, a keyboard, a mouse, a touchscreen) that accepts various commands from a user of the client apparatus 20. Although
The service apparatus 10 is an information processing apparatus according to an exemplary embodiment of the present disclosure and provides the document-related service to the user using the client apparatus 20. For example, the service apparatus 10 provides the user using the client apparatus 20 with a document management service for managing (e.g., storing, distributing, deleting) document data indicating a document. The document data is distributed only to a user authorized to view or edit the document indicated by the document data. Accordingly, the service apparatus 10 is capable of disclosing the document only to a user authorized to view or edit the document.
Furthermore, the service apparatus 10 provides, to the user using the client apparatus 20, an editing assistance service that assists the user to change an element (such as a word, a phrase, a proper noun, or a numerical value) in the document in accordance with a change of disclosure range (disclosure range change) of the document. Examples of a change of disclosure range include giving an employee of Corporation B a right to access an internal document of Corporation A, and sharing a document already shared within a certain department in Corporation A with another department in the same corporation. A disclosure range change does not necessarily increase the size of a disclosure range; it may also reduce the size of a disclosure range. One example of a disclosure range change that reduces the size of a disclosure range is restricting a disclosure range of a document originally created for managers to “Executives Only”. A document used within a corporation may include an element that must not be disclosed outside the intended disclosure range of the document, such as an element confidential to a corporation or a department. Therefore, when the disclosure range expands, an expression of such an element may have to be changed for confidentiality or other reasons. When the disclosure range shrinks, an element expressed by a generic term for confidentiality may be expressed by a more specific term. The editing assistance service helps the user to make such changes more easily than in the related art. The service apparatus 10 may provide not only the above-described service but also other services.
In this exemplary embodiment, a user needs to be authenticated by the service apparatus 10 using a service provided by the service apparatus 10. The service apparatus 10 stores user information used for authenticating a user permitted to use the service provided by the service apparatus 10, and authenticates the user by using user information received from the client apparatus 20. An example of the user information includes a combination of a user identifier and a password, wherein the user identifier identifies the user operating the client apparatus 20. Specific examples of the user identifier include an electronic mail address and a user ID allocated to the user. If the user at the client apparatus 20 is authenticated by the service apparatus 10, the user may use the service provided by the service apparatus 10. If the user is not authenticated by the service apparatus 10, the user may not use the service provided by the service apparatus 10.
The storage unit 102 includes a device (such as a hard disk device) that permanently stores, for example, a program to be executed by the controller 101 and a table that contains information used to provide the document-related service. Specific examples of the program stored in the storage unit 102 include a program of an operating system, a program for providing the document management service, a program for providing the editing assistance service, and a program for authenticating a user who wants to use the editing assistance service.
Specific examples of the information stored in the storage unit 102 include user information indicating a user permitted to use the service provided by the service apparatus 10, document data indicating a document the user is authorized to view or edit, and change information that is referred to and updated as the aforementioned editing assistance service is provided. The process information will be described in detail later.
The controller 101 has a central processing unit (CPU), a read-only memory (ROM), and a random access memory (RAM), and executes the program stored in the storage unit 102 so as to control the storage unit 102 and the communication unit 105. The controller 101 executes the program so that, for example, a function related to the document management service, a function related to the editing assistance service, and a user authenticating function are realized. In addition to or as an alternative to the CPU, the controller 101 may have, for example, a dedicated processor.
The document management unit 1105 records document data indicating a document that may be viewed and/or edited via the information processing system, in relation with authorization information that indicates the user who created the document and the user(s) to whom the document is disclosed (disclosure range of the document). A specific example of the authorization information includes user identifiers for identifying the user who created the document and the disclosure range of the document. The operation-history recording unit 1106 stores records of changes that have been made to the document. The user management unit 1107 stores user information indicating a user permitted to use the information processing system 1.
The change-information management unit 1108 stores change information for each document (see
When the controller 101 is accessed from a user at the client apparatus 20 via the communication unit 105, the controller 101 authenticates the user. When the authentication is successful, the controller 101 causes the client apparatus 20 to display a list of titles of documents the user is authorized to view and/or edit, and prompts the user to select a document the user wants to view or edit. Document data of the documents are stored in the document management unit 1105. The user selects a document he/she wants to view or edit by operating an operating part (not shown) of the client apparatus 20 (e.g., clicking a mouse). The operation performed by the user is transmitted to the controller 101 via the communication line 2 and the communication unit 105. The document acquiring unit 1001 acquires, from the document management unit 1105, document data indicating the document designated by the user. The document acquiring unit 1001 is an example of an acquiring unit that acquires a document designated by a user.
Furthermore, when the document is designated by the operation performed on the client apparatus 20, the controller 101 causes the client apparatus 20 to display a drop-down list that allows the user to select between “View” and “Edit”. The user operates an operating part of the client apparatus 20 to select “Edit” from the drop-down list. The operation performed by the user is transmitted to the controller 101 via the communication line 2 and the communication unit 105. In response to the operation, the disclosure-range designating unit 1003 causes the client apparatus 20 to display a disclosure-range designation screen that prompts the user to input a user identifier or user identifiers of a new disclosure range. The disclosure-range designating unit 1003 receives an input from the user, and acquires the user identifier(s) provided on the disclosure range designation screen as information indicating its new disclosure range. The disclosure-range designating unit 1003 is an example of a receiving unit that receives designation of a disclosure range from a user.
The disclosure range identifying unit 1002 identifies the current disclosure range of the document acquired by the document acquiring unit 1001, by searching the document management unit 1105 for authorization information stored in relation with the document data indicating the document. The disclosure range identifying unit 1002 is an example of an identifying unit that identifies a disclosure range to which a document is currently disclosed.
The change-information receiving unit 1004 receives, from the change-information management unit 1108, change information of the “before” of an element that was changed when the disclosure range of the document was changed from the same disclosure range as the current disclosure range identified by the disclosure range identifying unit 1002. The change-information receiving unit 1004 is an example of a receiving unit that receives an expression changed when a document disclosed in a specified range is to be disclosed in a range different from the specified range.
The change information display control unit 1005 causes the client apparatus 20 to display a change recommendation (i.e., an option to which the element is changeable) for an element that may have to be changed to make the element more suitable to the new disclosure range. The document disclosing unit 1006 changes a disclosure range of a document, provides a notification to a user who became part of the disclosure range after the disclosure range change, and discloses the document to the user who became part of the disclosure range after the disclosure range change.
The difference extracting unit 1007 compares a first document disclosed to a first disclosure range, and a second document created based on the first document and disclosed to a second disclosure range, extracts any difference in titles and elements of the first and the second documents, generates change information based on the extracted difference, and registers the change information in the change-information management unit 1108.
The document changing unit 1008 changes an element in the document in accordance with the change information extracted by the change-information extracting unit 1004, so as to generate a new document.
The configuration of the service apparatus 10 has been described above. Specifically, the change-information display control unit 1005 is an example of a notifying unit that notifies a user of an extracted expression in which an expression before or after a change is included in a document.
Now, the operation of the service apparatus 10 is described using an example case where a user A creates a document Y based on a document X. The document X (see
As described already, in response to a user access from the client apparatus 20 via the communication unit 105, the controller 101 authenticates the accessing user. If the authentication is successful, the controller 101 causes the client apparatus 20 to display a list of titles of documents the user is authorized to view and/or edit, and prompts the user to select a document the user wants to view or edit. Document data of the documents are stored in the document management unit 1105. If the accessing user is the user A who created the document X, the user A is authorized to view and edit the document X. Therefore, the document X is listed on the display of the client apparatus 20, and by operating the operating unit of the client apparatus 20, the user A designates the document X as a document he/she wants to view and/or edit. The document acquiring unit 1001 acquires, from the document management unit 1105, document data of the document X designated by the user A.
Furthermore, the user A selects “Edit” from the drop-down list displayed on the client apparatus 20. In response to the selection, the disclosure range designation screen is displayed on the client apparatus 20. From the disclosure range designation screen, the user A provides the user identifier of the user B as a new disclosure range. The disclosure-range designating unit 1003 receives the user identifier (“userB” in this example) from the client apparatus 20.
In response to the disclosure range designation, the controller 101 starts a recommendation process shown in
In step SA110, the change-information extracting unit 1004 receives the user identifier of the previous disclosure range and the user identifier(s) of the new disclosure range. In this operation example, “userA” is received as the user identifier of the current disclosure range, and “userB” is received as the user identifier of the new disclosure range. In step SA120, the change-information extracting unit 1004 extracts change information from the change-information management unit 1108 by using the elements extracted in step SA100 and the user identifiers of the previous disclosure range and the new disclosure range received in step SA110. More specifically, the change-information extracting unit 1004 extracts, from the change-information management unit 1108, any piece of change information that satisfies at least one of the three conditions below:
(Condition 1) The before-change element is the same as any of the elements extracted in step SA100.
(Condition 2) The old disclosure range is the user A.
(Condition 3) The new disclosure range is the user B.
In this operation example, the change-information in the second to forth, and sixth rows satisfies only the first condition (see
In step SA130, the change-information display control unit 1005 determines whether or not any piece of change information has been extracted in step SA120. If at least one piece of change information is extracted in step SA120, the change-information display control unit 1005 determines that change information exists, whereby a determination result indicating “YES” is obtained in step SA130. In contrast, if no piece of change information has been extracted in step SA120, the change-information display control unit 1005 determines that no change information exists, whereby a determination result indicating “NO” is obtained in step SA130. If the determination result indicates “NO” in step SA130, the change-information display control unit 1005 ends the recommendation process. In contrast, if the determination result indicates “YES” in step SA130, the change-information display control unit 1005 executes step SA140 to step SA170, and then ends the recommendation process. As mentioned above, in this example, 12 pieces of change information have been extracted in step SA120. Therefore, the determination result in step SA130 indicates “YES”, and the process from step SA140 and onward is executed.
The process from step SA140 to step SA160 is executed for each element in the document X for which change information has been extracted. Such an element may be referred to as “an element that has change information” hereinafter. In step SA140, the change-information display control unit 1005 determines whether or not a plurality of pieces of change information exist for the element. If there are a plurality of pieces of change information for the element, a determination result indicating “YES” is obtained in step SA140. If there is only one piece of change information for the element, a determination result indicating “NO” is obtained in step SA140. If the determination result indicates “YES” in step SA140, the change-information display control unit 1005 executes step SA150 and subsequently executes step SA160. In contrast, if the determination result indicates “NO” in step SA140, the change-information display control unit 1005 executes step SA160 without executing step SA150.
In this operation example, four pieces of change information have been extracted for the element “Chemical Heavy Industries ABC Corporation” and two pieces of change information have been extracted for the element “232,189 Yen sales”. For these elements, the determination result in step SA140 indicates “YES”. Thus, step SA150 is executed, and step SA160 is subsequently executed. In contrast, only one piece of change information has been extracted for each of the elements “Tanaka, General Manager of Planning and Development Division”, “Tokyo Central Branch”, “Yokohama Branch”, “Osaka Branch”, “Nagoya Branch”, and “Shonan Branch”. For these elements, the determination result in step SA140 indicates “NO”. Thus, the change-information display control unit 1005 executes step SA160 without executing step SA150.
In step SA150, the change-information display control unit 1005 calculates the degree of association between one element and each piece of change information extracted for the element, and determines the priority level of the each piece of change information. When the pieces of change information associated with the element are displayed, the pieces of change information are sorted based on their priority levels. There are various conceivable modes for setting the priority levels including the following:
A first mode including:
setting the highest priority level for a piece of change information satisfying all of the first to third conditions;
setting the second highest priority level for a piece of change information satisfying only the third condition;
setting the third highest priority level for a piece of change information satisfying only the second condition; and
setting the lowest priority level for a piece of change information satisfying only the first condition.
A second mode including:
setting the highest priority level for a piece of change information satisfying only the third condition; setting the second highest priority level for a piece of change information satisfying only the second condition; and
setting the lowest priority level for a piece of change information satisfying only the first condition.
In this exemplary embodiment, the first mode described above is employed.
Among the four pieces of process information that have been extracted for the element “Chemical Heavy Industries ABC Corporation”, the piece of process information indicating a change to the element “Chemical Manufacturer” satisfies the first and second conditions, whereas the other three pieces of change information satisfy only the first condition. Therefore, in this operational example, for the element “Chemical Heavy Industries ABC Corporation”, the priority level of the change information indicating the change to the element “Chemical Manufacturer” is set to be the highest. Between the two pieces of change information that have been retrieved for the element “232,189 Yen sales”, the piece of change information indicating a change to the element “3× increase from previous year” satisfies the first and second conditions, whereas the other piece of change information satisfies only the first condition. Therefore, in this operational example, for the element “232,189 Yen sales”, the priority level of the piece of change information indicating the change to the element “3× increase from previous year” is set to be the highest.
In step SA160, the change-information display control unit 1005 adds the one or more extracted pieces of change information to text that includes the element for which the one or more pieces of change information have been extracted (see recommendations R01, R02, R03, and R04 in
Instead of sorting the pieces of change information, the priority levels of the pieces of change information may be indicated by changing a text attribute of the pieces of change information depending on their priority levels. Examples of text attribute include font, text color, background color, and text size. This makes it easier for the user to determine whether or not to change an element. Although the change-information extracting unit 1004 extracts change information that satisfies at least one of the first, second, and third conditions in step SA120 of the recommendation display process of the above exemplary embodiment, the change-information extracting unit 1004 may alternatively extract change information that satisfies at least the third condition, thereby informing the user of an expression that may be more suitable for the disclosure range designated by the user.
The editing screen G01 described above includes, for example, a rectangular virtual operating part, such as a button, which the user presses with his/her finger. For example, in a case where a transparent touchscreen is displayed over the display screen of the client apparatus 20, when the user touches an area where a virtual operating part is rendered, the client apparatus 20 detects that an operation for selecting this virtual operator has been performed.
The user A viewing the editing screen G01 shown in
In the replacement process shown in
First, the process from step SB110 to step S130 executed when the determination result in step SB100 indicates “NO” will be described. In the case where the determination result in step SB100 indicates “NO”, the document changing unit 1008 first positions a cursor at a recommendation displayed at the top of the editing screen (in this example, recommendation R01 among recommendations R01 to R03), and inquires the user whether or not to replace the element in accordance with the change information of the recommendation. When the user performs an operation to instruct execution of the replacement, the document changing unit 1008 replaces the element based on the change information of the recommendation in step SB110 and displays the first document together with the replaced contents in step SB120. In step SB130, the document changing unit 1008 determines whether or not there is a recommendation to be additionally replaced, that is, an unprocessed recommendation. If the determination result in step SB130 indicates “YES”, the document changing unit 1008 executes step SB110 again. If the determination result in step SB130 indicates “NO”, the document changing unit 1008 ends the replacement process.
Next, step SB140 and step SB150 executed when the determination result in step SB100 indicates “YES” will be described. In step SB140, the document changing unit 1008 replaces all elements with change information in the document X based on the change information of the recommendations. Specifically, the document changing unit 1008 replaces the elements that have change information in the document X in accordance with the change information for the elements. With regard to an element having a plurality of pieces of change information, the document changing unit 1008 replaces the process element in accordance with the piece of change information with the highest priority level. In step SB150, the document changing unit 1008 displays the document X together with the replaced contents.
With the service apparatus 10 according to this exemplary embodiment, a user who is trying to disclose a document to a new disclosure range may collectively change elements that has change information by selecting the virtual operating part B02.
After the document X has been edited to make it suitable for the new disclosure range (user B), the user A registers the edited document in the document management unit 1105 as a new document Y to be disclosed to the user B and requests an approval of a manager to disclose the document Y to the user B. When the manager approves, the approval is transmitted to the controller 101 via the communication line 2 and the communication unit 105, and the controller 101 executes a difference extraction process shown in
As shown in
In the case where the determination result in step SC110 indicates “NO”, the difference extracting unit 1007 ends the difference extraction process. In contrast, in the case where the determination result in step SC110 indicates “YES”, the difference extracting unit 1007 executes step SC120 to step SC140 and ends the difference extraction process. In step SC120, the difference extracting unit 1007 retrieves an operation history of the user who made the change from the operation-history recording unit 1106. In step SC130, the difference extracting unit 1007 acquires user information of the old disclosure range and the new disclosure range from the user management unit 1107. Then, in step SC140, the difference extracting unit 1007 generates new change information by associating (linking) the element extracted in step SC100, the operation history retrieved in step SC120, and the user information of the old disclosure ranges and the user information of the new disclosure range acquired in step SC130, and registers the new change information in the change-information management unit 1108.
The flow of the difference extraction process has been described above.
The new change information registered in the change-information management unit 1108 as a result of the above-described difference extraction process is subsequently used as a previous example of a document that was approved and disclosed with a change to an element that makes the element more suitable for the new disclosure range.
Although an exemplary embodiment of the present disclosure has been described above, the above exemplary embodiment may be modified as follows. Moreover, a plurality of modifications may be combined.
The change-information display control unit 1005 may cause the display on the client apparatus 20 to display change information together with how important each replacement suggested by the change information is (see
Moreover, the change-information display control unit 1005 may cause the display of the client apparatus 20 to display change information together with identification information that identifies a document after the replacement suggested by the change information was made (see
To display the degree of importance and the relevant information on the client apparatus 2, the change-information display control unit 1005 may execute a recommendation process shown in
In step SA1510, the change-information display control unit 1005 determines whether or not the degree of importance is given to the change information corresponding to the process element. If the determination result in step SA1510 indicates “YES”, the change-information display control unit 1005 sets the display color to be used when displaying this change information based on the change information in step SA1520, and subsequently executes step SA1530. If the determination result in step SA1510 indicates “NO”, the change-information display control unit 1005 executes step SA1530 without executing step SA1520.
In step SA1530, it is determined whether or not the new disclosure range of the disclosure document is authorized to view the relevant information. This is because, if the disclosure destination is not authorized to view the relevant information, it is meaningless to present the identification information indicating the relevant information to the user A since the user A is not capable of viewing the relevant information. If the determination result in step SA1530 indicates “YES”, the change-information display control unit 1005 adds the identification information indicating the relevant information to the disclosure document in step SA150 and subsequently executes step SA160. If the determination result in step SA1530 indicates “NO”, the change-information display control unit 1005 executes step SA160 without executing step SA1540.
Alternatively, the virtual operating part B02 may be omitted, and step SB100, step SB140, and step SB150 in
Furthermore, although the service apparatus 10 is caused to execute the editing assistance process in the above exemplary embodiment, the client apparatus 20 may alternatively be caused to execute the editing assistance process, so long as the exemplary embodiment provides an information processing apparatus having an acquiring unit (i.e., the document acquiring unit 1001) that acquires a document designated by a user, a specifying unit (i.e., the disclosure-range identifying unit 1002) that specifies a range in which the document is currently disclosed, an extracting unit (i.e., the change-information extracting unit 1004) that extracts an expression changed when the document disclosed in the specified range is to be disclosed in a range different from the specified range, and a notifying unit (i.e., the change-information display control unit 1005) that notifies the user of the extracted expression in which an expression before or after the change is included in the document. Moreover, the service apparatus 10 and the client apparatus 20 may be caused to distributively execute the recommendation display process, the replacement process, and the difference extraction process, and the acquiring unit, the specifying unit, the extracting unit, and the notifying unit described above may be distributively provided in the service apparatus 10 and the client apparatus 20, so long as the exemplary embodiment provides an information processing system having the acquiring unit, the specifying unit, the extracting unit, and the notifying unit described above.
Although the function of the editing assistance process is realized by software in the above exemplary embodiment, some or all of the function may be realized by a hardware circuit. This software may be recorded in a computer readable recording medium, such as an optical recording medium or a semiconductor memory, and may be loaded and installed from the recording medium. Alternatively, the software may be provided via a telecommunication line.
The foregoing description of the exemplary embodiment of the present disclosure has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Obviously, many modifications and variations will be apparent to practitioners skilled in the art. The embodiment was chosen and described in order to best explain the principles of the disclosure and its practical applications, thereby enabling others skilled in the art to understand the disclosure for various embodiments and with the various modifications as are suited to the particular use contemplated. It is intended that the scope of the disclosure be defined by the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2018-077968 | Apr 2018 | JP | national |