This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2017-145788 filed Jul. 27, 2017.
The present invention relates to a non-transitory computer readable medium, and an article editing support apparatus.
According to an aspect of the present invention, there is provided a non-transitory computer readable medium storing a program causing a computer to execute a process, the process including determining a source article that includes a link to an edited article, the edited article being an article subjected to editing, and controlling notification, the controlling of notification including controlling, in accordance with the importance level of the edited article for the source article, the mode in which a notification about editing performed on the edited article is provided to a user associated with the source article.
Exemplary embodiment of the present invention will be described in detail based on the following figures, wherein:
The article DB 10 is a database that stores and manages data on each individual article.
The article DB 10 may have an article version control function.
The author DB 20 is a database that stores and manages data on each individual author.
The edit processor 30 provides an article edit processing service to a user. The user (author) logs into the edit processor 30 of the article editing support apparatus from, for example, the user's own personal computer (PC) via a network such as an intra-office network or the Internet. The edit processor 30 provides an environment for creating and editing articles to the user's PC via the network. The provided environment is used by the user to perform various operations, such as creating a new article, or editing an article within the article DB 10 previously created by the user (or an article that the user is authorized to edit). When the user creates a new article and instructs the created article to be stored, the article is given an article ID from the edit processor 30, and stored into the article DB 10 together with information on items such as Author ID (see
When an article within the article DB 10 is edited, the edit notification unit 40 provides notification of the edit performed to the author of a source article, which is an article linking to the article subjected to editing (to be referred to as “edited article” hereinafter). The reason to notify the author of the source article is to allow the author to check whether the contents of the source article are consistent with the post-edit contents of the edited article and, in the absence of such consistency, correct the source article in accordance with the contents of the edited article.
However, the edit notification unit 40 does not necessarily notify the author of the source article whenever an edit is made to the edited article. The edit notification unit 40 does not provide such notification if the edit made to the edited article is not important for the source article.
The edit notification unit 40 includes a link source determination unit 42 and a notification controller 44. The link source determination unit 42 determines which among articles stored in the article DB 10 is a source article that links to an edited article. The notification controller 44 controls whether to provide, for the determined source article, a notification about editing performed on the edited article. This control is performed by determining whether the edited article is important for the source article. Whether the edited article is important is determined by analyzing the relationship between the edited article and the source article that links to the edited article. Exemplary methods for this determination will be described later in detail.
The notification history DB 50 is a database that records history information on notifications previously made by the edit notification unit 40.
Next, an exemplary procedure of processing performed by the edit processor 30 will be described with reference to
According to this procedure, when the edit processor 30 receives, from a user who has logged into the article editing support apparatus, an input of the article ID of an article that is to be edited, the edit processor 30 determines, by means of a known access right control method, whether the user has the authority to edit for the article ID. If the edit processor 30 determines that the user has the edit authority (e.g., the user is one of the authors of the article), the edit processor 30 acquires the article body (also the article title in some cases) corresponding to the article ID from the article DB 10 (S10), and provides the user (i.e., the PC being operated by the user) with screen information that serves as the environment for editing the article body. The edit processor 30 receives an edit operation (such as a change to a description) that the user has performed on the article body or other information in the editing environment (S12). Then, the edit processor 30 waits until an edit complete instruction is input from the user (S14).
When an edit complete instruction is input from the user, the edit processor 30 stores the data of the (post-edit) article retained by the editing environment into the article DB 10. Further, the edit processor 30 calculates the difference in character string between the article body or other information before editing and the article body or other information after editing (S16). The edit processor 30 then determines whether the difference (e.g., the difference in the number of characters before and after editing) is equal to or greater than a predetermined threshold (S18). If the difference is equal to or greater the threshold, the edit processor 30 notifies the edit notification unit 40 of the article ID (S19), and ends the procedure. If the edit processor 30 determines at step S18 that the difference is less than the threshold, the edit processor 30 skips S19. That is, if the difference in article content due to editing is less than the threshold, it is highly likely that the editing done is a minor edit such as correction of a typo. Thus, such an edit is removed from those edits of which the author of the source article is to be notified. Conversely, if the difference due to editing is equal to or greater the threshold, it is likely that the editing done is an important edit. Thus, the edit processor 30 informs the edit notification unit 40 of such an edit so that the edit notification unit 40 determines whether notification needs to be provided.
Next, an exemplary procedure of processing performed by the edit notification unit 40 will be described with reference to
The procedure illustrated in
Next, the edit notification unit 40 selects one article stored in the article DB 10 (S22). Then, the edit notification unit 40 performs steps S24 to S36 for the selected article.
That is, the link source determination unit 42 of the edit notification unit 40 extracts one or more link descriptions (e.g., anchor elements including an URL or other information) from within the body of the article selected at S22 (S24). The link source determination unit 42 then determines whether there is any link description among the one or more extracted link descriptions that links to the edited article (i.e., the article corresponding to the ID acquired at S20) (S26). From a different perspective, the determination at S26 is a determination of whether the article selected at S22 is the link source that links to the edited article.
If the result of determination at S26 is N (negative), that is, if the selected article is not the link source that links to the edited article, the edit notification unit 40 determines whether there is any article within the article DB 10 that has not undergone steps S24 to S36 (to be referred to as “unprocessed article” hereinafter). If there is any unprocessed article, the edit notification unit 40 returns to S22, where the edit notification unit 40 selects one unprocessed article within the article DB 10 and repeats the steps from S24 onward for the selected unprocessed article.
If the result of determination at S26 is Y (affirmative), that is, if the selected article is the link source that links to the edited article, the notification controller 44 calculates the level of importance of the edited article for the source article (S28). Several exemplary methods for calculating this importance level will be described later. Once the importance level is calculated, the notification controller 44 determines whether the importance level is equal to or greater than a predetermined threshold (S30). The threshold in this case is a value used as a cutoff to determine whether the edited article is important for the source article. Any edited article with an importance level equal to or greater the threshold is regarded as important for the source article.
If the result of determination at S30 is Y, the notification controller 44 determines, from the article DB 10, the author ID of an author corresponding to the article ID of the source article, and determines, from the author DB 20, an email address corresponding to the author ID. The notification controller 44 then adds the determined email address to an email notification list (S32). Further, the notification controller 44 adds the author ID determined at S32 to an onscreen notification list, which is a list of users to be notified upon login to the management screen (S34). The notification controller 44 manages the email notification list and the onscreen notification list in association with the ID of each edited article and information of which the user is to be notified. If the result of determination at S30 is N, the procedure proceeds to S34.
Subsequently, the notification controller 44 determines the presence of any unprocessed article within the article DB 10 (S36). If there is any unprocessed article, the notification controller 44 returns to S22 to select one unprocessed article within the article DB 10, and then repeats the steps from S24 onward for the selected unprocessed article.
If it is determined at S36 that there is no unprocessed article within the article DB 10, the notification controller 44 transmits, to each email address included in the email notification list, an email indicating that editing has been performed on the edited article (i.e., the article corresponding to the ID acquired at S20) (S38). This e-mail contains, for example, the URL of the edited article, and a message indicating that the article has been edited. Alternatively, this email may contain information such as an excerpt of the edited portion (i.e., changed portion) of the article.
In the exemplary embodiment, in addition to notification by email described above, notification that a related article has been edited is provided also on a management screen displayed upon user's login to the article editing support apparatus. For example, in addition to items such as a list of articles on which the user has access rights and a search field for such articles, the management screen includes an edit notification field for notifying that a related article has been edited. Alternatively, such an edit notification may be displayed as a piece of newly arrived information in a display field that displays newly arrived information. The onscreen notification list mentioned above presents a list of the user IDs of users for whom to display a notification that an edit has been made on the edited article, among users registered in the article editing support apparatus. For the procedure illustrated in
A notification made by the management screen tends to be not easily unrecognized by the user as this notification is displayed on the management screen together with other displayed information (e.g., an article list, or newly arrived information other than edit notifications). Further, as time passes, a notification by the management screen is removed from the notifications to be displayed (e.g., the notification ceases to be newly arrived information). Thus, if notification is provided by the management screen, there is a possibility that an edit to an article remains unrecognized by the user. By contrast, if the user is notified by email, an edit made to an article may be recognized by the user in a straightforward manner (e.g., without being mixed with other information that becomes noise). Moreover, once received, an email is not automatically erased. Therefore, such a notification by email has greater chances of being recognized by the user than a notification displayed on the management screen. For these reasons, it may be said that a notification by e-mail is easily noticeable (i.e., easily recognized by the user) relative to a notification displayed on the management screen. That is, according to the exemplary embodiment, among the authors of source articles that link to an edited article, the author of a source article for which the importance level of the edited article is high (i.e., equal to or greater than a threshold) is notified in a more easily noticeable manner than the author of a source article for which the importance level of the edited article is low (i.e., less than a threshold).
Generally speaking, a first notification mode (e-mail in the above-mentioned case), which is a mode of notification used if the importance level is equal to or greater than a threshold, is more noticeable than a second notification mode (notification by the management screen in the above-mentioned case), which is a mode of notification used if the importance level is less than the threshold. The term “noticeable” as used herein means that the notification in question is easily recognized by the user (the author of the source article) (in comparison to the second notification mode). This includes the following cases. That is, a notification is “noticeable” if, for example, one of the followings holds: (a) The mode of display of the notification itself easily draws the attention of the user, (b) The notification is stored even after once presented to the user so that the user is able to view the notification again later, and (c) Once the notification is presented to the user and then stored, the user is able to view information about the notification again easily (i.e., through a simple procedure or through a procedure familiar to the user). By contrast, when it is stated that the second notification mode is less “noticeable”, this includes, for example, one of the followings: (a) The second notification mode itself does not easily draw the attention of the user (in comparison to the first notification mode), (b) The notification is erased after once presented to the user, and the user is unable to view the notification again, and (c) Once the notification is presented to the user and then stored, it is difficult for the user to view information about the notification again in comparison to the first notification mode. Examples of cases in which it is easy to view a stored notification again include when the notification is stored in a tool familiar to the user, for example, an email tool, and when a tab or icon used to call up a list of past notifications is displayed in a conspicuous location on the editing screen on which the article is being edited (i.e., when a list of past notifications is called up by a simple one-click action on the editing screen). By contrast, examples of cases in which it is difficult to view a stored notification again include when the user has to navigate through multiple layers of menus from the editing screen in order to call up a list of past notifications.
Next, an exemplary detailed procedure for step S28 of the procedure illustrated in
The procedure illustrated in
Further, the notification controller 44 determines whether a link description within the source article that points to the edited article satisfies a positional requirement (S42). The positional requirement refers to a condition that the link description be placed at a position in the source article that is easily recognized by a viewer who is viewing the article. A viewer who starts reading the source article does not necessarily read the article to the very end. Thus, it may be said that the closer a link description is positioned to the beginning of the article, the more easily the link description is recognized by the viewer. For example, at step S42, the notification controller 44 determines that a link description pointing to the edited article satisfies the positional requirement (the determination result is Y) if the link description is located higher (closer to the beginning) than a position corresponding to one-half of the total number of lines in the source article. It is to be noted that one-half is merely an exemplary value.
Further, the notification controller 44 performs a correlation analysis between the target article (i.e., the edited article) and the source article (S44). The correlation analysis is performed to obtain a numerical value representing how strongly (closely) the contents of these two articles are correlated with each other. In the correlation analysis, for example, the cosine (COS) similarity between the two articles is calculated as a value representing the correlation between the two articles. With the numbers of occurrences of individual words within the articles represented as vectors, the COS similarity is given by the dot product of those vectors divided by their magnitudes. Use of COS similarity as a value representing the correlation between the two articles is merely illustrative, and other known correlation computation methods may be employed. The notification controller 44 then determines whether the magnitude of the correlation calculated at S44 is equal to or greater than a threshold (S46).
If the determination results at S40, S42, and S46 are all N, the notification controller 44 determines that the level of importance of the edited article for the source article is “low” (S48). If at least one of the determination results at S40, S42, and S46 is Y, the notification controller 44 determines that the level of importance of the edited article for the source article is “high” (S49).
Next, another exemplary detailed procedure for step S28 of the procedure illustrated in
The procedure illustrated in
Next, the notification controller 44 executes a correlation analysis between the text extracted at S52 and the pre-edit text of the edited article (S54), and a correlation analysis between the extracted text and the post-edit text of the edited article (S56). The notification controller 44 then determines whether the absolute value of the difference between the correlation value obtained by the correlation analysis performed at S54 and the correlation value obtained by the correlation analysis performed at S56 is equal to or greater than a given threshold (S58). If the result of this determination is Y, the notification controller 44 determines that the level of importance of the edited article for the source article is “high” (S60), and if the result of this determination is N, the notification controller 44 determines that the importance level is “low” (S62).
If the result of the determination at S58 is Y, this means that the relationship of the edited article to the related portion (the text extracted at S52) of the source article has greatly changed before and after the editing of the edited article. In such a case, it is often necessary to make a correction to the related portion of the source article in accordance with the post-edit contents of the edited article, such as changing its text contents or deleting a link to the edited article (if the editing done has resulted in reduced correlation). Accordingly, in such a case, the notification controller 44 determines the importance level as “high” to ensure that a notification that editing has been performed on the edited article is made to the author of the source article (in a more noticeable manner, that is, in a more easily recognizable manner than is otherwise the case). Conversely, if the result of the determination at S58 is N, this is considered to mean that the relationship of the edited article to the related portion of the source article has changed relatively little before and after the editing, and hence the need to correct the source article is not high. Therefore, the need to notify the author of the source article is not high, either. Accordingly, in this case, the notification controller 44 determines the importance level as “low” so that notification about the editing is provided in a less noticeable manner than for cases in which the importance level is “high”.
According to the procedure in
In the example described above with reference to each of
Next, a first modification of the exemplary embodiment mentioned above will be described with reference to
According to the first modification, if the result of determination at S30 is N, the notification controller 44 further determines whether a specific item within the edited article has been changed by the editing performed (S102). A specific item subject to this determination is an item among a group of article's items that, if changed in content, will have a large impact on other articles. For example, if a group of articles within the article DB 10 is for exchanging information within a given local community, a description of a date or place (e.g., the date or venue of a local event) in an article (e.g., an article introducing the event) is an important item for the contents of the article, and thus regarded as a “specific item”. A specific item may be identified by enclosing the item by a specific tag within the HTML description of the article. For example, a specific tag may be either identified by the type of a tag such as a “time” tag, or identified by describing, within a tag indicative of the extent of an element such as a “div” tag or a “span” tag, a predetermined attribute (e.g., a class attribute) indicative of a specific item. Information indicating which tag or attribute corresponds to a “specific item” is set in the notification controller 44, and a specific item within the article is identified in accordance with this setting.
If the result of determination at S102 is Y (i.e., if a specific item has been changed), the procedure proceeds to S32, where the notification controller 44 adds the email address of the author of the source article to the email notification list. If the result of determination at S102 is N, the notification controller 44 executes S34.
As described above, according to the first modification, if editing has been performed on a specific item in the edited article, then email is used as a mode of notification, which is the more noticeable (i.e., more easily recognized by the author of the source article) of the two modes of notification used to notify that the article has been edited, irrespective of the importance level. This ensures that if an edit made to the edited article has resulted in a change to an item that will have a large impact on the source article, the edit is readily recognized by the author of the source article.
Next, a second modification of the exemplary embodiment mentioned above will be described with reference to
According to the second modification, if the result of determination at S30 is Y, the notification controller 44 further determines whether a specific item within the edited article has been changed by the editing performed (S104). This specific item may be the same as that according to the first modification mentioned above.
If the result of determination at S104 is Y (i.e., if a specific item has been changed), the procedure proceeds to S32, where the notification controller 44 adds the email address of the author of the source article to the email notification list. If the result of determination at S104 is N, the procedure proceeds to S34, where the notification controller 44 adds the ID of the author of the source article to the onscreen notification list. That is, according to the second modification, even if the importance level is equal to or greater than a threshold, if there is no change to a specific item, then rather than notification by email, notification on the management screen, which is a less noticeable mode of notification than email notification, is used as a mode of notification.
As described above, according to the second modification, notification by email, which is the more noticeable of the two modes of notifications, is employed for cases in which the importance level is equal to or greater than a threshold and editing has been performed on a specific item within the edited article.
Next, a third modification of the exemplary embodiment mentioned above will be described with reference to
According to this procedure, the notification controller 44 determines, after S28 illustrated in
According to the third modification, if the result of determination at S30a is Y, the notification controller 44 determines whether, among other articles edited within a predetermined period of time (e.g. one hour) immediately preceding the edited article, there is any article whose importance level for the corresponding source article (determined at S24 and S26 illustrated in
As described above, according to the third modification, even if the importance level of the edited article for its source article is equal to or greater the first threshold, if there is any article with an importance level equal to or greater the second threshold (to be referred to as high-importance article hereinafter) among other articles edited at substantially the same time (i.e., within a predetermined period of time immediately preceding the time of execution of this procedure), then the notification level is lowered (i.e., notification is made by the management screen) for those articles whose importance level is equal to or greater the first threshold but less than the second threshold, so that a notification of an edit made to a high-importance article becomes comparatively more noticeable to the author of the source article. This makes notification about a high-importance article more easily recognizable by the author of the source article than notification about an article that is important but not as important as the high-importance article. This makes it easier for the author to take appropriate actions in response to editing of the high-importance article, such as correcting the source article that links to the high-importance article.
The third modification may be further modified such that, for example, email notification is selected as a mode of notification for articles whose importance level is equal to or greater the first threshold but less than the second threshold (S32), and a mode of notification even more easily noticeable than email notification is employed as a mode of notification for high-importance articles (whose importance level is equal to or greater the second threshold).
Next, a fourth modification will be described with reference to
That is, the edit-impact notification unit 32 waits for an impact check instruction to be input by the user (S110). An impact check instruction is an instruction to check how much impact an edit made by the user to an edited article will have on each source article that links to the edited article. In response to an input of this instruction, the edit-impact notification unit 32 determines, through the same process as S22 to S26 of the procedure illustrated in
As described above, according to the fourth modification, the user making an edit to an article is presented with information about each source article on which the edit to the article will have a large impact, and the user uses the information to make determinations such as whether the edit made to the article is appropriate or whether it is necessary to make a correction.
The foregoing description of the exemplary embodiment of the present invention and its modifications is only intended to illustrate one exemplary implementation of the present invention. Various other modifications or alterations are possible within the scope of the present invention.
For example, although the above-mentioned exemplary embodiment uses email as an easily noticeable mode of notification, and uses notification by the management screen as a less noticeable mode of notification, this is only intended to be illustrative. For example, for the same notification to be provided on the management screen, further distinction may be made of its specific mode of notification according to the importance level such that if the importance level is high (equal to or greater than a threshold), the notification is displayed in a lager font size than is otherwise the case, or the notification is displayed in a special notification field specifically used for providing high-importance notification.
According to the above-mentioned exemplary embodiment, the mode of notification (notification by the management screen) used if the importance level is less than a threshold is less noticeable than the mode of notification (email) used if the importance level is equal to or greater than a threshold. In another possible example, no notification is provided if the importance level is less than a threshold.
In the foregoing description of the exemplary embodiment and its modifications, the importance level takes two values, high and low. Of course, this is only intended to be illustrative. Instead, the importance level may have three or more values. If importance is to be expressed in multiple levels equal to or greater than three (or as a continuous numerical value), then, for example, the calculation procedure illustrated in
In the procedure illustrated in
The notification controller 44 calculates a score according to where the link description pointing to the edited article is positioned within the source article, and adds the score to the variable that holds the score of the source article (e.g., the variable holding the score calculated at S120) (S122). At this time, the score according to the position of the link description may be set in advance such that, for example, the score increases with increasing proximity of the link description to the beginning of the source article.
As with S44 in
S120, S122, and S126 may not necessarily be executed in the order illustrated in
The notification controller 44 then calculates importance level from the sum of the scores obtained at S120, S122, and S126 (S128). The sum of the scores itself may be used as the importance level.
Although the foregoing description of the exemplary embodiment and its modifications is directed to a case in which the environment for editing an article is provided from a server (i.e., the article editing support apparatus, in particular, the edit processor 30 within the article editing support apparatus) to the editor's PC that is a client, this is only intended to be illustrative. An application for providing the article-editing environment may be installed in each individual client PC. In this case, the article editing support apparatus may not have an element corresponding to the edit processor 30. The article-editing application within the PC downloads, from the article DB 10 within the article editing support apparatus, an article specified by the user as the article to be edited, and receives an edit operation on the article performed by the user. When the user completes editing the article, the data of the article that has been edited is transmitted to the article editing support apparatus. The article editing support apparatus registers the received article into the article DB 10 (i.e., updates the contents of the corresponding article within the article DB 10 to the contents of the received article), and also passes the received article (and/or the ID of the article) to the edit notification unit 40 so that the above-mentioned process is executed by the edit notification unit 40.
The article editing support apparatus according to the above-mentioned exemplary embodiment is implemented by causing a computer to execute a program that represents each function of the system described above. In this regard, the computer has a circuit configuration such that, for example, the following hardware components are connected via a bus or other data paths: a microprocessor such as a CPU, memory (internal memory) such as a random-access memory (RAM) and a read-only memory (ROM), a controller that controls a permanent storage such as a flash memory, a solid-state drive (SSD), or a hard disk drive (HDD), various input/output (I/O) interfaces, and a network interface that controls connections to a network such as a local area network. A program describing a process corresponding to each function mentioned above is stored into a permanent storage such as a flash memory via a network or other media, and installed into the computer. The set of exemplary functional modules described above is implemented as the program stored in the permanent storage is read out into the RAM and executed by the microprocessor such as a CPU.
The foregoing description of the exemplary embodiment of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention 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 invention and its practical applications, thereby enabling others skilled in the art to understand the invention for various embodiments and with the various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalents.
| Number | Date | Country | Kind |
|---|---|---|---|
| 2017-145788 | Jul 2017 | JP | national |