Query processing (i.e., searching)

Data retrieval method and link-information adding method

5749080

Abstract

A data retrieval method in a data-string set including a plurality of data strings, each data string having a data identification name storage area, a parent data storage area storing link-information data, wherein when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of a certain data string as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the certain data string is included in none of the parent data storage areas of the traced data strings; the method comprising recursively extracting a data string on the basis of link-information data stored in a parent data storage areas of the data string storing a data identification name to be retrieved and the extracted data string, until the parent data storage area of the extracted data string is empty.


Claims

What is claimed is:

1. A link-information adding method of adding new link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing the data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and a parent concept name which indicates a set including the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted parent concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted parent concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- P storing the data identification name which is in agreement with the inputted parent concept name,

(e) adding no link-information data when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- P extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- P extracted in the step (d) when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- P extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c),

(h) storing link-information data about the data string DS.sub.-- P extracted in the step (d) to the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c), and

(i) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- I extracted in the step (c) in the data level storage area of the data string DS.sub.-- P extracted in the step (d) when the data string DS.sub.-- P extracted in the step (d) has a data level value equal to, or smaller than, the data level value of the data string DS.sub.-- I extracted in the step (c).

2. A link-information adding method of adding new link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(B) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data strings DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and an element concept name which is an element of a set indicated by the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted element concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted element concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- E storing the data identification name which is in agreement with the inputted element concept name,

(e) adding no link-information data when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- E extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- E extracted in the step (d) when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- E extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c),

(h) storing link-information data about the data string DS.sub.-- E extracted in the step (d) to the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c), and

(i) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- E extracted in the step (d) in the data level storage area of the data string DS.sub.-- I extracted in the step (c) when the data string DS.sub.-- E extracted in the step (d) has a data level value equal to, or greater than, the data level value of the data string DS.sub.-- I extracted in the step (c).

3. A link-information adding method of adding link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data strings DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and a parent concept name which indicates a set including the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted parent concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted parent concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- P storing the data identification name which is in agreement with the inputted parent concept name,

(e) adding no link-information data when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- P extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- P extracted in the step (d) when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- P extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string extracted DS.sub.-- I in the step (c),

(h) storing link-information data about the data string DS.sub.-- P extracted in the step (d) in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the element data storage area of the data string DS.sub.-- P extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- I extracted in the step (c) in the data level storage area of the data string DS.sub.-- P extracted in the step (d) when the data string DS.sub.-- P extracted in the step (d) has a data level value equal to, or smaller than, the data level value of the data string DS.sub.-- I extracted in the step (c).

4. A link-information adding method of adding link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data strings DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and a parent concept name which indicates a set including the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted parent concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted parent concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- P storing the data identification name which is in agreement with the inputted parent concept name,

(e') adding no link-information data when the element data storage area of the data string DS.sub.-- P extracted in the step (d) has link-information data about the data string DS.sub.-- I extracted in the step (c),

(f') extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when the element data storage area of the data string DS.sub.-- P extracted in the step (d) has no link-information data about the data string DS.sub.-- I extracted in the step (c), and further extracting a data string on the basis of the link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g') adding no link-information data when any one of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- P extracted in the step (d) and

(h') storing link-information data about the data string DS.sub.-- P extracted in the step (d) in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- P extracted in the step (d),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the element data storage area of the data string DS.sub.-- P extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- I extracted in the step (c) in the data level storage area of the data string DS.sub.-- P extracted in the step (d) when the data string DS.sub.-- P extracted in the step (d) has a data level value equal to, or smaller than, the data level value of the data string DS.sub.-- I extracted in the step (c).

5. A link-information adding method of adding new link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing the data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing the data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data string DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and an element concept name which is an element of a set indicated by the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted element concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted element concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- E storing the data identification name which is in agreement with the inputted element concept name,

(e) adding no link-information data when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- E extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- E extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- E extracted in the step (d),

(h) storing link-information data about the data string DS.sub.-- E extracted in the step (d) in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- E extracted in the step (d),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the parent data storage area of the data string DS.sub.-- E extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- E extracted in the step (d) in the data level storage area of the data string DS.sub.-- I extracted in the step (c) when the data string DS.sub.-- E extracted in the step (d) has a data level value equal to, or greater than, the data level value of the data string DS.sub.-- I extracted in the step (c).

6. A link-information adding method of adding new link-information data to a data string in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing the data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing the data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data string DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and an element concept name which is an element of a set indicated by the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted element concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted element concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- E storing the data identification name which is in agreement with the inputted element concept name,

(e') adding no link-information data when the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has link-information data about the data string DS.sub.-- I extracted in the step (c),

(f') extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- E extracted in the step (d) when the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has no link-information data about the data string DS.sub.-- I extracted in the step (c), and further extracting a data string on the basis of link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g') adding no link-information data when any one of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- I extracted in the step (c), and

(h') storing link-information data about the data string DS.sub.-- E extracted in the step (d) in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- I extracted in the step (c),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the parent data storage area of the data string DS.sub.-- E extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- E extracted in the step (d) in the data level storage area of the data string DS.sub.-- I extracted in the step (c) when the data string DS.sub.-- E extracted in the step (d) has a data level value equal to, or greater than, the data level value of the data string DS.sub.-- I extracted in the step (c).


Description

BACKGROUND OF THE INVENTION AND RELATED ART STATEMENT

The present invention relates to a data retrieval method in a data structure which can constitute, e.g., database or an artificial intelligence, and a method of adding link-information data to a data string of the data structure.

A variety of databases are practically used at present, and above all, a relational database is the most widely used. A variety of data are stored in a database, and data stored in the database is retrieved by various methods.

With reference to an example in which each of concept names such as DESK, PENCIL, WOOD, GRAPHITE, MICA and BRUSH OF MOTOR consists of element names as shown in the following Table 1, and in a record, the concept name is stored in a concept field and element name(s) is/are stored in element field(s), the outline of a conventional relational database will be explained below. In Table 1, numerals show record numbers, and alphabets show element field numbers.

In the relational database, a new record relationship can made by deriving the relationship of X{Z} on the basis of a combination of two records of X{ . . . , Y, . . . } and Y { . . . , Z, . . . }. A capital letter located before the brace "{" stands for a concept name, and capital letters in the braces "{}" stand for element names. For example, concept name "DESK" and element name "COMBUSTIBILITY" can be combined as DESK{COMBUSTIBILITY}

on the basis of a combination of records of

DESK{WOOD, . . . }

and

WOOD { . . . , COMBUSTIBILITY, . . .

                                      TABLE 1
    __________________________________________________________________________
    Record
        Concept
            Element Field
    No. Field
            A    B    C    D    E   F  G   H   I
    __________________________________________________________________________
    1   desk
            wood office
                      furniture
                 supplies
    2   pencil
            wood insulator
                      combusti-
                           conducti-
                                softness
                                    black
                                       office
                                           writing
                                               cylindri-
                      bility
                           bility   color
                                       supplies
                                           tools
                                               cal form
    3   wood
            insulator
                 combusti-
                      plant
                           specific
                 bility    gravity of
                           1 or less
    4   graphite
            conducti-
                 softness
                      black
            bility    color
    5   mica
            insulator
    6   brush of
            conducti-
                 softness
                      black
        motor
            bility    color
    __________________________________________________________________________


For convenience'sake, record "X" refers to a record in which concept name "X" is stored in the concept field.

In the relational database, for obtaining a piece of information that element name of "COMBUSTIBILITY" can be included in concept name "DESK", i.e., for combining record "X" including element name "Y" with record "Y" including element name "Z", it is necessary to know the number of the element field containing element name "Y" in record "X". In the example shown in Table 1, for example, it is necessary to know element name of "WOOD" is stored in element field number A of record number 1. However, the number of the element field containing element name "Y" is not always known. It is therefore necessary to combine all the element fields of record X with the concept fields of other records. However, the above operation requires enormous processing when the records and element fields increase in number. For preventing the above situation, there might be a method in which one record consists of one concept field and one element field, and the element field of the record is combined with the concept field of other records. However, not only a great number of records are required, but also it is required to input one concept name in each concept field of a great number of records.

In the relational database, further, when element name "COMBUSTIBILITY" is retrieved without combining records, record "PENCIL" and record "WOOD" are extracted. That is, a directly related concept name can be extracted. However, since the record "DESK" includes element name "WOOD" but the record "DESK" does not include element name "COMBUSTIBILITY" in its element field, it is impossible to make out a piece of information that record "DESK" can include element name "COMBUSTIBILITY". That is, an indirect related concept name can not be extracted. In the relational database, therefore, it is required to input element name "COMBUSTIBILITY" to the element field of the record "DESK". That is, the problem is that one "element name" is required to be inputted in an element field of each of a plurality of records. Further, it is required to input a number of element names in element fields in records having certain concept names. In another solution, all the element fields can be combined with all concept fields. However, it is required to retrieve huge data made by the above combinations, and it is not known which element field has the element name to be retrieved. It is therefore necessary to retrieve all the element fields.

In the relational database, further, it is impossible to prevent the occurrence of circulating definitions of A{B}, B{C} and C{A}. If the records having a state of the circulating definition are allowed to be present, an endless loop takes place in the retrieval.

In the relational database, further, original data are generally arrayed in the form of a two-dimensional table. Each column corresponds to a concept field and an element field containing fixed data of the same kind, and data are classified in advance and inputted to corresponding fields. The relational database is therefore not suitable for expressing a case where an element of an indefinite number such as concept name "PENCIL" is included and the attributes of data to be inputted in element fields are not classified.

In the above-explained relational database, the concept field is placed in the same table, while the above is also true of a case where one table is made from one concept.

OBJECTS AND SUMMARY OF THE INVENTION

It is therefore a first object of the present invention to provide a data retrieval method which enables the extraction of not only a directly related concept name but also an indirectly related concept name.

Further, it is a second object of the present invention to provide a method of adding link-information data, which enables the exclusion of occurrence of the above circulating definition when new link-information data is added to a predetermined region in a data string of a data-string set consisting of a plurality of data strings.

The data retrieval method directed to the first aspect of the present invention for achieving the above first object of the present invention is concerned with a data retrieval method of extracting a data string, which corresponds to a parent concept and/or an indirect parent concept, for a data identification name to be retrieved. The terms "parent concept" and "indirect parent concept" will be explained in detail later. That is, the data retrieval method directed to the first aspect of the present invention is a data retrieval method in a data-string set including a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a larger data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name corresponding to data to be retrieved,

(b) extracting a data string on the basis of link-information data stored in a parent data storage area of a data string whose data identification name storage area stores the same data identification name as the inputted data identification name, and further extracting a data string on the basis of link-information data stored in a parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty, and

(c) outputting the extracted data string.

The term "link-information data" stands for a direct address or an indirect address for an area storing a data string, a pointer for an address area storing a data string, or a data identification name stored in a data string. To sum up, the link-information data may be any data which is referred to for reaching contents of other data string. The term "link-information data" is used in this sense hereinafter.

In the data retrieval method directed to the first aspect of the present invention, in the step (b), as schematically shown in FIG. 1A, data strings P.sub.1, P.sub.2, P.sub.3, . . . are extracted on the basis of the link-information data stored in the parent data storage area of the data string S.sub.0 whose data identification name storage area stores the same data identification name as the inputted data identification name. Then, concerning the data strings P.sub.1, P.sub.2, P.sub.3, . . . , data strings are extracted on the basis of the link-information data stored in the parent data storage areas of these extracted data strings P.sub.1, P.sub.2, P.sub.3 . . . . The extracted data strings are, for example, data string P.sub.11, P.sub.12, P.sub.13. . . , P.sub.21, P.sub.22, P.sub.23 . . . , P.sub.31, P.sub.32, P.sub.33 . . . . FIGS. 1A and 1B show part of the data strings.

Then, data strings are extracted on the basis of the link-information data stored in the parent data storage areas of all of the extracted data strings P.sub.11, P.sub.12, P.sub.13 . . . , P.sub.21, P.sub.22, P.sub.23 . . . , P.sub.31, P.sub.32, P.sub.33 . . . . The extracted data strings are P.sub.111, P.sub.112, P.sub.113 . . . , P.sub.121, P.sub.122, P.sub.123 . . . , P.sub.131, P.sub.132, P.sub.133 . . . , P.sub.211, P.sub.212, P.sub.213 . . . , P.sub.221, P.sub.222, P.sub.223, P.sub.231, P.sub.232, P.sub.233 . . . , P.sub.311, P.sub.312, P.sub.313 . . . , P.sub.321, P.sub.322, P.sub.323 . . . , P.sub.331, P.sub.332, P.sub.333 . . . (see FIG. 1B). Then, data strings are extracted on the basis of the link-information data stored in the parent data storage areas of these extracted data strings P.sub.111, P.sub.112, P.sub.113 . . . . This operation is conducted until the parent data storage areas of the extracted data strings are empty. The flow of the above operation will be referred to as "first retrieving pattern" for convenience' sake. In FIGS. 1A and 1B, symbols within ellipses stand for data strings, and numerals given to lines connecting the ellipses show the order of operation.

The above step (b) can be also conducted according to the flow of operation shown in FIG. 2 (to be referred to as "second retrieving pattern"). That is, data string P.sub.1, is extracted on the basis of the link-information data stored in the parent data storage area of the data string S.sub.0 storing the same data identification name as the inputted data identification name. FIG. 2 shows part of data strings.

Then, data strings are extracted on the basis of the link-information data stored in the parent data storage area of the data string P.sub.1, until the parent data storage area of the extracted data string is empty. That is, data string P.sub.11, data string P.sub.111 and data string P.sub.1111 are consecutively extracted. Since the parent data storage area of the extracted data string P.sub.1111 is empty, the operation returns to the data string P.sub.111, and data string P.sub.1112 is extracted on the basis of the link-information data stored in the next parent data storage area of the data string P.sub.111. Since the parent data storage area of the extracted data string P.sub.1112 is empty, the operation returns to the data string P.sub.111, and data string P.sub.1113 is extracted on the basis of the link-information data stored in the next parent data storage area of the data string P.sub.111. Since the parent data storage area of the extracted data string P.sub.1113 is empty, the operation returns to the data string P.sub.111. Since, however, the next parent data storage area of the data string P.sub.111 is empty, the operation returns to the data string P.sub.11, and data string P.sub.112, data string P.sub.1121, data string P.sub.1112 and data string P.sub.1123 are consecutively extracted on the basis of the link-information data stored in the next parent data storage area of the data string P.sub.11. The above procedures are consecutively conducted. And, if the link-information data stored in the parent data storage area of the data string P.sub.11 is empty, data string is extracted on the basis of the link-information data stored in the next parent data storage area of the data string P.sub.1. Further, if the link-information data stored in the parent data storage area of the data string P.sub.1 is empty, data strings P.sub.2, P.sub.3, . . . are extracted on the basis of the link-information data stored in the next parent data storage area of the data string S.sub.0. In FIG. 2, symbols within ellipses stand for data strings, and numerals given to lines connecting the ellipses show the order of operation.

The data retrieval method directed to the second aspect of the present invention for achieving the above first object of the present invention is concerned with a data retrieval method of extracting a data string, which corresponds to an element concept and/or an indirect element concept, for a data identification name to be retrieved. The terms "element concept" and "indirect element concept" will be explained in detail later. That is, the data retrieval method directed to the second aspect of the present invention is a data retrieval method in a data-string set including a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(B) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data string DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name corresponding to data to be retrieved,

(b) extracting a data string on the basis of link-information data stored in an element data storage area of a data string whose data identification name storage area stores the same data identification name as the inputted data identification name, and further extracting a data string on the basis of link-information data stored in an element data storage area of the extracted data string until the element data storage area of the extracted data string is empty, and

(c) outputting the extracted data string.

In the data retrieval method directed to the second aspect of the present invention, as shown in FIG. 3A, in the step (b), data strings E.sub.1, E.sub.2, E.sub.3, . . . are extracted on the basis of the link-information data stored in the element data storage area of the data string S.sub.0 whose data identification name storage area stores the same data identification name as the inputted data identification name. Then, concerning the data strings E.sub.1, E.sub.2, E.sub.3, . . . data strings are extracted on the basis of the link-information data stored in the element data storage areas of these extracted data strings E.sub.1, E.sub.2, E.sub.3, . . . . The extracted data strings are, for example, data strings E.sub.11, E.sub.12, E.sub.13 . . . , E.sub.21, E.sub.22, E.sub.23 . . . , E.sub.31, E.sub.32, E.sub.33 . . . . FIGS. 3A and 3B show part of the data strings.

Then, data strings are extracted on the basis of the link-information data stored in the element data storage areas of all of the extracted data strings E.sub.11, E.sub.12, E.sub.13 . . . , E.sub.21, E.sub.22, E.sub.23 . . . , E.sub.31, E.sub.32, E.sub.33 . . . . The extracted data strings are E.sub.111, E.sub.112, E.sub.113 . . . , E.sub.121, E.sub.122, E.sub.123 . . . , E.sub.131, E.sub.132, E.sub.133 . . . , E.sub.211, E.sub.212, E.sub.213 . . . , E.sub.211, E.sub.212, E.sub.213 . . . , E.sub.221, E.sub.222, E.sub.223 . . . , E.sub.231, E.sub.232, E.sub.233 . . . , E.sub.311, E.sub.312, E.sub.313 . . . , E.sub.321, E.sub.322, E.sub.323 . . . , E.sub.331, E.sub.332, E.sub.333 . . . (see FIG. 3B). Then, data strings are extracted on the basis of the link-information data stored in the element data storage areas of these data strings E.sub.111, E.sub.112, E.sub.113 . . . . This operation is conducted until the element data storage areas of the extracted data strings are empty. The flow of the above operation will be referred to as "third retrieving pattern" for convenience' sake. In FIGS. 3A and 3B, symbols within ellipses stand for data strings, and numerals given to lines connecting the ellipses show the order of operation.

The above step (b) can be also conducted according to the flow of operation shown in FIG. 4 (to be referred to as "fourth retrieving pattern"). That is, data string E.sub.1 is extracted on the basis of the link-information data stored in the element data storage area of the data string S.sub.0 storing the same data identification name as the inputted data identification name. FIG. 4 shows part of data strings.

Then, data strings are extracted on the basis of the link-information data stored in the element data storage area of the data string E.sub.1 until the element data storage area of the extracted data string is empty. That is, data string E.sub.11, data string E.sub.111 and data string E.sub.1111 are consecutively extracted. Since the element data storage area of the extracted data string E.sub.1111 is empty, the operation returns to the data string E.sub.111, and data string E.sub.1112 is extracted on the basis of the link-information data stored in the next element data storage area of the data string E.sub.111. Since the element data storage area of the extracted data string E.sub.1112 is empty, the operation returns to the data string E.sub.111, and data string E.sub.1113 is extracted on the basis of the link-information data stored in the next element data storage area of the data string E.sub.111. Since the element data storage area of the extracted data string E.sub.1113 is empty, the operation returns to the data string E.sub.111. Since, however, the next element data storage area of the data string E.sub.111 is empty, the operation returns to the data string E.sub.11. And, data string E.sub.112, data string E.sub.1121, data string E.sub.1122 and data string E.sub.1123 are consecutively extracted on the basis of the link-information data stored in the next element data storage area of the data string E.sub.11. The above procedures are consecutively conducted. And, if the link-information data stored in the element data storage area of the data string E.sub.11, is empty, data string is extracted on the basis of the link-information data stored in the next element data storage area of the data string E.sub.1. Further, if the link-information data stored in the element data storage area of the data string E.sub.1 is empty, data strings E.sub.2, E.sub.3, . . . are extracted on the basis of the link-information data stored in the next element data storage area of the data string S.sub.0.

The data retrieval method directed to the third aspect of the present invention for achieving the above first object of the present invention is concerned with a data retrieval method of extracting at least one of a data string corresponding to a parent concept, a data string corresponding to an indirect parent concept, a data string corresponding to an element concept and a data string corresponding to an indirect an element concept. That is, the data retrieval method directed to the third aspect of the present invention is a data retrieval method in a data-string set including a plurality of data-strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS--2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a larger data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data string DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name corresponding to data to be retrieved,

(b) extracting a data string on the basis of link-information data stored in a parent data storage area of a data string whose data identification name storage area stores the same data identification name as the inputted data identification name, and further extracting a data string on the basis of link-information data stored in a parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(c) extracting a data string on the basis of link-information data stored in an element data storage area of the data string whose data identification name storage area stores the same data identification name as the inputted data identification name, and further extracting a data string on the basis of link-information data stored in an element data storage area of the extracted data string until the element data storage area of the extracted data string is empty, and

(d) outputting the extracted data strings.

The flow of the data retrieval operation in the data retrieval method directed to the third aspect of the present invention can be conducted by properly combining the first retrieving pattern or the second retrieving pattern explained concerning the data retrieval method directed to the first aspect of the present invention with the third retrieving pattern or the fourth retrieving pattern explained concerning the data retrieval method directed to the second aspect of the present invention, and the detailed explanation thereof is omitted.

The data retrieval method directed to the fourth aspect of the present invention for achieving the above first object of the present invention is concerned with a data retrieval method of extracting a data string, which corresponds to an element concept and/or an indirect element concept and has a minimum data level value, for a data identification name to be retrieved, and then extracting a data string, which corresponds to a parent concept and/or an indirect parent concept, for the data identification name stored in the above-extracted data string. That is, the data retrieval method directed to the fourth aspect of the present invention comprises the steps of

(a) inputting a data identification name corresponding to data to be retrieved,

(b) extracting a data string on the basis of link-information data stored in an element data storage area of a data string whose data identification name storage area stores the same data identification name as the data identification name to be retrieved, and further extracting a data string on the basis of link-information data stored in an element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(c) extracting a data string on the basis of link-information data stored in the parent data storage area of the extracted data string whose element data storage area is empty, from among the data strings extracted in the step (b), and further extracting a data string on the basis of link-information data stored in a parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty, and

(d) outputting the extracted data string.

In the data retrieval method directed to the fourth aspect of the present invention, the data-string set can be structurally the same as the data-string set in the data retrieval method directed to the above third aspect of the present invention.

In the data retrieval method directed to the fourth aspect of the present invention, the flow of the retrieval operation in the step (b) can be the third retrieving pattern or the fourth retrieving pattern explained concerning the data retrieval method directed to the second aspect of the present invention. Further, the flow of the retrieval operation in the step (c) can be the first retrieving pattern or the second retrieving pattern explained concerning the data retrieval method directed to the first aspect of the present invention. Therefore, the detailed explanation thereof are omitted.

The link-information adding method directed to the first aspect of the present invention for achieving the above second object of the present invention is concerned with a method of adding new link-information data to a parent data storage area of a data string DS.sub.-- I. The new link-information is concerned with a data string DS.sub.-- P corresponding to a parent concept for the data string DS.sub.-- I. That is, the link-information adding method directed to the first aspect of the present invention is a link-information adding method of adding new link-information data to a parent data storage area of a data string DS.sub.-- I in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing the data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and a parent concept name which indicates a set including the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted parent concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted parent concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- P storing the data identification name which is in agreement with the inputted parent concept name,

(e) adding no link-information data when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- P extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- P extracted in the step (d) when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- P extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c),

(h) storing link-information data about the data string DS.sub.-- P extracted in the step (d) to the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c), and

(i) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- I extracted in the step (c) in the data level storage area of the data string DS.sub.-- P extracted in the step (d) when the data string DS.sub.-- P extracted in the step (d) has a data level value equal to, or smaller than, the data level value of the data string DS.sub.-- I extracted in the step (c).

In the link-information adding method directed to the first aspect of the present invention, the procedures of extracting data strings in the step (f) can be the same as the first retrieving pattern or the second retrieving pattern explained concerning the data retrieval method directed to the first aspect of the present invention.

The link-information adding method directed to the second aspect of the present invention for achieving the above second object of the present invention is concerned with a method of adding new link-information data to an element data storage area of a data string DS.sub.-- I. The new link-information data is concerned with a data string DS.sub.-- E corresponding to an element concept for the data string DS.sub.-- I. That is, the link-information adding method directed to the second aspect of the present invention is a link-information adding method of adding new link-information data to an element data storage area of a data string DS.sub.-- I in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value, and

(3) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(B) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data strings DS.sub.-- 1 differ from one another, and

(C) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and an element concept name which is an element of a set indicated by the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted element concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted element concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- E storing the data identification name which is in agreement with the inputted element concept name,

(e) adding no link-information data when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- E extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- E extracted in the step (d) when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- E extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- extracted in the step (c),

(h) storing link-information data about the data string DS.sub.-- E extracted in the step (d) to the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c), and

(i) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- E extracted in the step (d) in the data level storage area of the data string DS.sub.-- I extracted in the step (c) when the data string DS.sub.-- E extracted in the step (d) has a data level value equal to, or greater than, the data level value of the data string DS.sub.-- I extracted in the step (c).

In the link-information adding method directed to the second aspect of the present invention, the procedures of extracting data strings in the step (f) can be the same as the third retrieving pattern or the fourth retrieving pattern explained concerning the data retrieval method directed to the second aspect of the present invention.

The link-information adding method directed to the third aspect of the present invention for achieving the above second object of the present invention is concerned with a method of adding new link-information data to a parent data storage area of a data string DS.sub.-- I. The new link-information data is concerned with a data string DS.sub.-- P corresponding to a parent concept for the data string DS.sub.-- I. That is, the link-information adding method directed to the third aspect of the present invention is a link-information adding method of adding link-information data to a parent data storage area of a data string DS.sub.-- I in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing a data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data strings DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and a parent concept name which indicates a set including the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted parent concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted parent concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- P storing the data identification name which is in agreement with the inputted parent concept name,

(e) adding no link-information data when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- P extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- P extracted in the step (d) when the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- P extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string extracted DS.sub.-- I in the step (c),

(h) storing link-information data about the data string DS.sub.-- P extracted in the step (d) in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- I extracted in the step (c),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the element data storage area of the data string DS.sub.-- P extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- I extracted in the step (c) in the data level storage area of the data string DS.sub.-- P extracted in the step (d) when the data string DS.sub.-- P extracted in the step (d) has a data level value equal to, or smaller than, the data level value of the data string DS.sub.-- I extracted in the step (c).

In the link-information adding method directed to the third aspect of the present invention, the procedures of extracting data strings in the step (f) can be the same as the first retrieving pattern or the second retrieving pattern explained concerning the data retrieval method directed to the first aspect of the present invention. In the steps (e) and (f), it is decided whether or not the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has the link-information data about the data string DS.sub.-- P extracted in the step (d), which decision is equivalent to a decision on whether or not the element data storage area of the data string DS.sub.-- P extracted in the step (d) has the link-information data about the data string DS.sub.-- I extracted in the step (c).

In the above link-information adding method directed to the third aspect of the present invention, in the step (f), a data string is extracted on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- P storing the inputted parent concept name. On the other hand, in the link-information adding method directed to the fourth aspect of the present invention to be explained below, in the step (f'), a data string is extracted on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- I storing an inputted data identification name.

That is, differing from the link-information adding method directed to the third aspect of the present invention comprising the above steps (e), (f), (g) and (h), the link-information adding method directed to the fourth aspect of the present invention for achieving the second object of the present invention comprises

(e') adding no link-information data when the element data storage area of the data string DS.sub.-- P extracted in the step (d) has link-information data about the data string DS.sub.-- I extracted in the step (c),

(f') extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when the element data storage area of the data string DS.sub.-- P extracted in the step (d) has no link-information data about the data string DS.sub.-- I extracted in the step (c), and further extracting a data string on the basis of the link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g') adding no link-information data when any one of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- P extracted in the step (d) and

(h') storing link-information data about the data string DS.sub.-- P extracted in the step (d) in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- P extracted in the step (d).

In the link-information adding method directed to the fourth aspect of the present invention, the procedures of extracting a data string in the step (f') can be the same as the third retrieving pattern or the fourth retrieving pattern explained concerning the data retrieval method directed to the second aspect of the present invention. In the steps (e') and (f'), it is decided whether or not the element data storage area of the data string DS.sub.-- P extracted in the step (d) has the link-information data about the data string DS.sub.-- I extracted in the step (c), which decision is equivalent to a decision on whether or not the parent data storage area of the data string DS.sub.-- I extracted in the step (c) has the link-information data about the data string DS.sub.-- P extracted in the step (d).

In the above link-information adding methods directed to the third and fourth aspects of the present invention, a data identification name and a parent concept name indicating a set including the data identification name are inputted. On the other hand, in the following link-information adding methods directed to the fifth and sixth aspects of the present invention, a data identification name and an element concept name which is an element of a set indicated by the data identification name are inputted.

The link-information adding method directed to the fifth aspect of the present invention for achieving the above second object of the present invention is concerned with a link-information adding method of adding new link-information data to an element data storage area of a data string DS.sub.-- I. The new link-information data is concerned with a data string DS.sub.-- E corresponding to an element concept for the data string DS.sub.-- I. That is, the link-information adding method directed to the fifth aspect of the present invention is a link-information adding method of adding new link-information data to an element data storage area of a data string DS.sub.-- I in a data-string set consisting of a plurality of data strings,

each data string DS.sub.-- 1 having

(1) a data identification name storage area storing a data identification name,

(2) a data level storage area storing a data level value,

(3) a parent data storage area storing link-information data about a data string DS.sub.-- 2 storing the data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1, and

(4) an element data storage area storing link-information data about a data string DS.sub.-- 0 storing the data identification name which is an element of a set indicated by the data identification name stored in the data string DS.sub.-- 1,

wherein:

(A) the data string DS.sub.-- 2 has a greater data level value than the data string DS.sub.-- 1 has,

(B) the parent data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area of the data string DS.sub.-- 1 differ from one another,

(C) when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings,

(D) the data string DS.sub.-- 0 has a smaller data level value than the data string DS.sub.-- 1 has,

(E) the element data storage area of the data string DS.sub.-- 1 does not contain link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the element data storage area of the data string DS.sub.-- 1 differ from one another, and

(F) when data strings are consecutively traced on the basis of link-information data stored in element data storage areas of data strings, with arbitrary link-information data stored in the element data storage area of the data string DS.sub.-- 1 as a starting point, until the element data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the element data storage areas of the traced data strings,

the method comprising the steps of

(a) inputting a data identification name and an element concept name which is an element of a set indicated by the data identification name,

(b) adding no link-information data when the inputted data identification name and the inputted element concept name are in agreement with each other,

(c) extracting a data string DS.sub.-- I storing the inputted data identification name when the inputted data identification name and the inputted element concept name are not in agreement with each other,

(d) extracting a data string DS.sub.-- E storing the data identification name which is in agreement with the inputted element concept name,

(e) adding no link-information data when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has link-information data about the data string DS.sub.-- E extracted in the step (d),

(f) extracting a data string on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- I extracted in the step (c) when the element data storage area of the data string DS.sub.-- I extracted in the step (c) has no link-information data about the data string DS.sub.-- E extracted in the step (d), and further extracting a data string on the basis of the link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty,

(g) adding no link-information data when any one of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- E extracted in the step (d),

(h) storing link-information data about the data string DS.sub.-- E extracted in the step (d) in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f) is in agreement with the data string DS.sub.-- E extracted in the step (d),

(i) storing link-information data about the data string DS.sub.-- I extracted in the step (c) in the parent data storage area of the data string DS.sub.-- E extracted in the step (d), and

(j) storing a value obtained by adding 1 to the data level value of the data string DS.sub.-- E extracted in the step (d) in the data level storage area of the data string DS.sub.-- I extracted in the step (c) when the data string DS.sub.-- E extracted in the step (d) has a data level value equal to, or greater than, the data level value of the data string DS.sub.-- I extracted in the step (c).

In the link-information adding method directed to the fifth aspect of the present invention, the procedures of extracting data strings in the step (f) can be the same as the first retrieving pattern or the second retrieving pattern explained concerning the data retrieval method directed to the first aspect of the present invention. In the steps (e) and (f), it is decided whether or not the element data storage area of the data string DS.sub.-- I extracted in the step (c) has the link-information data about the data string DS.sub.-- E extracted in the step (d), which decision is equivalent to a decision on whether or not the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has the link-information data about the data string DS.sub.-- I extracted in the step (c).

In the above link-information adding method directed to the fifth aspect of the present invention, in the step (f), a data string is extracted on the basis of link-information data stored in the parent data storage area of the data string DS.sub.-- I storing the inputted data identification name. On the other hand, in the link-information adding method directed to the sixth aspect of the present invention to be explained below, in the step (f'), a data string is extracted on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- E storing the inputted element concept name.

That is, differing from the link-information adding method directed to the fifth aspect of the present invention comprising the above steps (e), (f), (g) and (h), the link-information adding method directed to the sixth aspect of the present invention for achieving the second object of the present invention comprises

(e') adding no link-information data when the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has link-information data about the data string DS.sub.-- I extracted in the step (c),

(f') extracting a data string on the basis of link-information data stored in the element data storage area of the data string DS.sub.-- E extracted in the step (d) when the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has no link-information data about the data string DS.sub.-- I extracted in the step (c), and further extracting a data string on the basis of link-information data stored in the element data storage area of the extracted data string until the element data storage area of the extracted data string is empty,

(g') adding no link-information data when any one of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- extracted in the step (c), and

(h') storing link-information data about the data string DS.sub.-- E extracted in the step (d) in the element data storage area of the data string DS.sub.-- I extracted in the step (c) when none of the data strings extracted in the step (f') is in agreement with the data string DS.sub.-- I extracted in the step (c).

In the link-information adding method directed to the sixth aspect of the present invention, the data-string set can be structurally the same as the data-string set in the above link-information adding method directed to the fifth aspect of the present invention.

In the link-information adding method directed to the sixth aspect of the present invention, the procedures of extracting data strings in the step (f') can be the same as the third retrieving pattern or the fourth retrieving pattern explained concerning the data retrieval method directed to the second aspect of the present invention. In the steps (e') and (f'), it is decided whether or not the parent data storage area of the data string DS.sub.-- E extracted in the step (d) has the link-information data about the data string DS.sub.-- I extracted in the step (c), which decision is equivalent to a decision on whether or not the element data storage area of the data string DS.sub.-- I extracted in the step (c) has the link-information data about the data string DS.sub.-- E extracted in the step (d).

In the data retrieval method or the link-information adding method of the present invention, the parent data storage area (or the element data storage area) of the data string DS.sub.-- 1 contains no link-information data about the data string DS.sub.-- 1 itself, and the link-information data stored in the parent data storage area (or the element data storage area) of the data string DS.sub.-- 1 differ from one another. Further, when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas (or element data storage areas) of data strings, with arbitrary link-information data stored in the parent data storage area (or the element data storage area) of the data string DS.sub.-- 1 as a starting point, until the parent data storage area (or the element data storage area) of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas (or element data storage areas) of the traced data strings. Therefore, not only the possibility of falling into an endless loop can be completely prevented, but also the circulating definition to be described later can be completely excluded.

In the data retrieval method of the present invention, further, a data string is extracted on the basis of the link-information data stored in the parent data storage area (or the element data storage area) of the data string whose data identification name storage area stores the inputted data identification name, and a data string is extracted on the basis of the link-information data stored in the parent data storage area (or the element data storage area) of the extracted data string until the parent data storage area (or the element data storage area) of the extracted data string is empty. Therefore, not only the data string corresponding to a parent concept (or an element concept) but also the data string corresponding to an indirect parent concept (or an indirect element concept) can be extracted. Unlike prior art, it is no longer necessary to store an element name in a plurality of element fields repeatedly.

In the link-information adding method of the present invention, in the step (f) or (f'), a data string is extracted and it is decided whether or not the extracted data string stores the link-information data about the data string storing the inputted parent concept name (or the inputted element concept name). As a result, when link-information data is added, the possibility of falling into an endless loop in the retrieval can be completely prevented, and the circulating definition to be described later can be completely excluded.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be explained in detail with reference to drawings hereinafter.

FIGS. 1A and 1B schematically show the first retrieving pattern in the data retrieval method directed to the first aspect of the present invention.

FIG. 2 schematically shows the second retrieving pattern in the data retrieval method directed to the first aspect of the present invention.

FIGS. 3A and 3B schematically show the third retrieving pattern in the data retrieval method directed to the second aspect of the present invention.

FIG. 4 schematically shows the fourth retrieving pattern in the data retrieval method directed to the second aspect of the present invention.

FIGS. 5A and 5B schematically show the structure of a data string of each level and the structure of a first level data string in Example 1.

FIGS. 6A and 6B schematically show the structures of second and third level data strings in Example 1.

FIGS. 7A and 7B schematically show the structures of second and third level data strings in Example 1.

FIG. 8 is a flow chart showing the data retrieval method in Example 1.

FIG. 9 is a flow chart showing the retrieving process-1 in the data retrieval method in Example 1.

FIG. 10 is a flow chart showing the data retrieval method in Example 2.

FIG. 11 is a flow chart showing the retrieving process-2 in the data retrieval method in Example 2.

FIG. 12 shows the order of procedures of the retrieving process-2 in the data retrieval method in Example 2.

FIG. 13 is a flow chart showing the data retrieval method in Example 3.

FIG. 14 is a flow chart showing the data retrieval method in Example 3 subsequent to FIG. 13.

FIG. 15 is a flow chart showing the link-information adding method in Example 4.

FIG. 16 is a flow chart showing the adjustment of data level value in the link-information adding method in Example 4.

FIG. 17 is a flow chart showing the link-information adding method in Example 4 subsequent to FIG. 15.

FIG. 18 is a flow chart showing the link-information adding method in Example 4 subsequent to FIG. 17.

FIGS. 19A and 19B schematically show the structure of a data string of each level and the structure of a first level data string in Example 5.

FIGS. 20A and 20B schematically show the structures of second and third level data strings in Example 5.

FIGS. 21A and 21B schematically show the structures of second and third level data strings in Example 5.

FIG. 22 is a flow chart showing the data retrieval method in Example 5.

FIG. 23 is a flow chart showing the retrieving process-3 in the data retrieval method in Example 5.

FIG. 24 is a flow chart showing the data retrieval method in Example 6.

FIG. 25 is a flow chart showing the link-information adding method in Example 7.

FIG. 26 is a flow chart showing the adjustment of data level value in the link-information adding method in Example 7.

FIG. 27 schematically shows the structure of a data string of each level in Example 8.

FIG. 28 schematically shows the structure of a first level data string in Example 8.

FIG. 29 schematically shows the structure of a second level data string in Example 8.

FIG. 30 schematically shows the structure of a third level data string in Example 8.

FIG. 31 schematically shows the structure of a second level data string in Example 8.

FIG. 32 schematically shows the structure of a third level data string in Example 8.

FIG. 33 schematically shows another example of the structure of a data string of each level in the present invention.

FIG. 34 schematically shows an apparatus suitable for working the data retrieval method of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention will be explained with reference to Examples hereinafter. First, the background of the data retrieval method and the link-information adding method of the present invention will be explained first, followed by the explanation of specific examples of the data retrieval method and the link-information adding method of the present invention.

In the data structure shown in Table 1, for example, element name "COMBUSTIBILITY" is stored in record "PENCIL" and record "WOOD", and "WOOD" is stored in the element field of record "DESK". Therefore, if not only record "PENCIL" and record "WOOD" are extracted but also record "DESK" containing "WOOD" in its element field can be extracted when the record containing element name "COMBUSTIBILITY" in its element field is retrieved, it is not necessary to store element name "COMBUSTIBILITY" in the element field of record "DESK".

Further, element name "CONDUCTIBILITY", element name "SOFTNESS" and element name "BLACK COLOR" are stored in the element fields of record "PENCIL" and record "BRUSH OF MOTOR". All of these element names are stored in record "GRAPHITE". Therefore, if element name "GRAPHITE" is stored in the element fields of record "PENCIL" and record "BRUSH OF MOTOR", and if not only record "GRAPHITE" but also record "PENCIL" and record "BRUSH OF MOTOR" can be extracted when the record having the element field containing any one (e.g., element name "BLACK COLOR") of the element names stored in "GRAPHITE" is retrieved, element name "CONDUCTIBILITY", element name "SOFTNESS" and element name "BLACK COLOR" can be deleted from the element fields of record "PENCIL" and record "BRUSH OF MOTOR". In other words, it is not necessary to store element name "CONDUCTIBILITY", element name "SOFTNESS" and element name "BLACK COLOR" in the element fields of record "PENCIL" and record "BRUSH OF MOTOR".

Similarly, the element fields of record "PENCIL" store element name "INSULATOR" and element name "COMBUSTIBILITY", and these element names are also contained in record "WOOD". Therefore, when the record having the element field containing any one (e.g., element name "COMBUSTIBILITY") of the element names stored in record "WOOD" is retrieved and if the record "PENCIL" having the element field containing "WOOD" can be extracted as well, element name "COMBUSTIBILITY" can be deleted from the element field of record "PENCIL". Further, it is no longer necessary to store element names constituting record "WOOD" such as element name "INSULATOR", element name "PLANT" and element name "SPECIFIC GRAVITY OF 1 OR LESS" in the element fields of record "DESK" and record "PENCIL".

If it is no longer necessary to store one element name in a plurality of element fields repeatedly as explained above, it is made more effective to input data. Further, concepts can be grouped into various levels such as lower concepts, intermediate concepts and higher concepts. Table 2 shows data strings which are simplified as explained above.

The background of the data retrieval method and the link-information adding method of the present invention will be explained first with reference to Table 2. Concepts shown in Table 2 are interpreted most simply below. That is, concept "DESK" is a set including elements {WOOD, OFFICE SUPPLIES, FURNITURE}. Concept "PENCIL" is a set including elements {WOOD, GRAPHITE, OFFICE SUPPLIES, WRITING TOOLS, CYLINDRICAL FORM}. Concept "WOOD" is a set including elements {INSULATOR, COMBUSTIBILITY, PLANT, SPECIFIC GRAVITY OF 1 OR LESS}. Concept "GRAPHITE" is a set including elements {CONDUCTIBILITY, SOFTNESS, BLACK COLOR}. Concept "MICA" is a set including element {INSULATOR}. Concept "BRUSH OF MOTOR" is a set including element {GRAPHITE}.

Originally, a concept is established by defining it by some qualities. A concept can be therefore identified by enumerating qualities defining the concept. A "set" in terms of mathematics can be determined by enumerating elements included in the set. A set is therefore suitable as a model of a concept. A set can contain another set as an element. That is, concept "PENCIL" contains, as elements, concept "WOOD" and concept "GRAPHITE". A set type database which allows the construction of concepts on the basis of a set will be explained below.

›Definitions of Concept, Element Set and Element Concept!

First, some terms to be used hereinafter will be defined bellow, and various rules will be also

                                      TABLE 2
    __________________________________________________________________________
    Record
         Concept
             Element Field
    No.  Field
             A    B     C    D     E
    __________________________________________________________________________
    1    desk
             wood office
                        furniture
                  supplies
    2    pencil
             wood graphite
                        office
                             writing
                                   cylindri-
                        supplies
                             tools cal form
    3    wood
             insulator
                  combusti-
                        plant
                             specific
                  bility     gravity of
                             1 or less
    4    graphite
             conducti-
                  softness
                        black
             bility     color
    5    mica
             insulator
    6    brush of
             graphite
         motor
    __________________________________________________________________________


explained below. To begin with, concept "A" will be defined/expressed as follows.

Concept Name A {Element Concept Name X, Element Concept Name Y. Element Concept Name Z, . . . } in which "Concept Name A" is name of concept "A", and Element Concept Names X, Y, Z, . . . are names of concepts which are elements constituting concept "A". {Element Concept Name X, Element Concept Name Y, Element Concept Name Z, . . . } will be called an element set. On the other hand, there is a concept having no element concept name. A concept of this type means that an element set is an empty set. Element concept name is constituted of a concept having the same concept name. This concept will be called an element concept.

For example, concept "DESK" can be expressed as

DESK {WOOD, OFFICE SUPPLIES, FURNITURE} in which "DESK" is a concept name, and "WOOD", "OFFICE SUPPLIES" and "FURNITURE" are element concept names. Further, {WOOD, OFFICE SUPPLIES, FURNITURE} is an element set. Further, element concept names "WOOD", "OFFICE SUPPLIES" and "FURNITURE" are constituted of concepts "WOOD", "OFFICE SUPPLIES" and "FURNITURE" having the same concept names "WOOD", "OFFICE SUPPLIES" and "FURNITURE". Concepts "WOOD", "OFFICE SUPPLIES" and "FURNITURE" are elements of concept "DESK". Further, concept "WOOD" can be also expressed as follows.

WOOD {INSULATOR, COMBUSTIBILITY, PLANT, SPECIFIC GRAVITY OF 1 OR LESS}

On the other hand, concept "OFFICE SUPPLIES" and concept "FURNITURE" are concepts having no element concept name. That is, its element set is an empty set. These concepts can be therefore expressed as follows.

OFFICE SUPPLIES { }

FURNITURE { }

›Definitions of Parent Concept and Parent Set! When concept "a" is an element concept of concept "A", concept "A" will be called a parent concept of concept "a", and expressed as follows.

A .sub.e a

A set consisting of all of parent concepts of concept "a" will be called a parent concept set of concept "a".

For example, concept "WOOD" is an element concept of concept "DESK", and concept "DESK" is a parent concept of concept "WOOD". Further, concept "WOOD" is an element concept of concept "PENCIL", and concept "PENCIL" is a parent concept of concept "WOOD". Further, a set consisting of all of parent concepts (concept "DESK" and concept "PENCIL") of concept "WOOD" is a parent concept set of concept "WOOD". The relationship among concept "WOOD", concept "DESK" and concept "PENCIL" are expressed as follows.

concept "WOOD" .epsilon..sub.e concept "DESK"

concept "WOOD" .epsilon..sub.e concept "PENCIL"

›Definitions of Indirect Parent Concept and Indirect Element Concept!

When concept "A" is an element concept of concept "B" (B .sub.e A) and when concept "B" is an element of concept "C" concept (C .sub.e B), concept "C" is called an indirect parent concept of concept "A", and this relationship is expressed as follows. On the other hand, concept "A" is called an indirect element concept of concept "C".

C .sub.i A

Or, when B .sub.e A and D .sub.i B, concept "D" is also an indirect parent concept of concept "A", and this relationship is expressed as D .sub.i A. On the other hand, concept "A" is called an indirect element concept of concept "D". Further, when B .sub.i A and C .sub.i B, concept "C" is an indirect parent concept of concept "A", and this relationship is expressed as C .sub.i A. The relationship between concept "INSULATOR" and concept "DESK" can be expressed as follows.

concept "DESK" .sub.i concept "INSULATOR"

›Concept Level!

For example, concept "Insulator" has no element set. That is, its element set is an empty set.

INSULATOR { }

A concept of which the element set is an empty set as above is called a first level concept, and the name of this first level concept is called a first level concept name. For example, concept "INSULATOR", "COMBUSTIBILITY", "PLANT" and "SPECIFIC GRAVITY OF 1 OR LESS" which are element concepts of concept "WOOD" are first level concepts having no qualities by which to define themselves, i.e., having no internal relativity.

Further, second level concept, third level concept, . . . , n-th level concept are expressed as follows.

second level concept: concept whose element concept consists of first level concept(s).

third level concept: concept whose element concept has a maximum level of 2 and which has at least one second level concept as an element concept.

n-th level concept: concept whose element concept has a maximum level of (n-1) and which has at least one (n-1)th level concept as an element concept.

For example, concept "WOOD", concept "GRAPHITE" and concept "MICA" are second level concepts, and concept "DESK" and concept "PENCIL" are third level concepts.

Further, names of second level concept, third level concept, . . . , n-th level concept are called a second level concept name, a third level concept name, . . . , an n-th level concept name.

›Change in Concept Level!

A concept level may change when an element concept is deleted or added. That is, when all of (n-1)th level concepts are deleted from the element set of an n-th level concept, the concept level changes to the concept at a level which is obtained by adding 1 to the maximum level of the element concepts of the element set remaining after the deletion. For example, when element concept "WOOD" is deleted from concept "DESK", concept "DESK" changes from a third level concept to a second level concept. On the other hand, when an n-th level or higher level concept as an element concept is added to an n-th level concept, the concept level changes to a level obtained by adding 1 to the maximum level of the element concepts in a new element set.

While an element set does not change, the level of a parent concept or an indirect parent concept may change if the level of the element concept changes. For example, concept "PLANT" is a first level concept. If a first level concept such as "ORGANISM" or "CONSTITUTION FROM CELLS" is included as an element concept, concept "PLANT" changes to a second level concept. As a result, although element concepts constituting concept "WOOD" do not change at all, concept "WOOD" which is a parent concept of concept "PLANT" changes from a second level concept to a third level concept. Accordingly, concept "DESK" and concept "PENCIL" which are indirect parent concepts of concept "PLANT" change from a third level concepts to a 4th level concepts.

›Prohibition of Duplication of Concept Name!

A concept name is an identifier of a concept, and a concept name must not be duplicated. Even if concept "X" and concept "Y" have an identical element concept(s) or an identical element set, concept name "X" and concept name "Y" have to be different.

›Construction Rules of Concept!

When concept "a" and concept "A" satisfy the following relationship, concept "a" can be an element concept of concept "A".

Rule (1): concept "a" is not an element concept of concept "A".

Rule (2): concept "a" differs from concept "A".

Rule (3): concept "a" is neither an indirect parent concept of concept "A" nor a parent concept thereof.

Rule (1) is given to avoid a useless operation. Even if a plurality of identical concepts are added to an element set, no change takes place in the concept. Rules (2) and (3) are given for excluding a circulating definition. Rule (2) can exclude, e.g., the circulating definition of

DESK {DESK, WOOD, OFFICE SUPPLIES, FURNITURE}.

Further, when the following concepts and elements are present,

A {B}, B {A}, C {A}

concept "A" is indirectly defined to have a circulating definition if Rule (3) is not given.

Rule (3) may be replaced with the following rule.

Rule (3'): concept "A" is neither an indirect element concept of concept "a" nor an element concept thereof.

›Fundamental Procedure!

In the set type database for constructing concepts on the basis of sets, the following four fundamental procedures are allowed.

(1) Formation of a new data string.

(2) Addition of new link-information data to a predetermined area of a data string.

(3) Deletion of link-information data from a predetermined area of a data string.

(4) Removal of a data string.

The data retrieval method and the link-information adding method of the present invention will be explained with reference to specific examples hereinafter. Examples 1 to 3 and Example 14 are concerned with the data retrieval method directed to the first aspect of the present invention. Examples 4 and 15 are concerned with the link-information adding method directed to the first aspect of the present invention. Examples 5 and 6 are concerned with the data retrieval method directed to the second aspect of the present invention. Example 7 is concerned with the link-information adding method directed to the second aspect of the present invention. Example 8 is concerned with the data retrieval method directed to the third aspect of the present invention. Examples 9 and 14 are concerned with data retrieval method directed to the fourth aspect of the present invention. Example 10 is concerned with the link-information adding method directed to the third aspect of the present invention. Example 11 is concerned with the link-information adding method directed to the fourth aspect of the present invention. Example 12 is concerned with the link-information adding method directed to the fifth aspect of the present invention. Example 13 is concerned with the link-information adding method directed to the sixth aspect of the present invention.

EXAMPLE 1

Example 1 is concerned with the data retrieval method directed to the first aspect of the present invention. In Example 1, for a data identification name to be retrieved, a data string corresponding to a parent concept and/or an indirect parent concept is extracted.

FIG. 5A shows the structure of a data string in Example 1. A data string is composed of a data identification name storage area ›Name! in which a data identification name is stored, a data level storage area ›Level.sub.-- value! in which a data level value is stored, and a parent data storage area ›Parent!. Further, the data string has an identification number storage area ›ID! in which an identification number for identifying the data string is stored. The identification number is a number characteristic of an individual data string.

A maximum out of data level values stored in the data strings in the data structure will be simply called the maximum data level value, and a data string whose data level storage area ›Level.sub.-- value! stores the maximum data level value will be called n-th level data string. A data string whose data level storage area ›Level.sub.-- value! stores a value of 1 will be called a first level data string. A data string whose data level storage area ›Level.sub.-- value! stores a value of L (1<L<N) will be called L-th level data string. Further, data identification names stored in the data identification name storage areas of an n-th level data string, an L-th level data string and a first level data string will be called an N-th level data identification name, an L-th level data identification name and a first level data identification name, respectively. A data identification name corresponds to the above-explained concept name.

In the data structure in Example 1, a value of 1, 2 or 3 is stored in the data level storage area ›Level.sub.-- value! of each data string. That is, the data structure in Example 1 is constituted of a plurality of first level data strings, a plurality of second level data strings and a plurality of third level data strings.

An N-th level data identification name is a name of a set consisting of at least one (N-1)th level data identification name, or an N-th level data identification name is a name of a set consisting of one (N-1)th level data identification name and further consisting of at least one L'-th level data identification name (in which L'=1, 2, . . . , N-1). An L-th level data identification name is a name of a set consisting of at least one (L-1)th level data identification name, or an L-th level data identification name is a name of a set consisting of one (L-1)th level data identification name and further consisting of at least one L"-th level data identification name (in which L"=1, 2, . . . , L-1). Each data identification name is stored in the data identification name storage area ›Name! of each data string.

The parent data storage area ›Parent! of each data string DS.sub.-- 1 stores link-information data about a data string DS.sub.-- 2 storing a data identification name which indicates a set including the data identification name stored in the data string DS.sub.-- 1. The parent data storage area ›Parent! is composed of a plurality of parent identification number storage areas ›Parent.sub.-- ID!. Further, the data level value of the data string DS.sub.-- 2 corresponding to the link-information data stored in the parent data storage area ›Parent! of the data string DS.sub.-- 1 is greater than the data level value of the data string DS.sub.-- 1.

When there is an M'-th level data identification name (M'=M+1, M+2, . . . , N) which indicates a set including an M-th level data identification name (1.ltoreq.M<M'), the link-information data about the M'-th level data string DS.sub.-- 2 storing the M'-th level data identification name is stored in the parent data storage area ›Parent! of the M-th level data string DS.sub.-- 1 which stores the M-th level data identification name. Specifically, the identification number of the M'-th level data string DS.sub.-- 2 is stored in the parent data storage area ›Parent! of the M-th level data string DS.sub.-- 1. The identification number of M'-th level data string DS.sub.-- 2 stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the M-th level data string DS.sub.-- 1 is link-information data in Example 1.

When the M-th level data string DS.sub.-- 1 is taken as standard, the M'-th level data string DS.sub.-- 2 corresponds to a parent concept. The data identification name stored in the M'-th level data string DS.sub.-- 2 corresponds to the above-explained parent concept name. On the other hand, when the M'-th level data string DS.sub.-- 2 is taken as standard, the M-th level data string DS.sub.-- 1 corresponds to an element concept. Further, when the data identification name stored in the M'-th level data string DS.sub.-- 2 is taken as standard, the data identification name stored in the M-th level data string DS.sub.-- 1 corresponds to an element concept name. Further, the data identification name(s) of M'-th level data string(s) DS.sub.-- 2 corresponding to the link-information data stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area in the M-th level data string DS.sub.-- 1 corresponds to a parent concept set.

Table 3 shows examples of data identification names corresponding to concept names and data level values thereof, and data identification names corresponding to element concept names and data level values thereof in the data structure in Example 1.

FIG. 5B shows a data string structure of a first level data string indicated by ID number 5 in Table 3. The data identification name in the first level data string is "INSULATOR", and this data identification name is stored in the data identification name storage area ›Name! of the data string. Further, the data level storage area ›Level.sub.-- value! stores "1" which indicates that the data string is a first level data string.

Further, since there are M'-th level data identification names (in this case M'=2 or 3) (specifically, second level data identification names "WOOD" and "MICA") which indicate a set including the first (=M) level data identification name "INSULATOR", identification numbers 12 and 14 of the M'-th level data strings storing these M'-th level data identification names are stored in the parent identification number storage areas ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the first level data string indicated

                  TABLE 3
    ______________________________________
         Concept Name Recorded
    ID   in Data String       Element Concept Name
    No.  3rd level
                  2nd level
                           1st level
                                    2nd level
                                           1st level
    ______________________________________
    1                      office
                           supplies
    2                      furniture
    3                      writing tools
    4                      cylindrical
                           form
    5                      insulator
    6                      combusti-
                           bility
    7                      plant
    8                      specific
                           gravity of 1
                           or less
    9                      conducti-
                           bility
    10                     softness
    11                     black color
    12            wood                     insulator
                                           combusti-
                                           bility
                                           plant
                                           specific
                                           gravity of
                                           1 or 1ess
    13            graphite                 conducti-
                                           bility
                                           softness
                                           black color
    14            mica                     insulator
    15   desk                       wood
                                           office
                                           supplies
                                           furniture
    16   pencil                     wood
                                    graphite
                                           office
                                           supplies
                                           writing
                                           tools
                                           cylindrical
                                           form
    17   brush of                   graphite
         motor
    ______________________________________


by ID number 5, as link-information data. ID numbers 1 to 4 and 6 to 11 which are first level data strings also have the same structure. Some M-th level data strings have no M'-th level data identification name which indicates a set including the M-th level data identification name. In this case, nothing is stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the M-th level data string.

FIG. 6A shows a data string structure of a second (M=2) level data string indicated by ID number 12 in Table 3. The data identification name which is a second level data identification name in the second level data string is "WOOD", and the data identification name is stored in the data identification name storage area ›Name! of the data string. Further, the data level storage area ›Level.sub.-- value! stores "2" which indicates that the data string is a second level data string.

Further, since there are M'-th level data identification names (in this case M'=3) (specifically, third level data identification names "DESK" and "PENCIL") which indicate a set including the second level data identification name "WOOD", identification numbers 15 and 16 of the M'-th level data strings storing these M'-th level data identification names are stored in the parent identification number storage areas ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the second level data string indicated by ID number 12, as link-information data.

ID numbers 13 and 14 which are second level data strings have the same structure.

FIG. 6B shows a data string structure of a third (=N) level data string indicated by ID number 15 in Table 3. The data identification name in this third level data string is "DESK", and the data identification name is stored in data identification name storage area ›Name! of the data string. Further, the data level storage area ›Level.sub.-- value! stores "3" which indicates that the data string is a third level data string. In Example 1, the maximum data level value (N) is 3, and therefore, nothing is stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the third level data string. ID numbers 16 and 17 which are third level data strings also have the same structure.

FIGS. 7A and 7B show data string structures of a third level data string and a second level data string indicated by ID numbers 16 and 14, respectively.

For excluding a circulating definition, the parent data storage area ›Parent! of the data string DS.sub.-- 1 does not contain any link-information data (e.g., identification number) about the data string DS.sub.-- 1 itself. Further, the link-information data stored in the parent data storage area ›Parent! of the data string DS.sub.-- 1 differ from one another. These correspond to Rules (1) and (2) explained in "Construction Rule of Concept".

Further, when data strings are consecutively traced on the basis of link-information data stored in parent data storage areas of data strings, with arbitrary link-information data stored in the parent data storage area of the data string DS.sub.-- 1 as a starting point, until the parent data storage area of the traced data string is empty, the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings. This corresponds to Rule (3) in the above-explained "Construction Rule of Concept".

For example, if it is assumed that ID number 12 which is link-information data stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! of the first level data string DS.sub.-- 1 indicated by ID number 5 is arbitrary link-information data, data strings are consecutively traced on the basis of the link-information data stored in the parent data storage areas of the data strings with the above link-information data (ID number 12) as a starting point. That is, the operation reaches the data string of ID number 15 on the basis of ID number 15 which is link-information data stored in the parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the data string of ID number 12. The parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the data string of ID number 15 is empty. Therefore, the operation then reaches the data string of ID number 16 on the basis of ID number 16 which is link-information data stored in the next parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the data string of ID number 12. The parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the data string of ID number 16 is empty. Therefore, link-information data stored in the next parent identification number storage area ›Parent.sub.-- ID! of the parent data storage area ›Parent! in the data string of ID number 12 is traced. This parent identification number storage area ›Parent.sub.-- ID! is empty. In this operation, ID number 5 which is the link-information data about the data string DS.sub.-- 1 is included in none of the parent data storage areas of the traced data strings (data strings of ID numbers 12, 15 and 16).

When the first level data string indicated by ID number 5 is taken as standard, the second level data string of ID number 12 corresponds to a parent concept, and further, the third level data string of ID number 15 corresponds to an indirect parent concept. On the other hand, when the third level data string indicated by ID number 15 is taken as standard, the second level data string of ID number 12 corresponds to an element concept, and further, the first level data string of ID number 5 corresponds to an indirect parent concept.

FIG. 34 schematically shows an apparatus suitable for working the data retrieval method or the link-information adding method of the present invention. The apparatus is constituted of a processing unit, an input unit 12, a display unit 16, a main storage device 14 and an external storage device 18 such as a hard disc drive. The processing unit contains, for example, a microprocessor unit 10 (to be abbreviated as MPU 10 hereinafter). The input unit 12 contains, for example, a pointing device (mouse) and a keyboard. The display unit 16 contains a cathode ray tube (CRT) and displays various data. The main storage device 14 contains, for example, a random access memory (RAM) and stores programs and various data to be processed by MPU 10 and data strings. The external storage device 18 stores a data structure which is the object of the data retrieval method or the link-information adding method of the present invention. The data structure may have any file form.

In the data retrieval method in Example 1, first, a data identification name corresponding to data to be retrieved is inputted. Then, a data string is extracted on the basis of link-information data stored in the parent data storage area of the data string (to be sometimes called "inputted data string") whose data identification name storage area stores the inputted data identification name. Further, a data string is extracted on the basis of link-information data stored in the parent data storage area of the extracted data string until the parent data storage area of the extracted data string is empty. Then, the extracted data strings are outputted. The retrieval pattern of the data retrieval method in Example 1 is the first retrieving pattern shown in FIGS. 1A and 1B.

The data retrieval method in Example 1 will be explained with reference to flow charts of FIG. 8 and FIG. 9 hereinafter.

As shown in FIG. 8, a letter string "INSULATOR" as an data identification name to