Document management assistance system, document management assistance method, and document management assistance program

By utilizing a document management auxiliary system and multi-stage processing of defined information and processors, the data structuring problem caused by non-standardized invoice data formats was solved, enabling structured document management of multi-value correspondences between projects and improving data management efficiency.

CN122122576APending Publication Date: 2026-05-29LUO JIDI CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
LUO JIDI CO LTD
Filing Date
2023-11-10
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

In trade transactions, the lack of standardization in the data formats of invoices issued by various companies leads to long registration times for the data system, and existing technologies cannot effectively handle situations where multiple values ​​correspond to the item names in invoices, making it impossible to structure the data.

Method used

A document management auxiliary system is adopted to establish the correspondence between projects and project values ​​by defining information. The processor performs multi-stage processing to extract project names and values, and performs data structuring based on hierarchical relationships and project calculation formulas.

Benefits of technology

It enables structured document management while considering the correspondence between multiple values ​​across projects, thereby improving data accuracy and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122122576A_ABST
    Figure CN122122576A_ABST
Patent Text Reader

Abstract

The present invention is to assist the data management of a document by structuring the document. A document management assistance system stores definition information in a storage device, the definition information including, for each item, a hierarchical level indicating a hierarchical relationship between items, a stage processing flag indicating up to which stage a process is needed to structure the document, and a notation pattern establishing a correspondence between an item notation name and a notation position pattern of an item value for each item notation name; a processor, for each item, performs a process up to a first stage or up to a second stage based on the stage processing flag; the first stage process extracts an item name of the item and an item value corresponding to the item name from an input document based on the notation pattern; and the second stage process, for the item whose item value is extracted in the first stage process, modifies the item value based on a correspondence relationship between item values with reference to the hierarchical level, and generates structured information establishing a correspondence between the item name of the item and the item value or the modified item value corresponding to the item name.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a document management auxiliary system, document management auxiliary method, and document management auxiliary program. Background Technology

[0002] As a technique for automatically obtaining ticket data from ticket documents, one example is the technology disclosed in Japanese Patent Application Publication No. 2021-179747 (Patent Document 1). Patent Document 1 describes: "It is possible to create a string attribute model for obtaining the probability of attributes of strings in a ticket from learning ticket data, and an attribute positional relationship rule representing the positional relationship of attributes of strings in the ticket. Furthermore, by applying the string attribute model to strings in the text recognition results of a ticket image, the probability of attributes is obtained. And, based on the position of the strings in the text recognition results of the ticket image in the ticket and the attribute positional relationship rule, the probability is modified, thereby improving the appropriateness of the ticket data automatically obtained from the ticket." Existing technical documents Patent documents Patent Document 1: Japanese Patent Application Publication No. 2021-179747 Summary of the Invention

[0003] The problem that the invention aims to solve In trade operations, the data registration process is time-consuming because the data formats of the bills issued by various companies are not standardized.

[0004] In particular, in tables such as packing lists (PLs), the information for each item category (box number, contract number, quantity, weight, dimensions, etc.) is recorded in a separate row. However, because several items may be tied to the same contract or grouped into one package, not all data is recorded in every row. In such cases, it is necessary to accurately extract the correspondence between different data points and to structure the data.

[0005] Patent document 1 modifies the rules based on the position of attribute strings in the document and the relationship between attribute positions. However, while the rules for the relationship between attribute positions consider the positional relationships between multiple attribute groups and the positional relationships between multiple attributes within an attribute group, they do not consider the situation in the document where an attribute or item name (Key) corresponds to multiple item values ​​(Values). Therefore, it is impossible to structure the data that considers the correspondence between multiple values ​​between items.

[0006] Therefore, the purpose of this invention is to provide a document management auxiliary system, a document management auxiliary method, and a document management auxiliary program for data management of documents with multiple values ​​corresponding to a project; the document management auxiliary system, the document management auxiliary method, and the document management auxiliary program structure the document by considering the correspondence between multiple values ​​between projects.

[0007] Methods for solving problems To address the aforementioned issues, the document management system of the present invention is characterized by having a processor and a storage device. The storage device stores definition information, which defines the conditions for structuring the document by establishing a correspondence between the document's items and item values. The definition information includes: for each item, the hierarchical level of the hierarchical relationship between items; for each item, the stage processing flag indicating which stage of processing is required to structure the document; and for each item, establishing a corresponding notation pattern by matching the item notation name with the notation position pattern information of the item value of each item notation name. For each item, the processor, based on the stage processing flags defined in the information, executes either the processing up to stage 1 or the processing up to stage 2. In the first stage of processing, based on the notation pattern defined in the information, the project name and the corresponding project value are extracted from the input document. In the second stage of processing, for the item whose value was extracted in the first stage, the item value is modified based on the correspondence between the item value and the item value of the item located at the lower level of the item's hierarchy, as determined by referring to the hierarchy level of the defined information. Generate structured information, which is information formed by establishing a correspondence between the project name and the corresponding project value or the modified project value of the project name.

[0008] The effects of the invention According to the present invention, a document with multiple values ​​corresponding to a project can be structured and managed by taking into account the correspondence between the multiple values ​​between projects. Attached Figure Description

[0009] Figure 1 This is a schematic diagram of the document management auxiliary system in this embodiment.

[0010] Figure 2 This is a block diagram showing the hardware structure of the computer system used to implement the document management auxiliary system in this embodiment.

[0011] Figure 3A This is a functional block diagram illustrating the structure of the document management auxiliary system in this embodiment.

[0012] Figure 3B This is a functional block diagram illustrating a structural variation of the document management auxiliary system in this embodiment.

[0013] Figure 4 This diagram illustrates an example of a document that is processed by the document management auxiliary system in this embodiment.

[0014] Figure 5 This diagram illustrates an example of the structure and stored values ​​of the definition file used in the processing of the document management auxiliary system in this embodiment.

[0015] Figure 6 This is an explanatory diagram showing the hierarchical relationship between items in the document management auxiliary system of this embodiment.

[0016] Figure 7 This diagram illustrates an example of a definition file used in the processing of the document management auxiliary system in this embodiment.

[0017] Figure 8 This is a flowchart illustrating the overall processing of the document management auxiliary system in this embodiment.

[0018] Figure 9 This is an explanatory diagram illustrating the data migration when the document management auxiliary system in this embodiment structures documents.

[0019] Figure 10 This is a flowchart illustrating the structured basic information generation process performed by the document management auxiliary system in this embodiment.

[0020] Figure 11 This is a flowchart illustrating the staged processing of the document management auxiliary system in this embodiment.

[0021] Figure 12 This is a flowchart illustrating the hierarchical modification process performed by the document management auxiliary system in this embodiment.

[0022] Figure 13 This is a flowchart illustrating the modifications made by the document management auxiliary system in this embodiment through combined processing.

[0023] Figure 14 This is a flowchart illustrating the process of combining project values ​​in the document management system of this embodiment.

[0024] Figure 15This indicates that the document management auxiliary system in this embodiment performs blank filling processing. Figure 12 The flowchart of step S1206.

[0025] Figure 16 This is a flowchart illustrating the supplementary processing performed by the document management auxiliary system in this embodiment.

[0026] Figure 17 This is an explanatory diagram of an example of a project calculation formula in an embodiment of the present invention.

[0027] Figure 18 This is a diagram illustrating an example of a tsv file generated by the document management auxiliary system in this embodiment.

[0028] Figure 19 This is a diagram illustrating an example of the first structured data JSON file generated by the document management auxiliary system in this embodiment.

[0029] Figure 20 This diagram illustrates an example of a formatted file generated by the document management auxiliary system in this embodiment.

[0030] Figure 21 This is a diagram illustrating an example of the second structured data JSON file generated by the document management auxiliary system in this embodiment.

[0031] Figure 22 This is a diagram illustrating an example of the final structured data JSON file generated by the document management auxiliary system in this embodiment. Detailed Implementation

[0032] Hereinafter, an embodiment of the present invention will be described in detail with the aid of the accompanying drawings. However, the present invention is not limited to the following embodiment, and various modifications and applications within the technical concept of the present invention are also included within its scope.

[0033] <Document Management System Structure> Figure 1 This is a schematic diagram of the document management auxiliary system 100 in this embodiment.

[0034] The document management auxiliary system 100 is a system for converting documents with multiple item values ​​corresponding to item names into structured data, and can be connected to the client device 200 in any way. A document refers to a document where an item name (also called a key) corresponds to multiple item values ​​(also called values), and contains item values ​​with one-to-many relationships between items. It is a document created by document creation software, spreadsheet software, etc., or a logistics-related document such as a trade invoice (IV) or a packing list (PL).

[0035] The client device 200 sends its own document D to the document management auxiliary system 100 via the GUI (Graphical User Interface) of the web browser 201. The client device 200, for example, in the case of a logistics-related invoice, is the terminal of any of the parties involved in the circulation of goods (such as the operator of the goods' shipment, transportation operator, etc.).

[0036] The Web & App server 101 of the document management auxiliary system 100 includes a converter 102 that converts the received document D into structured data, such as data in JSON (JavaScript Object Notation) format. Specifically, it extracts the project names and project values ​​from document D, which contains a one-to-many relationship between project names and project values, and converts them into structured data where project names and project values ​​are matched one-to-one, and project values ​​between projects are also matched one-to-one.

[0037] In the client device 200, the client verifies the structured data converted by the document management auxiliary system 100. If errors are found, the client sends a correction request to the document management auxiliary system 100. The document management auxiliary system 100 corrects the structured data according to the correction request and stores it in the database 103.

[0038] Next, the computer system 300 of the document management auxiliary system 100 will be described. Figure 2 This is a block diagram illustrating the hardware structure of the computer system 300 in this embodiment. It should be noted that the client device 200 also possesses the computer system 300, just like the document management auxiliary system 100.

[0039] Computer system 300 includes: processor 301, memory (main storage device) 302, auxiliary storage device 303, output device 304, input device 305, and communication interface (I / F) 306. These components are interconnected via a bus. Memory 302 and auxiliary storage device 303 are storage devices that store programs and data used by processor 301.

[0040] The processor 301 may consist of a single processing unit or multiple processing units, and may include a single or multiple arithmetic units or multiple processing cores. The processor 301 may be implemented as one or more central processing units, microprocessors, microcomputers, microcontrollers, digital signal processors, state machines, logic circuits, graphics processing devices, system-on-a-chip, and / or any device based on control instruction manipulation signals.

[0041] The memory 302, for example, is a semiconductor memory, primarily used to store the executing program and data. The processor 301 executes various processes according to the program stored in the memory 302. Through the processor 301's actions according to the program, various functional units described later are implemented (see [reference]). Figure 3A , Figure 3B wait).

[0042] Auxiliary storage device 303, for example, is a high-capacity storage device such as a hard disk drive or a solid-state drive, used for long-term storage of programs and data. Examples of data stored in auxiliary storage device 303 will be described later.

[0043] The programs and data stored in the auxiliary storage device 303 are loaded into the memory 302 upon startup or when necessary, and the processor 301 executes the programs, thereby performing various processes of the computer system 300 that constitutes the document management auxiliary system 100. Therefore, in the following description, the processes executed by the document management auxiliary system 100 are the processes executed by the processor 301 according to the programs.

[0044] Output device 304 is a hardware device for displaying various images for input and output, such as a display device or a printing device. Communication I / F 306 is an interface for connecting to a network. Input device 305 is a hardware device for inputting user instructions and information into the document management auxiliary system 100.

[0045] It should be noted that the computer system 300 may also contain more than two processors 301. Furthermore, the functions of the document management auxiliary system 100 can be configured across multiple computer systems 300. In this case, the multiple computer systems 300 communicate via a network. For example, some of the functions of the document management auxiliary system 100 may be configured on one computer system 300, while other parts may be configured on other computer systems.

[0046] Figure 3 is a functional block diagram of the document management auxiliary system 100 in this embodiment.

[0047] Figure 3A This is a functional block diagram of the document management auxiliary system 100 when it processes document D into structured data and saves the data required for this processing. On the other hand, Figure 3B The process of converting document D into structured data is performed on the client device, and the data required for this process is stored by the document management auxiliary system 100. Figure 3B become Figure 3A The functional block diagram for the modified example.

[0048] like Figure 3AAs shown, the document management auxiliary system 100 communicates with the client device 200 via network N.

[0049] The document management auxiliary system 100 includes a control unit 111, a communication unit 112, a row / column / text extraction unit 113, a structured basic information generation and processing unit 114, a value modification unit 115, a value completion unit 116, a definition file storage unit 120, a TSV file storage unit 121, a structured data storage unit 122, a format storage unit 123, and a project calculation storage unit 124.

[0050] The control unit 111 has the functions of controlling the communication unit 112 and the value supplement unit 116, as well as controlling their access to the definition file storage unit 120 and the project calculation storage unit 124. In the computer system 300 that implements the document management auxiliary system 100, the control unit 111 is implemented by the processor 301 executing the program stored in the memory 302.

[0051] The row / column / text extraction unit 113 and the value completion unit 116 are implemented in the computer system 300 that implements the document management auxiliary system 100 by the processor 301 executing a program stored in the memory 302. That is, in the following description, the processing performed by the above-mentioned units is actually performed by the processor 301.

[0052] In the computer system 300 that implements the document management auxiliary system 100, the communication unit 112 is implemented by the processor 301 executing the program stored in the memory 302 and controlling the communication I / F 306.

[0053] The communication unit 112 sends and receives information with the client device 200 connected via network N.

[0054] Define file storage unit 120 - project computing storage unit 124 included in Figure 1 The information is stored in the database 103 and is implemented through the storage areas of the auxiliary storage device 303. These storage units store the information necessary for implementing the functions of the document management auxiliary system 100. The information stored in these storage units will be described later.

[0055] The client device 200 includes a control unit 211, a communication unit 212, a display unit 213, and an input unit 214.

[0056] The control unit 211 has the function of controlling the communication unit 212 and the input unit 214. In the computer system 300 that implements the client device 200, the control unit 211 is implemented by the processor 301 executing the program stored in the memory 302.

[0057] The communication unit 212 has the function of communicating with the document management auxiliary system 100 connected via network N. The display unit 213 has the function of displaying information to the user of the client device 200. The input unit 214 has the function of accepting information input from the user of the client device 200. In the computer system 300 that implements the client device 200, the communication unit 212 and the input unit 214 are implemented by the processor 301 executing the program stored in the memory 302 and controlling the communication I / F 306, the output device 304 and the input device 305 respectively.

[0058] Figure 3B The structure, except that the row / column / text extraction unit 113 and the value completion unit 116 are not included in the document management auxiliary system 100B, but are included in the client device 200B, is similar to... Figure 3A Same. The row / column / text extraction unit 113 and the value completion unit 116 are implemented in the computer system 300 that implements the client device 200 by executing a program stored in the memory 302 through the processor 301.

[0059] The following describes the document management assistance processing performed in the document management assistance system 100 shown in Figure 3. Figures 4-22 Please provide an explanation.

[0060] First, the document D, which implements document management auxiliary processing and is converted into structured data, and the definition file 500 used in document management auxiliary processing are explained. Then, the processing flow of document management auxiliary processing is explained.

[0061] As mentioned above, document D is a document where a project name corresponds to multiple project values, and contains project values ​​with a one-to-many relationship between projects, and these projects have a hierarchical relationship. For example, it is... Figure 4 The sample document shown is the Packing Order (PL) document 400. Figure 4 The PL document 400 shown is a table-style document consisting of row number 401 and column number 402.

[0062] Definition file 500 is stored in definition file storage unit 120, defining the necessary conditions for structuring each type of document. Definition file 500 is pre-created based on domain knowledge of the document's domain and rule learning from sample documents. For example, in the case of PL documents, the definition file is created based on logistics domain knowledge and PL documents from various operators. It should be noted that definition file 500 can be multiple files divided according to each document type, or it can be a single file.

[0063] Figure 5 This shows an example of the structure and stored values ​​of definition file 500.

[0064] The structure table 510 of the definition file 500 shows the information structure recorded in the definition file, and includes document type 511, item 512, stage processing flag 513, level 514, notation pattern 515, and extraction condition 516.

[0065] Document Type 511 stores the types of documents. For example, if it is a trade document, there would be invoices (IV) and packing lists (PL), etc. Figure 5 As shown, in the definition file 500 for PL document 400, the "PL" representing the packaging order is stored in document type 511.

[0066] Item 512 is stored in document D, with each item containing its recorded data. For example... Figure 5 As shown, the PL document's project stores items such as "Quantity" and "Description".

[0067] The stage processing flag 513 stores flags in the document management auxiliary processing that indicate how many stages of processing a project can proceed to. The stage processing flag 513 is preset based on known information about the document, such as domain knowledge of the document and a rule base of sample documents.

[0068] In this embodiment, the item set to "1" in the stage processing flag 513 is an item that has no hierarchical relationship with other items, indicating that only one stage of processing (the first stage of processing) is performed. The first stage of processing is the structured basic information generation processing described later.

[0069] Items set to "2" in stage processing flag 513 are items that have a hierarchical relationship with other items, indicating that they may undergo two-stage processing, that is, in addition to the first-stage processing, a second-stage processing is also performed. The second-stage processing is the hierarchical modification processing described later.

[0070] Items set to "3" in stage processing flag 513 are items that have a hierarchical relationship with other items and whose item values ​​can be calculated based on other items in that hierarchical relationship. This indicates that three-stage processing is possible, that is, in addition to the first stage processing, a second stage processing and / or a third stage processing are also performed. The third stage processing is the supplementary processing based on the hierarchical level and item calculation formula, which will be described later.

[0071] For example, although not shown in Figure 5, the stage processing flag 513 for the item "Date" in PL document 400 is set to "1". This is because, in PL document 400, "Date" has no hierarchical relationship with other items and cannot be calculated based on other items. Therefore, there is no need for stage 2 and stage 3 processing; only stage 1 processing is required.

[0072] In addition, such as Figure 5 As shown, in the stage processing flag of project "Quantity" in PL document 400, "2" is set. This is because project "Quantity" has a hierarchical relationship with other projects (project name "Case_No."), so a second stage of modification processing is possible. However, it is difficult to perform calculations based on other projects, so a third stage of processing cannot be performed. Therefore, a second stage of processing is implemented.

[0073] Furthermore, the stage processing flag for the item "Qty_per_Pkg", which is not described in PL document 400, is set to "3". This is because the item "Qty_per_Pkg" has a hierarchical relationship with other items, and its item value can be calculated based on the item values ​​of other items, so it is possible to implement a third stage of processing on the basis of the first stage.

[0074] return Figure 5 Hierarchical level 514 stores the hierarchical levels of projects that have hierarchical relationships with other projects. Hierarchical level 514 is pre-defined based on known information about the documents, such as domain knowledge of the documents and a rule base of sample documents, according to a multi-degree hierarchical relationship derived from the correspondence between multiple project values ​​between projects.

[0075] For example, projects that do not have a correspondence between projects do not have a hierarchical level, so the hierarchical level is set to "0".

[0076] For projects with inter-project correspondences, the level of the lowest-level project (Level 1) is set to "1". If the level is increased based on correspondences with multiple degrees, the level increases by 1 for each level, with the level of the second-level project set to "2".

[0077] Among them, regarding the hierarchical level used to represent the hierarchical relationship between projects, Figure 6 Please provide an explanation.

[0078] like Figure 4As shown in PL document 400, the information of each item category (box number, contract number, quantity, weight, dimensions, etc.) is recorded in a row-by-row format. However, since there may be cases where several items are bound to the same contract or several items are grouped into one package, not all data may be recorded in every row.

[0079] For example, line 37 of PL document 400 contains the values ​​for "DESCRIPTION" and "QUANTITY", but not the value for "CASE_NO." (box number).

[0080] Because there are cases where multiple "QUANTITY" entries (e.g., "32", "2") are mapped to and associated with a single "CASE_NO." entry (e.g., "5"), "CASE_NO." is set at the level above "QUANTITY".

[0081] Similarly, there are cases where multiple "CASE_NO." entries (e.g., "1-4", "5", "6-24") are mapped to and associated with a single "CONTRACT_NO." entry (e.g., "HY21052103"). In this case, the level of "CONTRACT_NO." is set to the level above "CASE_NO." As a result, "QUANTITY" belongs to the lowest level, level 1, with a level setting of "1". "CASE_NO." belongs to the next level of "QUANTITY", level 2, with a level setting of "2". "CONTRACT_NO." belongs to the next level of "CASE_NO.", level 3, with a level setting of "3".

[0082] return Figure 5 In notation pattern 515, rules extracted from a large number of sample documents are recorded, establishing a corresponding storage between the document's item name merge name (also known as the item notation name) and the parameters of the item value position pattern. It should be noted that there can be more than one item name merge name, and for each item name merge name, there can be more than one corresponding parameter of the item value position pattern.

[0083] Regarding notation mode 515, use Figure 7 The definition file example shown is explained in detail.

[0084] Figure 7 This is a diagram illustrating an example of a definition file in this implementation.

[0085] exist Figure 7In the example definition file shown, the merge name for the project "Quantity" (the string enclosed in a dashed box) is set to "Qty", "QUANTITY", "Quantity", and "Q'TY".

[0086] The parameters of the project value location pattern correspond to the project name merge name and include a location difference parameter representing the location difference with the project name merge name, an inherent location parameter representing the inherent location information of the project name merge name, and a termination condition parameter representing the termination condition for the extraction of project values.

[0087] Specifically, in Figure 7 In the example definition file shown, the position difference parameters include a parameter shift_row indicating the number of difference rows between the merged name and the project name, and a parameter shift_col indicating the number of difference columns between the merged name and the project name.

[0088] The inherent positional parameters include a multiline parameter that indicates whether the merged project name is recorded on multiple lines. If multiline is "false", the merged project name is recorded on a single line; on the other hand, if multiline is "true", the merged project name is recorded on multiple lines.

[0089] The termination condition parameters include a parameter `blank_rows` that indicates the number of blank rows to extract at the end of the item value extraction. It should be noted that the parameters for the item value position mode are not limited to those mentioned above.

[0090] return Figure 5 Extraction condition 516 stores conditions representing common features of item values ​​extracted from a large number of sample documents. These conditions may include, for example, the data type of the item value (e.g., string, number) and matching criteria (e.g., whether it contains a specific string), and multiple conditions can be set. It should be noted that extraction condition 516 is not limited to the above.

[0091] Next, the processing flow of document management auxiliary processing executed in the document management auxiliary system 100 in this embodiment will be described.

[0092] Figure 8 This is a flowchart illustrating the overall document management auxiliary processing performed by the document management auxiliary system 100 in this embodiment. Figure 9 This is an explanatory diagram illustrating the process by which the document management auxiliary system 100 in this embodiment structures document D.

[0093] use Figure 4 The PL document 400 and shown Figure 7The definition file 500 shown illustrates the results of each process performed on the PL document 400 for document management auxiliary processing, and provides explanations.

[0094] First, the row / column / text extraction unit 113 extracts the text and the row / column numbers in the document D containing the text, and performs row / column / text extraction processing (step S801) to convert the document D into a tsv file 402 that establishes a correspondence between the row / column numbers and the text.

[0095] It should be noted that, as Figure 9 As shown, a document D in docx / xlsx format can also be converted to an XML (Extensible Markup Language) file 401, and then to a TSV file 402. XML and TSV formats are just examples; as long as the text in document D can be mapped to its corresponding row / column number, it can also be converted to other file formats.

[0096] Regarding the 402 error in the generated tsv file, use... Figure 18 Please provide an explanation. Figure 18 The image shows an example of a tsv file 402 generated in step S801, with PL document 400 as input.

[0097] As shown in the figure, the tsv file 402 contains information that establishes a correspondence between the text extracted from the PL document 400 and the line and column numbers of that text. Figure 18 In the example, the text "TIANJIN, CHINA" is shown in the 5th row, 1st column of PL document 400.

[0098] return Figure 8 The structured basic information generation and processing unit 114 refers to the definition file 500, and for all projects, extracts the project values ​​corresponding to the project names from the tsv file 402, generates the first structured data JSON file 403 that corresponds the project names and project values, and saves it in the structured data storage unit 122.

[0099] Furthermore, the structured basic information generation and processing unit 114 extracts the row / column numbers of the extracted item values, generates a format file 404 that establishes a correspondence between the item name and the row / column numbers of the item value, and saves it in the format storage unit 123 (step S802). It should be noted that the JSON file is just one example; any file other than the one described above can be used as long as it can depict a data structure that establishes a correspondence between the item name and the item value. Further details regarding the structured basic information generation and processing in step S802 will be described later. Figure 10 The explanation is provided below.

[0100] Regarding the generated first structured data JSON file 403 and format file 404, use Figure 19 , 20 Please provide an explanation.

[0101] Figure 19 The image shows an example of a first structured data JSON file 403 generated in step S802, which takes the tsv file 402 generated in step S801 as input.

[0102] As shown in the figure, the first structured data JSON file 403 stores arrays in the "Header" and "Products" sections that map item names to item values. Each item name can correspond to any number of item values ​​(0, 1, or more). For example, the item name "Date" corresponds to the item value ["Aug.09, 2021"]; similarly, the item name "Case_No." corresponds to an array of multiple item values ​​["1-75", "76-78", "79", "80", "1-4", "5", "6-24"].

[0103] then, Figure 20 The diagram shows an example of a format file 404 generated in step S802, which takes the tsv file 402 generated in step S801 as input.

[0104] As shown in the figure, format file 404 stores arrays in the "Header" and "Products" sections that map item names to their corresponding row / column numbers. For example, for the item name "Date," there is a corresponding row / column number ["4, 6"], which corresponds to the row / column number indicating that the item value "Aug.09, 2021" is located in row 4, column 6 of PL document 400. Furthermore, for the item name "Case_No.", there are multiple arrays of row / column numbers ["18, 1", "21, 1", "24, 1", "27, 1", "31, 1", "34, 1", "40, 1"]. It should be noted that the row / column number "18, 1" indicates that the item value "1-75" is located in row 18, column 1 of PL document 400.

[0105] return Figure 8The Value modification unit 115 and the Value completion unit 116 perform stage processing on all items based on the format file 404, the definition file 500 in the definition file storage unit 120, and the item calculation formula 600 in the item calculation formula storage unit 124, which were also generated in step S802, for the first structured data JSON file 403. After generating the second structured data JSON file 405, the final structured data JSON file 406 is generated (step S803).

[0106] Specifically, first, the Value Modification Unit 115 determines the stage processing flag of the definition file 500. Next, for items determined to be eligible for the second stage processing, the Value Modification Unit 115 modifies the item value based on the item value of the lower-level item in the hierarchy, referring to the hierarchy level defined in the definition file 500, from the first structured data JSON file 403 and the format file 404. Then, the Value Modification Unit 115 updates the first structured data JSON file 403 using the modified item value. After processing all items in the first structured data JSON file 403, the Value Modification Unit 115 generates the updated first structured data JSON file 403 as the second structured data JSON file 405.

[0107] Regarding the generated second structured data JSON file 405, use Figure 21 Please provide an explanation.

[0108] Figure 21 The image shows an example of the second structured data JSON file 405 generated in step S803.

[0109] As shown in the diagram, in the second structured data JSON file 405, the values ​​of the items "Description" and "Case_No." are modified. Within the "Description" item, the first item value "TS-M1U2-ED11196" and the second item value "CD-LOAD" of the "Description" item in the first structured data JSON file 403 are combined, thus modifying the first item value of the "Description" item in the second structured data JSON file 405 to "TS-M1U2-ED11196, CD-LOAD". The same applies to subsequent item values.

[0110] Furthermore, in the project "Case_No.", the blank " " was not added to the project "Case_No." in the first structured data JSON file 403. However, between the sixth project value "5" and the seventh project value "6-24", the blank " " was added in the second structured data JSON file 405.

[0111] Next, the Value Supplement Unit 116 determines the stage processing flag of the definition file 500. Then, for items determined to undergo stage 3 processing, the Value Supplement Unit 116 calculates the item value using the hierarchical level defined in the definition file 500, the item calculation formula 600 in the item calculation formula storage unit 124, and the first structured data JSON file 403. Then, the Value Supplement Unit 116 updates the second structured data JSON file 405 using the calculation result. After processing all items in the definition file 500, the Value Supplement Unit 116 generates the updated second structured data JSON file 405 as the final structured data JSON file 406.

[0112] Regarding the 406 error in the generated final structured data JSON file, use... Figure 22 Please provide an explanation.

[0113] Figure 22 The image shows an example of the final structured data JSON file 406 generated in step S803.

[0114] For example, in Figure 21 In the second structured result JSON file 405 shown after the second stage of processing, the value corresponding to the item "Qty_per_Pkg" is blank. On the other hand, in Figure 22 In the final structured result JSON file 406 after the third stage of processing shown, the item values ​​corresponding to the item "Qty_per_Pkg" are ["2", "40", "30", "150", "42", "32", "2", "42"], which fills in the item values ​​that were not originally present.

[0115] It should be noted that a more detailed explanation of the stage processing in step S803 will be provided later. Figures 11-16 In the process.

[0116] Figure 10 This indicates that the document management auxiliary system in this embodiment performs structured basic information generation processing. Figure 8 The flowchart of step S802).

[0117] First, the structured basic information generation and processing unit 114 begins cyclic processing, which repeatedly performs the process of creating the number of items (called object items) corresponding to the types and categories of documents that are objects, as recorded in the definition file 500.

[0118] Next, the structured basic information creation processing unit 114 begins to perform loop processing, which repeatedly performs the merge name of the item name contained in the object item representation pattern 515 recorded in the definition file 500 according to its quantity.

[0119] The structured basic information generation and processing unit 114 refers to the project name merge name in the definition file 500 and determines whether there is text in the tsv file 402 that matches the project name merge name (step S1001). If there is text that matches the project name merge name, the process proceeds to step S1002. On the other hand, if there is no text that matches the project name merge name, step S1001 is performed on the next project name merge name as long as the loop processing for all project name merge names has not yet been performed.

[0120] The structured basic information generation and processing unit 114 extracts the text that is consistent with the merged name of the project as the project name of the project recorded in the document, and extracts the row / column number of the obtained project name as the row / column number of the project (step S1002).

[0121] Next, the structured basic information generation and processing unit 114 begins a cyclical process that repeatedly performs processing on the number of item value position pattern parameters contained in the notation pattern 515.

[0122] The structured basic information generation and processing unit 114 refers to the parameters of the row / column number of the item and the position mode of the item value, and determines whether there is text in the tsv file 402 at the position determined by the row / column number of the item and the position mode of the item value (step S1003).

[0123] If no text exists, then step S1003 is performed for the next item value position pattern as long as loop processing has not been performed for all item value position patterns.

[0124] On the other hand, if text exists, the structured basic information generation processing unit 114 determines whether the text located at the row / column number determined by the row / column number of the item and the item value position mode parameter satisfies the extraction condition 516 recorded in the definition file 500 (step S1004).

[0125] If extraction condition 516 is met, the structured basic information generation and processing unit 114 will use the text located at the position (row / column number) determined by the item's row / column number and the item value position mode parameter in step S1003 as the item value, and establish a correspondence with the item name determined in step S1002 for extraction (step S1005). After extraction, the loop processing that repeatedly targets the number of item value position mode parameters will exit and the process will end.

[0126] On the other hand, if extraction condition 516 is not met, then step S1003 is performed for the next item value position pattern as long as loop processing has not been performed for all item value position patterns.

[0127] Finally, the structured basic information generation and processing unit 114 generates a first structured result JSON file 406 from the following: for items that do not contain text in step S1003, the item name extracted in step S1002; and for items that contain text in step S1003, the item name and item value that were created and extracted in step S1005.

[0128] In addition, the structured basic information generation and processing unit 114 establishes a correspondence between the project name extracted in step S1002 and the position (row / column number) determined in step S1003, and generates a format file 404 (step S1006).

[0129] Figure 11 This indicates that the document management auxiliary system in this embodiment performs stage processing ( Figure 8 The flowchart of step S803).

[0130] First, the Value modification unit 115 determines whether the stage processing flag of each item recorded in the definition file 500 is 1 or greater than 1 (step S1101).

[0131] For items with a stage processing flag of "1", the Value modification section 115 does not update the item value of that item in the first structured data JSON file 403.

[0132] On the other hand, for items with a stage processing flag greater than "1", the Value modification unit 115, based on the item's level 514 recorded in the definition file 500, uses the position information (row / column number) recorded in the format file 404 to modify the item value of that item in the first structured data JSON file 403 through combination and blank padding, to obtain a new modified item value (step S1102). For details regarding the processing of step S1102, please refer to... Figures 12-14 This will be described later.

[0133] Then, the Value modification unit 115 updates the item values ​​of items with stage processing flags greater than "1" in the first structured data JSON file 403 with the modified new item values ​​obtained in step S1102, and generates the second structured data JSON file 405.

[0134] (Step S1103) Next, the Value supplement unit 116 determines whether the stage processing flag of each item recorded in the definition file 500 is "2" or "3" (step S1104).

[0135] For items with a stage processing flag of "2", Value supplement 116 does not update the item value of that item in the second structured data JSON file 405.

[0136] On the other hand, for items with a stage processing flag of "3", the Value completion unit 116 performs completion processing based on the item's level 514 recorded in the definition file 500 and the calculation of the item calculation formula 600, and obtains the item value obtained through completion (step S1105). Details regarding the processing of step S1105 will be provided in [reference]. Figure 16 This will be described later.

[0137] Then, for the second structured data JSON file 405, the Value completion unit 116 updates the item value of the item marked "3" in the stage processing with the item value obtained by completion in step S1105, and generates the final structured data JSON file 406 (step S1106).

[0138] Figure 12 This indicates that the document management auxiliary system in this embodiment performs hierarchical modification processing. Figure 11 The flowchart of step S1102 is shown.

[0139] First, the Value modification unit 115 determines the level of each item recorded in the definition file 500, whether it is 0 or above 1 (step S1201).

[0140] For items with a level of "0", the Value Modification Unit 115 does not modify the item value of the item, but proceeds to step S1207.

[0141] On the other hand, for projects with a level of "1" or higher, the Value modification unit 115 refers to the definition file 500 and determines whether it is a multiline based on the multiline parameter of the project position mode parameter (step S1202).

[0142] For items where multiline is "false", the Value modification unit 115 does not perform the modification process through the combination process, but proceeds to step S1204.

[0143] On the other hand, for items where multiline is "true", the Value modification unit 115 modifies the item value of that item in the first structured data JSON file 403 through combination processing to obtain a new modified item value (step S1203). For details regarding the processing of step S1203, please refer to... Figure 13 This will be described later.

[0144] Value modification unit 115 updates the item values ​​of items with a level of "1" or higher in the first structured data JSON file 403 with the new modified item values ​​obtained in step S1203, and generates the second structured data JSON file (intermediate) (step S1204).

[0145] Next, the Value modification unit 115 determines whether the level of each item recorded in the definition file 500 is 1 or greater than 1 (step S1205).

[0146] For items with a level of "1", no modifications are made through blank filling; proceed to step S1207.

[0147] On the other hand, for items with a level greater than "1", the item values ​​in the second structured data JSON file (middle) generated in step S1204 are modified by filling in blanks to obtain the new modified item values ​​(step S1206). For details regarding the processing of step S1206, please refer to... Figure 15 This will be described later.

[0148] Then, the Value modification unit 115 updates the item values ​​of items with a level greater than "1" in the second structured data JSON file (middle) with the new modified item values ​​obtained in step S1206, and generates the second structured data JSON file 405 (step S1207).

[0149] Figure 13 This indicates that the document management auxiliary system in this embodiment has made modifications through combined processing. Figure 12 The flowchart of step S1203).

[0150] First, the Value modification unit 115 refers to the level 514 of the item recorded in the definition file 500 and the multiline parameter multiline used to determine whether it is a multiline in the notation mode 515, and selects one item from the first structured data JSON file 403 that has a non-blank item value, level 1 and multiline=false as the base item A (step S1301).

[0151] For example, in Figure 4 In PL document 400, the item value "Quantity" which is not blank and has a level of 1 and multiline=false set in definition file 500 can be selected as the baseline item A. Taking all elements of the baseline item A, i.e. all item values ​​of "Quantity", as the object, the processing of steps S1302-S1306 is performed one by one for each element.

[0152] Value modification unit 115 determines whether the element of the reference item A is the final element (step S1302).

[0153] If the element is the last element, then the Value modification unit 115 refers to the format file 404, obtains the row number x of the last element, and generates a combination condition (x <= row number of the element of the modified object item B) (step S1303). The combination condition (x <= row number of the element of the modified object item B) means: if the row number of the element of the modified object item (combined object item) B (also shown as item B in the drawing) is x or higher, then the row is combined.

[0154] Then, the Value modification unit 115 performs item value combination processing on the element of the modification target item B corresponding to the last element of the reference item A, in accordance with the combination conditions generated in step S1303, thereby generating a new modified element (step S1304).

[0155] For example, by Figure 4 The PL document 400 was generated in Figure 19 In the example of the first structured data JSON file 403 shown, since the element "798" of the baseline item A "Quantity" is the last element, the Value modification unit 115 refers to the format file 404, obtains the row number 40 corresponding to the element, and generates the combination condition (40 <= row number of the element of the modification object item B).

[0156] Moreover, when modifying the object item B to "Description", the Value modification unit 115 concatenates the elements "TS-M1U2-SRB36" and "CASH COUNTING BOX" with line numbers 40 or above using ",", combining them into a single element "TS-M1U2-SRB36, CASH COUNTING BOX", thereby generating a new modified element.

[0157] Return to step S1302. If this element is not the last element of the reference item A, the Value modification unit 115 refers to the format file 404 to obtain the line number x of this element of the reference item A and the line number y of the next element of this element, and generates a combination condition (x <= the line number of the element of the object item B < y) (step S1305).

[0158] Then, the Value modification unit 115 performs item value combination processing corresponding to the combination condition generated in step S1305 on the element of the object item B corresponding to this element of the reference item A, thereby generating a new modified element (step S1306).

[0159] For example, for the second element "120" of the reference item A "Quantity", since this element is not the last element, the Value modification unit 115 refers to the format file 404 and generates a combination condition (21 <= the line number of the element of the object item B < 24). Then, for example, when the object item B is "Description", the elements "TS-M1U2-CSS216" and "LARGE CASH SHUTTER" with line numbers 21 or above and less than 24 are concatenated using ",", combining them into a single element "TS-M1U2-CSS216, LARGE CASH SHUTTER", thereby generating a new modified element.

[0160] Next, Figure 14 is a flowchart showing the steps S1304 and S1306 in which the document management system in the present embodiment performs item value combination processing ( Figure 13 ).

[0161] First, the Value modification unit 115 initializes the combination element candidate number (combination element candidate number = 0) (step S1401).

[0162] Next, the Value modification unit 115 sets a loop parameter i (i = 1 to the number of elements of the object item B) for all elements of the object item B and starts loop processing, and this loop processing is repeatedly executed according to the number of elements of the object item B.

[0163] The Value modification unit 115 extracts the line number of the i-th element in the modification target item B from the format file 404 stored in the format storage unit 123 (step S1402).

[0164] Next, the Value modification unit 115 determines whether the line number extracted in step S1402 satisfies Figure 13 the combination condition (x <= the line number of the i-th element of the modification target item B) generated in step S1305, or the combination condition (x <= the line number of the i-th element of the modification target item B < y) generated in step S1306 (step S1403).

[0165] If the combination condition is not satisfied, the Value modification unit 115 clears the combination element candidate number, that is, restores the combination element candidate number to be equal to 0 (step S1404). Then, the Value modification unit 115 increments the parameter i by 1 (i = i + 1) (step S1405). If i is greater than the number of elements of the modification target item B, the loop process ends; if i is less than or equal to the number of elements of the modification target item B, then the process of step S1402 is performed for the next element of the modification target item B.

[0166] On the other hand, if the combination condition is satisfied, the Value modification unit 115 increments the combination element candidate number by 1 (step S1406).

[0167] Next, the Value modification unit 115 determines whether the combination element candidate number is greater than 1 (step S1407).

[0168] If the combination element candidate number is less than or equal to 1, the Value modification unit 115 advances the process to step S1405 described above.

[0169] On the other hand, if the combination element candidate number is greater than 1, the Value modification unit 115 combines the i-th item value (shown as item value i in the figure) and the (i - 1)-th item value (shown as item value i - 1 in the figure) of the modification target item B into one item value, and uses it as the (i - 1)-th item value to generate a new modified item value. Then, the Value modification unit 115 updates the (i - 1)-th element of the modification target item B in the first structured data JSON file 403 with the generated new modified item value (step S1408).

[0170] Next, the Value modification unit 115 deletes the i-th item value of the modification target item B in the first structured data JSON file 403 (step S1409).

[0171] Next, the Value modification unit 115 also deletes the i-th element (row / column number) of the modified object item B in the format file 404 (step S1410) and advances the process to step S1405.

[0172] Finally, the Value modification unit 115 uses the first structured data JSON file 403, after the item values ​​have been updated and deleted through steps S1408-S1410, as the second structured data JSON file (intermediate) (step S1411).

[0173] Figure 15 This indicates that the document management auxiliary system in this embodiment performs blank filling processing. Figure 12 The flowchart of step S1206.

[0174] First, the Value modification unit 115 refers to the item level 514 and the multiline parameter used to determine whether it is multi-line in the notation pattern 515 recorded in the definition file 500, and selects any one of the items from the first structured data JSON file 403 whose item value is not blank, whose level is 1, and whose multiline is false as the base item A (step S1501). Similar to step S1301, the item "Quantity" can be selected as the base item A.

[0175] Next, the Value modification unit 115 determines whether the number of elements of the modification target item (blank fill target item) C (only shown as item C in the figure) is consistent with the number of elements of the reference item A selected in step S1501 (step S1502).

[0176] For example, in PL document 400, if the baseline item A is set to "Quantity" and the modified object item C is set to "Case_No.", then referring to the first structured data JSON file 403 generated by PL document 400, it can be seen that the baseline item A has 8 elements and the modified object item C has 7 elements. Since the modified object item C and the baseline item A have different number of elements, the Value modification section 115 performs blank filling processing.

[0177] Return to step S1502. If the number of elements is consistent, the blank filling process will not be performed and the process will end.

[0178] On the other hand, if there is a discrepancy, then all elements of the object item C are modified, that is, all item values ​​of "Case_No." in the above example are modified as objects, and the processing of steps S1503-S1507 is performed one by one for each element.

[0179] The Value modification unit 115 determines whether the element of the modification target item C is the last element (step S1503).

[0180] If the element is the last element, the Value modification unit 115 refers to the format file 404, obtains the line number x of the last element, and generates a blank filling condition (x < the line number of the element of the modification target item C) (step S1504). The blank filling condition (x < the line number of the element of the modification target item C) means that if there is an element in the reference item A whose line number is greater than or equal to x, a blank element is filled in the modification target item C.

[0181] Then, the Value modification unit 115 refers to the format file 404. If there is an element in the reference item A that meets the blank filling condition generated in step S1504, the item value of the modification target item C in the first structured data JSON file 403 is updated, and blank elements corresponding to the number of elements in the reference item A that meet the blank filling condition are filled in (step S1505). It should be noted that if there is no element, no blank filling is performed on the modification target item C.

[0182] For example, in the example of the first structured data JSON file 403 generated from the PL document 400, since the element "item value '6 - 24'" of the modification target item C "Case_No." is the last element, the Value modification unit 115 refers to the format file 404, obtains the line number 40 corresponding to the element "item value '6 - 24'", and generates a blank filling condition (40 < the line number of the element).

[0183] Then, since there is no element in the reference item A "Quantity" whose line number is greater than or equal to 40, the Value modification unit 115 does not perform blank filling processing.

[0184] Return to step S1503. If the element is not the last element, the Value modification unit 115 obtains the line number x of the element of the modification target item C and the line number y of the next element of the element, and generates a blank filling condition (x < the line number of the element of the modification target item C < y) (step S1506).

[0185] Then, the Value modification unit 115 refers to the format file 404. If there is an element in the reference item A that meets the blank filling condition generated in step S1506, the item value of the modification target item C in the first structured data JSON file 403 is updated, and blank elements corresponding to the number of elements in the reference item A that meet the blank filling condition are filled in (step S1507).

[0186] For example, in the first structured data JSON file 403 generated by PL document 400, if the element of object item C "Case_No." is modified to "item value '5'", then the Value padding part 116, since the element "item value '5'" is the 6th element rather than the last element, refers to the format file 404 to obtain the row number "34" corresponding to the element "item value '5'" and the row number 40 corresponding to the next element "item value '6-24'", and generates blank filling conditions (34 < element row number < 40).

[0187] Then, the Value supplement section 116 refers to the format file 404. Since there is a feature “Item Value '37, 4'” in the baseline item A “Quantity” that meets the blank filling condition (34 < feature row number < 40), the modification object item C “Case_No.” in the first structured data JSON file 403 is updated. One blank feature is added between the feature at row number 34 and the feature at row number 40, that is, after the 6th feature “Item Value '5'”.

[0188] Figure 16 This refers to the supplementary processing in the document management auxiliary system of this embodiment. Figure 11 The flowchart of step S1105).

[0189] First, the Value completion unit 116 refers to the level 514 of the item recorded in the definition file 500 and the multiline parameter used to determine whether it is a multiline in the notation pattern 515. From the first structured data JSON file 403, it selects one item as the base item A from the items whose item value is not blank, level = 1 and multiline = false (step S1601). Similar to step S1301, "Quantity" can be selected as the base item A.

[0190] Next, the Value completion unit 116 determines whether the completion target item has any elements (step S1602).

[0191] If the item to be supplemented already has elements, the process will end without supplementation.

[0192] On the other hand, if the object to be supplemented has no elements, the process will proceed to step S1603.

[0193] Next, the Value supplement unit 116 refers to the item calculation formula 600 stored in the item calculation formula storage unit 124 and determines whether there are any other items for calculation that do not have elements among the other items used for supplementing the target item calculation (called other items for calculation) (step S1603).

[0194] If there are other items for calculation that lack elements, the process ends without supplementation because they cannot be supplemented through calculation. On the other hand, if all other items for calculation have elements, the other items for calculation are obtained, and for all elements of the baseline item A selected in step S1601, in the above example, for each element of the item "Quantity", the processing of steps S1604-S1606 is performed one by one.

[0195] Here, the project calculation formula 600 stored in the project calculation formula storage unit 124 will be explained.

[0196] Figure 17 This is an explanatory diagram of an example of a project calculation formula in an embodiment of the present invention.

[0197] The project calculation formula is a calculation formula that calculates the project (the calculation object project) based on the elements of other projects, for projects that have a stage processing flag of "3" set in the definition file 500 but whose project name or project value is not recorded in the object document.

[0198] For example, leveraging knowledge from the logistics field, each project can be pre-created as a function within the system. The project calculation formula is shown below.

[0199] Calculate the object item (i) = F(item 1 (i), item 2 (i), ..., item j (i)) F: Calculation formula, item j(i): the i-th element of item j For example, the i-th element of the item "Qty_per_Pkg" can be calculated based on the i-th element of the item "Quantity" and the i-th element of the item "Number_of_Pkg" using the following formula.

[0200] Qty_per_Pkg(i)=Quantity(i) / Number_of_Pkg(i) For example, in the first structured data JSON file 403 generated from PL document 400, the supplementary object item "Qty_per_Pkg" lacks elements. (See reference...) Figure 17 The example of item calculation formula 600 shown uses other items, "Quantity" and "Number_of_Pkg", to calculate the complement of the object item "Qty_per_Pkg". If they both have elements in the first structured data JSON file 403, then for the complement of the object item "Qty_per_Pkg", the complementation process is performed by calculation using the items "Quantity" and "Number_of_Pkg".

[0201] return Figure 16 The Value supplement section 116 refers to the format file 404 and determines whether there is a blank element for calculation of other items obtained in step S1603 at the line number of the element of the reference item A (step S1604).

[0202] For example, for item calculation formula 600, the Value completion unit 116 determines whether there is a blank element for the calculation other item "Number_of_Pkg" at the line number of the element of the base item A "Quantity". It should be noted that "Quantity", which is the calculation other item for item calculation 600, has already been selected as the base item A without blanks in step S1601, so there is no need to determine whether there is a blank element.

[0203] Specifically, in the format file 404, the Value supplement unit 116 compares the line number "37" of the element (the 7th element) of the baseline item A "Quantity" with the line number of the other item "Number_of_Pkg" used for calculation. If the line number "37" does not exist in the other item "Number_of_Pkg" used for calculation, it is determined that there is a blank element in line "37".

[0204] Returning to step S1604, if there is no blank element for calculating other items at the row number of the element of the baseline item A, the process proceeds to step S1605; on the other hand, if there is a blank element for calculating other items, the process proceeds to step S1606.

[0205] Value supplementation unit 116 substitutes the elements of other items into the item calculation formula 600 to calculate the item value of the supplemented item. Then, Value supplementation unit 116 updates the item value of the supplemented item in the second structured data JSON file 405 with the calculated item value (step S1605).

[0206] For example, if the calculation of the element corresponding to the second element "item value '120'" of the baseline item A "Quantity" is the second element "item value '3'", then since it is not blank, the Value supplement unit 116 directly substitutes it into the item calculation formula 600, that is, Qty_per_Pkg(2) = Quantity(2) / Number_of_Pkg(2), and calculates 120 / 3 = 40, which is the calculation result. Then, in the second structured data JSON file 405, the Value supplement unit 116 updates the second element of the supplemented object item "Qty_per_Pkg" to the calculated item value "40".

[0207] Value completion unit 116 treats the elements of blank elements of other items used for calculation as non-blank elements preceding the blank elements. For example, if the i-th element is a blank element and the (i-1)-th element is a non-blank element, then the (i-1)-th non-blank element is used as the element of the blank element, and substituted into the item calculation formula 600 to calculate the item value of the completion object item. Then, Value completion unit 116 updates the item value of the completion object item in the second structured data JSON file 405 with the calculated item value (step S1606).

[0208] For example, in step S1604, if the calculation of another item "Number_of_Pkg" has a blank element at the 7th position, then in the item value of the 7th calculation of another item "Number_of_Pkg", the non-blank element before the blank element, i.e., the 6th element "1", is used as the replacement value for the blank element and substituted into item calculation formula 600 for calculation. Then, in the second structured data JSON file 405, the 7th element of the supplementary object item "Qty_per_Pkg" is updated to the calculated item value "2".

[0209] As described above, the document management system 100 in this embodiment can, for each project from which data is extracted, use pre-set hierarchical levels (representing the hierarchical relationship between projects) and stage processing flags (representing which project requires which stage of processing) to perform structured processing that considers the correspondence between multiple values. This allows document data to be registered in the system and reduces the time spent creating new written documents and verifying past information.

[0210] It should be noted that the present invention is not limited to the above embodiments, but includes various modifications. For example, the above embodiments have been described in detail for a better understanding of the present invention, and are not necessarily limited to having all the described configurations.

[0211] Furthermore, some or all of the aforementioned components, functions, processing units, and processing methods can be implemented in hardware, for example, by designing them as integrated circuits. Alternatively, the aforementioned components and functions can be implemented in software by having a processor interpret and execute the programs that implement each function. Information such as programs, tables, and files used to implement each function can be stored in storage devices such as non-volatile semiconductor memory, hard disk drives, and SSDs (Solid State Drives), or in computer-readable non-transitory data storage media such as IC cards, SD cards, and DVDs.

[0212] Furthermore, control lines and information lines represent information deemed necessary in the description, but may not represent all control lines and information lines on the product. In fact, it can be assumed that almost all components are interconnected.

[0213] Symbol Explanation 100: Document Management Auxiliary System; 101: Web & App Server; 102: Converter; 103: Database; 111: Control Unit; 112: Communication Unit; 113: Row / Column / Text Extraction Unit; 114: Structured Basic Information Generation and Processing Unit; 115: Value Modification Unit; 116: Value Completion Unit; 120: Definition File Storage Unit; 121: TSV File Storage Unit; 122: Structured Data Storage Unit; 123: Format Storage Unit; 124: Item Calculation Storage Unit; 200: Client Device; 201: Web Browser (GUI); 211: Control Unit; 212: Communication Unit; 213: Display Unit; 214: Input Unit; D: Document; 300: Computer System; 301: Processing 302: Memory; 303: Auxiliary storage device; 304: Output device; 305: Input device; 306: Communication interface (I / F); N: Network; 500: Definition file; 600: Project calculation formula; 401: Document in XML format; 402: TSV file; 403: First structured result JSON file; 404: Format file; 405: Second structured result JSON file; 406: Final structured result JSON file; 411: Sample document line number; 412: Sample document column number; 510: Definition file structure table; 511: Document type; 512: Project; 513: Stage processing flag; 514: Hierarchical level; 515: Notation pattern; 516: Extraction conditions.

Claims

1. A document management auxiliary system, characterized in that: The document management auxiliary system has a processor and a storage device. The storage device stores definition information, which defines the conditions required to structure the document by establishing a correspondence between the document's items and item values. The definition information includes: For each of the aforementioned projects, the hierarchical level of the hierarchical relationship between projects is indicated; For each of the items, a stage processing flag indicates the processing stage up to which step is required to structure the document; and For each item, establish a corresponding notation pattern by associating the item notation name with the notation location pattern information of the item value for that item notation name. For each item, the processor, based on the stage processing flags defined in the information, executes either the processing up to stage 1 or the processing up to stage 2. In the first stage of processing, based on the notation pattern defined in the information, the project name and the corresponding project value are extracted from the input document. In the second stage of processing, for the item whose value was extracted in the first stage, the item value is modified based on the correspondence between the item value and the item value of the item located at the lower level of the item's hierarchy, as determined by referring to the hierarchy level of the defined information. Generate structured information, which is information formed by establishing a correspondence between the project name and the corresponding project value or the modified project value of the project name.

2. The document management auxiliary system according to claim 1, characterized in that: The storage device also has a project calculation formula for calculating the elements of one project of the document based on the elements of multiple other projects. For each item, the processor executes processing up to stage 1, stage 2, or stage 3 based on the stage processing flags defined in the information. In the third stage of processing, based on the project calculation formula, the project values ​​of projects that were not extracted in the first stage of processing are supplemented. The processor generates structured information, which is information that establishes a correspondence between the project name and the corresponding project value, the modified project value, or the supplemented project value.

3. The document management auxiliary system according to claim 1, characterized in that: The definition information includes: Extraction criteria for project values ​​extracted from the document. In the first stage of processing, based on the notation pattern of the defined information, the project name of the project and the project value corresponding to the project name and satisfying the extraction conditions are extracted from the input document.

4. The document management auxiliary system according to claim 1, characterized in that: In the second stage of processing, the project value is modified based on the correspondence between the project value and the project value of the project located at the lower level of the project, combined with the elements of the project value.

5. The document management auxiliary system according to claim 1, characterized in that: In the second stage of processing, based on the correspondence between the project value and the project value of the project located at the lower level of the project, blank elements are filled in for the project value, thereby modifying the project value.

6. The document management auxiliary system according to claim 1, In the first stage of processing, the row and column information of the extracted project values ​​is further extracted from the document, and formatted information is generated to establish a correspondence between the project name and the row and column information. In the second stage of processing, based on the format information, the correspondence between the item and the item value of the item located at the next lower level of the item is determined.

7. A document management auxiliary method executed by a processor and a storage device, characterized in that: The storage device stores definition information, which defines the conditions required to structure the document by establishing a correspondence between the document's items and item values. The definition information includes: For each of the aforementioned projects, the hierarchical level of the hierarchical relationship between projects is indicated; For each of the items, a stage processing flag indicates the processing stage up to which step is required to structure the document; and For each item, establish a corresponding notation pattern by matching the item notation name with the notation location pattern information of the item value for that item notation name; For each item, the processor determines, based on the stage processing flag of the defined information, whether to proceed to the first stage step or the second stage step. The document management auxiliary method includes: The first step involves extracting the project name and the corresponding project value from the input document based on the notation pattern defined in the information. In the second stage step, for the item whose item value was extracted in the first stage processing, the item value is modified based on the correspondence between the item value and the item value of the item located below the item in the hierarchy determined by referring to the hierarchy level of the defined information; and The structured information generation step generates structured information, which is information formed by establishing a correspondence between the project name and the corresponding project value or the modified project value of the project name.

8. A program, wherein: The program enables the storage device and processor to function as a document management auxiliary system: The storage device stores definition information, which defines the conditions required to structure the document by establishing a correspondence between the document's items and item values. The definition information includes: For each of the aforementioned projects, the hierarchical level of the hierarchical relationship between projects is indicated; For each of the items, a stage processing flag indicates the processing stage up to which step is required to structure the document; and For each item, establish a corresponding notation pattern by associating the item notation name with the notation location pattern information of the item value for that item notation name. For each item, the processor, based on the stage processing flags defined in the information, executes either the processing up to stage 1 or the processing up to stage 2. In the first stage of processing, based on the notation pattern defined in the information, the project name and the corresponding project value are extracted from the input document. In the second stage of processing, for the item whose value was extracted in the first stage, the item value is modified based on the correspondence between the item value and the item value of the item located at the lower level of the item's hierarchy, as determined by referring to the hierarchy level of the defined information. The processor generates structured information, which is information that establishes a correspondence between the project name and the corresponding project value or the modified project value of the project name.