JP3566457B2 - Structured document version management method and apparatus - Google Patents

Structured document version management method and apparatus Download PDF

Info

Publication number
JP3566457B2
JP3566457B2 JP15920296A JP15920296A JP3566457B2 JP 3566457 B2 JP3566457 B2 JP 3566457B2 JP 15920296 A JP15920296 A JP 15920296A JP 15920296 A JP15920296 A JP 15920296A JP 3566457 B2 JP3566457 B2 JP 3566457B2
Authority
JP
Japan
Prior art keywords
structured
document
structure
editing
difference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP15920296A
Other languages
Japanese (ja)
Other versions
JPH09319632A (en
Inventor
泰樹 伊藤
純一 東野
ゆき 青山
亨 高橋
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to JP15920296A priority Critical patent/JP3566457B2/en
Publication of JPH09319632A publication Critical patent/JPH09319632A/en
Application granted granted Critical
Publication of JP3566457B2 publication Critical patent/JP3566457B2/en
Anticipated expiration legal-status Critical
Application status is Expired - Fee Related legal-status Critical

Links

Images

Classifications

    • G06F40/197
    • G06F40/14

Description

[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a method and an apparatus for managing a version of a structured document in a document processing apparatus such as a word processor that handles a structured document stored as an electronic file.
[0002]
[Prior art]
Version management refers to managing document information of each version so that an arbitrary version of the document can be stored and retrieved when editing and updating the document. The saved version of the document is also used to extract and display a changed portion between versions in order to efficiently edit the document.
2. Description of the Related Art Conventionally, two methods have been adopted for document version management.
The first is a simple version management method (conventional method 1) in which all versions of a document are stored and managed so that a designated version of the document is taken out as it is. Second, one document of the reference version, such as the original document or the latest document, is stored. For other versions of the document, only the difference information from the reference document is stored. When a document is taken out, a difference version management method (conventional method 2) is used in which a document of the version is managed from a reference document and difference information.
Further, in recent years, for the purpose of efficient sharing and reuse of document information, a movement to structure and create and use a document using SGML or the like has been activated.
The structured document can clearly describe information on the logical structure of the document, for example, information such as “this part in the document is a title” and “this part is a chapter”. For this reason, since changes and additions can be easily and reliably performed in detail, they are frequently used for editing documents such as manuals that are frequently updated.
[0003]
If the two conventional methods are used for managing the version of the structured document, the following problem occurs.
First, the conventional method 1 is not limited to the case of structured documents, but all documents of each version must be stored. Therefore, when frequent updates occur, the capacity of the document database increases. Problem arises.
Next, the conventional method 2 can avoid the problem of the conventional method 1 that the capacity of the document database becomes huge, but cannot manage the difference information that distinguishes the logical structure of the document. There is a problem that it is not known whether the document has been changed, the advantage that the document is structured and created cannot be used, and efficient document editing cannot be performed.
On the other hand, Japanese Patent Application Laid-Open No. Hei 7-200370 (conventional method 3) discloses a version management method for holding a document of each version for a structured document and displaying a changed portion.
Although the difference of the structure information is certainly extracted and displayed as difference data in this method, it is difficult to tell whether the structure itself or the contents of the structure have been changed because the difference display method is uniform. However, there is a problem that efficient editing cannot be performed.
[0004]
[Problems to be solved by the invention]
The difference data obtained by extracting the changed part between the structured documents before and after editing has the following characteristics, unlike the case of comparing a normal document having no structure.
(1) There is a change in the structure itself and a change in the character string in the structure.
(2) The difference information also has a logical structure.
This will be described by taking the structured document of FIG. 3 as an example.
The structured document in FIG. 3 is a SGML (Standard Generalized Markup Language).
It is described in (ISO8879) and means that a character string sandwiched between <A> and </A> belongs to the logical structure <A>.
The mark representing the logical structure is called a tag, and <A> and </A> are called a start tag and an end tag, respectively. Further, each structure is called an ELEMENT (element).
In the example of the structured document a shown in FIG. 3A, a character string "Heisei Taro" sandwiched between <name> and </ name> belongs to the logical structure <name>.
Also, the existence of <B> and </ B> between <A> and </A> indicates that the logical structure
This means that <B> is a child structure of the logical structure <A>. For example, in FIG. 3A, since <name> and </ name> exist between <sender> and </ sender>, <name> represents a child structure of <sender>.
FIG. 4A shows an example of the result of comparison between the structured document a before editing and the structured document a ′ after editing in FIG.
Item No. 1 (401) and Item No. 3 (403) are examples in which the structure of the document such as <name> and <body> does not change and the character strings in the structure are changed. Item number 2 (402) is an example in which the structure itself <affiliation> is newly inserted.
Next, an example will be described in which difference information between structured documents has a logical structure.
For example, item numbers 1 (401) and 3 (403) are character string changes, and these character string changes are changes in the structure of <name> and <body>, respectively. As described above, in order to specify the structure and represent the difference information, it is necessary to have the structure information as the difference data. In item number 2 (402), the inserted
<Affiliation> has structural information that it is a child structure of <Sender>.
[0005]
However, according to the conventional method, it is not possible to effectively display the characteristics of the difference data of such a structured document.
In the conventional method 3, even if the changed portion is a change in information relating to the logical structure of the document, the display attribute of the character representing the structure is similarly changed without being distinguished from a change in the character string.
For this reason, there is a problem that it is difficult for the user to determine whether the structure itself or the content of the structure has been changed.
This problem will be described with a specific example.
FIG. 4B shows an example of the display of the difference data according to the conventional method 3.
In this figure, the display method is such that the structure information is ignored without distinguishing between the change of the structure itself and the change of the character string in the structure. For this reason, it is difficult for a user who is editing this structured document using document editing software or the like to know what changes have been made.
In addition, when the document editing software or the like uses a dedicated display program such as displaying the structure information as a tree when displaying the structured document, another display program is required to display the difference data as shown in FIG. Therefore, the program becomes complicated.
[0006]
Further, in order to realize a function of storing and retrieving an arbitrary version of a document, if all the documents of each version are stored as in the conventional method 1, the amount of data to be stored increases, and the version is frequently updated. It is not suitable as a version control method for documents.
Therefore, as a version management method for structured documents that are frequently revised, one standard version of the document, such as the original document or the latest document, is stored, and other versions of the document are stored as the standard document. When only the difference information is stored and the specified version of the document is extracted, a method such as the conventional method 2 is used in which the document of the version is synthesized from the reference document and the difference information. However, there is a problem that version management cannot be performed based on a comparison in which the logical structure of a document targeted for a structured document is distinguished.
[0007]
SUMMARY OF THE INVENTION An object of the present invention is to solve such problems, and to prevent a document database from having a large capacity when managing a version of a document which is frequently updated, such as a document described using SGML or the like. At the same time, it is possible to manage differences that distinguish the logical structure of the document, and to easily specify whether the logical structure itself or its contents have been changed, so that efficient document editing that takes advantage of the characteristics of structured documents can be performed. To provide a version control method for structured documents.
[0008]
[Means for Solving the Problems]
In order to achieve the above object, the present invention provides
A processing device that performs editing, such as deletion, insertion, or modification, on a structured document described in SGML (Standard Generalized Markup Language) and defined as a document type, and a storage device that stores the structured document before and after the editing. A version management method for a structured document that manages both the structured document before and after the editing by the processing device,
A document reading step of reading a structured document before and after editing from the storage device, a structure analyzing step of analyzing a logical structure of both structured documents acquired in the reading step, and a logic obtained by the structure analyzing step. A structured document difference extraction step of extracting a change portion between the two documents before and after the editing based on the structure information, and a structure outputting the change information obtained in the difference extraction step as structured description difference information A difference information output step and a step of displaying and storing the output structured difference information are provided.
Further, a difference document type definition generating step of generating a document type definition for structured difference information from the document type definition of the structured document from which the difference is to be extracted is provided.
Further, when storing a plurality of editions of a structured document before and after editing in the storage device, only a reference document is stored, and a document other than the reference is a document storing only structured difference information from the reference document. It has a registration step.
Further, when a structured document of a specified version is taken out from the storage device, a reference document is taken out as it is, and as for a document other than the reference, a document obtained by extracting structured document and differential information and combining the designated version It has an extraction step. Further, the display step in the step of displaying and storing the output structured difference information includes displaying a structure window for displaying a structure on a display screen and a character string window for displaying a character string in the structure. In the character string window, the display of the character strings before and after editing and the display of instructing the addition and deletion of the character strings are displayed. It is performed at a position corresponding to the display position of the structure before and after editing in the window.
[0009]
In addition, the storage device includes a storage device and a processing device, and performs editing such as deletion, insertion, or change by the processing device on the structured document described in SGML and defining the document type. In a structured document version management device that stores a structured document and manages both the structured document before and after the editing by the processing device,
The processing device includes: a document reading unit that reads a structured document before and after editing from the storage device; a structured document analysis unit that analyzes a logical structure of both structured documents acquired by the document reading unit; Based on the logical structure information obtained by the structure analyzing means, a structured document difference extracting means for extracting a changed portion between the structured documents before and after the editing, and a change information obtained by the difference extracting means are structured. Structured difference information output means for outputting as described difference information and means for displaying and storing the output structured difference information are provided.
Further, a difference document type definition generating means for generating a document type definition for structured difference information from the document type definition of the structured document from which the difference is extracted is provided.
Further, when storing a plurality of editions of a structured document before and after editing in the storage device, only a reference document is stored, and a document other than the reference is a document storing only structured difference information from the reference document. It has registration means.
Further, when extracting the structured document of the specified version from the storage device, the reference document is extracted as it is, and for documents other than the standard, the difference information structured with the reference document is extracted and the specified version of the document is synthesized. A take-out means is provided.
Further, the means for displaying and storing the output structured difference information includes displaying a structure window for displaying the structure on the display screen and a character string window for displaying a character string in the structure, and editing the structure window in the structure window. The display of the structure before and after, and the display for instructing the addition and deletion of the structure, and the like, and the display of the character string before and after editing and the display for instructing the addition and deletion of the character string are displayed in the character window. Display means is provided for performing the display at a position corresponding to the display position of the structure before and after editing.
[0010]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0011]
<< Example 1 >>
FIG. 1 shows the configuration of the first embodiment.
As shown in the figure, the present embodiment has a CPU 101, a terminal device 102, a secondary storage device 103 for storing documents, a document editing program 104 for editing documents, and a document version for managing documents before and after editing. It is composed of a management program 105,
Further, the document version management program 105
A document reading program 106 for reading a structured document before and after editing from the secondary storage device 103;
A structural analysis program 107 for analyzing the logical structure of both read structured documents, a structured document difference extraction program 108 for extracting a change between the two documents before and after editing based on the obtained logical structure information,
A structured difference information output program 109 for outputting change information as structured description difference information,
A display / save program 110 for displaying and saving the output structured difference information;
The difference document type definition generation program 111 generates a document type definition for difference data from the document type definition of the structured document to be compared.
[0012]
In the present embodiment, an SGML document is taken as an example of the structured document.
SGML is a document description language defined as an international standard of ISO as a marked structured document. The logical structure of an SGML document is defined in advance by a DTD (document type definition).
In the SGML document, a document instance, which is the content of the actual document, is described so as to follow the logical structure defined in the DTD. That is, as shown in FIG. 5, the document instance and the document type definition are combined to form a structured document.
[0013]
A specific processing procedure of the present embodiment will be described with reference to the flowchart of FIG.
Thereafter, a processing example will be described according to the processing procedure.
<Step 201>
The structured document is edited by the document editing program 104.
[0014]
<Step 202>
When the document version management program 105 is called to display or save a changed portion between structured documents before and after editing, first, a DTD for difference data corresponding to the DTD of the SGML document to be compared is used. To get.
The DTD for the difference data is used as a document type definition for describing change information between structured documents in an SGML format in step 206 described later.
If the corresponding difference DTD exists, it is read from the secondary storage device 103, and if not, the corresponding difference DTD is generated by the difference document type definition generation program 111.
<Step 203>
The SGML document to be compared is read from the secondary storage device 103 by the document reading program 106.
<Step 204>
As preprocessing for difference extraction, the logical structure of two structured documents to be compared is analyzed by the structure analysis program 107.
<Step 205>
Based on the logical structure information obtained in step 204, a difference between structured documents is extracted by the structured document difference extraction program 108.
<Step 206>
The structured difference information output program 109 describes the change information extracted in step 205 in the SGML format according to the difference DTD acquired in step 202, and outputs it as structured difference information.
<Step 207>
The display / save program 110 displays the difference result on the terminal device 102, and saves the structured difference data in the secondary storage device 103.
[0015]
(Example of processing)
As a specific processing example of the embodiment, the structured document of FIG. 3 will be described as an example.
In this processing example, the difference between the structured document a (301) and the structured document a ′ (302) in FIG. 3 is extracted, and structured difference data described in the SGML format as shown in FIG. The purpose is to display and save the results.
Since the difference data of the structured document may be a change in the structure itself or a change in a character string in the structure, FIG. 6 describes the difference structure information as follows.
In other words, a change in the structure itself is expressed by giving a tag indicating the structure an attribute of diffflag, and a change in a character string in the structure is expressed with a tag representing a difference sandwiching the character string. ing.
In the example of FIG. 6, the insertion of the structure "<affiliation> ABC company </ affiliation>" itself is described in the SGML format "<affiliation difflag = insert> ABC company </ affiliation>".
Further, the change of the character string in the structure is described with a tag indicating a difference such as <insert>, <before change>, <after change>, etc., sandwiching the character string.
The attribute name “difflag”, its attribute value, a tag indicating the difference between character strings, and the like can be arbitrarily determined.
[0016]
An example of the process will be described with reference to the flowchart of FIG.
<Step 201>
The structured document is edited by the document editing program 104. It is assumed that the structured document a ′ (302) in FIG. 3B is edited from the structured document a (301) in FIG.
<Step 202>
When the document version management program 105 is called to display or save a change between structured documents before and after editing, a difference corresponding to the DTD (document type definition) of the SGML document to be compared is obtained. Read the DTD. If not present, the difference document type definition generation program 111 generates a corresponding difference DTD.
[0017]
For example, the structured document of FIG. 3 has a DTD as shown in FIG. That is, the structured document of FIG. 3 is written according to the definition of the DTD of FIG. The DTD in FIG. 7 defines the following meanings.
First, one line of 701 defines that the structure <memo> has two child structures <sender> and <body>.
One line of 702 defines that the structure <sender> has two child structures <name> and <affiliation>.
“?” After “affiliation” is one of the appearance indicators, and the structure “<affiliation>” means that the number of occurrences in the document is 0 or 1 (in addition to “?”). Also have "*" and "+" as appearance indicators, which indicate that the number of appearances of the structure with the appearance indicator is 0 or more and 1 or more, respectively).
Reference numerals 703, 704, and 705 respectively define that the structure of <name>, <affiliation>, and <body> has character string data (#PCDATA).
[0018]
From the DTD of the structured document to be compared, a corresponding difference DTD is generated by the difference document type definition generation program 111.
This difference DTD is generated by applying a difference document type definition generation rule to the original DTD.
FIG. 9 shows an example of the difference document type definition generation rule.
When the difference document type definition generation rule (900) in FIG. 9 is applied to the DTD in FIG. 7, the difference DTD in FIG. 8 is generated.
[0019]
The difference document type definition generation rule in FIG. 9 is configured by the following rules.
The rules of item numbers 1 (901) and 2 (902) are as follows: <insert>, <delete>, <before change>, <change The DTD is changed so that a tag representing the difference of "after" can be inserted.
That is, when a character string in the structure is changed, the definition is such that the character string is sandwiched between tags <insert>, <delete>, <before change>, and <after change>.
The rule of item number 3 (903) changes the DTD so that the structure other than the highest-level structure among the structures defined in the original DTD has a difflag as an attribute of the structure.
That is, when the structure itself is changed, this is a definition for adding an attribute indicating a difference to the structure. The diffflag attribute has a value of “NULL”, “insert”, “delete”, “before change”, or “after change”.
If the diffflag is omitted, a value of “NULL” is given, meaning that the structure has not been changed.
The rule of item number 4 (904) changes the appearance indicator of the structure defined in the original DTD.
The appearance indicator indicates the number of appearances of the structure. "?" Means that the number of appearances is 0 or 1, "*" means that the number of appearances is 0 or 1 or more, and "+" Means that the number of appearances is one or more, and when there is no appearance indicator, the number of appearances is always one.
In the difference DTD, the DTD is changed so as to allow a structure that has not been changed to be included in the difference data so that the number of appearances of the structure is zero.
[0020]
When this difference document type definition generation rule (900) is applied to the DTD of FIG. 7, the difference DTD of FIG. 8 is generated.
For example, 801 in FIG. 8 is inserted according to the rule of item number 1 (901).
According to the rule of item number 2 (902), 703, 704, and 705 in FIG. 7 are replaced with 804, 805, and 806 in FIG.
8 is inserted according to the rule of item number 3 (903). According to the rule of the item number 4 (904), the appearance indicators 701 and 702 in FIG. 7 are respectively replaced with 802 and 803 in FIG.
The difference DTD of FIG. 8 generated using the rule of FIG. 9 is a document type definition representing the difference data of FIG.
[0021]
<Step 203>
The structured document a (301) in FIG. 3A and the structured document a ′ (302) in FIG. 3B to be compared are read from the secondary storage device 103 by the document reading program 106.
<Step 204>
The logical structure of the structured document is analyzed by the structure analysis program 107.
When the structured documents (a) and (b) of FIG. 3 are analyzed, the document trees (a) and (b) of FIG. 10 are obtained.
The document tree is a tree structure representing the logical structure of the document. The root of the tree structure is assigned the highest ELEMENT of the SGML document, and the character string in the structure is assigned to the end of the tree structure.
[0022]
<Step 205>
Based on the logical structure information obtained in step 204, a difference between structured documents is extracted by the structured document difference extraction program 108.
Difference extraction between structured documents is performed as follows.
First, a difference is extracted for each node of the document tree obtained in step 204. This is equivalent to extracting a difference in units of the structure, since the node of the document tree is a unit of the structure of the document.
Nodes having the same structure name or character string in the document trees are associated with each other as being identical.
Next, a difference extraction is performed on the nodes that have not been associated with each other in units of characters.
For example, when a difference is extracted for each node of the document trees (a) and (b) in FIG. 10, “<memo>”, “<sender>”, “<name>”, and “<body>” It is corresponded as having done.
Next, a difference extraction is performed on the nodes that have not been associated with each other in units of characters.
When “Heisei Taro” and “Showa Jiro” are difference-extracted on a character-by-character basis, there is no matching character, so that it is extracted as a changed part of the character string in the structure.
“<Affiliation>” and “ABC company” are extracted as insertions. Since “<affiliation>” is a node representing a structure, it is extracted as a change in the structure itself.
In addition, "Hello." And "Hello. How are you?" A character-by-character and the difference extraction "How are you?" Is extracted as part of the change strings.
As a result, difference data having a logical structure as shown in FIG. 11 is obtained.
[0023]
<Step 206>
The structured difference information output program 109 describes the change information extracted in step 205 in the SGML format according to the difference DTD acquired in step 202, and outputs it as structured difference information.
When the change information in FIG. 11 is output in the SGML format according to the difference DTD in FIG. 8, the structured difference data in FIG. 6 is obtained. The structured difference data is generated by applying a structured expression rule of the difference data to the change information.
FIG. 12 shows an example of the structured expression rule of the difference data.
1201 is an example of a rule for describing a change in the structure itself, and 1202 is an example of a rule for describing a change in a character string in the structure.
That is, the change of the structure itself is expressed by giving a tag indicating the structure an attribute called diffflag, and the change of the character string in the structure is performed by <insert>, <before change>, <after change> It is expressed with the character string sandwiched by a tag representing the difference such as.
The attribute name “difflag”, its attribute value, a tag indicating the difference between character strings, and the like can be arbitrarily determined.
[0024]
<Step 207>
The display / save program 110 displays the difference result on the terminal device 102, and saves the structured difference data in the secondary storage device 103.
Since the difference data is output in the SGML format, the difference data can be displayed as it is by using an editor or a viewer dedicated to SGML.
FIG. 13 shows a display example of a structured document using an SGML dedicated editor, and FIG. 14 shows a display example of difference data.
Reference numeral 1301 in FIG. 13 denotes a window for displaying a structure, and 1302 denotes a window for displaying a character string in the structure.
FIG. 14 shows an example in which the difference data of FIG. 6 is structured and displayed.
At this time, the changed portion of the structure itself is distinguished from the others by changing the color of the mark representing the structure, changing the type, enclosing the mark with a thick line, and the like. In addition, similarly, the changed part of the character string is displayed while being distinguished from other character strings.
[0025]
Through the above steps, it is possible to extract a changed portion between structured documents and output the changed portion as structured difference data.
By incorporating this method into the SGML document editing software as a document comparison function, difference data can be directly displayed in a structured manner. For example, a change in the structure itself and a change in a character string in the structure can be distinguished. By doing so, it is possible for a user who is editing this structured document using document editing software or the like to easily understand what changes have been made.
Further, even when the document editing software or the like uses a dedicated display program such as displaying the structure information in a tree when displaying the structured document, it is possible to display the changed portion without requiring another display program. .
[0026]
<< Example 2 >>
FIG. 15 shows the configuration of the second embodiment.
As shown in the figure, the present embodiment includes a CPU 1501, a terminal device 1502, a secondary storage device 1503 for storing a document, and a document version management program 1504 for managing a version of a document.
Further, the document version management program 1504
A document retrieval program 1505 for retrieving a document from the secondary storage device 1503;
A document registration program 1506 for registering a document in the secondary storage device 1503;
A difference extraction program 1507 for extracting a changed portion between structured documents based on the logical structure information and outputting it as structured difference data;
It comprises a display / edit program 1508 for displaying and editing the output structured difference data.
[0027]
A specific processing procedure of the present embodiment will be described with reference to the flowchart of FIG.
<Step 1601>
The structured document is edited by the display / edit program 1508.
<Step 1602>
When the document version management program 1504 is called to register the edited structured document, first, if the document is a new document, the entire document is stored in the secondary storage device 1503 by the document registration program 1506, and the version is updated. Register as 1.0 (V1.0).
<Step 1603>
If it is not a new document, the document retrieval program 1505 reads a V1.0 document registered in the secondary storage device 1503.
The V1.0 document and the document to be registered are compared by the difference extraction program 1507 to generate structured difference data described in the SGML format.
The method of the first embodiment is used to generate the structured difference data.
[0028]
<Step 1604>
The structured difference data generated in step 1603 is registered as a new version in the secondary storage device 1503 by the document registration program 1506.
<Step 1605>
When the document retrieval program 1505 is called to display and edit an arbitrary version of the document, the V1.0 document is read from the secondary storage device 1503 to retrieve the V1.0 document.
<Step 1606>
If a document other than V1.0 is to be fetched, the document fetching program 1505 reads the difference data of the V1.0 document and the specified version from the secondary storage device 1503, and synthesizes the document of that version.
<Step 1607>
If the editing has not been completed, the process returns to step 1601.
[0029]
(Example of processing)
As a specific processing example of the embodiment, a structured document in FIG. 17 will be described as an example.
It is assumed that the structured document b (V1.0) shown in FIG. 17A is created by the display / edit program 1508, and the document is registered in the secondary storage device 1503 as V1.0 by the document registration program 1506.
Next, V1.0 is read by the document retrieval program 1505 in order to edit the structured document b. The structured document b is edited and changed to the structured document b ′ in FIG.
The document registration program 1506 is called to register this document as version 2.0 (V2.0).
Since the document is not a new document, the document of V1.0 registered in the secondary storage device 1503 is taken out, the document of V1.0 is compared with the document of V2.0 by the difference extraction program 1507, and the structured difference shown in FIG. Generate data.
The generated structured difference data is registered by the document registration program 1506.
[0030]
When extraction of V2.0 is specified, first, structured difference data corresponding to V1.0 in FIG. 17A and V2.0 in FIG. 18 is read by the document extraction program 1505. From these, a V2.0 document is synthesized.
Synthesis is performed as follows.
First, in the V1.0 document, the structure corresponding to the structured difference data is replaced with the difference data. The replacement is shown in 1901 in FIG.
Next, the character string sandwiched between the <before change> and <delete> tags and the structure with the difflag attribute value of “before change” and “delete” are deleted. Further, all the tags and attributes representing the differences are deleted.
As a result, a V2.0 document such as 1902 in FIG. 19 is reproduced.
[0031]
In this embodiment, version control is performed using a V1.0 document as a reference document, but version control can be performed in the same manner even when the latest document is used as a reference document.
According to the above method, it is easy to realize the function to save one document of the reference version and save only the difference information from the reference document for other versions of the document. Can be realized. This method is particularly effective because the amount of data for version control is reduced when a part of a long document is changed.
[0032]
【The invention's effect】
According to the present invention, a changed portion between documents before and after editing can be extracted as structured difference data, and the difference data can be directly structured and displayed by SGML document editing software or the like.
As a result, a change in the structure itself and a change in a character string in the structure can be displayed separately, and what kind of change has been made to a user who is editing this structured document with document editing software or the like Since it becomes possible to make it easy to understand, the efficiency of the editing work of the structured document increases.
Further, even when the document editing software or the like uses a dedicated display program such as displaying the structure information in a tree when displaying the structured document, the changed portion can be displayed without requiring another display program. A document comparison function can be easily incorporated into document editing software or the like dedicated to structured documents.
Further, the structured difference data output according to the present invention can be directly structured and displayed using a viewer dedicated to SGML, so that it is possible to browse the revision history data without creating a new revision history viewer or the like. Becomes possible.
Further, according to the present invention, one document of the reference version is stored, and for the other version of the document, only the difference information from the reference document is stored, so that an arbitrary version of the document is extracted. The function can be easily realized, and the data amount of version control can be reduced when a part of a long document is changed or when the document is frequently changed.
[Brief description of the drawings]
FIG. 1 is a configuration diagram of a first embodiment of the present invention.
FIG. 2 is a diagram showing a processing procedure of the first embodiment of the present invention.
FIG. 3 is a diagram illustrating a first example of a structured document for explaining the first embodiment.
FIG. 4 is a diagram showing an example of difference data obtained by extracting a difference from a first example of a structured document, and a display example of displaying difference data by a conventional method.
FIG. 5 is a diagram illustrating a relationship between a structured document and a document type definition.
FIG. 6 is a diagram illustrating an example of structured difference data output by extracting a structured example of a first example of a structured document and outputting the structured difference;
FIG. 7 is a diagram illustrating an example of a document type definition of a first example of a structured document.
FIG. 8 is a diagram illustrating an example of a difference document type definition generated from the document type definition of the first example of the structured document.
FIG. 9 is a diagram showing rules for generating a difference document type definition from a document type definition of a structured document.
FIG. 10 is a diagram showing a document tree created from a first example of a structured document.
FIG. 11 is a diagram showing a document tree as a result of structured difference extraction of a first example of a structured document.
FIG. 12 is a diagram illustrating an example of a structured expression rule for outputting structured difference extracted difference data as structured difference data.
FIG. 13 is a display example of a first example of a structured document.
FIG. 14 is a display example of structured difference data of a first example of a structured document.
FIG. 15 is a configuration diagram of a second embodiment of the present invention.
FIG. 16 is a diagram showing a processing procedure according to the second embodiment of the present invention.
FIG. 17 is a diagram illustrating a second example of a structured document for explaining the second embodiment.
FIG. 18 is a diagram illustrating an example of structured difference data of a second example of a structured document.
FIG. 19 is a diagram for explaining a method of synthesizing the reference document of the second example of the structured document and the structured difference data.
[Explanation of symbols]
101 CPU
102 Terminal device
103 Secondary storage device
104 Document Editing Program
105 Document version management program
106 Document reading program
107 Structural analysis program
108 Structured Document Difference Extraction Program
109 Structured difference information output program
110 Document Display / Save Program
111 Difference document type definition generation program

Claims (4)

  1. A processing device that has a logical structure defined by a specific document type definition and performs editing such as deletion, insertion, or modification on a structured document structured by tags, and stores the structured document before and after the editing. A structured document version management method for managing both structured documents before and after editing by the processing device,
    A document reading step of reading a structured document before and after editing from the storage device;
    A structural analysis step of analyzing the logical structure of both structured documents obtained in the reading step,
    A structured document difference extraction step of extracting a changed portion between the two documents before and after the editing based on the logical structure information obtained by the structure analysis step;
    A structured difference information output step of outputting the change information obtained by the difference extraction step as structured description difference information;
    A difference document type definition generating step of generating a document type definition for the structured difference information from the document type definition of the structured document to extract the difference;
    A version management method for a structured document, comprising a step of displaying and storing the output structured difference information.
  2. A processing device that performs editing such as deletion, insertion, or change on a structured document structured by a tag representing a logical structure, and a storage device that stores the structured document before and after the editing, and the processing device In the structured document version management method for managing both structured documents before and after editing,
    A document reading step of reading a structured document before and after editing from the storage device;
    A structural analysis step of analyzing the logical structure of both structured documents obtained in the reading step,
    A structured document difference extraction step of extracting a changed portion between the two documents before and after the editing based on the logical structure information obtained by the structure analysis step;
    A structured difference information output step of outputting the change information obtained by the difference extraction step as structured description difference information;
    A structure window for displaying the structure on the display screen and a character string window for displaying the character strings in the structure are displayed. In the structure window, the display of the structure before and after editing and the display for instructing addition, deletion, and change of the structure are displayed. Then, in the character string window, the display of the character string before and after editing and the display indicating the addition, deletion, and change of the character string are performed at positions corresponding to the display positions of the structure before and after editing in the structure window. Displaying structured difference information;
    A version management method for a structured document, comprising a step of storing the output structured difference information.
  3. With a storage device and a processing device, having a logical structure defined by a specific document type definition, for the structured document structured by tags, the processing device deletes, inserts, or performs editing such as change, In the structured document version management device that stores the structured document before and after editing in the storage device and manages both the structured document before and after editing by the processing device,
    The processing device includes:
    Document reading means for reading a structured document before and after editing from the storage device,
    Structured document analysis means for analyzing the logical structure of both structured documents acquired by the document reading means,
    Based on the logical structure information obtained by the structure analysis means, a structured document difference extraction means for extracting a changed portion between the structured documents before and after the editing,
    Structured difference information output means for outputting the change information obtained by the difference extraction means as difference information structured and described;
    A difference document type definition generating unit configured to generate a document type definition for structured difference information from the document type definition of the structured document from which the difference is extracted;
    A structured document version management device comprising means for displaying and storing output structured difference information.
  4. The storage device includes a storage device and a processing device, and the processing device performs editing such as deletion, insertion, or change on a structured document structured by a tag representing a logical structure, and performs structuring of the storage device before and after the editing. In a structured document version management device that stores a document and manages both the structured document before and after the editing by the processing device,
    The processing device includes:
    Document reading means for reading a structured document before and after editing from the storage device,
    Structured document analysis means for analyzing the logical structure of both structured documents acquired by the document reading means,
    Based on the logical structure information obtained by the structure analysis means, a structured document difference extraction means for extracting a changed portion between the structured documents before and after the editing,
    Structured difference information output means for outputting the change information obtained by the difference extraction means as difference information structured and described;
    A structure window for displaying the structure on the display screen and a character string window for displaying a character string in the structure are displayed. In the structure window, a display of the structure before and after editing and a display for instructing addition, deletion, and change of the structure are displayed. Then, in the character string window, the display of the character string before and after editing and the display of instructing addition, deletion, and change of the character string are performed at positions corresponding to the display positions of the structure before and after editing in the structure window. Display means for displaying the structured difference information,
    An apparatus for managing a version of a structured document, comprising: means for storing the output structured difference information.
JP15920296A 1996-05-31 1996-05-31 Structured document version management method and apparatus Expired - Fee Related JP3566457B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15920296A JP3566457B2 (en) 1996-05-31 1996-05-31 Structured document version management method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15920296A JP3566457B2 (en) 1996-05-31 1996-05-31 Structured document version management method and apparatus

Publications (2)

Publication Number Publication Date
JPH09319632A JPH09319632A (en) 1997-12-12
JP3566457B2 true JP3566457B2 (en) 2004-09-15

Family

ID=15688561

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15920296A Expired - Fee Related JP3566457B2 (en) 1996-05-31 1996-05-31 Structured document version management method and apparatus

Country Status (1)

Country Link
JP (1) JP3566457B2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2242158C (en) 1997-07-01 2004-06-01 Hitachi, Ltd. Method and apparatus for searching and displaying structured document
JP2002024211A (en) * 2000-06-30 2002-01-25 Hitachi Ltd Method and system for document management and storage medium having processing program stored thereon
JP4737914B2 (en) * 2002-10-02 2011-08-03 ケープレックス・インク Document revision support program, computer-readable medium storing the support program, and document revision support apparatus
JP4340084B2 (en) * 2003-03-11 2009-10-07 パナソニック株式会社 Transmitting apparatus and transmitting method
JP4716709B2 (en) 2004-06-10 2011-07-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation Structured document processing apparatus, structured document processing method, and program
JP4236055B2 (en) 2005-12-27 2009-03-11 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation Structured document processing apparatus, method, and program
JP5037088B2 (en) * 2006-11-01 2012-09-26 株式会社日立ソリューションズ Document creation system
JP5163629B2 (en) * 2009-12-18 2013-03-13 コニカミノルタビジネステクノロジーズ株式会社 Document processing device
JP5281029B2 (en) * 2010-03-31 2013-09-04 ヤフー株式会社 Confirmation system and method
KR101875820B1 (en) * 2011-11-25 2018-07-06 구글 엘엘씨 Providing translation assistance in application localization
JP5553079B2 (en) * 2012-03-23 2014-07-16 日本電気株式会社 Product document management system, product document management method, and program
JP6011790B2 (en) * 2012-10-18 2016-10-19 バーチャレクス・コンサルティング株式会社 File management apparatus and computer program
CN105930174B (en) * 2016-05-22 2019-05-21 南京南瑞继保电气有限公司 A kind of graphical page program comparison in difference method and system

Also Published As

Publication number Publication date
JPH09319632A (en) 1997-12-12

Similar Documents

Publication Publication Date Title
US8046683B2 (en) Structural editing with schema awareness
US7191395B2 (en) Method and system for stylesheet-centric editing
US6565609B1 (en) Translating data into HTML while retaining formatting and functionality for returning the translated data to a parent application
US7366729B2 (en) Schema framework and a method and apparatus for normalizing schema
US7065707B2 (en) Segmenting and indexing web pages using function-based object models
JP4656868B2 (en) Structured document creation device
JP3692764B2 (en) Structured document registration method, search method, and portable medium used therefor
US5513305A (en) System and method for documenting and displaying computer program code
US7900149B2 (en) Methods and systems for editing of web pages in an application capable of displaying web page content
US6182062B1 (en) Knowledge based information retrieval system
US6613098B1 (en) Storage of application specific data in HTML
US7617450B2 (en) Method, system, and computer-readable medium for creating, inserting, and reusing document parts in an electronic document
JP3692054B2 (en) Document structure conversion method, document structure conversion apparatus, and program
EP0770243B1 (en) Method and apparatus for managing text objects
JP4344693B2 (en) System and method for browser document editing
JP2006114012A (en) Optimized access to electronic document
Van Herwijnen Practical sgml
US5812999A (en) Apparatus and method for searching through compressed, structured documents
US20060026505A1 (en) Tree construction for XML to XML document transformation
US8954841B2 (en) RTF template and XSL/FO conversion: a new way to create computer reports
US6964015B2 (en) Redline extensible markup language (XML) schema
US20020116402A1 (en) Information component based data storage and management
US20040199876A1 (en) Reversible document format
US20090210780A1 (en) Document processing and management approach to creating a new document in a mark up language environment using new fragment and new scheme
US5781714A (en) Apparatus and methods for creating and using portable fonts

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040412

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040601

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040610

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080618

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees