WO2012147840A1 - データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法 - Google Patents

データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法 Download PDF

Info

Publication number
WO2012147840A1
WO2012147840A1 PCT/JP2012/061187 JP2012061187W WO2012147840A1 WO 2012147840 A1 WO2012147840 A1 WO 2012147840A1 JP 2012061187 W JP2012061187 W JP 2012061187W WO 2012147840 A1 WO2012147840 A1 WO 2012147840A1
Authority
WO
WIPO (PCT)
Prior art keywords
records
unit
name
trademark
record
Prior art date
Application number
PCT/JP2012/061187
Other languages
English (en)
French (fr)
Inventor
谷川 英和
光 増満
俊規 渡辺
Original Assignee
有限会社アイ・アール・ディー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 有限会社アイ・アール・ディー filed Critical 有限会社アイ・アール・ディー
Publication of WO2012147840A1 publication Critical patent/WO2012147840A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases

Definitions

  • the present invention relates to a database construction apparatus for constructing a database.
  • Patent Document 1 Conventionally, a technical term extraction device for extracting technical terms from Web pages has been developed (see Patent Document 1).
  • the database construction apparatus provides a first table having one or more records having m attribute values (m ⁇ 3) having different attributes, and n items (n ⁇ m ⁇ 1) having different attributes.
  • a table storage unit storing two or more second tables having one or more records having one or more attribute values, and one or more records having n attribute values from one or more Web pages
  • One or more rules are stored in association with the second table, and one or more records having n attribute values are acquired from one or more Web pages according to the rules, and the second table
  • An acquisition unit that appends to the table, and two or more records that the two or more second tables have, combine to generate one or more records having m attribute values, and a combination unit that appends to the first table This is a database construction device.
  • a structured database can be constructed from one or more Web pages.
  • the database construction apparatus can construct a structured database from one or more Web pages.
  • Block diagram of trademark infringement detection apparatus in Embodiment 1 The block diagram of the trademark similarity judgment part of the trademark infringement detection device in the embodiment
  • Block diagram of database construction device 5 in Embodiment 3 The flowchart explaining the whole operation
  • FIG. 1 is a block diagram of a trademark infringement detection device 3 in the present embodiment.
  • the trademark infringement detection device 3 includes a database 31, a reception unit 32, a trademark class determination unit 33, a product class determination unit 34, and an output unit 35.
  • the database 31 is a database constructed by the database construction device 5, for example.
  • the database 31 is a table that holds two or more records having “company name”, “product name”, and “unique name”.
  • the product name usually includes a service name. It is preferable that the “unique name” is a designation that specifies reading. In addition, it is preferable that the database 31 holds a similar group code corresponding to the product name.
  • the accepting unit 32 accepts survey target trademark information having a trademark and code specifying information for specifying a similar group code of a product.
  • the investigation target trademark information is, for example, a set of a trademark character string that is a trademark character string and one or more code specifying information.
  • the code specifying information may be a similar group code.
  • Acceptance here means acceptance of information input from input devices such as a keyboard, mouse, touch panel, reception of information transmitted via a wired or wireless communication line, recording of an optical disk, magnetic disk, semiconductor memory, etc. It is a concept including reception of information read from a medium.
  • the trademark similarity determination unit 33 determines the similarity between the unique names of one or more products included in the database 31 and the trademarks included in the survey target trademark information.
  • the similarity determination process is similar to the trademark similarity determination process.
  • the trademark similarity determination process may be a known method.
  • FIG. 2 is a block diagram of the trademark similarity determination unit 33 of the trademark infringement detection device 3 in the present embodiment.
  • the trademark similarity determination unit 33 includes a trademark character string acquisition unit 331, a designation acquisition unit 332, a designation display unit 333, a designation designation reception unit 334, a similarity search unit 335, and a trademark similarity determination result acquisition unit 336.
  • the trademark character string acquisition unit 331 acquires the trademark received by the reception unit 32. There are no restrictions on the type of characters that make up a trademark, such as kanji, alphabet, katakana, and hiragana.
  • the name acquisition unit 332 acquires one or more pieces of name information, which is information about the name of the trademark, from the trademark received by the trademark character string acquisition unit 331.
  • the name acquisition unit 332 may acquire a plurality of pieces of name information from a single character string.
  • the name information acquired by the name acquisition unit 332 is information such as hiragana, katakana, or the like. Which of these names is determined by, for example, the specification of a similarity search unit 335 (described later) that uses the name information for searching.
  • the name acquisition unit 332 may acquire the name information in any way.
  • the name acquisition unit 332 uses a dictionary having one or more character strings and information on reading of the character strings in association with each other, and uses a trademark character string stored in a storage medium (not shown).
  • One or more pieces of name information corresponding to the trademark acquired by the acquisition unit 331 may be automatically acquired.
  • you may acquire 1 or more name information corresponding to the trademark input via the input device etc. which are not shown in figure from a user etc.
  • name information is automatically acquired will be described as an example.
  • the name acquisition unit 332 performs, for example, morphological analysis on a trademark character string, and acquires trademark reading information obtained by the morphological analysis as name information. For example, by using morphological analysis, it is possible to decompose a trademark into morphemes, acquire a reading of each decomposed character string, and combine the character strings to acquire trademark name information.
  • the technique of morphological analysis is a known technique.
  • the name acquisition unit 332 may acquire name information by converting a kanji, a number, or a character or a word such as an alphabet into a reading.
  • the process of converting kanji, numeric characters, and words into readings can be realized by, for example, a so-called re-conversion technique of a Japanese input method or a morphological analysis system technique as described above.
  • the process of converting alphabetic characters and words into readings can be realized, for example, by a technique for converting the input of the alphabet string of the Japanese input method into Japanese.
  • the name acquisition part 332 may acquire several information of various combinations. For example, a plurality of designations “IT”, “IT” and “It” may be acquired from “IT”.
  • the name acquisition unit 332 may further divide the acquired one or more pieces of name information to acquire one or more pieces of divided name information.
  • the division name information is information of a part of the name information.
  • the divided name information is used as substantially the same as the name information in, for example, a similarity search described later.
  • the name acquisition unit 332 divides each character string of the acquired name information at an arbitrary position and acquires character strings before or after being divided by the divided position, or both as divided name information. To do.
  • the name acquisition unit 332 may sequentially change the position where the character string is divided, and acquire the divided name information according to each position where the character string is divided.
  • the name acquisition unit 332 may acquire all the character strings before and after the delimiter positions obtained when the character strings constituting the name information are divided between the characters as the divided name information. .
  • the nominal display unit 333 displays one or more pieces of nominal information acquired by the nominal acquisition unit 332 on a display device such as a monitor (not shown).
  • the name display unit 333 may display one or more pieces of divided name information acquired by the name acquisition unit 332.
  • the name display unit 333 may be considered as including or not including a display device.
  • the designation display unit 333 can be realized by display device driver software, or display device driver software and a display device.
  • the nominal designation receiving unit 334 receives nominal designation information that designates one or more pieces of nominal information acquired by the nominal acquisition unit 332. Further, the designation designation accepting unit 334 may accept designation designation information for designating one or more of the designation information and the divided designation information acquired by the designation acquisition unit 332. For example, the designation designation accepting unit 334 accepts designation designation information for designating one or more of the designation information and the divided designation information displayed by the designation display unit 333.
  • the name designation information input means may be anything such as a numeric keypad, keyboard, mouse, or menu screen.
  • the similarity search unit 335 searches the database 31 using one or more pieces of name information acquired by the name acquisition unit 332, and acquires one or more unique names similar to the one or more pieces of name information. Such processing is called similarity search.
  • the similarity search unit 335 may perform the similarity search using each piece of name information specified by the name designation information among the name information acquired by the name acquisition unit 332. Further, the similarity search unit 335 may perform a similarity search using each piece of nominal information acquired by the nominal acquisition unit 332 and each piece of divided nominal information. Note that the process of determining whether two names are similar is a process performed by an existing trademark search system and is a known technique.
  • the trademark similarity determination result acquisition unit 336 acquires, for example, a record having a unique name that the similarity search unit 335 determines to be similar from the database 31.
  • the product similarity determination unit 34 determines the similarity of a product using one or more product names or one or more similar group codes included in the database 31 and code identification information included in the survey target trademark information.
  • the product type rejection determination unit 34 determines that the product is similar when the similar group code included in the database 31 matches the code specifying information included in the survey target trademark information.
  • the merchandise kind determination unit 34 searches a database (not shown) using the merchandise name of the database 31 as a key, and acquires a similar group code. Then, the merchandise kind determination unit 34 determines that the merchandise is similar when the similar group code matches the code specifying information included in the investigation target trademark information.
  • a similar group code is associated with one or more product names.
  • the output unit 35 outputs information relating to the similarity of the trademark and the similarity of the product from the determination result of the trademark similarity determination unit 33 and the determination result of the product similarity determination unit 34.
  • the output unit 35 may output all the judgment results of the trademark kind judgment unit 33 and all judgment results of the product kind judgment unit 34, or may be either one of them.
  • Output is a concept that includes display on a display, printing on paper by a printer, transmission to an external device, storage on a recording medium, and the like.
  • the output unit 35 may or may not include a display device.
  • the output unit 35 can be realized by driver software of an output device or driver software of an output device and an output device.
  • FIG. 3 is a flowchart showing an example of the operation of the trademark infringement detection apparatus 3 according to the present embodiment. Hereinafter, the operation will be described with reference to FIG.
  • Step S1001 The receiving unit 32 determines whether or not the trademark information to be investigated, specifically, the trademark character string and the product name or the similar group code has been received. If accepted, the process proceeds to step S1002, and if not accepted, the process returns to step S1001.
  • Step S1002 The trademark character string acquisition unit 331 acquires a trademark character string from the survey target trademark information. If it can be acquired, the process proceeds to step S1003. If it cannot be acquired, the process proceeds to step S1017.
  • Step S1003 The name acquisition unit 332 acquires one or more pieces of name information using the trademark character string acquired in step S1002.
  • Step S1004 The name acquisition unit 332 substitutes 1 for the counter m.
  • Step S1005 The name acquisition unit 332 determines whether there is m-th name information in the name information acquired in step S1003. If there is, the process proceeds to step S1006, and if not, the process proceeds to step S1011.
  • Step S1006 The name acquisition unit 332 substitutes 1 for the counter n.
  • Step S1007 The name acquisition unit 332 determines whether or not the mth name information includes the nth break position. If there is an nth delimiter position, the process proceeds to step S1008, and if not, the process proceeds to step S1010.
  • the name information is divided by setting the separation position between reading of each character constituting the trademark character string or reading of the morpheme constituting the trademark character string. May be.
  • Step S1008 The name acquisition unit 332 divides the mth name information at the nth position, and acquires divided name information that is a character string before and after the mth name information.
  • Step S1009 The name acquisition unit 332 increments the counter n by 1. Then, the process returns to step S1007.
  • Step S1010 The name acquisition unit 332 increments the counter m by 1. Then, the process returns to step S1005.
  • Step S1011 The name display unit 333 displays the name information acquired in step S1003 and the divided name information acquired in step S1008. In addition, when not selecting by a user and selecting designation
  • Step S1012 The designation designation receiving unit 334 determines whether designation designation information that designates at least one of designation designation information or division designation designation information has been accepted. If accepted, for example, the designation information and assigned call information specified by the designation designation information are temporarily stored in a storage medium such as a memory, and the process proceeds to step S212. If not received, the process returns to step S1012.
  • Step S1013 The similarity search unit 335 substitutes 1 for the counter k.
  • Step S1014 The similarity search unit 335 determines whether there is k-th name information or divided name information in the combination of the name information and the divided name information specified by the name designation information received in Step S1012. to decide. If there is, the process proceeds to step S1015, and if not, the process proceeds to step S1017.
  • Step S1015) The similarity search unit 335 searches the database 31 using the k-th name information or divided name information and performs a similarity search. Then, the similarity search unit 335 accumulates the results of the similarity search in a storage medium (not shown).
  • the result of the similarity search is information including, for example, the kth designation information used for the similarity search, the designation determined to be similar, the company name associated with the designation, and the unique name of the product. .
  • Step S1016 The similarity search unit 335 increments the counter k by 1. Then, the process returns to step S1014.
  • Step S1017) The product similarity determination unit 34 determines the similarity of the product using the product name or similar group code of the investigation target trademark information acquired from the database 31 in step S1001 as a key, and the determination result is not illustrated. Accumulate on a storage medium.
  • Step S10128 From the similar search result accumulated in Step S1015 and the information accumulated in Step S1017, information having a common product unique name is acquired.
  • Step S1019 The output unit 35 outputs the information acquired in Step S1018. Then, the process ends.
  • the user wants to determine the possibility of infringement of “wire noodles” for Chinese noodles, and therefore, the trademark character string “wire noodles” and a similar group code “32F03” for Chinese noodles.
  • the receiving unit 32 receives the trademark character string “wire noodle”.
  • the trademark character string acquisition unit 331 acquires a trademark character string
  • the merchandise similarity determination unit 34 acquires a similar group code.
  • the name acquisition unit 332 acquires the name information of the trademark character string “wire noodle” received by the trademark character string acquisition unit 331.
  • morphological analysis is performed on the trademark character string to obtain reading information for each morpheme. For example, “wire noodle” is divided into two morphemes “wire” and “noodle” by morpheme analysis.
  • “Harigane” is read from morpheme “wire” and “men” ”Is acquired. Since only one reading is acquired for each morpheme, “harnessing” obtained by simply combining these readings is acquired as one of the designation information of “wire noodles”.
  • the name acquisition unit 332 acquires a reading of each character of the trademark character string “wire noodle” from a dictionary (not shown) in which kanji readings prepared in advance are stored. For example, it is assumed that readings “harness” and “shin” are acquired from “needle”. In addition, it is assumed that “Kin”, “Kogane”, “Kon”, and “Kane” are acquired from “Gold”. It is also assumed that “Men” is acquired from “Noodles”. Then, the name information is acquired by combining the acquired character readings along the sequence of the characters to be acquired.
  • name information such as “Harikinmen”, “Harikomenmen”, “Harikonmen”, “Harikanmen”, “Shinkinmen”, “Shinkoganen”, etc. is acquired. Note that information that matches the name information acquired by morphological analysis is deleted.
  • the name acquisition unit 332 divides each piece of name information acquired above to acquire divided name information. For example, with respect to the designation information “Hariganemen”, first, by dividing the designation information by setting the division position between “Ha” of the first character and “Li” of the second character, the divided designation of “Ha” is given. Information and division name information “Rigane men” are acquired. Further, by dividing the designation information by setting the division position between the second character “Li” and the third character “Ga”, the divided designation information “Hari” and the divided designation information “Ganemen” And get. Similarly, “Hariga”, “Nemen”, “Harigane”, “Men”, “Harigamime” are acquired. However, “n” is not acquired as divided name information. Similarly, divided name information is acquired for other name information. It should be noted that, in the acquired divided name information, duplicates are deleted except for one.
  • the name display unit 333 outputs the acquired name information and divided name information to a monitor or the like.
  • FIG. 4 is a diagram showing a display example of the designation information and the divided designation information by the designation display unit 333.
  • the name information and the divided name information are used without distinction in the later-described similar search, and therefore, the name information and the divided name information are displayed as names without distinction.
  • the similarity search unit 335 searches the database 31 using the name information and the divided name information received by the name designation reception unit 334, and performs a name similarity search. Since the similarity determination (similarity search) of the two designations is a known technique, a detailed specific example is omitted. For example, as a result of the similarity search, for the name information “Hariganmen” and the divided name information “Harigane”, a registered trademark having a similar name was not detected. However, for the name information “Harikinmen”, a registered trademark having a similar name Suppose that it was detected. Specifically, it is assumed that a unique name of a product whose name is “Hurricington” is detected. The trademark similarity determination result acquisition unit 336 temporarily stores the detection result in a storage medium (not shown).
  • the trademark similarity determination result acquisition unit 336 acquires the result of the similarity search.
  • the product similarity determination unit 34 determines the similarity of the product using the similar group code “32F03” and the similar group code or product name paired with the “Harikinmen”.
  • the output unit 35 uses the determination result of the trademark similarity determination unit 33 and the determination result of the product similarity determination unit 34 to output information on the similarity of the trademark and the similarity of the product.
  • the output mode of the output unit 35 is not limited.
  • trademark infringement can be detected. Further, according to the present embodiment, trademark infringement can be detected using information on the Web.
  • the divided name information obtained by dividing the name information is acquired, and the similarity search using this information can be performed. Therefore, when the trademark input by the user is a combined trademark, The main part can be observed.
  • a trademark infringement detection apparatus capable of determining the similarity of a product using a similar group code even when the investigation target trademark information holds a product name and does not hold a similar group code. To do.
  • FIG. 5 is a block diagram of the trademark infringement detection apparatus 4 in the present embodiment.
  • the trademark infringement detection apparatus 4 includes a database 401, a reception unit 32, a trademark class rejection determination unit 33, a product class determination unit 402, and an output unit 35. Since the reception unit 32, the trademark similarity determination unit 33, and the output unit 35 are the same as those in the first embodiment, description thereof is omitted.
  • the database 401 can store one or more records acquired from one or more web server devices (not shown).
  • the record has a company name, a product name, and a unique name.
  • the database 401 may be anything as long as it is information acquired from one or more Web server devices, and may be constructed using the database construction device 5 to be described later, using a product name of random or surveyed trademark information as a keyword.
  • Information may be acquired from a Web page retrieved and collected using a specific rule and constructed.
  • the specific rule is, for example, a rule stored in the rule storage unit 52 of the database construction device 5.
  • the record that the database 401 has may include code specifying information corresponding to the product name.
  • the product similarity determination unit 402 determines the similarity of a product using one or more product names included in the database 401 and a product name included in the survey target trademark information.
  • the product categorization determination unit 402 includes a product code management unit 4021, code identification information acquisition unit 4022, and product categorization determination unit 4023.
  • the product code management means 4021 manages the correspondence between one or more product names and code specifying information.
  • the code specifying information here is, for example, a similar group code.
  • the code specification information acquisition unit 4022 searches the product code management unit 4021 and acquires the code specification information corresponding to the product name included in the investigation target trademark information. Further, the code specifying information acquisition unit 4022 may acquire code specifying information corresponding to the product name included in the record of the database 401.
  • the product type determination unit 4023 makes a product type determination using the code specifying information corresponding to the product name included in the investigation target trademark information and the code specifying information corresponding to the product name included in the record in the database 401. .
  • the operation of the trademark infringement detection apparatus 4 according to the present embodiment is the same as the operation of the trademark infringement detection apparatus 3 except for the processing in step S1018 in FIG.
  • the product name of the investigation target trademark information received by the receiving unit 32 is “beer”, and the database 401 has a company name “A company”, a product name “Lugger beer”, and a product unique name. At least one set of information “B beer” is stored, and the product code management means 4021 has a similar group code “28A02”, a product name “beer”, a similar group code “28A02”, and a product name “Lagger”. It is assumed that at least two sets of information “beer” are stored.
  • the code specifying information acquisition unit 4022 acquires, for example, “lager beer” from the database 401. Then, the code specifying information acquisition unit 4022 acquires the similar group code “28A02” from the product name “Lager Beer” using the information managed by the product code management unit 4021. Next, the code specifying information acquisition unit 4022 acquires the similar group code “28A02” from the product name “beer”.
  • the product type determination unit 4023 detects that the two similar group codes acquired by the code specifying information acquisition unit 4022 match, and the product “beer” received by the receiving unit 32 and the product “B” in the database 401. It is judged that “beer” is similar.
  • the similarity of trademarks taking into account the similar group code without specifying the similar group code for the set of the company name, the product name, and the unique name acquired from the Web server device. Search is possible. Therefore, it is possible to provide the user with information that can be used to determine the trademark infringement status.
  • the product type determination unit 34 can be usually realized by an MPU, a memory, or the like.
  • the processing procedure of the merchandise rejection / determination determining unit 34 or the like is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (dedicated circuit).
  • a record is a set of one or more attribute values.
  • a record may be called an attribute value set.
  • information may be stored in a storage unit or the like via a recording medium.
  • Information transmitted via a communication line or the like may be stored in a storage unit or the like.
  • information input via the input device may be stored in a storage unit or the like.
  • the format, content, and the like of each information described in this embodiment are merely examples, and the format, content, and the like are not limited as long as the meaning of each information can be indicated.
  • FIG. 6 is a block diagram of the database construction device 5 in the present embodiment.
  • the database construction device 5 includes a table storage unit 51, a rule storage unit 52, a score storage unit 53, a dictionary storage unit 54, an acquisition unit 55, a combining unit 56, and a rule acquisition unit 57.
  • the table storage unit 51 stores a first table and two or more second tables.
  • the first table has one or more records having m attribute values (m ⁇ 3) having different attributes.
  • the second table has one or more records having n (n ⁇ m ⁇ 1) attribute values having different attributes. That is, the record is a record in one data model.
  • the first table and the second table are a set of one or more records in one data model. For example, when the data model is a relational data model, the first table and the second table are tables.
  • the contents of attributes and attribute values are not limited.
  • the number of attribute values in each of the two or more second tables may be different. That is, the number n of attribute values in the second table A may be different from the number n of attribute values in the second table B.
  • the second table may have a unique identifier indicating whether each of the n attributes is unique.
  • the unique identifier usually has each attribute, but the unique identifier may indicate which attribute is unique.
  • the unique identifier is, for example, a unique key in so-called RDB, but may be a primary key.
  • the first table and the second table may have scores corresponding to the records.
  • the score usually indicates the reliability of the record. Further, the score may correspond to each attribute value included in the record.
  • “Record reliability” indicates the degree of reliability of the record.
  • the “record reliability” is, for example, the reliability of the Web page that acquired the record, the reliability of the record itself, or the like.
  • “Web page reliability” is, for example, high when the Web page is a so-called official site Web page, and low when the Web page is a web page other than the so-called official site.
  • the “reliability of the record itself” is, for example, the reliability of the Web page from which the record is acquired, and the degree of coincidence between each attribute value of the record and the attribute value condition that is the condition of the attribute value Etc.
  • Attribute value conditions are, for example, attribute value examples, attribute value patterns, and the like.
  • the “degree of matching with the attribute value condition” refers to the degree of matching between each attribute value included in the record and an example of the attribute value of the same attribute as the attribute value, and each attribute value included in the record. And the degree of coincidence with the attribute value pattern of the same attribute as the attribute value attribute.
  • An example of the attribute value is the attribute value itself.
  • the attribute value pattern includes, for example, that the attribute value includes a predetermined character, that the attribute value is a kanji string, that the attribute value is a katakana string, and that the attribute value is a hiragana string. , Indicating that the attribute value is a numerical value.
  • the “record reliability” may be called “record accuracy” or “record accuracy”.
  • the score is a score corresponding to each attribute value of the record or the record, and if the record or the attribute value can be judged whether it is reliable or correct, the contents Does not matter.
  • the rule storage unit 52 stores one or more rules.
  • the rule is a rule for acquiring one or more records having the m or n attribute values from one or more Web pages.
  • the rule is a rule for acquiring one or more records from a text document (for example, a web page displayed by a so-called web browser) obtained by interpreting HTML (Hyper Text Markup Language) included in the web page, or so-called HTML.
  • a rule for acquiring one or more records from a Web page that is a document is a document.
  • a rule is usually a regular expression.
  • a rule is a so-called character string pattern, tag pattern, URI (Uniform Resource Identifier) pattern, or a combination of two or more of these three patterns. There may be. Further, the rules may be other notations and expressions.
  • a rule usually has a variable indicating that an attribute value is acquired. The variable corresponds to an attribute.
  • the rules are (1) “$ company name $ is. *? $ Product name $, $ proprietary name $” or (2) “% unique name %:% Product Name% ”, (3)“ Company Overview ⁇ New Line> Company Name ”& Company Name & ⁇ New Line> Established
  • (1) is a rule for acquiring a company name, a product name, and a unique name.
  • “$ company name $” is a variable indicating that a character string at the location is acquired as the company name. “. *?” Is a regular expression.
  • (2) is a rule for acquiring a unique name and a product name.
  • “% unique name%” is a variable indicating that a character string at the location is acquired as a unique name.
  • (3) is a rule for acquiring the company name and the date of establishment.
  • “& date of establishment &” is a variable indicating that a character string at the location is acquired as the date of establishment.
  • “ ⁇ Line feed>” indicates a line feed.
  • the rule is (4) “ ⁇ p> $ company name $ is. *? $ Product name $, $ unique name $ ⁇ / p>” (5) “ ⁇ td>% unique name%: ⁇ / td> ⁇ td>% product name% ⁇ / td>”, (6) “ ⁇ div. *?> Company profile ⁇ / div> ⁇ br> ⁇ Div. *?> Company name ⁇ / div> ⁇ div. *?> & Company name & ⁇ / div> ⁇ br> ⁇ div. *?> Establishment ⁇ / div> ⁇ div. *?> & Date of establishment & ⁇ / Div> ".
  • the rule storage unit 52 may store patterns corresponding to the above variables.
  • the pattern is, for example, that a character string indicated to be acquired by the variable includes a predetermined character, that the character string is a kanji string, that the character string is a katakana string, This indicates that the character string is a hiragana string, the character string is a numerical value, or the like.
  • Web page is usually included in one or more Web sites, and is included in a server device that operates the Web site.
  • the web page may be stored in any storage device or storage area provided in the database construction device 5.
  • Web pages include documents such as the above-mentioned text documents and HTML documents, sentences, paragraphs, characters, character strings, texts, and the like, and are widely understood.
  • the web page may have a web page identifier for identifying the web page.
  • the web page identifier includes the URL of the web page, the file name of the web page, the title of the web page (element value of the HTML title element), meta information (keyword attribute value or description attribute value of the HTML meta element) Etc.
  • the URL includes a so-called domain name and host name and is widely understood.
  • the rule is usually stored in the rule storage unit 52 in association with the first table or the second table having a record that can be acquired by the rule. This means that the rules are stored so that the correspondence relationship between the rule and one or more attributes corresponding to the record that can be acquired by the rule or a table that can have the record can be understood.
  • the score storage unit 53 stores one or more scores associated with Web page identifiers.
  • the score is a score of the web page, and usually indicates the reliability of the web page.
  • the dictionary storage unit 54 stores one or more dictionaries that are a set of one or more attribute values for each attribute.
  • a dictionary may be thought of as a collection of example attribute values.
  • One dictionary is usually a set of one or more attribute values of one attribute.
  • the dictionary storage unit 54 may store one or more attribute value patterns. In this case, the attribute value pattern is usually associated with the attribute value attribute.
  • the acquisition unit 55 acquires one or more records from one or more Web pages according to one or more rules stored in the rule storage unit 52. At this time, the acquisition unit 55 normally acquires a character string that matches the one or more rules from the one or more Web pages. And the acquisition part 55 acquires the character string in the location of the 1 or more variable which the used rule has as an attribute value from the acquired character string. Then, the acquisition unit 55 accumulates the acquired one or more records in the table storage unit 51. The accumulation is to add to the first table or the second table.
  • the acquisition unit 55 adds the acquired record to the first table having the attribute corresponding to the record. For example, when one or more records having the n attribute values are acquired according to the rule, the acquisition unit 55 adds the acquired records to a table having attributes corresponding to the records. This table is usually the second table.
  • the acquisition unit 55 is an attribute value of an attribute corresponding to the variable of one or more rules stored in the rule storage unit 52, and the one or more attributes stored in the table storage unit 51.
  • a value may be substituted to generate a new rule, and one or more records may be acquired from one or more Web pages according to the rule.
  • the acquisition unit 55 substitutes the pattern stored in the rule storage unit 52 for the variable of one or more rules stored in the rule storage unit 52 and substitutes the pattern stored in the rule storage unit 52 for a new rule.
  • One or more records may be acquired from one or more Web pages according to the rules generated.
  • the acquisition unit 55 normally performs so-called crawling and acquires one or more Web pages from the so-called Web. For example, when one or more Web pages are stored in an arbitrary storage area, the acquisition unit 55 acquires one or more Web pages from the storage area.
  • the character string “PATENT ANALYZER has released software“ PAT-Analyzer ”for analyzing patent specifications” exists in one or more Web pages, and the rule is “$ company name $. *? If $ product name $ “$ unique name $” has been released ”, the acquisition unit 55 first acquires the character string that matches the rule. Then, the acquisition unit 55 uses the variable “$ company name $” for acquiring the attribute value from the character string, the character strings “patent analysis corporation”, “software” in the place of “$ product name $”. , “PAT-Analyzer” are acquired as the company name, product name, and unique name, respectively. And the acquisition part 55 adds the acquired record to the table
  • the acquisition unit 55 substitutes the company name into the above rule, and a new rule “Patent Analysis Co., Ltd. . *? $ Product name $ "$ Unique name $" was released ", and using the rules, the character strings" Software "and” PAT-Analyzer "were acquired as the product name and unique name, respectively, as described above May be. And the acquisition part 55 adds the acquired record to the table
  • the acquisition unit 55 sets “ ⁇ Kanji string> corporation” in the rule. Substituting a new rule “ ⁇ Kanji> *? $ Product name $ "$ Unique name $" released "is generated. Then, the acquisition unit 55 acquires the character string that matches the rule. Then, the acquisition unit 55 uses the character string “patent analysis” in the variable “$ company name $”, “$ product name $”, and “$ unique name” for acquiring the attribute value from the character string. "Co., Ltd.”, "Software”, and "PAT-Analyzer” are acquired as the company name, product name, and unique name, respectively.
  • the acquisition unit 55 may acquire the Web page identifier of the Web page that acquired the record when acquiring the record. In this case, the acquisition unit 55 associates the record with the Web page identifier and adds the record to the first table or the second table.
  • the acquisition unit 55 may calculate a score corresponding to the record when acquiring the record.
  • the acquisition unit 55 associates the record with the score and adds the record to the first table or the second table.
  • the acquisition part 55 may calculate the score corresponding to each attribute value which the acquired record has, for example.
  • the acquisition unit 55 associates each attribute value with the score and adds the attribute value to the first table or the second table.
  • the acquisition part 55 may calculate the score corresponding to the said record using the score corresponding to the said each attribute value. The calculation is, for example, calculating an average score corresponding to each attribute value.
  • the acquisition unit 55 associates the record with the score and adds the record to the first table or the second table.
  • the acquisition unit 55 may acquire a score corresponding to the Web page identifier of the Web page that acquired the record from the score storage unit 53. For example, when the URL of the Web page from which the record is acquired is “http://www.webpage.com” and the URL is associated with the score “95” in the score storage unit 53, the acquisition unit 55 Score “95” is acquired. Then, the acquisition unit 55 associates the record with the score and adds the record to the first table or the second table.
  • the acquisition unit 55 may calculate the degree of coincidence between the acquired record and the attribute value condition as a score. In this case, the acquisition unit 55 normally calculates the degree of matching between each attribute value included in the record and the attribute value condition. In this case, the acquisition unit 55 normally calculates the degree of coincidence with the attribute value condition of the same attribute as the attribute of each attribute value.
  • the acquisition unit 55 acquires the matching degree “100”. Further, in this case, when the attribute value condition is an example of the company name “Patent Analysis Co., Ltd.”, the acquisition unit 55 sets the number of characters “7” that matches the example of the company name among the characters of the company name. Then, the number of characters “8” of the company name is acquired, “7 ⁇ 8” is calculated, and the matching degree “0.875” is acquired.
  • the acquisition unit 55 acquires the matching degree “100”.
  • the acquisition unit 55 acquires the degree of match “0” because the company name does not include any katakana characters.
  • the attribute value condition is an example of an attribute value
  • the example of the attribute value is an attribute value normally stored in the dictionary storage unit 54.
  • the attribute value condition is an attribute value pattern
  • the attribute value pattern is normally held by the acquisition unit 55, but may be stored in an arbitrary storage area or a predetermined storage area. Good.
  • the acquisition unit 55 may search the acquired record with a so-called search engine and acquire the number of web pages having the record as a score.
  • the acquired records are the company name “Patent Analysis Co., Ltd.” and the product name “PAT-Analyzer”, and a search engine searches for a Web page having both of the two attribute values. If there is a case, the acquisition unit 55 acquires the number “1,000” as the score.
  • the acquisition unit 55 may acquire, for example, the cumulative acquisition count of the acquired records as a score. Since the method of acquiring the cumulative number of times of acquisition is self-evident, detailed description is omitted.
  • the combining unit 56 combines two or more records included in each of the two or more second tables, and generates a new record that the first table may have. Then, the combining unit 56 adds the generated record to the first table.
  • the first table can have means that it can be a record that the first table has, and means that it has the m attribute values. Specifically, this means that the number of attributes is larger than the number of attributes corresponding to two or more records used when generating a record.
  • the combining unit 56 generates a new record of the first table using, for example, the following method. (1) Two or more records each having two or more different second tables, having the same attribute value of the same attribute, and indicating that the attribute is unique by the unique identifier Join. (2) A record that is included in each of three or more different second tables, and records having two or more identical attribute values of the same attribute are combined.
  • join has the same meaning as a table join (JOIN) in the so-called RDB.
  • combining means that a single attribute value (key) is duplicated in the records to be combined and is associated with the remaining attribute values to generate a new record.
  • (1) is to combine two or more records that meet the following conditions.
  • (A) It has the same attribute as that of other records.
  • (B) The attribute value of the attribute of (a), which has the same attribute value as the attribute value of other records.
  • (C) The attribute of (a) is indicated by a unique identifier.
  • (1) is a combination method when, for example, all records to be combined have a unique identifier as an attribute of the record, and (a) to (c) above are the conditions for performing the combination. (Binding condition).
  • two or more records are combined using an attribute indicated by a unique identifier as a key.
  • (2) is to combine three or more records that meet the following conditions.
  • (A) It has two or more attributes that are the same as those of other two or more records.
  • (B) The attribute value of the attribute of (a), which has the same attribute value as the attribute value of other records.
  • (2) is a combining method when, for example, at least one of the records to be combined does not have a unique identifier, and (a) and (b) This is a condition (binding condition). Further, when performing the combination of (2), the combining unit 56 has three or more records, and the correspondence between two attributes of the three or more records is clear from the three or more records. It is preferable to combine records.
  • the combining unit 56 combines these three records and generates a new record “ABC”.
  • the combining unit 56 combines these three records and generates a new record “ABCD”. In this case, the correspondence between “B” and “D” is not clear from these three records. Therefore, it is preferable that the combining unit 56 does not combine these three records.
  • the combining unit 56 combines these three records and generates a new record “ABBCDE”.
  • the correspondence relationship between “E” and “A” and “E” and “B” is not clear from these three records. Therefore, it is preferable that the combining unit 56 does not combine these three records.
  • the combining unit 56 may generate a new record “ABCD” by combining records that are a part of these three records and whose correspondence is clear.
  • the combining unit 56 may generate a new record by using only a record whose score corresponding to the record is high enough to satisfy a predetermined condition.
  • the condition is normally held by the coupling unit 56, but may be stored in an arbitrary storage area.
  • the combining unit 56 may combine two or more records included in the second table to generate a new record that can be included in the first table, and any combination method or procedure may be used. Moreover, the record which the 2nd table
  • the rule acquisition unit 57 first acquires a character string including one or more records stored in the table storage unit 51 from one or more Web pages. And the rule acquisition part 57 acquires character strings other than the said record among the said character strings as said rule. Then, the rule acquisition unit 57 accumulates the acquired rules in the rule storage unit 52.
  • the rule acquisition unit 57 performs, for example, so-called crawling and acquires one or more Web pages. And the rule acquisition part 57 acquires the web page which has a record from the said web page normally.
  • the rule acquisition unit 57 may acquire one or more Web pages using, for example, a record as a search key and a so-called search engine.
  • the rule acquisition unit 57 acquires a character string that can be said to be a single unit, such as a sentence, a row, or a table in which a record exists, from one or more Web pages acquired as described above.
  • the rule acquisition unit 57 replaces a record existing in the character string acquired as described above with a predetermined variable. Then, the rule acquisition unit 57 acquires the replaced character string as a rule. For example, when a company name exists in the character string, the rule acquisition unit 57 replaces the company name existing in the character string with a variable (for example, “% company name%”) corresponding to the company name. For example, when the product name and the unique name exist in the character string, the rule acquisition unit 57 converts the product name and the unique name that exist in the character string into variables (for example, the product name and the unique name, for example, “$ Product name”, “$ unique name $”).
  • the rule acquisition unit 57 may replace, for example, a character string whose target is self-evident with a predetermined variable.
  • the “character string whose target is self-evident” is, for example, a date, time, day of the week, personal name, and the like.
  • the rule acquisition part 57 may replace character strings other than what is called a verb, a particle, a noun, etc. with the symbol which shows arbitrary 0 or more character strings, for example.
  • the rule acquisition unit 57 may generate a new rule from, for example, the acquired rule and the rule already stored in the rule storage unit 52.
  • the rule acquisition unit 57 normally acquires from the rule storage unit 52 a rule that is so high that the degree of similarity with the acquired rule satisfies a predetermined condition, and sets a common part of the two rules as a new one. Get as a rule. At this time, any part other than the common part may be replaced with an arbitrary symbol indicating zero or more character strings, or may be connected by so-called logical sum.
  • the rule acquisition unit 57 may create a new rule as described above, for example, from two or more acquired rules or from two or more rules already stored in the rule storage unit 52.
  • the rule acquisition unit 57 accumulates the rules acquired as described above in the rule storage unit 52. At this time, the rule acquisition unit 57 normally stores the acquired rule in the rule storage unit 52 in association with the first table or the second table having the record used when the rule is acquired. The rule acquisition unit 57 may accumulate the acquired rules in the rule storage unit 52 so that the correspondence between the acquired rules and the records (a set of attributes) that can be acquired by the rules can be understood. The procedure is not important.
  • the table storage unit 51, the rule storage unit 52, the score storage unit 53, and the dictionary storage unit 54 are preferably non-volatile recording media, but can also be realized by volatile recording media.
  • the acquisition unit 55, the combining unit 56, and the rule acquisition unit 57 can be usually realized by an MPU, a memory, or the like.
  • the processing procedure of the acquisition unit 55 and the like is usually realized by software, and the software is recorded on a recording medium such as a ROM. However, it may be realized by hardware (dedicated circuit).
  • FIG. 7 is a flowchart showing the overall operation of the database construction device 5.
  • Step S2201 The acquisition unit 55 determines whether to acquire a record. If a record is to be acquired, the process proceeds to step S2202, and if not, the process proceeds to step S2203. In addition,
  • Step S2202 The acquisition unit 55 acquires a record. Details of this processing will be described with reference to the flowchart of FIG. Then, the process returns to step S2201.
  • Step S2203 The combining unit 56 determines whether to generate a record. If a record is to be generated, the process proceeds to step S2204; otherwise, the process proceeds to step S2205. In addition,
  • Step S2204 The combining unit 56 generates a record. Details of this processing will be described with reference to the flowchart of FIG. Then, the process returns to step S2201.
  • Step S2205 The rule acquisition unit 57 determines whether to acquire a rule. If a rule is to be acquired, the process proceeds to step S2206. If not, the process returns to step S2201.
  • Step S2206 The rule acquisition unit 57 acquires a rule. Details of this processing will be described with reference to the flowchart of FIG. Then, the process returns to step S2201.
  • the process may be terminated by powering off or a process termination interrupt.
  • step S2201, step S2203, and step S2205 is, specifically, for example, whether the database construction device 5 determines whether or not an instruction (not shown) has received an instruction, For example, the timing (cycle) is determined in advance, and it is determined whether or not the timing is reached.
  • step S2201 the order of the determination in step S2201, the determination in step S2203, and the determination in step S2205 does not matter.
  • FIG. 8 is a flowchart showing the record acquisition process in step S2202.
  • Step S2301 The acquisition unit 55 acquires all the rules stored in the rule storage unit 52. Here, it is assumed that M rules have been acquired.
  • Step S2302 The acquisition unit 55 performs crawling and acquires one or more Web pages from the Web. Here, it is assumed that N Web pages have been acquired.
  • Step S2303 The acquisition unit 55 sets 1 to the counter i.
  • Step S2304 The acquisition unit 55 sets 1 to the counter j.
  • Step S2305 The acquisition unit 55 sets 0 to the variable count.
  • Step S2306 The acquisition unit 55 determines whether a character string that matches the rule [i] exists in the Web page [j]. When it exists, it progresses to step S2307, and when that is not right, it progresses to step S2311.
  • Step S2307 The acquisition unit 55 acquires a character string that matches the rule [i] from the Web page [j].
  • Step S2308 The acquisition unit 55 acquires a record from the acquired character string.
  • Step S2309 The acquisition unit 55 increments count by 1.
  • Step S2310 The acquisition unit 55 sets the acquired record in the variable attrs [count].
  • Step S2311 The acquisition unit 55 determines whether j is N or not. When it is N, it progresses to step 2313, and when that is not right, it progresses to step S2312.
  • Step S2312 The acquisition unit 55 increments j by 1, and returns to Step S2306.
  • Step S2313 The acquisition unit 55 determines whether the count is 1 or more. If it is 1 or more, the process proceeds to step S2314; otherwise, the process proceeds to S2315.
  • Step S2314 The acquisition unit 55 adds attrs to the second table.
  • Step S2315 The acquisition unit 55 determines whether i is M or not. If it is M, the process returns to the upper process, and if not, the process proceeds to step S2316.
  • Step S2316 The acquisition unit 55 increments i by 1, and returns to Step S2304.
  • one or more records are acquired from N Web pages for each rule. Thereby, the acquired record can be added to the second table having the attribute for each attribute of the record acquired using the rule.
  • one or more records are acquired from N Web pages, and all the acquired records are collectively added to the second table. Good.
  • FIG. 9 is a flowchart showing the record generation processing in step S2204.
  • Step S2401 The combining unit 56 acquires all the second tables stored in the table storage unit 51. Here, it is assumed that M records have been acquired.
  • Step S2402 The combining unit 56 sets 1 to the counter i.
  • Step S2403 The combining unit 56 determines whether any of the attributes corresponding to the record [i] has a unique identifier. If so, the process proceeds to step S2404; otherwise, the process proceeds to step S2413.
  • Step S2404 The combining unit 56 acquires the attribute having the unique identifier and the attribute value corresponding to the attribute from the second table having the record [i] and the record [i].
  • Step S2405 The combining unit 56 sets 1 to the counter j.
  • Step S2406 The combining unit 56 determines whether i and j are different. If they are different, the process proceeds to step S2407; otherwise, the process proceeds to step S2409.
  • Step S2407 The combining unit 56 determines whether or not the record [j] has an attribute value corresponding to the attribute acquired in Step S2404 and the same as the attribute value acquired in Step S2404. If so, the process proceeds to step S2408; otherwise, the process proceeds to step S2409.
  • Step S2408 The combining unit 56 combines the record [i] and the record [j].
  • Step S2409) The combining unit 56 determines whether j is M or not. When it is M, it progresses to step S2411, and when that is not right, it progresses to step S2410.
  • Step S2410 The combining unit 56 increments j by 1, and returns to step S2406.
  • Step S2411 The combining unit 56 determines whether i is M or not. If it is M, the process returns to the upper process, and if not, the process proceeds to step S2412.
  • Step S2412 The combining unit 56 increments i by 1, and returns to step S2403.
  • Step S2413 The coupling unit 56 sets 1 to j.
  • Step S2414 The coupling unit 56 sets 1 to the counter k.
  • Step S2415 The combining unit 56 determines whether i, j, and k are different. If they are different, the process proceeds to step S2416; otherwise, the process proceeds to step S2418.
  • Step S2416 The combining unit 56 determines whether the record [i], the record [j], and the record [k] satisfy the combining condition. If so, the process proceeds to step S2417; otherwise, the process proceeds to step S2418.
  • Step S2417 The combining unit 56 combines the record [i], the record [j], and the record [k].
  • Step S2418 The combining unit 56 determines whether k is M or not. When it is M, it progresses to step S2420, and when that is not right, it progresses to S2419.
  • Step S2419 The combining unit 56 increments k by 1, and returns to step S2415.
  • Step S2420 The combining unit 56 determines whether j is M or not. When it is M, it progresses to step S2411, and when that is not right, it progresses to step S2421.
  • Step S2421 The combining unit 56 increments j by 1, and returns to Step S2414.
  • FIG. 10 is a flowchart showing the rule acquisition processing in step S2206.
  • Step S2501 The rule acquisition unit 57 acquires all the records stored in the table storage unit 51. Here, it is assumed that M records have been acquired.
  • Step S2502 The rule acquisition unit 57 performs crawling and acquires one or more Web pages from the Web. Here, it is assumed that N Web pages have been acquired.
  • Step S2503 The rule acquisition unit 57 sets 1 to the counter i.
  • Step S2504 The rule acquisition unit 57 sets 1 to the counter j.
  • Step S2505 The rule acquisition unit 57 sets 0 to the variable count.
  • Step S2506 The rule acquisition unit 57 determines whether or not the character string in which the record [i] exists exists in the Web page [j]. When it exists, it progresses to step S2507, and when that is not right, it progresses to step S2511.
  • Step S2507 The rule acquisition unit 57 acquires the character string in which the record [i] exists from the Web page [j].
  • the rule acquisition unit 57 acquires sentences having all attribute values in the record [i] from the Web page [j].
  • Step S2508 The rule acquisition unit 57 acquires a rule from the acquired character string. Note that the rule acquisition unit 57 configures a rule in which, for example, the attribute value in the record [i] in the character string acquired in step S2507 is replaced with a variable.
  • Step S2509 The rule acquisition unit 57 increments count by 1.
  • Step S2510 The rule acquisition unit 57 sets the rule acquired in step S2508 to the variable rules [count].
  • Step S2511 The rule acquisition unit 57 determines whether j is N or not. When it is N, it progresses to step 2513, and when that is not right, it progresses to step S2512.
  • Step S2512 The rule acquisition unit 57 increments j by 1, and returns to Step S2506.
  • Step S2513 The rule acquisition unit 57 determines whether count is 1 or more. When it is 1 or more, the process proceeds to step S2514. Otherwise, the process proceeds to S2515.
  • Step S2514 The rule acquisition unit 57 accumulates rules in the rule storage unit 52.
  • Step S2515 The rule acquisition unit 57 determines whether i is M or not. If it is M, the process returns to the upper process, and if not, the process proceeds to step S2516.
  • one or more rules are acquired from N Web pages for each record. Thereby, the acquired rule can be accumulated in the rule storage unit 52 for each attribute of the record.
  • the rule storage unit 52 stores the rules shown in FIG.
  • the rule associates an ID (item name: ID) for uniquely identifying each record, a rule (item name: acquisition rule), and an attribute of the record (item name: attribute) that can be acquired by the rule. Have.
  • the acquisition unit 55 acquires all the rules in FIG.
  • the acquisition unit 55 performs crawling, acquires one or more Web pages from the Web, and acquires the Web pages shown in FIGS.
  • the web page in FIG. 12 is a text document
  • the web page in FIG. 13 is an HTML document.
  • the acquisition unit 55 acquires a character string that matches each of the acquired rules from the acquired Web page.
  • the character string “ ⁇ h2> Ryohin Denki Home Appliances Co., Ltd., Full HD TV, Releases BeautyScreen ⁇ / h2>” exists on the 12th line. Therefore, the acquisition unit 55 acquires the two character strings.
  • the acquisition unit 55 uses the rules “$ company name $, $ product name $,” used when acquiring the character string from the acquired character string “Released Ryohin Denki Co., Ltd., Full HD TV, BeautyScreen”.
  • the character string in the variable part indicating the attribute value of “$ unique name $. *? Release” is acquired.
  • the acquisition unit 55 acquires “Ryosan Co., Ltd.” as the company name, “Full HD TV” as the product name, and “BeautyScreen” as the unique name.
  • the acquisition unit 55 uses the rule “ ⁇ h2> $ used when acquiring the character string from the acquired character string“ ⁇ h2> Ryohin Denki Home Appliances Co., Ltd., Full HD TV, Releases BeautyScreen ⁇ / h2> ”.
  • a character string in a variable portion indicating an attribute value of “company name $, $ product name $, $ unique name $. *? Release ⁇ / h2>” is acquired.
  • the acquisition unit 55 acquires “Ryosan Co., Ltd.” as the company name, “Full HD TV” as the product name, and “BeautyScreen” as the unique name.
  • the acquisition unit 55 normally performs a so-called unique process, and finally acquires one record “Ryohin Denki Co., Ltd.
  • the acquisition unit 55 adds the acquired record “Ryohin Denki Co., Ltd.
  • surface which the acquisition part 55 acquired is FIG.
  • the acquisition unit 55 first generates a table having an attribute corresponding to the acquired record and appends the acquired record to the table. To do.
  • the acquisition unit 55 may acquire the URL. Then, the acquisition unit 55 may add the acquired URL to the second table in association with the acquired record.
  • FIG. 15 shows an example of the second table in such a case.
  • the acquisition unit 55 acquires the score “100” corresponding to the URL from the score storage unit 53. Then, the acquisition unit 55 adds the acquired score to the second table in association with the acquired record.
  • FIG. 16 shows an example of the second table in such a case.
  • the table storage unit 51 stores the second table shown in FIGS.
  • Each of the second tables has two attributes and has attribute values of the attributes.
  • the item name “ID” is not usually an attribute value, but may be an attribute value.
  • “*” is a unique identifier, which indicates that the attribute with the unique identifier is unique.
  • the combining unit 56 acquires the second table in FIG. 17 and FIG. 18 having a unique identifier.
  • the combining unit 56 combines the record “Patent Analysis Inc.
  • PAT-Analyzer” with “ID 011” in FIG. 17 and the record “PAT-Analyzer
  • software” with “ID 014” in FIG. , Generate a new record “Patent Analysis Co., Ltd.
  • the combining unit 56 accumulates the generated record “Patent Analysis Co., Ltd.
  • BeautyScreen” with “ID 012” in FIG. 17 and the record “BeautyScreen
  • full HD TV” with “ID 011” in FIG. A good record “Ryohin Denki Co., Ltd.
  • the combining unit 56 performs the combining process because there is no record having the same attribute and attribute value in the record of FIG. Not performed.
  • the combining unit 56 obtains the second table of FIGS. 19, 20, and 21 that does not have a unique identifier.
  • General construction”, and FIG. 20 “ID 011”. Records "General construction
  • 640,000,000 yen” and “ID 011" record "Building Co., Ltd.
  • the table storage unit 51 stores the first table generated in Example 2 and the second table shown in FIGS.
  • the rule acquisition unit 57 performs crawling, acquires one or more Web pages from the Web, and acquires the Web pages shown in FIGS.
  • the rule acquisition unit 57 uses the acquired records in order to acquire one or more rules in which the attribute value appears from the acquired Web pages of FIGS.
  • the rule acquisition unit 57 acquires a character string in which both of the two attribute values that the record has exist from the Web pages of FIGS. 12 and 13.
  • a character string having the record exists on the 12th line and the 13th to 14th lines.
  • a character string having the record exists on the 12th line and the 13th to 14th lines.
  • the rule acquisition unit 57 releases the character strings “Ryohin Denki Home Appliances Co., Ltd., Full HD TV, and BeautyScreen” on the line, “Ryohin Denki Co., Ltd. Announced to be released on October 14, 2011 ",” ⁇ h2> Ryohin Denki Home Appliances Co., Ltd. launches Full HD TV, BeautyScreen ⁇ / h2> ",” ⁇ p> Announced to release HD TV and BeautyScreen on October 14, 2011.
  • variable corresponding to the company name is “% company name%”
  • variable corresponding to the unique name is “% unique name%”.
  • the rule acquisition unit 57 replaces the attribute value in the acquired character string with these variables, and releases the new rules “% company name%, full HD TV,% unique name%”, “% company Name% announced that it will launch a new full HD TV,% proprietary name% on October 14, 2011, " ⁇ h2>% company name%, full HD TV,% unique "Name% released ⁇ / h2>", " ⁇ p>% Company name% announced that it will release a new full HD TV,% proprietary name%, on October 14, 2011 ⁇ / P> ".
  • the rule acquisition unit 57 accumulates the acquired rules in the rule storage unit 52.
  • a structured database can be automatically constructed from a vast amount of unstructured information on the Web.
  • the information stored in the database is automatically combined, and a record having a larger number of attributes than the number of attributes is generated from a record having a small number of attributes, thereby enabling a vast structure on the Web. Knowledge can be proliferated from information that has not been converted to information.
  • the database construction device 5 it is possible to automatically increase the rules for acquiring records.
  • two or more communication means existing in one apparatus may be physically realized by one medium.
  • the database construction device in each of the above embodiments may be, for example, a stand-alone device or a server device in a server / client system.
  • the database may be constructed as an ASP (Application Service Provider).
  • each process or each function may be realized by centralized processing by a single device or a single system, or distributed by a plurality of devices or a plurality of systems. It may be realized by being processed.
  • each component may be configured by dedicated hardware, or a component that can be realized by software may be realized by executing a program.
  • each component can be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or a semiconductor memory.
  • the software that implements the database construction device in each of the above embodiments is the following program. That is, this program has a first table having one or more records having m attribute values (m ⁇ 3) having different attributes on the recording medium, and n items (n ⁇ m ⁇ 1) having different attributes. Two or more second tables having one or more records having attribute values and one or more rules for acquiring one or more records having the n attribute values from one or more Web pages are stored.
  • the computer acquires one or more records having the n attribute values from one or more Web pages, and adds the acquisition unit to the second table, and the two or more second It is a program for combining two or more records in a table, generating one or more records having the m attribute values, and functioning as a combining unit for adding to the first table.
  • the program may be executed by being downloaded from a server or the like, or a program recorded on a predetermined recording medium (for example, an optical disk such as a CD-ROM, a magnetic disk, a semiconductor memory, etc.) is read out. May be executed. Further, this program may be used as a program constituting a program product.
  • a predetermined recording medium for example, an optical disk such as a CD-ROM, a magnetic disk, a semiconductor memory, etc.
  • the computer that executes the program may be singular or plural. That is, centralized processing may be performed, or distributed processing may be performed.
  • FIG. 22 is an overview diagram of the computer system 9 that executes the above-described program to realize the database construction apparatus and the like of the above-described embodiment.
  • the above-described embodiments can be realized by computer hardware and a computer program executed thereon.
  • the computer system 9 includes a computer 901 including a CD-ROM (Compact Disk Only Memory) drive 9011, an FD (Flexible Disk) drive 9012, a keyboard 902, a mouse 903, and a monitor 904.
  • a computer 901 including a CD-ROM (Compact Disk Only Memory) drive 9011, an FD (Flexible Disk) drive 9012, a keyboard 902, a mouse 903, and a monitor 904.
  • CD-ROM Compact Disk Only Memory
  • FD Flexible Disk
  • FIG. 23 is a block diagram of the computer system 9.
  • a computer 901 includes an MPU (Micro Processing Unit) 9013 and a ROM (Read-Only Memory) 9014 for storing a program such as a bootup program.
  • a RAM (Random Access Memory) 9015 connected to the MPU 9013 for temporarily storing instructions of the application program and providing a temporary storage space, and a hard disk 9016 for storing the application program, the system program, and data ,
  • the computer 901 may further include a network card that provides connection to a LAN.
  • a program that causes the computer system 9 to execute the functions of the database construction apparatus and the like of the above-described embodiment is stored in the CD-ROM 9101 or FD 9102, inserted into the CD-ROM drive 9011 or FD drive 9012, and further the hard disk 9016. May be forwarded to.
  • the program may be transmitted to the computer 901 via a network (not shown) and stored in the hard disk 9016.
  • the program is loaded into the RAM 9015 when executed.
  • the program may be loaded directly from the CD-ROM 9101, the FD 9102, or the network.
  • the program does not necessarily include an operating system (OS), a third party program, or the like that causes the computer 901 to execute the functions of the database construction device of the above-described embodiment.
  • the program only needs to include an instruction portion that calls an appropriate function (module) in a controlled manner and obtains a desired result. How the computer system 9 operates is well known and will not be described in detail.
  • the database construction device has an effect that a database can be constructed from a Web page, and is useful as a database construction device or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する第一の表と、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する2以上の第二の表と格納される表格納部と、Webページからn個の属性値を有する1以上のレコードを取得するためのルールが格納されるルール格納部と、ルールに従いWebページからn個の属性値を有する1以上のレコードを取得し、第二の表に追記する取得部と、2以上の第二の表が有する2以上のレコードを結合し、m個の属性値を有するレコードを生成し、第一の表に追記する結合部とを具備するデータベース構築装置により、従来の専門用語抽出装置における、関連性のある2以上の専門用語を抽出したり、専門用語以外の情報を抽出したりすることができないという課題を解決し、Web上のあらゆる情報をデータベース化することができる。

Description

データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法
 本発明は、データベースを構築するデータベース構築装置等に関するものである。
 従来、Webページから専門用語を抽出する専門用語抽出装置等が開発されている(特許文献1参照)。
特開2008-257511号公報
 Web上には、膨大な量のあらゆる情報が存在している。しかしながら、当該情報は構造化されておらず、また、必要な情報が分散した状態で存在しているのが通常である。従来の専門用語抽出装置では、分散した情報を構造化して、データベースを構築することができなかった。
 本第一の発明のデータベース構築装置は、属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する第一の表と、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する2以上の第二の表とが格納される表格納部と、1以上のWebページからn個の属性値を有する1以上のレコードを取得するための1以上のルールが、第二の表に対応付いて格納されるルール格納部と、ルールに従い、1以上のWebページからn個の属性値を有する1以上のレコードを取得し、第二の表に追記する取得部と、2以上の第二の表が有する2以上のレコードを結合し、m個の属性値を有する1以上のレコードを生成し、第一の表に追記する結合部とを具備するデータベース構築装置である。
 このような構成により、1以上のWebページから構造化されたデータベースを構築できる。
 本発明によるデータベース構築装置等によれば、1以上のWebページから構造化されたデータベースを構築できる。
実施の形態1における商標侵害検知装置のブロック図 同実施の形態における商標侵害検知装置の商標類否判断部のブロック図 同実施の形態における商標侵害検知装置の動作の一例を示すフローチャート 同実施の形体における商標侵害検知装置の表示例を示す図 実施の形態2における商標侵害検知装置のブロック図 実施の形態3におけるデータベース構築装置5のブロック図 同実施の形態におけるデータベース構築装置5の全体動作について説明するフローチャート 同レコードの取得処理について説明するフローチャート 同レコードの生成処理について説明するフローチャート 同ルールの取得処理について説明するフローチャート 同ルールの例を示す図 同Webページの例を示す図 同Webページの例を示す図 同第一の表および第二の表の例を示す図 同第一の表および第二の表の例を示す図 同第一の表および第二の表の例を示す図 同第二の表の例を示す図 同第二の表の例を示す図 同第二の表の例を示す図 同第二の表の例を示す図 同第二の表の例を示す図 同実施の形態における同コンピュータシステムの外観の一例を示す図 同実施の形態における同コンピュータシステムの構成の一例を示す図
 以下、データベース構築装置などの実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
 (実施の形態1)
 図1は、本実施の形態における商標侵害検知装置3のブロック図である。商標侵害検知装置3は、データベース31、受付部32、商標類否判断部33、商品類否判断部34、出力部35を備える。
 データベース31は、例えば、データベース構築装置5が構築したデータベースである。データベース31は、「会社名」「商品名」「固有名称」を有する2以上のレコードを保持している表である。なお、商品名は、通常、役務名も含む。なお、「固有名称」は、読みを特定する称呼であることは好適である。また、データベース31は、商品名に対応する類似群コードを保持していることは好適である。
 受付部32は、商標と、商品の類似群コードを特定するコード特定情報とを有する調査対象商標情報を受け付ける。調査対象商標情報は、例えば、商標の文字列である商標文字列と、1以上のコード特定情報の組である。コード特定情報は、類似群コードでも良い。ここでの受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線または無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。
 商標類否判断部33は、データベース31が有する1以上の商品の固有名称と、調査対象商標情報が有する商標との類否判断を行う。かかる類否判断の処理は、商標の類否判断の処理と同様である。商標の類否判断の処理は、公知の方法でも良い。
 図2は、本実施の形態における商標侵害検知装置3の商標類否判断部33のブロック図である。商標類否判断部33は、商標文字列取得部331、称呼取得部332、称呼表示部333、称呼指定受付部334、類似検索部335、商標類否判断結果取得部336を備える。
 商標文字列取得部331は、受付部32が受け付けた商標を取得する。商標を構成する文字は、漢字やアルファベットやカタカナやひらがななど、種類は問わない。
 称呼取得部332は、商標文字列取得部331が受け付けた商標から、この商標の称呼の情報である1以上の称呼情報を取得する。称呼取得部332は、一の商標の文字列から複数の称呼情報を取得しても良い。称呼取得部332が取得する称呼情報は、ひらがなまたはカタカナまたはこれらと同などの情報である。称呼情報がこれらのいずれであるかは、例えば、この称呼情報を検索に利用する後述する類似検索部335の仕様などによって決定される。
 称呼取得部332は、称呼情報をどのように取得しても良い。例えば、称呼取得部332は、1以上の文字列と、当該文字列の読みの情報とを対応付けて有する辞書を用いて、図示しない記憶媒体などに格納されている辞書を用いて商標文字列取得部331が取得した商標に対応する1以上の称呼情報を自動取得するようにしてもよい。また、ユーザなどから図示しない入力デバイスなどを介して入力された商標に対応する1以上の称呼情報を取得してもよい。この実施の形態においては、特に、称呼情報を自動取得する場合を例に挙げて説明する。
 称呼取得部332は、例えば、商標の文字列に対して形態素解析を行い、形態素解析により得られた商標の読みの情報を称呼情報として取得する。例えば、形態素解析を用いることにより、商標を形態素に分解し、分解された各文字列の読みを取得し、この文字列を組み合わせることで商標の称呼情報を取得することが可能である。形態素解析の技術は公知技術である。
 また、称呼取得部332は、商標を構成する漢字や、数字や、アルファベットなどの文字や単語などを読みに変換して、称呼情報を取得しても良い。漢字や、数字の文字や単語を読みに変換する処理は、例えば、日本語のインプットメソッドのいわゆる再変換技術や、上述したような形態素解析システムの技術により実現可能である。また、アルファベットの文字や単語を読みに変換する処理は、例えば、日本語のインプットメソッドのアルファベット列の入力を日本語に変換する技術により実現可能である。なお、アルファベットや、漢字や、数字の称呼(読み)は、一通りとは限らないため、称呼取得部332は、様々な組合せの複数の情報を取得しても良い。例えば「IT」から「アイティー」、「アイティイ」と「イット」という複数の称呼を取得しても良い。
 称呼取得部332は、さらに、取得した1以上の称呼情報を分割して1以上の分割称呼情報を取得してもよい。分割称呼情報は、具体的には、称呼情報の一部分の情報である。分割称呼情報は、例えば、後述する類似検索などで称呼情報と実質的に同じものとして利用される。例えば、称呼取得部332は、取得した称呼情報のそれぞれの文字列を、任意の位置で区切って、その区切った位置によって分割される前または後、またはその両方の文字列を分割称呼情報として取得する。また、称呼取得部332は、文字列の区切る位置を順次変更して、それぞれの区切る位置に応じて分割称呼情報を取得しても良い。例えば、称呼取得部332は、各称呼情報を構成する文字列をそれぞれの文字間で区切っていった場合にそれぞれ得られる区切り位置の前後の文字列を、すべて分割称呼情報として取得しても良い。
 称呼表示部333は、称呼取得部332が取得した1以上の称呼情報を図示しないモニタなどの表示デバイスに表示する。また、称呼表示部333は、称呼取得部332が取得した1以上の分割称呼情報を表示してもよい。称呼表示部333は、表示デバイスを含むと考えても含まないと考えてもよい。称呼表示部333は、表示デバイスのドライバーソフト、または表示デバイスのドライバーソフトと表示デバイスなどで実現され得る。
 称呼指定受付部334は、称呼取得部332が取得した称呼情報の1以上を指定する称呼指定情報を受け付ける。また、称呼指定受付部334は、称呼取得部332が取得した称呼情報と分割称呼情報とのうちの1以上を指定する称呼指定情報を受け付けてもよい。例えば、称呼指定受付部334は、称呼表示部333により表示された称呼情報と分割称呼情報とのうちの1以上を指定する称呼指定情報を受け付ける。称呼指定情報の入力手段は、テンキーやキーボードやマウスやメニュー画面によるものなど、何でも良い。
 類似検索部335は、称呼取得部332が取得した1以上の各称呼情報を用いて、データベース31を検索し、1以上の各称呼情報と類似する1以上の固有名称を取得する。かかる処理を類似検索という。類似検索部335は、称呼取得部332が取得した称呼情報のうちの、称呼指定情報が指定する各称呼情報を用いて類似検索を行うようにしてもよい。また、類似検索部335は、称呼取得部332が取得した各称呼情報と各分割称呼情報とを用いて類似検索を行うようにしてもよい。なお、2つの称呼が類似するか否かを判断する処理は、既存の商標検索システムが行っている処理であり、公知技術である。
 商標類否判断結果取得部336は、例えば、類似検索部335が類似すると判断した固有名称を有するレコードを、データベース31から取得する。
 商品類否判断部34は、データベース31が有する1以上の商品名または1以上の類似群コードと、調査対象商標情報が有するコード特定情報とを用いて、商品の類否判断を行う。商品類否判断部34は、データベース31が有する類似群コードと調査対象商標情報が有するコード特定情報とが一致する場合に、商品が類似である、と判断する。また、商品類否判断部34は、データベース31が有する商品名をキーとして、図示しないデータベースを検索し、類似群コードを取得する。そして、商品類否判断部34は、当該類似群コードと調査対象商標情報が有するコード特定情報とが一致する場合に、商品が類似である、と判断する。なお、データベースは、類似群コードと1以上の商品名が対応付いている。
 出力部35は、商標類否判断部33の判断結果と、商品類否判断部34の判断結果とから、商標の類似、および商品の類似に関する情報を出力する。
 また、出力部35は、商標類否判断部33の判断結果すべてと、商品類否判断部34の判断結果をすべて出力しても良く、どちらか一方であっても良い。
 出力とは、ディスプレイへの表示、プリンタによる紙などへの印字、外部の装置への送信、記録媒体への蓄積などを含む概念である。出力部35は、表示デバイスを含むと考えても含まないと考えてもよい。出力部35は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイスなどで実現され得る。
 図3は、本実施の形態にかかる商標侵害検知装置3の動作の一例を示すフローチャートである。以下、図3を用いて動作について説明する。
 (ステップS1001)受付部32は、調査対象商標情報、具体的には商標文字列と商品名、または類似群コードとを受け付けたか否かを判断する。受け付けた場合、ステップS1002に進み、受け付けていない場合、ステップS1001に戻る。
 (ステップS1002)商標文字列取得部331は、調査対象商標情報から商標文字列を取得する。取得できた場合は、ステップS1003に進み、取得できなかった場合はステップS1017へ進む。
 (ステップS1003)称呼取得部332は、ステップS1002で取得した商標文字列を用いて、1以上の称呼情報を取得する。
 (ステップS1004)称呼取得部332は、カウンタmに1を代入する。
 (ステップS1005)称呼取得部332は、ステップS1003で取得した称呼情報にm番目の称呼情報があるか否かを判断する。ある場合、ステップS1006に進み、ない場合、ステップS1011に進む。
 (ステップS1006)称呼取得部332は、カウンタnに1を代入する。
 (ステップS1007)称呼取得部332は、m番目の称呼情報にn番目の区切位置があるか否かを判断する。n番目の区切位置がある場合、ステップS1008に進み、ない場合、ステップS1010に進む。なお、称呼情報のうちの、商標文字列を構成する各文字の読みの間や、商標文字列を構成する形態素の読みの間を、区切り位置に設定して称呼情報を分割していくようにしても良い。
 (ステップS1008)称呼取得部332は、n番目の区切位置でm番目の称呼情報を区切って、その前後の文字列である分割称呼情報を取得する。
 (ステップS1009)称呼取得部332は、カウンタnを1インクリメントする。そして、ステップS1007に戻る。
 (ステップS1010)称呼取得部332は、カウンタmを1インクリメントする。そして、ステップS1005に戻る。
 (ステップS1011)称呼表示部333は、ステップS1003で取得した称呼情報と、ステップS1008で取得した分割称呼情報を表示する。なお、ユーザに選択させず、特定のルールで呼称指定を選択する場合は、本ステップの表示、およびステップS1012の受付をスキップしても良い。
 (ステップS1012)称呼指定受付部334は、称呼指定情報または分割称呼指定情報の少なくとも一方を指定する称呼指定情報を受け付けたか否かを判断する。受け付けた場合、例えば、称呼指定情報で指定された称呼情報と割称呼情報とをメモリなどの記憶媒体に一時記憶して、ステップS212に進み、受け付けていない場合、ステップS1012に戻る。
 (ステップS1013)類似検索部335は、カウンタkに1を代入する。
 (ステップS1014)類似検索部335は、ステップS1012で受け付けた称呼指定情報によって指定された称呼情報と分割称呼情報とを合わせた中に、k番目の称呼情報または分割称呼情報があるか否かを判断する。ある場合、ステップS1015に進み、ない場合、ステップS1017に進む。
 (ステップS1015)類似検索部335は、k番目の称呼情報または分割称呼情報を用いて、データベース31を検索し、類似検索を行う。そして、類似検索部335は、類似検索の結果を、図示しない記憶媒体などに蓄積する。類似検索の結果は、例えば、類似検索に用いられたk番目の称呼情報と、類似すると判断された称呼と、その称呼に対応付けられた会社名、および商品の固有名称とを含む情報である。
 (ステップS1016)類似検索部335は、カウンタkを1インクリメントする。そして、ステップS1014に戻る。
 (ステップS1017)商品類否判断部34は、データベース31からステップS1001で取得した調査対象商標情報の商品名または類似群コードをキーにして、商品の類否判断を行い、判断結果を、図示しない記憶媒体に蓄積する。
 (ステップS1018)ステップS1015で蓄積した類似検索結果と、ステップS1017で蓄積した情報から、商品の固有名称が共通する情報を取得する。
 (ステップS1019)出力部35は、ステップS1018で取得した情報を出力する。そして処理を終了する。
 以下、本実施の形態における商標侵害検知装置3の具体的な動作について説明する。なお、この具体例において示したデータは、説明のために便宜上用意されたものであって、実際の運用時に使用するものではない。
 まず、ユーザが、中華そばの麺についての「針金麺」という侵害の可能性を判断したいと考えて、「針金麺」という商標文字列と、中華そばの麺の類似群コードである「32F03」を、商標侵害検知装置3にキーボードなどを操作して入力したとする。受付部32は、商標文字列「針金麺」を受け付ける。そして、商標文字列取得部331は商標文字列を取得し、商品類否判断部34は類似群コードを取得する。
 称呼取得部332は、商標文字列取得部331が受け付けた商標文字列「針金麺」の称呼情報を取得する。ここでは、まず、商標文字列に対して形態素解析を行って形態素ごとの読みの情報を取得する。例えば、形態素解析によって「針金麺」は2つの形態素「針金」と「麺」とに分けられ、形態素「針金」からは読みとして「ハリガネ」が、また、形態素「麺」からは読みとして「メン」が取得されたとする。それぞれの形態素には、1つの読みしか取得されないため、「針金麺」の称呼情報の一つとしてこれらの読みを単に結合した「ハリガネメン」を取得する。
 さらに、称呼取得部332は、予め用意された漢字の読みが格納された辞書(図示せず)から、商標文字列「針金麺」の各文字の読みを取得する。例えば、「針」からは「ハリ」、「シン」という読みを取得したとする。また「金」からは、「キン」、「コガネ」、「コン」、「カネ」を取得したとする。また、「麺」からは「メン」を取得したとする。そして、取得した文字の読みを、取得元となる文字の並びに沿って組み合わせることで称呼情報を取得する。例えば、「ハリキンメン」、「ハリコガネメン」、「ハリコンメン」、「ハリカネメン」、「シンキンメン」、「シンコガネメン」などの称呼情報が取得される。なお、形態素解析で取得した称呼情報と一致するものは、削除する。
 次に、称呼取得部332は、上記で取得した各称呼情報を分割して分割称呼情報を取得する。例えば、称呼情報「ハリガネメン」については、まず、区分位置を1文字目の「ハ」と2文字目の「リ」の間に設定して称呼情報を分割することで、「ハ」という分割称呼情報と、「リガネメン」という分割称呼情報とを取得する。更に、区分位置を2文字目の「リ」と3文字目の「ガ」の間に設定して称呼情報を分割することで、「ハリ」という分割称呼情報と、「ガネメン」という分割称呼情報とを取得する。同様にして、「ハリガ」、「ネメン」、「ハリガネ」、「メン」、「ハリガネメ」を取得する。但し「ン」は、分割称呼情報としては取得しない。同様にして、他の称呼情報についても分割称呼情報を取得する。なお、取得した分割称呼情報において、重複するものは一つを除いて削除する。
 そして、称呼表示部333は、取得した称呼情報と分割称呼情報とをモニタなどに出力する。
 図4は、称呼表示部333による、称呼情報と分割称呼情報との表示例を示す図である。なお、ここでは、称呼情報も分割称呼情報も、後述する類似検索においては特に区別せずに利用されるため、称呼情報と分割称呼情報とを特に区別せずに称呼として表示している。
 次に、ユーザが、図4に示した称呼情報と分割称呼情報とのうちの、類似検索に利用したいと考えるものの横のチェックボックスにチェックを入れて、「指定完了」ボタン31を押したとする。例えば、「ハリガネメン」、「ハリガネ」、「ハリキンメン」の横のチェックボックスに図4に示すようにチェックをいれて「指定完了」ボタン31を押すと、称呼指定受付部334は、チェックの入った称呼情報である「ハリガネメン」および「ハリキンメン」と、チェックの入った分割称呼情報である「ハリガネ」を受け付ける。
 次に、類似検索部335は、称呼指定受付部334が受け付けた称呼情報と分割称呼情報とのそれぞれとを用いて、データベース31を検索し、称呼の類似検索を行う。2つの称呼の類否判断(類似検索)については、公知の技術であるので、詳細な具体例は省略する。例えば、類似検索の結果、称呼情報「ハリガネメン」と分割称呼情報「ハリガネ」については、称呼が類似する登録商標が検出されなかったが、称呼情報「ハリキンメン」については、称呼が類似する登録商標が検出されたとする。具体的には、称呼が「ハリキントン」という商品の固有名称が検出されたとする。商標類否判断結果取得部336は、この検出結果を図示しない記憶媒体などに一時記憶する。
 そして、商標類否判断結果取得部336は、類似検索の結果を取得する。
 次に、商品類否判断部34は、類似群コード「32F03」と、前記「ハリキンメン」と対になる類似群コードまたは商品名とを用いて、商品の類否判断を行う。
 そして、出力部35は、商標類否判断部33の判断結果と商品類否判断部34の判断結果とを用いて、商標の類似、および商品の類似に関する情報を出力する。なお、出力部35の出力態様は問わない。
 以上、本実施の形態によれば、商標の侵害検知が行える。また、本実施の形態によれば、特に、Web上の情報を用いて、商標の侵害検知が行える。
 また、本実施の形態において、称呼情報を分割した分割称呼情報を取得して、これを用いた類似検索が行えるようにしたので、ユーザが入力した商標が結合商標である場合は、分離観察や要部観察を行える。
 (実施の形態2)
 本実施の形態において、調査対象商標情報が商品名を保持し、類似群コードを保持していない場合であっても、類似群コードを用いて商品の類否判断ができる商標侵害検知装置について説明する。
 図5は、本実施の形態における商標侵害検知装置4のブロック図である。商標侵害検知装置4は、データベース401、受付部32、商標類否判断部33、商品類否判断部402、出力部35を備える。受付部32、商標類否判断部33、出力部35については、実施の形態1と同様であるため、説明を省略する。
 データベース401は、1以上の図示しないWebサーバ装置から取得した1以上のレコードを格納し得る。レコードは、会社名と商品名と固有名称とを有する。データベース401は、1以上のWebサーバ装置から取得した情報であれば何でもよく、後述するデータベース構築装置5を用いて構築してもよく、無作為、または調査対象商標情報の商品名をキーワードにして検索して収集したWebページから特定のルールを用いて情報を取得して構築してもよい。特定のルールとは、例えば、データベース構築装置5のルール格納部52に格納されるルールなどである。データベース401が有するレコードは、商品名に対応するコード特定情報を含んでいても良い。
 商品類否判断部402は、データベース401が有する1以上の商品名と、調査対象商標情報が有する商品名とを用いて、商品の類否判断を行う。
 商品類否判断部402は、商品コード管理手段4021、コード特定情報取得手段4022、商品類否判断手段4023を備える。
 商品コード管理手段4021は、1以上の商品名とコード特定情報との対応を管理している。ここでのコード特定情報は、例えば、類似群コードである。
 コード特定情報取得手段4022は、商品コード管理手段4021を検索し、調査対象商標情報が有する商品名に対応するコード特定情報を取得する。また、コード特定情報取得手段4022は、データベース401のレコードが有する商品名に対応するコード特定情報を取得しても良い。
 商品類否判断手段4023は、調査対象商標情報が有する商品名に対応するコード特定情報と、データベース401のレコードが有する商品名に対応するコード特定情報とを用いて、商品の類否判断を行う。
 本実施の形態にかかる商標侵害検知装置4の動作は、商標侵害検知装置3における図16のステップS1018の処理のみを変更したものもである。
 以下、本実施の形態における商標侵害検知装置4における商品類否判断部402の具体的な動作について説明する。ここでは、例として、受付部32が受け付けた調査対象商標情報の商品名を「ビール」とし、データベース401には、会社名が「A社」、商品名が「ラガービール」、商品の固有名称が「Bビール」という1組の情報が少なくとも記憶されているものとし、商品コード管理手段4021は、類似群コード「28A02」と商品名「ビール」、類似群コード「28A02」と商品名「ラガービール」という2組の情報が少なくとも記憶されているものとする。
 コード特定情報取得手段4022は、データベース401から、例えば、「ラガービール」を取得する。そして、コード特定情報取得手段4022は、商品コード管理手段4021か管理している情報を用いて、商品名「ラガービール」から類似群コード「28A02」を取得する。次に、コード特定情報取得手段4022は、商品名「ビール」から類似群コード「28A02」を取得する。
 商品類否判断手段4023は、コード特定情報取得手段4022が取得した2つの類似群コードが一致することを検出し、受付部32が受け付けた商品「ビール」と、データベース401の中の商品「Bビール」とが類似する、と判断する。
 以上、本実施の形態によれば、Webサーバ装置から取得した会社名と商品名と固有名称との組に対して、類似群コードを指定しなくても、類似群コードを考慮した商標の類似検索が行える。そのため、商標の侵害状況の判断材料となる情報をユーザに提供することができる。
 また、上記実施の形態1、実施の形態2において、商品類否判断部34、商標文字列取得部331、称呼取得部332、類似検索部335、商標類否判断結果取得部336、コード特定情報取得手段4022、商品類否判断手段4023は、通常、MPUやメモリ等から実現され得る。商品類否判断部34等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
 (実施の形態3)
 本実施の形態において、Webページから2以上のレコードを取得し、当該2以上のレコードから新たなレコードを生成するデータベース構築装置5について説明する。なお、レコードとは、1または2以上の属性値の集合である。なお、レコードを属性値集合と言っても良い。
 なお、本実施の形態において、所定の情報が格納され得る格納部等において、当該格納部に情報が記憶される過程は問わないものとする。例えば、記録媒体を介して情報が格納部等で記憶されるようになってもよい。また、通信回線などを介して送信された情報が格納部等で記憶されるようになってもよい。さらに、入力デバイスを介して入力された情報が格納部等で記憶されるようになってもよい。また、本実施の形態において説明する各情報の形式、内容などは、あくまで例示であり、各情報の持つ意味を示すことができれば、形式、内容などは問わない。
 図6は、本実施の形態におけるデータベース構築装置5のブロック図である。データベース構築装置5は、表格納部51、ルール格納部52、スコア格納部53、辞書格納部54、取得部55、結合部56、ルール取得部57を備える。
 表格納部51には、第一の表と2以上の第二の表とが格納される。第一の表は、属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する。また、第二の表は、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する。つまり、レコードは、一のデータモデルにおけるレコードである。また、第一の表および第二の表は、一のデータモデルにおける1以上のレコードの集合である。例えば、当該データモデルがリレーショナル型データモデルである場合、第一の表および第二の表は、テーブルである。なお、属性、および属性値の内容は問わない。また、2以上の各第二の表の属性値の数は異なっていても良い。つまり、第二の表Aの属性値の数のnと第二の表Bの属性値の数のnとは、異なる数でも良い。
 また、第二の表は、n個の各属性がユニークであるか否かを示すユニーク識別子を有していてもよい。当該ユニーク識別子は、通常、各属性が有しているが、当該ユニーク識別子により、どの属性がユニークであるかが示されてもよい。当該ユニーク識別子は、例えば、いわゆるRDBにおけるユニークキーであるが、主キーであってもよい。
 また、第一の表および第二の表は、レコードに対応するスコアを有していてもよい。当該スコアは、通常、当該レコードの信頼度を示す。また、当該スコアは、レコードが有する各属性値に対応するものであってもよい。
 「レコードの信頼度」とは、当該レコードに対する信頼の度合いを示すものである。「レコードの信頼度」は、例えば、当該レコードを取得したWebページの信頼度や、当該レコードそのものの信頼度などである。「Webページの信頼度」は、例えば、当該WebページがいわゆるオフィシャルサイトのWebページである場合は高く、当該Webページがいわゆるオフィシャルサイト以外のWebページである場合は低いものなどである。また、「レコードそのものの信頼度」は、例えば、当該レコードの取得元であるWebページの信頼度や、当該レコードが有する各属性値と、当該属性値の条件である属性値条件との一致度などである。
 属性値条件とは、例えば、属性値の例や、属性値のパターンなどである。つまり、「属性値条件との一致度」とは、当該レコードが有する各属性値と、当該属性値の属性と同一の属性の属性値の例との一致度や、当該レコードが有する各属性値と、当該属性値の属性と同一の属性の属性値のパターンとの一致度などである。なお、属性値の例とは、属性値そのものである。また、属性値のパターンとは、例えば、属性値が予め決められた文字を含むことや、属性値が漢字列であること、属性値がカタカナ列であること、属性値がひらがな列であること、属性値が数値であることなどを示すものなどである。
 なお、「レコードの信頼度」は、「レコードの精度」や、「レコードの確度」と呼んでもよい。また、当該スコアは、レコードまたは当該レコードが有する各属性値に対応するスコアであり、当該レコードまたは当該属性値が信頼できるか否か、正しいか否かなどを判断できるものであれば、その内容は問わない。
 ルール格納部52には、1以上のルールが格納される。当該ルールとは、1以上のWebページから、上記m個または上記n個の属性値を有する1以上のレコードを取得するためのルールである。
 ルールは、Webページが有するHTML(Hyper Text Markup Language)を解釈して得られるテキスト文書(例えば、いわゆるWebブラウザが表示するWebページ)から、1以上のレコードを取得するためのルールや、いわゆるHTML文書であるWebページから、1以上のレコードを取得するためのルールなどである。
 また、ルールは、通常、正規表現であるが、例えば、いわゆる文字列のパターンや、タグのパターン、URI(Uniform Resource Identifier)のパターン、これら3つのパターンのうちの2以上のパターンの組み合わせなどであってもよい。また、ルールは、その他の表記や表現であってもよい。また、ルールは、通常、属性値を取得することを示す変数を有している。当該変数は、属性に対応するものである。
 例えば、Webページがテキスト文書である場合、ルールは、(1)「$会社名$は、.*?$商品名$、$固有名称$を発売しました」や、(2)「%固有名称%:%商品名%」、(3)「会社概要<改行>社名|&会社名&<改行>設立|&設立年月日&」などである。(1)は、会社名と、商品名と、固有名称とを取得するためのルールである。(1)において、例えば、「$会社名$」は、当該箇所にある文字列を会社名として取得することを示す変数である。また、「.*?」は、正規表現である。また、(2)は、固有名称と、商品名とを取得するためのルールである。(2)において、例えば、「%固有名称%」は、当該箇所にある文字列を固有名称として取得することを示す変数である。また、(3)は、会社名と、設立年月日を取得するためのルールである。(3)において、例えば、「&設立年月日&」は、当該箇所にある文字列を設立年月日として取得することを示す変数である。また、「<改行>」は、改行を示す。
 また、例えば、WebページがHTML文書である場合、ルールは、(4)「<p>$会社名$は、.*?$商品名$、$固有名称$を発表しました</p>」や、(5)「<td>%固有名称%:</td><td>%商品名%</td>」、(6)「<div.*?>会社概要</div><br><div.*?>社名</div><div.*?>&会社名&</div><br><div.*?>設立</div><div.*?>&設立年月日&</div>」などである。なお、当該(4)~(6)の意味は、上記(1)~(3)と同様であるので、説明を省略する。また、当該(4)~(6)の各ルールにおける変数や記号の意味も、上記(1)~(3)と同様であるので、説明を省略する。
 また、ルール格納部52には、上記各変数に対応するパターンが格納されてもよい。当該パターンとは、例えば、当該変数により取得することが示される文字列が、予め決められた文字を含むことや、当該文字列が漢字列であること、当該文字列がカタカナ列であること、当該文字列がひらがな列であること、当該文字列が数値であることなどを示すものなどである。
 また、Webページは、通常、1以上のWebサイトが有するものであり、当該Webサイトを運用するサーバ装置が有する。また、Webページは、データベース構築装置5が備える任意の記憶装置や、記憶領域に格納されていてもよい。また、Webページは、前述のテキスト文書やHTML文書などの文書や、文、段落、文字、文字列、テキストなどを含み、広く解する。
 また、Webページは、当該Webページを識別するWebページ識別子を有していてもよい。当該Webページ識別子は、当該WebページのURLや、Webページのファイル名、Webページのタイトル(HTMLのtitle要素の要素値)、メタ情報(HTMLのmeta要素のkeyword属性値や、description属性値)などである。なお、URLは、いわゆるドメイン名やホスト名などを含み、広く解する。
 また、ルールは、通常、当該ルールにより取得できるレコードを有する第一の表または第二の表に対応付いてルール格納部52に格納されている。これはつまり、ルールと、当該ルールにより取得できるレコードに対応する1以上の属性、または当該レコードを有し得る表との対応関係がわかるように格納されているということである。
 スコア格納部53には、Webページ識別子が対応付けられた1以上のスコアが格納される。当該スコアは、Webページのスコアであり、通常、当該Webページの信頼度を示すものである。
 辞書格納部54には、属性ごとの1以上の属性値の集合である1以上の辞書が格納される。辞書は、属性値の例の集合であると考えてもよい。また、一の辞書は、通常、一の属性の1以上の属性値の集合である。また、辞書格納部54には、1以上の属性値のパターンが格納されてもよい。この場合、属性値のパターンは、通常、当該属性値の属性と対応付いている。
 取得部55は、ルール格納部52に格納されている1以上のルールに従い、1以上のWebページから、1以上のレコードを取得する。このとき、取得部55は、通常、当該1以上のWebページから、当該1以上のルールに合致する文字列を取得する。そして、取得部55は、取得した文字列から、使用したルールが有する1以上の変数の箇所にある文字列を、属性値として取得する。そして、取得部55は、当該取得した1以上のレコードを、表格納部51に蓄積する。当該蓄積とは、第一の表または第二の表に追記することである。
 例えば、ルールに従い上記m個の属性値を有する1以上のレコードを取得した場合、取得部55は、当該レコードに対応する属性を有する第一の表に、当該取得したレコードを追記する。また、例えば、ルールに従い上記n個の属性値を有する1以上のレコードを取得した場合、取得部55は、当該レコードに対応する属性を有する表に、当該取得したレコードを追記する。当該表は、通常、第二の表である。
 また、取得部55は、ルール格納部52に格納されている1以上のルールが有する変数に、当該変数が対応する属性の属性値であり、表格納部51に格納されている1以上の属性値を代入し、新たなルールを生成し、当該ルールに従い、1以上のWebページから1以上のレコードを取得してもよい。
 また、取得部55は、ルール格納部52に格納されている1以上のルールが有する変数に、当該変数のパターンであり、ルール格納部52に格納されているパターンを代入し、新たなルールを生成し、当該ルールに従い、1以上のWebページから1以上のレコードを取得してもよい。
 また、取得部55は、通常、いわゆるクローリングを行い、いわゆるWebから1以上のWebページを取得する。また、例えば、1以上のWebページが任意の記憶領域に格納されている場合、取得部55は、当該記憶領域から、1以上のWebページを取得する。
 例えば、1以上のWebページに文字列『特許分析株式会社は、特許明細書の分析を行うソフトウェア「PAT-Analyzer」を発売した』が存在しており、ルールが『$会社名$は、.*?$商品名$「$固有名称$」を発売した』である場合、取得部55は、まず、当該ルールに合致する当該文字列を取得する。そして、取得部55は、当該文字列から、属性値を取得するための変数「$会社名$」や、「$商品名$」の箇所にある文字列「特許分析株式会社」、「ソフトウェア」、「PAT-Analyzer」を、それぞれ、会社名、商品名、固有名称として取得する。そして、取得部55は、会社名、商品名、固有名称の3つの属性を有する表に、取得したレコードを追記する。
 また、例えば、会社名「特許分析株式会社」が既に表格納部51に格納されている場合、取得部55は、当該会社名を上記ルールに代入し、新たなルール『特許分析株式会社は、.*?$商品名$「$固有名称$」を発売した』を生成し、当該ルールを用いて、上記と同様に文字列「ソフトウェア」、「PAT-Analyzer」を、それぞれ、商品名、固有名称として取得してもよい。そして、取得部55は、商品名、固有名称の3つの属性を有する表に、取得したレコードを追記する。
 また、例えば、上記の場合において、変数「$会社名$」に対応するパターンが「<漢字列>株式会社」であるとき、取得部55は、上記ルールに「<漢字列>株式会社」を代入し、新たなルール『<漢字列>株式会社は、.*?$商品名$「$固有名称$」を発売した』を生成する。そして、取得部55は、当該ルールに合致する上記文字列を取得する。そして、取得部55は、当該文字列から、属性値を取得するための変数「$会社名$」や、「$商品名$」や、「$固有名称」の箇所にある文字列「特許分析株式会社」、「ソフトウェア」、「PAT-Analyzer」を、それぞれ、会社名、商品名、固有名称として取得する。
 また、取得部55は、例えば、レコードの取得の際に、当該レコードを取得したWebページが有するWebページ識別子を取得してもよい。この場合、取得部55は、当該レコードと、当該Webページ識別子とを対応付け、第一の表または第二の表に追記する。
 また、取得部55は、例えば、レコードの取得の際に、当該レコードに対応するスコアを算出してもよい。この場合、取得部55は、当該レコードと、当該スコアとを対応付け、第一の表または第二の表に追記する。また、取得部55は、例えば、取得したレコードが有する各属性値に対応するスコアを算出してもよい。この場合、取得部55は、当該各属性値と、当該スコアとを対応付け、第一の表または第二の表に追記する。また、取得部55は、当該各属性値に対応するスコアを用いて、当該レコードに対応するスコアを算出してもよい。当該算出とは、例えば、各属性値に対応するスコアの平均を算出することなどである。この場合、取得部55は、当該レコードと、当該スコアとを対応付け、第一の表または第二の表に追記する。
 例えば、取得部55は、レコードを取得したWebページが有するWebページ識別子に対応するスコアを、スコア格納部53から取得してもよい。例えば、レコードを取得したWebページのURLが「http://www.webpage.com」であり、当該URLがスコア格納部53においてスコア「95」と対応付いている場合、取得部55は、当該スコア「95」を取得する。そして、取得部55は、当該レコードと、当該スコアとを対応付け、第一の表または第二の表に追記する。
 また、例えば、取得部55は、取得したレコードと、属性値条件との一致度を、スコアとして算出してもよい。この場合、取得部55は、通常、当該レコードが有する各属性値と、当該属性値条件との一致度を算出する。また、この場合、取得部55は、通常、当該各属性値の属性と同一の属性の属性値条件との一致度を算出する。
 例えば、当該レコードが有する属性値が会社名「特許分析株式会社」であるとする。この場合において、属性値条件が会社名の例「特許分析株式会社」であるとき、当該会社名と会社名の例が一致するので、取得部55は、一致度「100」を取得する。また、この場合において、属性値条件が会社名の例「特許解析株式会社」であるとき、取得部55は、当該会社名の文字のうち当該会社名の例と一致している文字数「7」と、当該会社名の文字数「8」を取得し、「7÷8」を計算し、一致度「0.875」を取得する。また、この場合において、属性値条件が会社名のパターン「漢字列」であるとき、当該会社名が漢字列であるので、取得部55は、一致度「100」を取得する。また、この場合において、属性値条件が会社名のパターン「カタカナ列」であるとき、当該会社名がカタカナを1文字も有さないため、取得部55は、一致度「0」を取得する。
 なお、属性値条件が属性値の例である場合、当該属性値の例は、通常、辞書格納部54に格納されている属性値である。また、属性値条件が属性値のパターンである場合、当該属性値のパターンは、通常、取得部55が保持しているが、任意の記憶領域または予め決められた記憶領域に格納されていてもよい。
 また、取得部55は、例えば、取得したレコードを、いわゆる検索エンジンにて検索し、当該レコードを有するWebページの件数をスコアとして取得してもよい。例えば、取得したレコードが会社名「特許分析株式会社」と商品名「PAT-Analyzer」であり、当該2個の属性値の両方を有するWebページを検索エンジンにて検索した結果、「1,000」件存在する場合、取得部55は、当該件数「1,000」をスコアとして取得する。
 また、取得部55は、例えば、取得したレコードの累積取得回数をスコアとして取得してもよい。当該累積取得回数の取得の方法は自明であるので、詳細な説明を省略する。
 結合部56は、2以上の各第二の表が有する2以上のレコードを結合し、第一の表が有し得る新たなレコードを生成する。そして、結合部56は、生成したレコードを、第一の表に追記する。ここで、「第一の表が有し得る」とは、第一の表が有するレコードになり得ることを意味し、上記m個の属性値を有することを意味する。具体的には、レコードを生成する際に用いた2以上のレコードに対応する属性の数よりも、属性の数が多いことを意味する。
 例えば、結合部56は、上記m個の属性値を有するレコードを、上記n個(2つの表のnは異なり、それぞれn1とn2でも良い。)の属性値を有する2つのレコードを結合し、生成し、当該レコードを、第一の表に追記する。なお、通常、「m=n1+n2-1」である。
 また、結合部56は、例えば、以下の方法を用いて、第一の表の新たなレコードを生成する。
(1)2以上の異なる第二の表の各々が有するレコードであり、同一の属性の同一の属性値を有し、かつ当該属性が前記ユニーク識別子によりユニークであることが示される2以上のレコードを結合する。
(2)3以上の異なる第二の表の各々が有するレコードであり、同一の属性の同一の属性値を2以上有するレコードを結合する。
 なお、結合とは、いわゆるRDBにおけるテーブルの結合(JOIN)と同意義である。つまり、結合とは、結合の対象となるレコードにおいて重複する属性値(キー)を1つにし、残りの属性値と対応付け、新たなレコードを生成することである。
 (1)は、以下の条件に合致する2以上のレコードを結合することである。
(a)他のレコードの属性と同一の属性を有する。
(b)(a)の属性の属性値であり、他のレコードが有する属性値と同一の属性値を有する。
(c)(a)の属性がユニーク識別子によりユニークであることが示される。
 なお、(1)は、例えば、結合の対象となるレコードのすべてが、当該レコードの属性がユニーク識別子を有する場合の結合方法であり、上記(a)~(c)は、当該結合を行う条件(結合条件)である。また、(1)では、ユニーク識別子によりユニークであることが示される属性をキーに、2以上のレコードを結合する。
 また、(2)は、以下の条件に合致する3以上のレコードを結合することである。
(a)他の2以上のレコードの属性と同一の属性を2以上有する。
(b)(a)の属性の属性値であり、他のレコードが有する属性値と同一の属性値を有する。
 なお、(2)は、例えば、結合の対象となるレコードの少なくとも1つが、当該レコードの属性がユニーク識別子を有さない場合の結合方法であり、上記(a)、(b)は、当該結合を行う条件(結合条件)である。また、結合部56は、(2)の結合を行う場合、3以上のレコードであり、当該3以上のレコードの2個ずつの属性の対応関係が、当該3以上のレコードから明らかであるようなレコードを結合することが好適である。
 例えば、属性値「A」、「B」、「C」のいずれかを有する3つのレコード「A-B」、「B-C」、「C-A」があるとする。これら3つの各レコードは、他の2つのレコードが有する属性値と同一の属性値を、2以上有する。従って、結合部56は、これら3つのレコードを結合し、新たなレコード「A-B-C」を生成する。
 また、例えば、属性値「A」、「B」、「C」、「D」のいずれかを有する3つのレコード「A-B-C」、「C-D」、「D-A」があるとする。これら3つの各レコードは、他の2つのレコードが有する属性値と同一の属性値を、2以上有する。従って、結合部56は、これら3つのレコードを結合し、新たなレコード「A-B-C-D」を生成する。なお、この場合、これら3つのレコードからは、「B」と「D」との対応関係が明らかではない。従って、結合部56は、これら3つのレコードを結合しないことが好適である。
 また、例えば、属性値「A」、「B」、「C」、「D」のいずれかを有する3つのレコード「A-B」、「B-C」、「C-D」があるとする。これら3つのレコードのうち、「C-D」は、他の2つのレコードが有する属性値と同一の属性値を2以上有さない。従って、結合部56は、これら3つのレコードを結合しない。これは、つまり、「A」と「D」との対応関係が明らかではない状態で、「A」と「D」との対応関係を構築することを防ぐためである。
 また、例えば、属性値「A」、「B」、「C」、「D」、「E」のいずれかを有する3つのレコード「A-B-C」、「A-B-D」、「C-D-E」があるとする。これら3つの各レコードは、他の2つのレコードが有する属性値と同一の属性値を、2以上有する。従って、結合部56は、これら3つのレコードを結合し、新たなレコード「A-B-C-D-E」を生成する。なお、この場合、これら3つのレコードからは、「E」と「A」、「E」と「B」との対応関係が明らかではない。従って、結合部56は、これら3つのレコードを結合しないことが好適である。しかし、結合部56は、これら3つのレコードの一部であり、対応関係が明らかであるレコードを結合し、新たなレコード「A-B-C-D」を生成してもよい。
 なお、以上について、便宜上、属性値のみで説明したが、通常、当該属性値の属性も同一でないと結合は行わない。
 また、結合部56は、例えば、当該レコードに対応するスコアが、予め決められた条件を満たすほど高いレコードのみを用いて、新たなレコードを生成してもよい。当該条件は、通常、結合部56が保持しているが、任意の記憶領域に格納されていてもよい。
 なお、結合部56は、第二の表が有する2以上のレコードを結合し、第一の表が有し得る新たなレコードを生成すればよく、当該結合の方法や手順などは問わない。また、当該生成の元となる第二の表が有するレコードは、表格納部51に格納されているものであれば何でもよい。例えば、結合部56は、取得部55が取得した2以上のレコードを結合してもよいし、結合部56が生成した2以上のレコードを結合してもよいし、取得部55が取得したレコードまたは結合部56が生成したレコードのうちの2以上のレコードを結合してもよい。
 ルール取得部57は、まず、1以上のWebページから、表格納部51に格納されている1以上のレコードが存在する文字列を取得する。そして、ルール取得部57は、当該文字列のうち、当該レコード以外の文字列を前記ルールとして取得する。そして、ルール取得部57は、当該取得したルールを、ルール格納部52に蓄積する。
 ルール取得部57は、例えば、いわゆるクローリングを行い、1以上のWebページを取得する。そして、ルール取得部57は、通常、当該Webページから、レコードを有するWebページを取得する。また、ルール取得部57は、例えば、レコードを検索キーとし、いわゆる検索エンジンを用いて、1以上のWebページを取得してもよい。
 また、ルール取得部57は、例えば、上記の様にして取得した1以上のWebページから、レコードが存在する文や、行、表など、1つのまとまりと言える文字列を取得する。
 また、ルール取得部57は、例えば、上記の様にして取得した文字列に存在するレコードを、予め決められた変数に置換する。そして、ルール取得部57は、当該置換後の文字列を、ルールとして取得する。例えば、当該文字列に会社名が存在する場合、ルール取得部57は、当該文字列に存在する会社名を、当該会社名に対応する変数(例えば、「%会社名%」)に置換する。また、例えば、当該文字列に商品名および固有名称が存在する場合、ルール取得部57は、当該文字列に存在する商品名および固有名称を、当該商品名および固有名称に対応する変数(例えば、「$商品名」、「$固有名称$」)に置換する。
 また、ルール取得部57は、例えば、対象が自明である文字列を、予め決められた変数に置換してもよい。「対象が自明である文字列」は、例えば、日付や、時刻、曜日、人名などである。また、ルール取得部57は、例えば、いわゆる動詞や、助詞、名詞など以外の文字列を、任意の0以上の文字列を示す記号に置換してもよい。
 また、ルール取得部57は、例えば、取得したルールと、ルール格納部52に既に格納されているルールとから、新たなルールを生成してもよい。この場合、ルール取得部57は、通常、取得したルールとの類似度が予め決められた条件を満たすほど高いルールを、ルール格納部52から取得し、当該2つのルールの共通部分を、新たなルールとして取得する。なお、このとき、共通部分以外は、任意の0以上の文字列を示す記号に置換してもよいし、いわゆる論理和で連結してもよい。また、ルール取得部57は、例えば、取得した2以上のルールから、またはルール格納部52に既に格納される2以上のルールから上記のような新たなルールを作成してもよい。
 また、ルール取得部57は、上記の様にして取得したルールを、ルール格納部52に蓄積する。このとき、ルール取得部57は、通常、取得したルールを、当該ルールを取得した際に用いたレコードを有する第一の表または第二の表に対応付けて、ルール格納部52に蓄積する。なお、ルール取得部57は、取得したルールと、当該ルールにより取得できるレコード(属性の集合)との対応関係がわかるように、取得したルールをルール格納部52に蓄積すればよく、その方法や手順などは問わない。
 なお、表格納部51、ルール格納部52、スコア格納部53、辞書格納部54は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
 また、取得部55、結合部56、ルール取得部57は、通常、MPUやメモリ等から実現され得る。取得部55等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現してもよい。
 次に、データベース構築装置5の動作について説明する。なお、所定の情報におけるi番目の情報は、「情報[i]」と記載するものとする。図7は、データベース構築装置5の全体動作を示すフローチャートである。
 (ステップS2201)取得部55は、レコードを取得するか否かを判断する。レコードを取得する場合はステップS2202に進み、そうでない場合はステップS2203に進む。なお、
 (ステップS2202)取得部55は、レコードを取得する。この処理の詳細は、図8のフローチャートを用いて説明する。そして、ステップS2201に戻る。
 (ステップS2203)結合部56は、レコードを生成するか否かを判断する。レコードを生成する場合は、ステップS2204に進み、そうでない場合は、ステップS2205に進む。なお、
 (ステップS2204)結合部56は、レコードを生成する。この処理の詳細は、図9のフローチャートを用いて説明する。そして、ステップS2201に戻る。
 (ステップS2205)ルール取得部57は、ルールを取得するか否かを判断する。ルールを取得する場合はステップS2206に進み、そうでない場合はステップS2201に戻る。
 (ステップS2206)ルール取得部57は、ルールを取得する。この処理の詳細は、図10のフローチャートを用いて説明する。そして、ステップS2201に戻る。
 なお、図7のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
 また、ステップS2201、ステップS2203、およびステップS2205における判断は、具体的には、例えば、データベース構築装置5が、図示しない受付部が該当する指示を受け付けたか否か判断することや、該当する動作のタイミング(周期)が予め決められており、当該タイミングになったか否かを判断することなどである。
 また、図7のフローチャートにおいて、ステップS2201の判断、ステップS2203の判断、ステップS2205の判断の順序は問わない。
 図8は、ステップS2202のレコードの取得処理を示すフローチャートである。
 (ステップS2301)取得部55は、ルール格納部52に格納されているすべてのルールを取得する。ここで、M個のルールが取得できたものとする。
 (ステップS2302)取得部55は、クローリングを行い、Webから1以上のWebページを取得する。ここで、N個のWebページが取得できたものとする。
 (ステップS2303)取得部55は、カウンタiに1をセットする。
 (ステップS2304)取得部55は、カウンタjに1をセットする。
 (ステップS2305)取得部55は、変数countに0をセットする。
 (ステップS2306)取得部55は、ルール[i]に合致する文字列が、Webページ[j]に存在するか否かを判断する。存在する場合は、ステップS2307に進み、そうでない場合は、ステップS2311に進む。
 (ステップS2307)取得部55は、ルール[i]に合致する文字列を、Webページ[j]から取得する。
 (ステップS2308)取得部55は、取得した文字列からレコードを取得する。
 (ステップS2309)取得部55は、countを1インクリメントする。
 (ステップS2310)取得部55は、変数attrs[count]に、取得したレコードをセットする。
 (ステップS2311)取得部55は、jがNであるか否かを判断する。Nである場合は、ステップ2313に進み、そうでない場合は、ステップS2312に進む。
 (ステップS2312)取得部55は、jを1インクリメントし、ステップS2306に戻る。
 (ステップS2313)取得部55は、countが1以上であるか否かを判断する。1以上である場合は、ステップS2314に進み、そうでない場合は、S2315に進む。
 (ステップS2314)取得部55は、第二の表にattrsを追記する。
 (ステップS2315)取得部55は、iがMであるか否かを判断する。Mである場合は、上位処理にリターンし、そうでない場合は、ステップS2316に進む。
 (ステップS2316)取得部55は、iを1インクリメントし、ステップS2304に戻る。
 なお、図8のフローチャートにおいて、一のルールごとに、N個のWebページから1以上のレコードを取得している。これにより、当該ルールを用いて取得したレコードの属性ごとに、取得したレコードを、当該属性を有する第二の表に追記することができる。
 また、図8のフローチャートにおいて、M個のすべての各ルールについて、N個のWebページから1以上のレコードを取得し、当該取得したすべてのレコードを、一括で第二の表に追記してもよい。
 図9は、ステップS2204のレコードの生成処理を示すフローチャートである。
 (ステップS2401)結合部56は、表格納部51に格納されているすべての第二の表を取得する。ここで、M個のレコードが取得できたものとする。
 (ステップS2402)結合部56は、カウンタiに1をセットする。
 (ステップS2403)結合部56は、レコード[i]に対応する属性のいずれかが、ユニーク識別子を有するか否かを判断する。有する場合は、ステップS2404に進み、そうでない場合は、ステップS2413に進む。
 (ステップS2404)結合部56は、レコード[i]を有する第二の表、およびレコード[i]から、ユニーク識別子を有する属性、および当該属性に対応する属性値を取得する。
 (ステップS2405)結合部56は、カウンタjに1をセットする。
 (ステップS2406)結合部56は、iとjが異なるか否かを判断する。異なる場合は、ステップS2407に進み、そうでない場合は、ステップS2409に進む。
 (ステップS2407)結合部56は、レコード[j]が、ステップS2404で取得した属性に対応し、かつステップS2404で取得した属性値と同一である属性値を有するか否かを判断する。有する場合は、ステップS2408に進み、そうでない場合は、ステップS2409に進む。
 (ステップS2408)結合部56は、レコード[i]とレコード[j]とを結合する。
 (ステップS2409)結合部56は、jがMであるか否かを判断する。Mである場合は、ステップS2411に進み、そうでない場合は、ステップS2410に進む。
 (ステップS2410)結合部56は、jを1インクリメントし、ステップS2406に戻る。
 (ステップS2411)結合部56は、iがMであるか否かを判断する。Mである場合は、上位処理にリターンし、そうでない場合は、ステップS2412に進む。
 (ステップS2412)結合部56は、iを1インクリメントし、ステップS2403に戻る。
 (ステップS2413)結合部56は、jに1をセットする。
 (ステップS2414)結合部56は、カウンタkに1をセットする。
 (ステップS2415)結合部56は、iとjとkとが異なるか否かを判断する。異なる場合は、ステップS2416に進み、そうでない場合は、ステップS2418に進む。
 (ステップS2416)結合部56は、レコード[i]とレコード[j]とレコード[k]とが、結合条件を満たすか否かを判断する。満たす場合は、ステップS2417に進み、そうでない場合は、ステップS2418に進む。
 (ステップS2417)結合部56は、レコード[i]とレコード[j]とレコード[k]とを結合する。
 (ステップS2418)結合部56は、kがMであるか否かを判断する。Mである場合は、ステップS2420に進み、そうでない場合は、S2419に進む。
 (ステップS2419)結合部56は、kを1インクリメントし、ステップS2415に戻る。
 (ステップS2420)結合部56は、jがMであるか否かを判断する。Mである場合は、ステップS2411に進み、そうでない場合は、ステップS2421に進む。
 (ステップS2421)結合部56は、jを1インクリメントし、ステップS2414に戻る。
 なお、図9のフローチャートにおいて、2以上のレコードが、ユニーク識別子を有する場合の結合条件を満たすか否かを判断し、満たす場合は、当該2以上のレコードを結合するようにしてもよい。
 また、図9のフローチャートにおいて、3以上のレコードが、ユニーク識別子を有さない場合の結合条件を満たすか否かを判断し、満たす場合は、当該3以上のレコードを結合するようにしてもよい。
 図10は、ステップS2206のルールの取得処理を示すフローチャートである。
 (ステップS2501)ルール取得部57は、表格納部51に格納されているすべてのレコードを取得する。ここで、M個のレコードが取得できたものとする。
 (ステップS2502)ルール取得部57は、クローリングを行い、Webから1以上のWebページを取得する。ここで、N個のWebページが取得できたものとする。
 (ステップS2503)ルール取得部57は、カウンタiに1をセットする。
 (ステップS2504)ルール取得部57は、カウンタjに1をセットする。
 (ステップS2505)ルール取得部57は、変数countに0をセットする。
 (ステップS2506)ルール取得部57は、レコード[i]が存在する文字列が、Webページ[j]に存在するか否かを判断する。存在する場合は、ステップS2507に進み、そうでない場合は、ステップS2511に進む。
 (ステップS2507)ルール取得部57は、レコード[i]が存在する文字列を、Webページ[j]から取得する。ここで、ルール取得部57は、レコード[i]の中のすべての属性値を有する文をWebページ[j]から取得する。
 (ステップS2508)ルール取得部57は、取得した文字列からルールを取得する。なお、ルール取得部57は、例えば、ステップS2507で取得した文字列の中の、レコード[i]の中の属性値を変数に置き換えたルールを構成する。
 (ステップS2509)ルール取得部57は、countを1インクリメントする。
 (ステップS2510)ルール取得部57は、変数rules[count]に、ステップS2508で取得したルールをセットする。
 (ステップS2511)ルール取得部57は、jがNであるか否かを判断する。Nである場合は、ステップ2513に進み、そうでない場合は、ステップS2512に進む。
 (ステップS2512)ルール取得部57は、jを1インクリメントし、ステップS2506に戻る。
 (ステップS2513)ルール取得部57は、countが1以上であるか否かを判断する。1以上である場合は、ステップS2514に進み、そうでない場合は、S2515に進む。
 (ステップS2514)ルール取得部57は、ルール格納部52にrulesを蓄積する。
 (ステップS2515)ルール取得部57は、iがMであるか否かを判断する。Mである場合は、上位処理にリターンし、そうでない場合は、ステップS2516に進む
 なお、図10のフローチャートにおいて、一のレコードごとに、N個のWebページから1以上のルールを取得している。これにより、当該レコードの属性ごとに、当該取得したルールを、ルール格納部52に蓄積することができる。
 また、図10のフローチャートにおいて、M個のすべての各レコードについて、N個のWebページから1以上のルールを取得し、当該取得したすべてのルールを、一括でルール格納部52に蓄積してもよい。
 (具体例)
 次に、データベース構築装置5の動作の具体例について説明する。
 (例1:レコードの取得)
 本例において、ルール格納部52には、図11に示すルールが格納されているものとする。当該ルールは、各レコードを一意に特定するためのID(項目名:ID)と、ルール(項目名:取得ルール)と、当該ルールにより取得できるレコードの属性(項目名:属性)とを対応付けて有する。
 まず、取得部55は、図11のすべてのルールを取得する。
 次に、取得部55は、クローリングを行い、Webから1以上のWebページを取得し、図12および図13に示すWebページを取得したものとする。図12のWebページは、テキスト文書であり、図13のWebページは、HTML文書である。
 次に、取得部55は、取得したルールの各々に合致する文字列を、取得したWebページから取得する。ここで、図12のテキスト文書には、図11の「ID=011」のルール「$会社名$、$商品名$、$固有名称$を.*?発売」に合致する文字列「株式会社良品家電、フルHDテレビ、BeautyScreenを発売」が、12行目に存在する。また、図13のHTML文書には、図11の「ID=021」のルール「<h2>$会社名$、$商品名$、固有名称$を.*?発売</h2>」に合致する文字列「<h2>株式会社良品家電、フルHDテレビ、BeautyScreenを発売</h2>」が、12行目に存在する。従って、取得部55は、当該2つの文字列を取得する。
 次に、取得部55は、取得した文字列「株式会社良品家電、フルHDテレビ、BeautyScreenを発売」から、当該文字列を取得した際に用いたルール「$会社名$、$商品名$、$固有名称$を.*?発売」が有する属性値を示す変数の箇所にある文字列を取得する。そして、取得部55は、会社名として「株式会社良品家電」、商品名として「フルHDテレビ」、固有名称として「BeautyScreen」を取得する。また、取得部55は、取得した文字列「<h2>株式会社良品家電、フルHDテレビ、BeautyScreenを発売</h2>」から、当該文字列を取得した際に用いたルール「<h2>$会社名$、$商品名$、$固有名称$を.*?発売</h2>」が有する属性値を示す変数の箇所にある文字列を取得する。そして、取得部55は、会社名として「株式会社良品家電」、商品名として「フルHDテレビ」、固有名称として「BeautyScreen」を取得する。
 なお、当該取得した2つのレコードが重複しているため、取得部55は、通常、いわゆるユニーク処理を行い、最終的に1つのレコード「株式会社良品家電|フルHDテレビ|BeautyScreen」を取得する。
 次に、取得部55は、取得したレコード「株式会社良品家電|フルHDテレビ|BeautyScreen」を、第二の表に追記する。取得部55が取得した第二の表の例は、図14である。なお、表格納部51に当該レコードに対応する属性を有する表が存在しない場合、取得部55は、まず、取得したレコードに対応する属性を有する表を生成し、当該表に取得したレコードを追記する。
 また、例えば、図12のWebページのURLが「http://official.beautyscreen.com」であったとする。この場合、取得部55は、当該URLを取得してもよい。そして、取得部55は、当該取得したURLを、取得したレコードと対応付けて、第二の表に追記してもよい。かかる場合の第二の表の例は、図15である。
 また、例えば、スコア格納部53に、URL「http://official.beautyscreen.com」とスコア「100」とを対応付けて有するWebページスコア管理情報が格納されているとする。この場合、取得部55は、上記URLに対応するスコア「100」を、スコア格納部53から取得する。そして、取得部55は、当該取得したスコアを、取得したレコードと対応付けて、第二の表に追記する。かかる場合の第二の表の例は、図16である。
 (例2:レコードの生成)
 本例において、表格納部51には、図17から図21に示す第二の表が格納されているものとする。当該第二の表は、それぞれ、2つの属性を有し、かつ当該属性の属性値を有する。また、当該第二の表において、項目名「ID」は、通常、属性値ではないが、属性値としてもよい。また、図17と図18の第二の表において、「*」はユニーク識別子であり、当該ユニーク識別子が付された属性がユニークであることを示す。
 まず、結合部56は、ユニーク識別子を有する図17と図18の第二の表を取得する。
 次に、結合部56は、図17の「ID=011」の固有名称「PAT-Analyzer」と同一の属性および属性値を有するレコードである図18の「ID=014」のレコード「PAT-Analyzer|ソフトウェア」を取得する。そして、結合部56は、図17の「ID=011」のレコード「特許分析株式会社|PAT-Analyzer」と、図18の「ID=014」のレコード「PAT-Analyzer|ソフトウェア」とを結合し、新たなレコード「特許分析株式会社|PAT-Analyzer|ソフトウェア」を生成する。
 次に、結合部56は、生成したレコード「特許分析株式会社|PAT-Analyzer|ソフトウェア」を、第一の表が有するレコードとして、表格納部51に蓄積する。このとき、結合部56は、図17に示すような表の形式にて、レコードを生成する。また、このとき、例えば、表格納部51に当該レコードに対応する属性を有する表が存在しない場合、結合部56は、まず、生成したレコードに対応する属性を有する表を生成し、当該表に取得したレコードを追記する。
 次に、結合部56は、上記と同様に、図17の「ID=012」の固有名称「BeautyScreen」と同一の属性および属性値を有するレコードである図18の「ID=011」のレコード「BeautyScreen|フルHDテレビ」を取得する。そして、結合部56は、図17の「ID=012」のレコード「株式会社良品家電|BeautyScreen」と、図18の「ID=011」のレコード「BeautyScreen|フルHDテレビ」とを結合し、新たなレコード「株式会社良品家電|BeautyScreen|フルHDテレビ」を生成する。そして、結合部56は、上記と同様に、生成したレコード「株式会社良品家電|BeautyScreen|フルHDテレビ」を表格納部51に蓄積する。なお、結合部56は、ここで処理を終了しても良い。
 また、結合部56は、図17の「ID=013」と「ID=014」のレコードについては、図18のレコードにおいて、同一の属性および属性値を有するレコードが存在しないので、結合の処理を行わない。
 次に、結合部56は、ユニーク識別子を有さない図19と図20と図21の第二の表を取得する。
 次に、結合部56は、取得した第二の表の各々から、レコードを1つずつ取得し、3つのレコードの組み合わせを生成する。例えば、図23の「ID=011」のレコード、図20の「ID=011」のレコード、図21の「ID=011」のレコードを取得し、これら3つのレコードの組み合わせ『「特許分析株式会社|情報サービス」、「電気機械器具製造|760,000千円」、「株式会社建築物|640,000千円」』を生成したとする。当該組み合わせは、結合条件を満たさないので、結合部56は、何も行わない。
 次に、結合部56は、上記と同様に、レコードの組み合わせを生成するために、図19の「ID=013」のレコード「株式会社建築物|総合工事」、図20の「ID=011」のレコード「総合工事|640,000千円」、図21の「ID=011」のレコード「株式会社建築物|640,000千円」を取得し、レコードの組み合わせ『「株式会社建築物|総合工事」、「総合工事|640,000千円」、「株式会社建築物|640,000千円」』を生成したとする。当該組み合わせは、結合条件を満たすので、結合部56は、当該レコードを結合し、新たなレコード「株式会社建築物|総合工事|640,000千円」を生成する。そして、結合部56は、上記と同様に、生成したレコードを表格納部51に蓄積する。
 (例3:ルールの取得)
 本例において、表格納部51には、例2にて生成した第一の表、および図17から図21に示す第二の表が格納されているものとする。
 まず、ルール取得部57は、クローリングを行い、Webから1以上のWebページを取得し、図12および図13に示すWebページを取得したものとする。
 次に、ルール取得部57は、取得したレコードを順に用いて、取得した図12と図13のWebページから、当該属性値が出現する1以上のルールを取得する。ここで、例えば、ルール取得部57は、図17の「ID=012」のレコード「株式会社良品家電|BeautyScreen」を用いるとする。すると、ルール取得部57は、当該レコードが有する2つの属性値の両方が存在する文字列を、図12と図13のWebページから取得する。図12のテキスト文書には、当該レコードを有する文字列が、12行目と、13行目から14行目に掛けて存在する。また、図13のHTML文書には、当該レコードを有する文字列が、12行目と、13行目から14行目に掛けて存在する。従って、ルール取得部57は、当該行に存在する文字列「株式会社良品家電、フルHDテレビ、BeautyScreenを発売」、「株式会社良品家電は、新型のフルHDテレビ、BeautyScreenを、<改行>2011年10月14日に発売することを発表しました」、「<h2>株式会社良品家電、フルHDテレビ、BeautyScreenを発売</h2>」、「<p>株式会社良品家電は、新型のフルHDテレビ、BeautyScreenを、<改行>2011年10月14日に発売することを発表しました</p>」を取得する。
 ここで、会社名に対応する変数を「%会社名%」、固有名称に対応する変数を「%固有名称%」とする。次に、ルール取得部57は、取得した文字列中の属性値を、これらの変数で置換し、新たなルール「%会社名%、フルHDテレビ、%固有名称%を発売」、「%会社名%は、新型のフルHDテレビ、%固有名称%を、<改行>2011年10月14日に発売することを発表しました」、「<h2>%会社名%、フルHDテレビ、%固有名称%を発売</h2>」、「<p>%会社名%は、新型のフルHDテレビ、%固有名称%を、<改行>2011年10月14日に発売することを発表しました</p>」を取得する。
 なお、取得したルールが有する「フルHDテレビ」は、第二の表から、商品名であることが明らかである。また、取得したルールが有する「2011年10月14日」は、その書式から日付であることが明らかである。従って、ルール取得部57は、これらの商品名、日付を、これらに対応する変数に置換したルール「%会社名%、%商品名%、%固有名称%を発売」、「%会社名%は、新型の%商品名%、%固有名称%を、<改行>%日付%に発売することを発表しました」、「<h2>%会社名%、%商品名%、%固有名称%を発売</h2>」、「<p>%会社名%は、新型の%商品名%、%固有名称%を、<改行>%日付%に発売することを発表しました</p>」を取得してもよい。
 次に、ルール取得部57は、当該取得したルールを、ルール格納部52に蓄積する。
 以上、本実施の形態によれば、Web上の膨大で構造化されていない情報から、構造化されたデータベースを自動構築できる。
 また、本実施の形態によれば、データベース化した情報を自動的に結合し、属性数の少ないレコードから、当該属性数よりも属性数の多いレコードを生成することにより、Web上の膨大で構造化されていない情報から、知識を増殖できる。
 また、本実施の形態によるデータベース構築装置5によれば、レコードを取得する際のルールを、自動的に増やすことができる。
 また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されてもよいことは言うまでもない。
 また、上記各実施の形態におけるデータベース構築装置は、例えば、スタンドアロンの装置であってもよいし、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、例えば、ASP(Application Service Provider)としてデータベースの構築が行われてもよい。
 また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよいし、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
 また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよいし、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
 また、上記各実施の形態におけるデータベース構築装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する第一の表と、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する2以上の第二の表と、1以上のWebページから前記n個の属性値を有する1以上のレコードを取得するための1以上のルールが格納されており、コンピュータを、前記ルールに従い、1以上のWebページから前記n個の属性値を有する1以上のレコードを取得し、前記第二の表に追記する取得部と、前記2以上の第二の表が有する2以上のレコードを結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する結合部として機能させるためのプログラムである。
 なお、上記プログラムにおいて、ハードウェアでしか行われない処理は少なくとも含まれない。
 また、上記プログラムは、サーバなどからダウンロードされることによって実行されてもよいし、所定の記録媒体(例えば、CD-ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
 また、上記プログラムを実行するコンピュータは、単数であってもよいし、複数であってもよい。つまり、集中処理を行ってもよいし、あるいは分散処理を行ってもよい。
 また、図22は、前述のプログラムを実行して、前述の実施の形態のデータベース構築装置等を実現するコンピュータシステム9の概観図である。前述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。
 図22において、コンピュータシステム9は、CD-ROM(Compact Disk Read Only Memory)ドライブ9011、FD(Flexible Disk)ドライブ9012を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
 図23は、コンピュータシステム9のブロック図である。図23において、コンピュータ901は、CD-ROMドライブ9011、FDドライブ9012に加えて、MPU(Micro Processing Unit)9013と、ブートアッププログラム等のプログラムを記憶するためのROM(Read-Only Memory)9014と、MPU9013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM(Random Access Memory)9015と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク9016と、CD-ROMドライブ9011、FDドライブ9012、MPU9013等を相互に接続するバス9017とを備える。ここでは図示しないが、コンピュータ901は、さらに、LANへの接続を提供するネットワークカードを備えていてもよい。
 コンピュータシステム9に、前述の実施の形態のデータベース構築装置等の機能を実行させるプログラムは、CD-ROM9101、またはFD9102に記憶されて、CD-ROMドライブ9011またはFDドライブ9012に挿入され、さらにハードディスク9016に転送されてもよい。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク9016に記憶されてもよい。プログラムは実行の際にRAM9015にロードされる。プログラムは、CD-ROM9101、FD9102またはネットワークから直接、ロードされてもよい。
 プログラムは、コンピュータ901に、前述の実施の形態のデータベース構築装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいればよい。コンピュータシステム9がどのように動作するかは周知であり、詳細な説明は省略する。
 本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
 以上のように、本発明にかかるデータベース構築装置は、Webページからデータベースを構築できるという効果を有し、データベース構築装置等として有用である。
 3、4 商標侵害検知装置
 5 データベース構築装置
 9 コンピュータシステム
 31、401 データベース
 32 受付部
 33 商標類否判断部
 34、402 商品類否判断部
 35 出力部
 51 表格納部
 52 ルール格納部
 53 スコア格納部
 54 辞書格納部
 55 取得部
 56 結合部
 57 ルール取得部
 331 商標文字列取得部
 332 称呼取得部
 333 称呼表示部
 334 称呼指定受付部
 335 類似検索部
 336 商標類否判断結果取得部
 4021 商品コード管理手段
 4022 コード特定情報取得手段
 4023 商品類否判断手段

Claims (11)

  1. 属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する第一の表と、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する2以上の第二の表とが格納される表格納部と、
    1以上のWebページから前記n個の属性値を有する1以上のレコードを取得するための1以上のルールが、前記第二の表に対応付いて格納されるルール格納部と、
    前記ルールに従い、1以上のWebページから前記n個の属性値を有する1以上のレコードを取得し、前記第二の表に追記する取得部と、
    前記2以上の第二の表が有する2以上のレコードを結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する結合部とを具備するデータベース構築装置。
  2. 前記ルール格納部には、
    1以上のWebページから前記m個の属性値を有する1以上のレコードを取得するための1以上のルールが、前記第一の表に対応付いて格納され、
    前記取得部は、
    前記ルールに従い、1以上のWebページから前記m個の属性値を有する1以上のレコードを取得し、前記第一の表に追記する請求項1記載のデータベース構築装置。
  3. 前記表格納部には、
    属性がユニークであるか否かを示すユニーク識別子を有する前記第二の表が格納され、
    前記結合部は、
    前記2以上の異なる第二の表の各々が有するレコードであり、同一の属性の同一の属性値を有し、かつ当該属性が前記ユニーク識別子によりユニークであることが示される2以上のレコードを、当該属性値をキーに結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する請求項1記載のデータベース構築装置。
  4. 前記結合部は、
    前記3以上の異なる第二の表の各々が有するレコードであり、同一の属性の同一の属性値を2以上有するレコードを、当該属性値をキーに結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する請求項1記載のデータベース構築装置。
  5. 前記Webページは、当該Webページを識別するWebページ識別子を有し、
    前記取得部は、
    前記1以上のレコードを取得する際に、Webページが有するWebページ識別子をも取得し、当該1以上のレコードに対応付けて当該Webページ識別子を前記第一の表または第二の表に追記する請求項1記載のデータベース構築装置。
  6. 前記1以上のWebページから、前記表格納部に格納されている1以上のレコードが存在する文字列を取得し、当該文字列のうち、当該レコード以外の文字列を前記ルールとして取得し、前記ルール格納部に蓄積するルール取得部をさらに具備する請求項1記載のデータベース構築装置。
  7. 前記ルール取得部は、
    取得した1以上のルールを、当該ルールを取得した際に用いたレコードを有する前記第一の表または第二の表に対応付けて、前記ルール格納部に蓄積する請求項6記載のデータベース構築装置。
  8. 前記結合部は、
    前記表格納部に格納されている2以上の第二の表が有するレコードであり、前記取得部が取得したレコードまたは前記属性値生成部が生成したレコードのうちの2以上のレコードを結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する請求項1記載のデータベース構築装置。
  9. 請求項1記載のデータベース構築装置を用いて構築したデータベースであり、会社名と、商品名または類似群コードと、固有名称とを有するレコードを1以上格納しているデータベースと、
    商標と、商品の類似群コードを特定するコード特定情報とを有する調査対象商標情報を受け付ける受付部と、
    前記データベースが有する1以上の各レコードの固有名称と、調査対象商標情報が有する商標との類否判断を行う商標類否判断部と、
    前記データベースが有する1以上の商品名または1以上の類似群コードと、調査対象商標情報が有するコード特定情報とを用いて、商品の類否判断を行う商品類否判断部と、
    前記商標類否判断部の判断結果と、前記商品類否判断部の判断結果とから、商標の類似および商品の類似に関する情報を出力する出力部とを具備する商標侵害検知装置。
  10. 記録媒体に、
    属性の異なるm個(m≧3)の属性値を有する1以上のレコードを有する第一の表と、属性の異なるn個(n≦m-1)の属性値を有する1以上のレコードを有する2以上の第二の表と、
    1以上のWebページから前記n個の属性値を有する1以上のレコードを取得するための1以上のルールが格納されており、
    取得部と、結合部とを用いて行われるデータベース構築方法であって、
    前記取得部が、前記ルールに従い、1以上のWebページから前記n個の属性値を有する1以上のレコードを取得し、前記第二の表に追記する取得ステップと、
    前記結合部が、前記2以上の第二の表が有する2以上のレコードを結合し、前記m個の属性値を有する1以上のレコードを生成し、前記第一の表に追記する結合ステップとを具備するデータベース構築方法。
  11. 記録媒体に、
    請求項1記載のデータベース構築装置を用いて構築したデータベースであり、会社名と、商品名または類似群コードと、固有名称とを有するレコードを1以上格納しているデータベースが格納されており、
    受付部、商標類否判断部、商品類否判断部、および出力部とを用いて行われる商標侵害検知方法であって、
    前記受付部が、商標と、商品の類似群コードを特定するコード特定情報とを有する調査対象商標情報を受け付ける受付ステップと、
    前記商標類否判断部が、前記データベースが有する1以上の各レコードの固有名称と、調査対象商標情報が有する商標との類否判断を行う商標類否判断ステップと、
    前記商品類否判断部が、前記データベースが有する1以上の商品名または1以上の類似群コードと、調査対象商標情報が有するコード特定情報とを用いて、商品の類否判断を行う商品類否判断ステップと、
    前記出力部が、前記商標類否判断ステップにおける判断結果と、前記商品類否判断ステップにおける判断結果とから、商標の類似および商品の類似に関する情報を出力する出力ステップとを具備する商標侵害検知方法。
PCT/JP2012/061187 2011-04-28 2012-04-26 データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法 WO2012147840A1 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011-100439 2011-04-28
JP2011100439 2011-04-28
JP2011287601 2011-12-28
JP2011-287601 2011-12-28

Publications (1)

Publication Number Publication Date
WO2012147840A1 true WO2012147840A1 (ja) 2012-11-01

Family

ID=47072355

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/061187 WO2012147840A1 (ja) 2011-04-28 2012-04-26 データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法

Country Status (2)

Country Link
JP (2) JP5312637B2 (ja)
WO (1) WO2012147840A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5253668B1 (ja) * 2012-11-14 2013-07-31 有限会社アイ・アール・ディー データベース構築装置、データベース構築方法、およびプログラム
CN107045545A (zh) * 2017-03-30 2017-08-15 山东省农业科学院 一种花生种植信息数据库构建系统
JP2022003486A (ja) * 2020-06-23 2022-01-11 株式会社Ipsign 侵害情報抽出システム、方法及びプログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6578693B2 (ja) * 2015-03-24 2019-09-25 日本電気株式会社 情報抽出装置、情報抽出方法、及び、表示制御システム
JP6626016B2 (ja) * 2017-01-11 2019-12-25 日本電信電話株式会社 照合装置、照合方法及び照合プログラム
CN108509597B (zh) * 2018-04-02 2022-01-28 浙江知夫子信息科技有限公司 文字商标注册成功率评估方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006023878A (ja) * 2004-07-07 2006-01-26 Quin Land Co Ltd データ抽出システム
JP2006065651A (ja) * 2004-08-27 2006-03-09 Toshiba Corp 商標称呼検索プログラム、商標称呼検索装置及び商標称呼検索方法
JP2011053734A (ja) * 2009-08-31 2011-03-17 Tatsuya Shindo サイト内検索サーバ、サイト内検索サービス方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0589181A (ja) * 1991-08-07 1993-04-09 Res Puro:Kk 商標検索装置
JP2000172705A (ja) * 1998-12-07 2000-06-23 Spec Kk 情報検索装置及び情報検索方法ならびに同方法を実施するためのプログラムを記憶した記録媒体
CN101197040A (zh) * 2006-12-08 2008-06-11 鸿富锦精密工业(深圳)有限公司 商标使用证据管理系统及方法
JP5182767B2 (ja) * 2010-02-16 2013-04-17 トムソン・ロイター・プロフェッショナル株式会社 商標サーバ装置および商標抽出方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006023878A (ja) * 2004-07-07 2006-01-26 Quin Land Co Ltd データ抽出システム
JP2006065651A (ja) * 2004-08-27 2006-03-09 Toshiba Corp 商標称呼検索プログラム、商標称呼検索装置及び商標称呼検索方法
JP2011053734A (ja) * 2009-08-31 2011-03-17 Tatsuya Shindo サイト内検索サーバ、サイト内検索サービス方法、及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHINSUKE IHARA ET AL.: "Development of a Retrieval System for Texts and Images in Blogs", THE TRANSACTIONS OF THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS, vol. J89-D, no. 6, 1 June 2006 (2006-06-01), pages 1236 - 1247 *
TOMOYA NODA ET AL.: "A cooperative architecture for WWW information integration", DAI 43 KAI SPECIAL INTERNET GROUP ON KNOWLEDGE-BASED SOFTWARE SHIRYO (SIG-KBS-9803), 23 March 1999 (1999-03-23), pages 43 - 48 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5253668B1 (ja) * 2012-11-14 2013-07-31 有限会社アイ・アール・ディー データベース構築装置、データベース構築方法、およびプログラム
JP2014099040A (ja) * 2012-11-14 2014-05-29 Ird Corp データベース構築装置、データベース構築方法、およびプログラム
CN107045545A (zh) * 2017-03-30 2017-08-15 山东省农业科学院 一种花生种植信息数据库构建系统
JP2022003486A (ja) * 2020-06-23 2022-01-11 株式会社Ipsign 侵害情報抽出システム、方法及びプログラム

Also Published As

Publication number Publication date
JP2013191243A (ja) 2013-09-26
JP5312637B2 (ja) 2013-10-09
JP2013152692A (ja) 2013-08-08
JP6095222B2 (ja) 2017-03-15

Similar Documents

Publication Publication Date Title
WO2012147840A1 (ja) データベース構築装置、商標侵害検知装置、データベース構築方法、および商標侵害検知方法
JP4398992B2 (ja) 情報検索装置、情報検索方法及び情報検索プログラム
CN102023989B (zh) 一种信息检索方法及其系统
CN105518661B (zh) 经由挖掘的超链接文本的片段来浏览图像
WO2010047286A1 (ja) 検索システム、検索方法およびプログラム
JP5769327B2 (ja) データベース構築装置、商標侵害検知装置、データベース構築方法、およびプログラム
JP2007287134A (ja) 情報抽出装置、及び情報抽出方法
KR20160124079A (ko) 인-메모리 데이터베이스 탐색을 위한 시스템 및 방법
EP2400438A1 (en) Module and method for searching named entity of terms from the named entity database using named entity database and mining rule merged ontology schema.
JP2006285513A (ja) 情報処理支援システム及び情報処理支援プログラム
Haider et al. CSV2RDF: Generating RDF data from CSV file using semantic web technologies
JP4882040B2 (ja) 情報処理装置、情報処理システム、およびプログラム
US20140358522A1 (en) Information search apparatus and information search method
KR101476225B1 (ko) 자연어 및 수식 색인화 방법과 그를 위한 장치 및 컴퓨터로 읽을 수 있는 기록매체
JP2005242416A (ja) 自然言語文の検索方法および検索装置
JP2007249421A (ja) 情報分類装置
JP2008003656A (ja) 概念辞書生成装置、文書分類装置、概念辞書生成方法および文書分類方法
JP2007128224A (ja) 文書インデキシング装置、文書インデキシング方法及び文書インデキシングプログラム
JP2019121164A (ja) 文書作成装置、文書作成方法、データベース構築装置、データベース構築方法、およびプログラム
CN101310274B (zh) 知识相关性搜索引擎
KR101945234B1 (ko) 마지막 알파벳 제거 알고리즘을 이용한 반도체 부품 검색 방법
Bacci et al. Improving public access to legislation through legal citations detection: the linkoln project at the Italian senate
JP4484957B1 (ja) 検索式生成装置、検索式生成方法、およびプログラム
JP4119413B2 (ja) 知識情報収集システム、知識検索システム及び知識情報収集方法
Hong et al. Extracting Web query interfaces based on form structures and semantic similarity

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12776741

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12776741

Country of ref document: EP

Kind code of ref document: A1