WO2001050327A2 - Method and apparatus for flexibly assigning tokenization procedures - Google Patents
Method and apparatus for flexibly assigning tokenization procedures Download PDFInfo
- Publication number
- WO2001050327A2 WO2001050327A2 PCT/US2001/000177 US0100177W WO0150327A2 WO 2001050327 A2 WO2001050327 A2 WO 2001050327A2 US 0100177 W US0100177 W US 0100177W WO 0150327 A2 WO0150327 A2 WO 0150327A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- tokenizing
- document
- instructions
- index
- text
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Definitions
- the present invention relates to indexing structures to facilitate computerized searches through data. More specifically, the present invention relates to a method and an apparatus for flexibly assigning tokenization procedures to convert a document into tokens associated with individual meaning-carrying units of text, such as wordforms or numbers.
- Search engines typically create an "index" of documents (such as web pages) that are available on the world wide web.
- An index typically stores individual words (or other meaning carrying textual strings) in a more compact and easily searchable form known as "tokens.”
- XML Markup Language
- the structure of a document may change over time, which can require the structure of the index to change. For example, suppose the structure of a product catalog is updated to include consumer reviews for individual products. This change may require the index to change to include these consumer reviews.
- ad hoc rules For example, one ad hoc rule is to create an index for all textual information that is not within attribute fields. Unfortunately, such ad hoc rules often include much unimportant information in the index, and often exclude important information.
- relevant portions of a document are converted into tokens associated with individual meaning- carrying units of text, such as wordforms or numbers.
- wordforms are typically delineated by white spaces and punctuation marks.
- the tokenizing process is relatively easy.
- languages such as Japanese have no such delineation. Consequently, the tokenization process depends on contextual information and can be very complicated.
- the tokenization process can also be domain dependent. For example, periods within an email address, such as "person.dept@companyx.com" are linking elements, whereas periods within other textual information typically delineate word and sentence boundaries. Hence, the tokenization process varies between languages and between domains.
- One embodiment of the present invention provides a system that tokenizes text within a document by converting the text into tokens that correspond to individual meaning-carrying units of text in order to facilitate searching through the text.
- the system operates by receiving the document to be tokenized, and retrieving a set of tokenizing instructions associated with the document.
- the system tokenizes the document by translating the document into tokens that correspond to individual meaning- carrying units of text in a manner that is specified by the set of tokenizing instructions.
- tokenizing the document involves using a first set of tokenizing instructions to tokenize a first section of the document, and using a second set of tokenizing instructions to tokenize a second section of the document.
- the set of tokenizing instructions is contained in a plug-in module.
- the set of tokenizing instructions is activated through an object defined within an object-oriented programming system.
- the system additionally uses the tokenized document in generating an index for the document.
- the system makes this index available to a search engine so that the search engine is able to scan through the index.
- the system retrieves the set of tokenizing instructions across a network from a remote address. In one embodiment of the present invention, the set of tokenizing instructions is appended to the document.
- the set of tokenizing instructions is contained in a tokenizing procedure associated with the document.
- the document is received from a client at a tokenizing server.
- the tokenizing server returns the tokenized document to the client.
- the set of tokenizing instructions is provided by a remote service across a network.
- FIG. 1 illustrates a distributed computing system in accordance with an embodiment of the present invention.
- FIG. 2 illustrates how an indexing server creates an index for different document types in accordance with an embodiment of the present invention.
- FIG. 3 illustrates how indexing stylesheets and tokenizing procedures are used to create and index for a document in accordance with an embodiment of the present invention.
- FIG. 4 illustrates an example of the tokenization process.
- FIG. 5 is a flow chart illustrating the process of creating an index in accordance with an embodiment of the present invention.
- FIG. 6 is a flow chart illustrating the process of dynamically creating an updated index for an old document in accordance with an embodiment of the present invention.
- a computer readable storage medium which may be any device or medium that can store code and/or data for use by a computer system.
- the transmission medium may include a communications network, such as the Internet.
- FIG. 1 illustrates a distributed computing system 100 in accordance with an embodiment of the present invention.
- Distributed computing system 100 includes clients 102 and 118, which are coupled to indexing server 112 and search engine 122 through network 110.
- Network 110 can include any type of wire or wireless communication channel capable of coupling together computing nodes. This includes, but is not limited to, a local area network, a wide area network, or a combination of networks. In one embodiment of the present invention, network 110 includes the Internet.
- Clients 102 and 118 can include any node on network 110 including computational capability and including a mechanism for communicating across network 110.
- Indexing server 112 can include any node on a computer network including a mechanism for servicing requests from a client for computational and/or data storage resources. More specifically indexing server 112 includes resources for creating index 116 within database 114 for indexing documents 104-106.
- Database 114 can include any type of mechanism for storing data in nonvolatile form. In one embodiment of the present invention, database 114 includes the ORACLE 8TM database distributed by the Oracle Corporation of Redwood Shores, California.
- Client 118 includes a browser 120 that communicates with search engine 122 in order to scan through index 116. Browser 120 can include any type of web browser capable of viewing a web site, such the INTERNET EXPLORERTM browser distributed by the Microsoft Corporation of Redmond, Washington. Search engine 122 can include any type of computing system or application that is able to search through data.
- indexing server 112 retrieves documents 104-106 from client 102, and uses documents 104-106 to create index 116. Note that client 102 may send documents 104-106 to indexing server 112. Or, alternatively, indexing server 112 can gather documents 104- 106 from client 102.
- Indexing server 112 creates index 116 by tokenizing selected portions of documents 104-106 and by creating index 116 from the tokens.
- client 102 may itself be a server that makes documents 104-106 available over network 110.
- index 116 After index 116 is created, client 118 submits a query 124 to search engine 122 through browser 120.
- Query 124 may specify keywords of interest to a user of client 118.
- search engine 122 searches through index 116 to find documents containing matching keywords within index 116. If such documents are located, search engine 122 returns the documents in a list of query hits 126 to browser 120.
- FIG. 2 illustrates how indexing server 112 creates an index for different document types in accordance with an embodiment of the present invention.
- indexing server 112 receives many different document types from different sources. Indexing server 112 integrates these different document types into index 116.
- index 116 may include a single index containing many different document types. Alternatively, index 116 may contain a different index for each document type.
- FIG. 2 illustrates a news document 202, a product catalog 204, a television programming schedule 206, a document containing user documentation 208 and a document containing financial information 210.
- Each of these different document types can have a different document structure, which can be defined in a language such as XML.
- Each of these different document structures can be associated with a different indexing scheme.
- specific attributes should be included in the index. For example, for some types of user documentation it may be advantageous to index an attribute that indicates whether the user documentation is suitable for a novice user or an expert user.
- FIG. 3 illustrates how stylesheets for indexing and procedures for tokenizing are used to create and index for a document in accordance with an embodiment of the present invention.
- an index building mechanism 310 within indexing server 112 takes as input a document 302 and produces an index 312 for the document 302.
- Index 312 feeds into a larger index 116 for a collection of documents, which is contained within database 114 (from FIG. 1).
- index builder 310 refers to index stylesheet 304 and tokenizing procedures 306-307.
- Index stylesheet 304 contains a set of instructions for creating index 312 for document 302.
- index stylesheet 304 can specify which sections of document 302 should be skipped in producing an index 312.
- Index stylesheet 304 can also specify attributes of document 302 to be included in index stylesheet 304.
- an attribute can specify a minimum security-level for a person to have access to document 302.
- Another attribute can specify a content rating (G, PG-13, PG, R, X) for document 302.
- Tokenizing procedures 306-307 specify how certain portions of document 302 are to be tokenized.
- tokenizing procedure 306 may specify how a first portion of document 302 is to be tokenized, while tokenizing procedure 307 specifies how a second portion of document 302 is to be tokenized.
- tokenizing procedure 307 specifies how a second portion of document 302 is to be tokenized.
- index stylesheet 304 is analogous to format stylesheets that are specified by the XML standard. Format stylesheets are used to specify display attributes, such as font and color, in order to display a XML document. Similarly, index stylesheet 304 specifies how an index for document 302 is to be created. Note that although FIG. 3 illustrates indexing instructions and tokenizing instructions in the form of stylesheets and procedures, other representations are possible.
- indexing and tokenizing instructions can be contained within plug-in modules that can be plugged in to index builder 310. These indexing and tokenizing instructions can also be referenced through an object defined within an object-oriented programming system.
- an index parameter object can include a method that retrieves the instructions for building an index for document 302.
- the tokenizing procedures 306-307 can additionally assume the form of code modules containing tokenization instructions, or may be provided by a remote service across a network.
- index stylesheet 304 may contain references specifying where tokenizing procedures 306-307 can be retrieved from.
- index builder 310 includes standardized interfaces that are able to accept input from many different index stylesheets and tokenizing procedures. This allows index builder 310 to create indexes for many different document types using many different tokenization rules.
- FIG. 4 illustrates an example of the tokenization process.
- a piece of text "MAY 7, 2000” is divided into three tokens 402-404.
- Token 402 contains the word “MAY.”
- Token 403 contains the day number "7”
- token 404 contains the year number "2000.”
- Each of these tokens is associated with a unique token number, and the unique token numbers are used to create the index.
- Using token numbers leads to a more compact representation because token numbers take up less space than large character strings. Furthermore, during the searching process it is easier to lookup a number than a character string. Process of Creating an Index
- FIG. 5 is a flow chart illustrating the process of creating an index in accordance with an embodiment of the present invention.
- the system starts by downloading a configuration file (step 502). This process may involve downloading a configuration file across a network.
- the system parses the configuration file (step 504) and identifies an address of an index stylesheet 304 within the configuration file (step 506).
- the system downloads the index stylesheet 304 from the identified address
- step 508 This may involve retrieving the stylesheet across a network from a location specified by a universal resource locator (URL).
- the stylesheet can be appended to the document, in which case, the index stylesheet can be easily retrieved.
- the system parses the index stylesheet 304 so that the instructions within the index stylesheet can be used during the index creation process (step 510).
- the system similarly identifies an address of a tokenizing procedure 306 (step 512). (Note that the address of tokenizing procedure 306 may be contained within the configuration file, or alternatively, within index stylesheet 304).
- the system downloads tokenizing procedure 306 from the identified address (step 514). In one embodiment of the present invention, tokenizing procedure 306 is retrieved from the same location as the index stylesheet 304. In another embodiment, tokenizing procedure 306 is retrieved from another location.
- the system inputs a number of documents into index 116. This is accomplished by downloading a document into index builder 310 (step 518) and then parsing the document using the instruction specified in index stylesheet 304 (step 520).
- the system converts the parsed document into tokens using tokenizing procedure 306 (step 522) and then creates an index using the tokens (step 524). This process is repeated for each document that is inputted into index 116.
- FIG. 6 is a flow chart illustrating the process of dynamically creating an updated index for a document in accordance with an embodiment of the present invention.
- data has a limited life. For example, in searching for current weather data, old weather data is of no interest.
- one embodiment of the present invention operates as follows.
- the system receives a search request (step 602).
- the system checks document creation dates for any documents that are involved in the search (step 604).
- the system determines that a document is old (by perhaps comparing the age of the document against an age limit)
- the system causes a new version of the document to be generated (for example, by gathering new weather data) (step 606).
- the system creates an index for the new version of the document (step 608). This process implicitly removes the index for the old version of the document (step 610).
- the system performs a search involving the newly updated index.
- the present invention is described in the context of a distributed computing system including clients and servers, the present invention is not necessarily limited to a distributed client-server computing system. In general, the present invention can apply to any system that generates an index for textual information or any system that tokenizes textual information.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01901704A EP1386248A2 (en) | 2000-01-06 | 2001-01-02 | Method and apparatus for flexibly assigning tokenization procedures |
JP2001550618A JP2004501412A (en) | 2000-01-06 | 2001-01-02 | Method and apparatus for flexibly assigning tokenization procedures |
AU27579/01A AU2757901A (en) | 2000-01-06 | 2001-01-02 | Method and apparatus for flexibly assigning tokenization procedures |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17496600P | 2000-01-06 | 2000-01-06 | |
US60/174,966 | 2000-01-06 | ||
US51343800A | 2000-02-25 | 2000-02-25 | |
US09/513,438 | 2000-02-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2001050327A2 true WO2001050327A2 (en) | 2001-07-12 |
WO2001050327A3 WO2001050327A3 (en) | 2003-11-20 |
Family
ID=26870731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2001/000177 WO2001050327A2 (en) | 2000-01-06 | 2001-01-02 | Method and apparatus for flexibly assigning tokenization procedures |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1386248A2 (en) |
JP (1) | JP2004501412A (en) |
AU (1) | AU2757901A (en) |
WO (1) | WO2001050327A2 (en) |
-
2001
- 2001-01-02 JP JP2001550618A patent/JP2004501412A/en not_active Withdrawn
- 2001-01-02 AU AU27579/01A patent/AU2757901A/en not_active Abandoned
- 2001-01-02 EP EP01901704A patent/EP1386248A2/en not_active Ceased
- 2001-01-02 WO PCT/US2001/000177 patent/WO2001050327A2/en not_active Application Discontinuation
Non-Patent Citations (5)
Title |
---|
CHOW J-H ET AL: "Index design for structured documents based on abstraction" DATABASE SYSTEMS FOR ADVANCED APPLICATIONS, 1999. PROCEEDINGS., 6TH INTERNATIONAL CONFERENCE ON HSINCHU, TAIWAN 19-21 APRIL 1999, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, [Online] 19 April 1999 (1999-04-19), pages 89-96, XP010333366 ISBN: 0-7695-0084-6 Retrieved from the Internet: <URL:http://www.cwi.nl/htbin/insl/publicat ions> * |
COOKSON B: "The Indexsheets-the Extensible Indexing Language (XIL) defines indexing based on XSLT/XPath" CONFERENCE PROCEEDINGS. XML 2000. VISION FOR A NEW MILLENNIUM, PROCEEDINGS OF XML 2000. VISION FOR A NEW MILLENNIUM, 3 - 8 December 2000, pages 235-242, XP002253140 Washington, DC * |
KASUKAWA T ET AL: "A new method for maintaining semi-structured data described in XML" COMMUNICATIONS, COMPUTERS AND SIGNAL PROCESSING, 1999 IEEE PACIFIC RIM CONFERENCE ON VICTORIA, BC, CANADA 22-24 AUG. 1999, PISCATAWAY, NJ, USA,IEEE, US, 22 August 1999 (1999-08-22), pages 258-261, XP010356593 ISBN: 0-7803-5582-2 * |
M. WINDHOUWER, A. SCHMIDT, M. KERSTEN: "Acoi: A system for indexing multimedia objects" PROCEEDINGS OF THE FIRST INTERNATIONAL WORKSHOP ON INFORMATION INTEGRATION AND WEB-BASED APPLICATIONS & SERVICES, [Online] 15 - 17 November 1999, pages 1-10, XP002165123 Yogykarta, Indonesia Retrieved from the Internet: <URL:http://www.cwi.nl/htbin/insl/publicat ions> * |
MIKHEEV A ET AL: "XML TOOLS AND ARCHITECTURE FOR NAMED ENTITY RECOGNITION" MARKUP LANGUAGES, MIT PRESS, CAMBRIDGE, MA, US, vol. 1, no. 3, 1999, pages 89-113, XP000863186 ISSN: 1099-6621 * |
Also Published As
Publication number | Publication date |
---|---|
JP2004501412A (en) | 2004-01-15 |
EP1386248A2 (en) | 2004-02-04 |
AU2757901A (en) | 2001-07-16 |
WO2001050327A3 (en) | 2003-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6823492B1 (en) | Method and apparatus for creating an index for a structured document based on a stylesheet | |
US7769757B2 (en) | System for automatically generating queries | |
US6928425B2 (en) | System for propagating enrichment between documents | |
US6778979B2 (en) | System for automatically generating queries | |
US6820075B2 (en) | Document-centric system with auto-completion | |
US7117432B1 (en) | Meta-document management system with transit triggered enrichment | |
US7133862B2 (en) | System with user directed enrichment and import/export control | |
US6732090B2 (en) | Meta-document management system with user definable personalities | |
US6601075B1 (en) | System and method of ranking and retrieving documents based on authority scores of schemas and documents | |
US8510339B1 (en) | Searching content using a dimensional database | |
US6910040B2 (en) | System and method for XML based content management | |
US7058944B1 (en) | Event driven system and method for retrieving and displaying information | |
US6611835B1 (en) | System and method for maintaining up-to-date link information in the metadata repository of a search engine | |
US7558841B2 (en) | Method, system, and computer-readable medium for communicating results to a data query in a computer network | |
EP1225516A1 (en) | Storing data of an XML-document in a relational database | |
US20050022114A1 (en) | Meta-document management system with personality identifiers | |
US20040049495A1 (en) | System and method for automatically generating general queries | |
US7792855B2 (en) | Efficient storage of XML in a directory | |
EP1386248A2 (en) | Method and apparatus for flexibly assigning tokenization procedures | |
Gravano et al. | Starts | |
JPH11184873A (en) | Knowledge application type matching method and device and storage medium storing knowledge application type matching program | |
Trichkov | Distributed search in WAN located databases (repositories) using Z39. 50 protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWE | Wipo information: entry into national phase |
Ref document number: 2001901704 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2001 550618 Kind code of ref document: A Format of ref document f/p: F |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 2001901704 Country of ref document: EP |
|
WWR | Wipo information: refused in national office |
Ref document number: 2001901704 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 2001901704 Country of ref document: EP |