[go: up one dir, main page]

GB2367157A - Search method for job/candidate database - Google Patents

Search method for job/candidate database Download PDF

Info

Publication number
GB2367157A
GB2367157A GB0023492A GB0023492A GB2367157A GB 2367157 A GB2367157 A GB 2367157A GB 0023492 A GB0023492 A GB 0023492A GB 0023492 A GB0023492 A GB 0023492A GB 2367157 A GB2367157 A GB 2367157A
Authority
GB
United Kingdom
Prior art keywords
search
job
candidate
information
skills
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB0023492A
Other versions
GB0023492D0 (en
Inventor
Gillian Chapman
Raghbir Singh
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MYOYSTER PLC
Original Assignee
MYOYSTER PLC
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 MYOYSTER PLC filed Critical MYOYSTER PLC
Priority to GB0023492A priority Critical patent/GB2367157A/en
Publication of GB0023492D0 publication Critical patent/GB0023492D0/en
Publication of GB2367157A publication Critical patent/GB2367157A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A search is conducted through a database of search documents, each including a plurality of searchable components having one or more attributes, by using a search engine which modifies an initial query according to information held within a hierarchical component attribute data store. The data store (23) defines for at least some of the components, a component table (230a, ...., 230i) wherein attributes of components are arranged in a hierarchical structure with each parent node representing a respective attribute and each child node representing a subsidiary attribute and with at least some parent nodes being associated with information identifying the relationship between the parent node and its child node or nodes. In response to the initial search request, the data store is accessed to identify the parent node of a child node specified in the search request and to determine the relationship identifying information for that parent node so as to determine whether or not the attribute represented by the parent node is to be included in the search in dependence upon the relationship identifying information associated with that parent node. Search results may be ranked according to relevance.

Description

RECRUITMENT SERVICES APPARATUS AND METHOD
This invention relates to apparatus and a method for providing recruitment services.
Conventionally, there are two ways in which a potential employer may seek candidates to fill a particular job vacancy. Thus, the potential employer may advertise the vacancy in the general media or specific trade or professional journals, dependent on the vacancy, or may employ the services of a head-hunting agency which, dependent upon the level of seniority of the vacancy, may themselves place advertisements or may use contact information that they have acquired so as to locate likely candidates.
The increasing use and popularity of the Internet and World Wide Web has resulted in a number of job-related web sites which retain a database or links to job vacancies and which allow an individual to conduct a keyword search to identify job vacancies that might be of interest to him. These web-based recruitment services generally conduct searches using a relatively simple keyword matching technique and accordingly may not provide an individual with details of the job for which he is most suited.
Most web-based recruitment services are designed to enable potential employees to locate likely job
vacancies. Although some web-based recruitment services maintain a database of curriculum vitae (CVs) for prospective employees and allow prospective employers to identify potentially suitable employees, again the searches are conducted using relatively simple keyword matching techniques.
It is an aim of the present invention to provide a recruitment services apparatus and a method of providing recruitment services that improve the selection of suitable job vacancies for a potential job candidate and, moreover, facilitate the selection of likely job candidates by a potential employer or agency acting on behalf of the potential employer.
In one aspect, the present invention provides an apparatus for submitting to a search engine instructions to enable a search to be conducted through a database of search documents each including a plurality of searchable components having one or more attributes, the apparatus comprising a data store defining, for at least some of the components, a component table wherein attributes of that component are arranged in a hierarchical structure consisting of parent nodes and child nodes with each parent node representing a respective attribute and each child node representing a subsidiary attribute falling within an area defined by the attribute represented by the parent node and with at least some parent nodes being associated with information identifying the relationship
between the parent node and its child node or nodes wherein search instructing means for instructing the search engine to carry out a search is arranged to include in the search instructions instructions as to whether or not the attribute represented by the parent node is to be included in the search in dependence upon the relationship identifying information associated with that parent node.
The present invention also provides a data store for use in such apparatus.
In one aspect, the present invention provides searching apparatus which uses a taxonomic data structure and wherein an attribute represented by a parent node may be included in a search only if all of the attributes represented by its child nodes are also present or may be included in a search if the attribute represented by any of the child nodes is also present.
In one aspect, the present invention provides searching apparatus arranged to define a search attribute as essential or preferred and to cause the search engine to return only search documents including the essential attribute or attributes and to rank the returned search documents in accordance the preferred attributes.
A user may or may not be allowed to specify that an attribute is essential or preferred.
In one aspect, the present invention provides searching apparatus comprising saving means for saving a user's search request and control means for causing the search to be repeated at a later time and the new search results provided to the user.
In an embodiment, a data store defines components that may form part of a curriculum vitae (CV) or a job description and attributes represent information that may be presented in a CV or job description for those components. The components may include at least some of: job level; functional area; industry sector; company size; language; degree; professional qualification; skills; location; willingness to travel; working hours; salary; keywords describing the person or job.
In one aspect, the present invention provides searching apparatus arranged to instruct a search engine to omit certain CVs from the search in dependence upon at least one of information provided by a client, information provided by a candidate indicating that they do not wish to be head-hunted or the status of the candidate, In one aspect, the present invention provides personal profile providing means for providing a personal profile for a job candidate.
In one aspect, the present invention provides skill extracting means for extracting a candidate's skills from a CV submitted by the candidate.
In one aspect the present invention provides skills adding means for adding additional skills to skills identified from or in information provided by a candidate by using predetermined rules which may be determined by a taxonomic skills database. The present invention also provides a taxonomic skills database including information indicating when a parent skill can be added to an identified child skill.
In one aspect, the present invention provides apparatus for submitting to a search engine search instructions to enable a search to be conducted through a database of searchable documents each including a plurality of searchable components having one or more attributes, the apparatus comprising means for instructing a search engine to carry out a search such that search documents having all of the essential attributes are returned and these are ranked in accordance with preferred attributes.
In one aspect, the present invention provides apparatus for determining which, if any, of the jobs for which information is stored in a jobs database may be suitable for a particular candidate, which apparatus comprises means for comparing terms in information provided by the candidate with job terms represented by information
stored in the jobs database, means for determining that a candidate has a skill or attribute specified in the job information when the job term for a particular skill or attribute is present in or is similar or closely related to a term used in the information provided by the candidate.
In one aspect, the present invention provides apparatus for determining which, if any, of the jobs for which information is stored in a jobs database may be suitable for a particular candidate, which apparatus comprises means identifying a candidate's skills from information provided by the candidate, means for adding additional skills to the identified skills in accordance with predetermined rules, means for comparing terms representing the identified and the additional skills with terms used in the information stored in the jobs database, means for determining that a candidate has a skill or attribute specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information. Means may be provided for returning data representing the jobs identified as requiring the candidate's identified skills and means may be provided for ranking or ordering the identified jobs in accordance with the candidate's additional skills that are determined to be present in the information for the identified jobs.
In one aspect, the present invention provides apparatus for determining which, if any, of the candidates for which information is stored in a candidates database may be suitable for a particular job, which apparatus comprises means for receiving job information, means for comparing terms used in the job information with terms used in information stored in the candidates database, means for determining that a candidate has a skill or attribute specified in the job information when the term used in the job information for a particular skill or attribute is present in or is similar or closely related to a term used in the information provided by the candidate. Means may be provided for returning data representing the candidates identified as having the identified skills and means may be provided for ranking or ordering the identified candidates in accordance with the additional skills determined for the identified candidates.
In one aspect, the present invention provides apparatus for determining which, if any, of the candidates may be suitable for a particular job, which apparatus comprises means for receiving job information, means for identifying a candidate's skills from information provided by the candidate, means for adding additional skills to the identified skills in accordance with predetermined rules, means for comparing terms representing the identified and the additional skills with terms used in the job information, means for
determining that a candidate has a skill or attribute specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information.
In one aspect, the present invention provides apparatus for alerting a candidate to jobs that may be suitable for that candidate, including means for storing information relating to a candidate in a candidates database, means for receiving information relating to jobs, means for comparing the candidate's information with received job information, and means for alerting the candidate to the existence of a potentially suitable job when the terms used in the job information for skills or attributes required by the information for that job are present in or are similar or closely related to terms used in the information provided by the candidate.
Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 shows a simple block diagram of a recruitment services system in which a recruitment service provider or apparatus embodying the present invention is coupled to client and candidate computer systems via a network such as the Internet;
Figure 2 shows a block diagram illustrating typical components of a candidate or client's computer ; Figure 3 shows a block diagram illustrating the components of a computing system for forming a recruitment service apparatus embodying the present invention; Figure 4 shows a functional block diagram of a recruitment service apparatus embodying the invention; Figure 5 shows a table illustrating the components that may be included in a job description, curriculum vitae or personal profile; Figure 6 shows a schematic block diagram for illustrating what information may be stored in the main database of a recruitment service apparatus embodying the present invention; Figure 7a shows a block schematic diagram for illustrating the type of information that may be stored, for a particular candidate, in a personal filing cabinet of a main database of recruitment service apparatus embodying the present invention; Figure 7b shows a block schematic diagram for illustrating the type of information that may be stored
in respect of a candidate in a candidate store of the main database ; Figure 8a shows a block schematic diagram for illustrating the type of information that may be stored in a personal filing cabinet of a client; Figure 8b shows a block schematic diagram for illustrating the type of information that may be stored for a particular job in a job store of the main database; Figures 9a to 9d show tables illustrating parts of the data that may be stored in tables of the main database to show a taxonomic structure of the data; Figure 10 shows a table for illustrating association of each component of a job description or personal profile with an attribute code and for illustrating the type of search that may be conducted in respect of each component; Figures 11 and 12 show screens that may be displayed to a candidate; Figure 13a shows a flow chart for illustrating steps that may be carried out by a recruitment service apparatus embodying the present invention to assist a candidate in submitting a CV or personal profile;
Figure 13b shows a flow chart for illustrating steps that may be carried out by a recruitment service apparatus embodying the present invention to assist in generation of a job description; Figures 14 to 16 show screens that may be displayed to a client to enable submission of details of a job vacancy ; Figure 17 shows a flow chart for illustrating a first example of a job search carried out using recruitment service apparatus embodying the present invention by a candidate; Figure 18 shows a screen that may be displayed to a candidate to facilitate a search; Figure 19a shows a flow chart for illustrating a second example of a job search carried out using recruitment service apparatus embodying the present invention by a candidate; Figures 19b and 19c show flow charts for illustrating steps carried out by recruitment service apparatus embodying the invention in an example of a job search for a candidate; Figure 20 shows a flow chart for illustrating extraction by a recruitment service apparatus embodying the present invention of skills from a candidate's CV ;
Figures 21 and 22 show screens that may be displayed to a user for enabling a search for likely job candidates for a potential employer or client; Figure 23 shows a flow chart for illustrating steps carried out by recruitment service apparatus embodying the present invention in an example of a search for suitable candidates; Figure 24 shows a flow chart for illustrating generation of a search query by recruitment service apparatus embodying the present invention; Figure 25 shows a flow chart for illustrating generation of additional attributes; Figure 26 shows a flow chart for illustrating steps carried out a search engine; and Figure 27 shows a flow chart illustrating modification of a search query in response to receipt of search results from the search engine.
Referring now to the drawings, Figure 1 shows a block diagram of a recruitment system embodying the present invention.
The recruitment system comprises a recruitment service apparatus or provider 1 that may be accessed by
individuals seeking job vacancies (hereinafter referred to as"candidates") and employers or persons or agencies acting on behalf of employers (hereinafter referred to as "clients") seeking potential candidates for job vacancies.
Figure 1 shows a recruitment service provider 1 as being connected by a network N to a candidate computer system 2 and to a client computer system 3. It will, of course, be appreciated that more than one candidate and more than one client may be connected to the recruitment service provider 1 via the network N.
The network N will generally consist of the Internet or World Wide Web. The network N may, however, also be a local area network or wide area network (LAN or WAN). The present invention may also be applied where potential candidates and clients physically visit the place of business of the recruitment service provider in which case the network N will be provided by a local connection to the recruitment service provider and may be an in-house network enabling a number of different computers or terminals to be coupled to the recruitment service provider 1 at the same time.
Figure 2 shows a block diagram of typical components of a computer system that may be used by a candidate or client. As shown, the computer system, which may be a personal computer, comprises a processing unit 4
associated with memory 11 (ROM and/or RAM), a display 5, a communications interface 6 such as a MODEM or other network connection, a hard disk drive 7, a user interface 10 such as a pointing device and/or keyboard and a removable disk disk drive (RDD) 8 for receiving a removable disk (RD) 9.
Figure 3 shows typical components of a computer system la for providing the recruitment service provider 1.
Again this comprises a processing unit 12 associated with memory (RAM and/or ROM) 19, a display 13, a communications interface 14 such as a MODEM and/or network connection, a hard disk drive 15, a user interface 18 such as a pointing device and/or keyboard and a removable disk disk drive 16 for receiving a removable disk 17. As shown in Figure 3, a database store 20 is also provided for storing, as will be explained below, data necessary for the recruitment service including candidate CVs, candidate profiles and job descriptions.
The processing units 4 and 12 are programmed by processor implementable instructions stored in memory. These processor implementable instructions may be downloaded as a signal S via the communications interface 6 or 14 or may be downloaded from a removable disk 9 or 17 received in the removable disk disk drive 8 or 16. The removable disk disk drive may be, for example, a floppy disk drive or a CD ROM or DVD drive, for example.
Although Figure 3 shows the computer system of the recruitment service provider as having a single processing unit 12, it will, of course, be appreciated that this is only a simple functional block diagram and that one or more processing units may be provided, dependent upon the processing power required by the recruitment service provider 1.
Figure 4 shows a block diagram illustrating the functional components provided when the computer system shown in Figure 3 is configured by processor implementable instructions to provide the recruitment service provider 1. The processor implementable instructions may be provided as a signal or downloaded from a removable disk as described above.
In this example, the recruitment service provider 1 comprises a web server 21 configured to communicate over the Internet with a candidate or client computer system in accordance with the conventional Internet protocols.
The web server 21 is coupled to an application server 22 that provides a data model and business rules for the recruitment service provider.
The application server 22 is coupled to a main database 23 that stores the data necessary for operation of the recruitment service provider including details of candidates, clients, candidate profiles and CVs and job
descriptions, as will be explained in greater detail below. The application server 22 is also coupled to a search engine 26 to enable searches to be conducted on data in the main database 23. In this embodiment the search engine 26 is not coupled directly to the main database 23 but rather is coupled to a separate job database 27 and a candidate database 28 to facilitate searching by the search engine 26 for likely jobs for candidates and likely candidates for clients, respectively. In this embodiment, the databases 27 and 28 do not contain the full data, but rather contain for each component of a job description, CV or personal profile, an index which is associated with that component in the main database to reduce the size of the job and candidate databases 27 and 28 and thereby speed-up searches by the search engine 26.
The application server 22 is also connected to a skills extractor 24 that enables skills to be extracted from a CV provided by a potential candidate to enable searching by the search engine 26 for jobs suitable for that candidate as will be described below and to a job alerter 25 that enables the search engine 26 to search the database 27 in accordance with search instructions from candidates and to alert a candidate via the network when new jobs that may be suitable for that candidate are present in the database 23.
In this embodiment, the search engine 26 comprises a structured query based search engine such as that supplied by Verity Inc of Mountain View California USA and as described in US-A-5778364 (the whole contents of which are hereby incorporated by reference) to which search queries are submitted as XML documents.
As mentioned above, the application server 22 provides a physical data model for the recruitment service provider 1 and also business rules. These may be implemented using, for example, the e-business automation system provided by Versata Inc of Oakland California USA which uses XDA to interface to the search engine 26 and the main database 27 using a document style semantics and specification language (DSSSL) complying with the international standard ISO/IEC 10179: 1996 such as, for example, JADE for which details can be found at www. jclark. com/jade/. Of course, other DSSSL compliant engines may be used.
The jobs database 27 is arranged to store job descriptions while the candidate data 28 is arranged to store candidate CV and personal profiles. Each of these consists of a respective index for each of a number of
different components that make up the job description or candidate CV or personal profile.
Figure 5 shows a table 30 illustrating the type of components that may form a job description or candidate
profile. These components are : a job level 31 which indicates the level of seniority such as, for example, Director, Manager, Partner, etc; a functional area component 32 that defines the area of activity of the job such as, for example, human resources, law, information technology, etc; an industry sector component 33 that defines the sector of industry concerned such as, for example, legal, financial, etc; a company size component 34 that defines the size of the company in terms of, for example, the number of employees; a language component 35 that defines language skills; a degree component 36 that specifies degree level qualifications; a professional qualifications component 37 that specifies professional qualifications; a skills component 38 that defines jobrelated skills; a location component 39; a willingness to travel component 40; a working hours component 41; a salary component 42 and a keyword components 43.
Where these components form part of a job description, then components 31 to 34 will describe the job while the components 35 to 38 will define abilities that the client considers any candidates suitable for the job must or should have while the components 39 to 41 will provide data regarding the requirements of the job and component 42 will indicate the salary range for the job. The keyword section 43 will contain keywords that the client considers best describe the job and/or that may be used by suitable candidates in attempting to search for the job by keywords.
Where the components relate to a candidate CV or personal profile, then components 31 to 34 and 39 to 42 will indicate the candidates requirements or preferences while components 35 to 38 will indicate the abilities of the candidate, that is the language or languages that he speaks, any degree or professional qualifications he holds and any other skills that he has. In this case, the keywords component 43 will include keywords that the candidate considers best describe his desired job.
The main database 23 contains a data store 230 which includes a respective table related to each possible component of a job description, CV or personal profile.
Figure 6 shows, by way of illustration, the data store 230 containing a job level table 230a, a functional area table 230b, an industry sector table 230c, a company size table 230d, a language table 230e, a degree table 230f, a professional qualifications table 230g, and a location table 230i. Although not shown in Figure 6, further tables will be provided for the other components shown in Figure 5. Each of these tables contain an ordered list of sub-categories or attributes within the components and associates each sub-category with a corresponding attribute index.
The main database may also contain a job store 231 which stores data for each available job and a candidate store 232 which stores data for each registered candidate. In this embodiment, the main database 23 also includes a
personal filing cabinet store which contains a respective personal filing cabinet for each candidate and each client and a saved search query store 232 which enables previously formulated search queries to be stored so that a query can be rerun.
Figure 7a shows an example of a candidate personal filing cabinet 233'which, in this example, contains a CV store 233'a for storing one or more CVs relevant to that candidate, a personal profile store 233'b for storing the candidate's personal profile which will include all of the components shown in Figure 5 and a candidate status information store 233'c which stores information relating to the candidate including data indicating whether or not the candidate wishes to be head-hunted, whether the candidate wishes to receive newsletters or other information from the recruitment service provider 1 and data regarding jobs that the candidate has bookmarked as being of interest and is considering applying for.
Figure 7b shows an example of a file for a candidate in the candidates store 232. In this example, this file contains a CV and personal profile section 232a and a candidate status information section 232b including data indicating whether the candidate wishes to head-hunted, data indicating whether the candidate wishes to receive newsletters from the recruitment service provider, data regarding jobs bookmarked by the candidate, data indicating whether or not the candidate is"off-limits"
that is whether the candidate is already under consideration for a job by a client of the recruitment service provider and other"ring fencing information" that defines the clients for which the candidate may or not be head-hunted.
Figure 8a shows an example of a personal filing cabinet 233"for a client which includes a job store 233"a including, for each job the client is currently seeking a candidate or candidates for, a job description, the associated job advertisement and the number and location of vacancies associated for that job description. The data for each job may also include the date of placement of the job with the recruitment service provider 1 and a duration for which the job will be active.
The client personal filing cabinet 233"may also include a clients status information store 233"b indicating whether the client wishes to receive a newsletter from the recruitment service provider 1 and also whether the client wishes information about its company to be retained confidential so that, for example, if a candidate conducts a general search for companies on the recruitment service he will not be provided with the information about that particular company. The client status information may also indicate whether a particular job is an anonymous job, that is the job is to be advertised without identifying the potential employer.
Figure 8b shows an example of a job store 231 which includes a job data store 231a including, for each available job, the relevant job definition, associated vacancy or vacancies and the job advertisement that is associated with that job definition. The job store may also include a file 231b containing information regarding the status of the job, that is when the job was first placed with the recruitment service provider and the duration for which the job was placed, and ring fencing information identifying types of candidates (for example existing or previous employees of the client or specific competitors) that should not be head-hunted for this particular job.
It will, of course, be appreciated that Figures 7a o 8b are only examples and that the information presented therein may be stored in any conventional manner. For example, these stores may not contain the actual information but may contain pointers to separate data stores within the main database 23 or another database.
As mentioned above, each of the component tables in the data store 23 contains a set of categories or attributes each associated with an attribute index used in the job or candidate database 27 or 28. The sub-categories within a component table may be arranged as a simple list where there are relatively few categories. For example, the categories in the working hours component table (not
shown in Figure 6) may simply be :"full time"or"part time"while the willingness to travel component table (not shown in Figure 6) may for example contain only three categories such as"none","nationally"and "internationally". Neither the salary component 42 nor the keywords components 43 will generally be associated with a table in the data store 230 because, in the case of the salary component, this will simply be a minimum figure in the case of a candidate and minimum and maximum figures in the case of a client while keywords are input by the candidate or client, as the case may be.
The data tables for the remaining components consist of hierarchical structures or taxonomies of attributes or categories which significantly increases the flexibility of the search process as will be described below.
Figure 9a illustrates part of a taxonomy for the job level table 230a. In particular Figure 9a shows part of the taxonomical structure for jobs in the law where the top node (indicated by *) defines the job type as lawyer and this job type has, in the part of the taxonomy shown, three categories or child nodes (indicated by **), namely legal practice, in-house and barrister. The legal practice child node is itself a parent node for three categories or child nodes (indicated by ***)"partner", "assistant solicitor/associate"and"legal executive" while the child node"in-house"is itself a parent node for two child nodes (indicated by ***)"solicitor"and
"in-house legal executive". It will, of course, be appreciated that there may be further categories in the job type lawyer and these are only examples.
Figure 9b shows an illustration of part of the taxonomical structure that may used in the location table 230i. The part of the taxonomical structure shown is for the United Kingdom and includes, under the heading "England", top nodes (indicated by *) defining regions of the United Kingdom (as shown Yorkshire-and-Humberside, East Anglia and the South East) each having a number of sub-categories or child nodes (indicated by **) defining smaller areas in that larger region. Figure 9e also shows part of the taxonomical structure for regions in Ireland and Scotland. Again, it will be appreciated that only part of the taxonomical structure is shown and that, for example, each of the smaller regions may be sub-divided so that, for example, specific towns within Cambridgeshire form child nodes or sub-categories of the child node"Cambridgeshire". The location taxonomy is arranged to enable widening of a search in both an forward direction (ie to a larger area to provide a candidate with details of jobs in a larger area than specified) and in a reverse direction (ie to a smaller area to provide for a client details of candidates specifying a smaller geographical area than that specified in the job description)
Figure 9c illustrates an example of part of a taxonomical structure for the functional area table 230b where the part illustrated relates to aspects of human resource functions while Figure 9d shows part of the taxonomical structure in the skills table 230h where the part shown relates to aspects of information technology. Again, the number of asterisks adjacent to a heading indicates its level within the taxonomy so that, for example, the attributes"HTML"and"SGML"are sub-categories or child nodes of the category mark-up languages.
It will, of course, be appreciated that the actual taxonomical structure will depend upon the particular data being categorised and that two, three, four or more levels may be provided, as appropriate.
As mentioned, certain components within a CV, a personal profile or a job description may be defined as being essential or preferred and this classification will affect how the search is carried out by the search engine 26. As will be described in more detail below, where a specific feature (for example a specific functional area) is classified as essential by a candidate or client, then only the job descriptions or candidate CVs containing that specific feature will be returned by the search engine while where a specific features is classified as preferred, then the search engine 26 will rank or order the search results in accordance how well the search results match the preferences.
Figure 10 shows a table T1 illustrating for each of the above-mentioned components the associated main attribute code (JL for level of seniority in this example) followed by a number of further digits (four in the case of the component level of seniority) which are shown as"XXXX" in Figure 10 which enable each particular category or attribute to have a unique attribute code. It will be appreciated that, where the specific attributes within a component are arranged in a taxonomical structure, then the attribute code also has a taxonomical structure.
In this particular embodiment, a candidate or client cannot chose freely whether a particular attribute is essential or preferred. Rather, the application server 22 is programmed to constrain the search query submitted to the search engine 26 so that: 1) attributes of certain components can be filtered by the search engine (that is the candidate or client can indicate that those attributes are essential; 2) certain other attributes can only be ranked by the search engine (that is the candidate or client can only indicate that they are preferred); 3) attributes for some components (for example the components language, degree and professional qualifications in the case of the client) may be indicated as preferred or essential by the client (filter/rank); and 4) for attributes for other components, the search engine will apply both a filter and a rank (filter & rank) so that, as will be discussed below, the candidate or client, as the case may be, will
be presented with search results that not only match the required attribute in that component area but also with additional rank search results where there is no exact match.
As will be understood from the above, a candidate may use the system for two different purposes. The first purpose is to enable the candidate to conduct a search to identify likely jobs while the second is to place the candidate's CV in the database so that it can be accessed by a head-hunter.
To enable full access to these facilities a candidate needs to be registered in the main database. In this embodiment, this is achieved by the candidate logging on, via his computer, to the recruitment service web site maintained by the web server 21. The candidate will then be asked to complete a registration form which will require the candidate's name, address and other personal details and will require the candidate to indicate whether, for example, he or she consents to being included in head-hunting searches and also whether they wish to receive information from the recruitment service such as, for example, an electronic newsletter. The registration for will also require the candidates email address plus a password.
Once the registration form has been completed, an account will be created for that particular candidate and the
details of that account including a user ID, will be emailed to the candidate who can then confirm the registration by, for example, clicking on a hyperlink and logging in using his password. Once this has been done, then the candidate's account will be live and he or she will be allocated a personal filing cabinet.
Once the candidate has logged on, then the candidate will be displayed a screen such as screen 50 shown in Figure 11 asking the candidate what they wish to do. In this example, the screen 50 asks the candidate whether they wish to create a personal profile, upload a CV, create a CV on-line, search for a job or search for their perfect job? Each of the above mentioned questions consists a hyperlink to further web pages. Accordingly, when the candidate clicks on"create CV on-line", the web server 21 will cause a web page to be sent to the candidate providing a CV template for the candidate to complete.
Figure 12 shows an example 51 of a CV template. In this example, the candidate inputs their user ID in box 51a. The candidate is also asked to input further information as set out in Figure 12 in the boxes 51b adjacent text describing the information required.
To assist the candidate in completing his CV so that is compatible with the structure of the store 230, each of the boxes 51b apart from the boxes associated with
minimum salary and keywords may have a drop down menu format so that the candidate can simply select from the displayed list. Where the component has a taxonomical structure in the data store 230, then the drop down menu will have an analogous structure.
As an alternative to providing drop down menus, each of the component descriptive headings may be itself constitute a hyperlink to a further web page that gives the candidate options to select from for that particular component so that the candidate can again select attributes corresponding to those used in the data store 230. Normally, the candidate will complete the keywords themselves.
The CV template will also ask the candidate to indicate whether or not they wish to be head-hunted as shown by box 51c.
Once the candidate is happy with the completed CV, then
the CV can be transmitted to the web server 21 by clicking on"submit CV"in Figure 12.
Once the CV is received by the web server 21, then the application server 22 causes it to be stored in the candidate's personal filing cabinet and, if the candidate has indicated that they wish to be head-hunted, also in the candidates store 232. The application server 22 also
causes the candidates database 28 to be updated to include the index form of the CV as described above.
A candidate may within the constraints described above with reference to Figure 10 indicate that a particular component attribute is essential or preferred. A candidate need not include all of the components shown in Figure 12 in a CV. However, a minimum number, for example job level, functional area, experience, minimum salary will be required for meaningful searches to be carried out.
As mentioned above, the recruitment service provider may assist a candidate in completing a CV.
Figure 13a shows, as an example, a flow chart illustrating the steps carried out by the web server 21 under control of the application server 22 if the candidate clicks on the heading"skills"in Figure 12.
Thus, at step Sl, the web server 21 causes a web page to be displayed to the user including the message input skill or select browse or help.
If, at step S2, the candidate selects browse by clicking on the words"browse"then the web server 21 will, at step S3, cause a web page to be displayed to the user which may show the entirety of the skills taxonomy so that the user can scroll through and select the skills that he considers he has. The recruitment service
provider 1 then waits at step S4 for the candidate to select or input a skill together with the candidate's level of experience in that skill. A candidate may select or input any number of skills. The selected or input skill or skills for that candidate are then stored at step S6 and the user is returned to the CV template which will incorporate the selected skills.
A similar process may be used for completing other areas of the CV template.
A user may also choose to upload their own electronic CV by clicking on"upload CV"in the screen 50 shown in Figure 11. To ensure that the necessary information is provided, the user may be prompted when he clicks on "upload CV"to ensure that he provides information under at least some of the component headings set out in Figure 12. Once the user is happy with his CV, then he sends it to the application server 22 via the web server 21 and the application server 22 uses the main database 23 to extract information from the CV as will be described below.
A candidate may store one or more CVs in their personal filing cabinet. A candidate may also generate a personal profile in a manner similar to that described above for creating a CV. The personal profile will generally contain attribute information for all of the components shown in Figure 5. However, because, as will be explained
below, a personal profile will be used only for searching for jobs for a candidate and not for head-hunting purposes, the candidate may adapt the personal profile to fit his or her career aspirations so that, for example, the attributes specified by the candidates for components such as job level, functional area and industry sector may reflect more closely the candidates overall career aims in contrast to the candidates CVs which may be tailored specifically to certain categories of job.
The registration of a client and the steps necessary to submit job details for storage in the main database will now be described with reference to Figures 13b, 14 to 16.
The initial registration process may be similar to that for a candidate. Thus, the client will initially log on to the web site provided by the web server 21 and will submit their company details which are then sent to the recruitment service provider 1 and these will be input to the database 23 after the company details have been validated by using conventional sources. The client will then be sent an email giving them a user ID and password with a password enabling them to access only their own personal filing cabinet and job details. When the client has logged on with their user ID and password, then they will be displayed a screen similar to screen 52 shown in Figure 14 asking them what they want to do and prompting them to create a job description. The screen 52 may also give them access to help information.
Assuming the client clicks on"create job description", then the web server 21 will transmit to the client computer system 3 a new web page which will include a job description template similar to that as shown on screen 53 in Figure 15. As can be seen from the comparison of Figures 12 and 15, the information required to be completed in the job description template is similar to that for the CV template but in addition requires the client to specify a maximum salary for the job and to include a job reference number.
The client completing the necessary information for the job description template 53, can mark any attribute for a component as being essential or preferred where this is allowed by the system. As explained above with reference to Figure 10, the system is set up so that attributes for only certain components (in this embodiment functional area, degree, professional qualifications and skills) can be marked as essential. For the purposes of a job description the industry sector and location are automatically marked as essential features because these are set by the job description.
As in the case of a candidate submitting a CV, a client may be allowed to browse the contents of the data store 203 to facilitate completion of the job description template. Where the client selects the browse option for the skills component, then the application server 22 will carry out the process shown in Figure 13b. Steps Sl to
S4 in Figure 13b correspond to steps Sl to S4 in Figure 13a as described above for a candidate inputting a CV. However, in this case, the application server 22 then prompts the client at step S5 to indicate whether the skill is (or skills are) essential or preferred. In this case, the selected skill (s) will be stored, at step S6, with a flag indicating whether the skill is essential or preferred.
Once the client is happy with the job description, then the clients clicks on"submit job description"in Figure 15 and will then be prompted by the system to input text for a job advertisement to be associated with the job description. Once the client has done this, then the web server 21 will forward to the client a web page including a screen similar to screen 54 shown in Figure 16 prompting the user to input a job reference and to insert the job advertisement text. When the client then clicks on submit job advertisement, then the job advertisement will be submitted by the web server 21 to the application server 22 which will cause the job advertisement to be displayed to a systems administrator on the display 13 together with the associated job description template. only one advertisement is allowed per job description.
Once the system administrator has approved the job advertisement, the job advertisement will be stored together with the job description in the clients personal filing cabinet and in the job store 231 and an index
version of that job description will be forwarded to the job database 27.
It will be appreciated that, particularly in the case of large companies, a client may have more than one vacancy for a particular job description and that those vacancies may be at different locations. Accordingly, the location section of the job description template may also enable the client to input a plurality of different locations and also to indicate the number of vacancies associated with each location.
As mentioned above, the client need not necessarily be the actual employer but would be an agency acting on behalf of the employer or a parent company of the intended employer. Also, candidates or clients may submit the information necessary to complete their CV or personal profile in the case of a candidate or their job description and job advertisement in case of a client off-line and the necessary information input to the database by personnel at the recruitment service provider 1. This may be achieved by, for example, telephone or in person.
The recruitment services apparatus 1 described above enables two different types of searches for jobs ("job search") to be carried and two different types of searches for candidates ("candidate search"to be carried on behalf of a client.
The first type of job search is carried out by a candidate and will now be described with reference to Figures 17,18a and 18b.
This search is instigated by a candidate clicking on "search for job"in the screen 50 shown in Figure 11.
When a candidate selects"search for job", the web server 21 causes the candidate to be sent a web page prompting the user to input search criteria (step S15 in Figure 17). Figure 18 shows a screen 55 requesting the user to input search details for the following components, namely job level, functional area, preferred industry sector, keywords that the candidate considers are relevant to the jobs for which he or she is looking preferred industry sector, preferred company size, preferred location, working hours and minimum salary. The candidates may complete any one or more of these component fields. The screen 55 may also prompt the candidate to input a maximum salary. If, however, the candidate does not include the maximum salary value, then the system will adopt a default value which will be related to the minimum salary input by the candidate, for example double the minimum salary.
Once the candidate is happy with the completed form, then the candidate clicks on"submit search"to transmit the search details to the application server 22 via the web
server 21. The application server 22 uses the submitted search details to generate a search query and submits the search query to the search engine 26 at step S16.
In order to generate the search query the application server 22 accesses the data store 230 and the respective tables for each component or field to determine the attribute index associated with the attribute selected by the candidate for that component and formulates a search query that instructs the search engine 26 to return only those jobs matching the essential attributes and to rank jobs meeting the essential attributes in accordance with how well they meet the preferred attributes. In the present embodiment the functional area, preferred industry sector, location and salary range are considered as essential, that is filter attributes in the search query, while the remaining features are considered as preferred, that is rank attributes in the search query.
When the application server 22 receives the search results back from the search engine 26 at step S17, the application server 22 accesses the main database 23 and sends to the candidate the job advertisements for the located jobs (step S18).
The web pages displayed to the candidate will prompt the candidate to bookmark, apply for one or more jobs, or save the search results. If the candidate book marks a job at step S19, then the bookmark for that job or jobs
will be added to the candidate's personal filing cabinet at step S20. If the candidate indicates that they wish to apply for a job at step S21, then the recruitment service provider will enable the candidate to apply for that job either via the the recruitment service provider 1 or, if the client permits for that job, directly (step S22). If a candidate elects to save the search results at step S23 then, at step S23a, the search results will be saved in the saved search query store 234 shown in Figure 6 and a pointer to the saved search query may be included in the candidates personal filing cabinet. The candidate may also be given the option of saving the search on his own computer.
Each of the web pages displayed to the candidate will enable the candidate, in known manner, to return to previous pages so that, for example, after adding a job bookmark to their personal filing cabinet they can return to the search results page or can return to the web page displayed in the screen 55 shown in Figure 18 to enable the search to be modified or a new search to be instructed. For the sake of simplicity, however, Figure 17 does not show these connections.
The candidate may also be prompted when the candidate decides to log off to indicate whether or not they wish to save the search results.
The job search described above may be carried out by a registered or unregistered candidate. However, an unregistered candidate will not be able, in this embodiment, either to apply for or to bookmark located jobs.
It will be appreciated that, when carrying out the type of job search described above with reference to Figures 17 and 18, a candidate can carry out a more basic search by, for example, including only the component or field job level, functional area, preferred industry sector and keywords. In other respects the search will be carried out in the same manner as described above with reference to Figure 17.
The second type of job search can only be requested by a registered candidate and requires the candidate to have registered a personal profile in their personal filing cabinet.
As mentioned above, the personal profile will have the same type of components as a CV but, unlike a CV, should include selected attributes for each of the components or fields shown in Figure 5 enabling the search to be better adapted to the candidate's requirements.
As can be seen from a comparison of Figure 5 and Figure 18, this search includes, for example, the following additional components or fields, namely preferred company
size, language, degree, professional qualifications, skills and willingness to travel.
The search mechanism for attributes selected in the fields or components common to Figures 5 and 18a and 18b is the same as that described above. With respect to the additional fields or components, in this embodiment, all of the additional components are considered to be preferred. Accordingly, the search query is constructed so as to rank the returned jobs in accordance with how well they fit the attributes selected for the additional components.
This type of search is initiated by clicking on"search for your perfect job ?" when the screen shown in Figure 11 is displayed.
Figure 19a shows a flowchart for illustrating the steps carried out by the recruitment service provider 1 when the candidate indicates that he wishes to carry out the search.
As can be seen from the comparison between Figures 17 and 19, this search differs from that described above with reference to Figure 17 in that, instead of prompting the candidate to input the search details, at step S15a, the personal profile for the candidate is retrieved and the search query is then generated on the basis of the personal profile at step S16 and submitted to the search
engine 26. of course, the actual search query generated will differ because it will include additional search terms.
Where a candidate has indicated that they wish to be head-hunted, that is the head-hunting flag in Figures 7a and 7b is on, then the recruitment service provider 1 will carry out searches on the basis of his personal profile so that the candidate can be advised as and when any likely jobs are available. This will now be described with reference to Figures 19b and 19c.
Thus, when the head-hunting flag is on, indicating that a candidate wishes to be head-hunted, the recruitment service provider 1 first retrieves the candidates personal profile (step S15a in Figure 19b) and then at step S16a generates the search query as before but this time the recruitment service provider 1 stores the generated search query in the saved search query store 234 (Figure 6) of the main database 23 and adds a pointer to that saved search query in the job alerter 25 shown in Figure 4 or includes that saved search query in a search query database of the job alerter 25 shown in Figure 4.
The candidate's personal filing cabinet may also be updated to indicate that the candidate has selected job alert in respect of that particular CV or personal profile.
The job alerter 25 will then cause any candidate having the head-hunting flag on to be alerted when any new job matching his stored search query is stored in the main database 23.
Figure 19c illustrates the steps carried out by the job alerter 25. Thus, at step S161, the job alerter 25 checks to see if any new jobs have been added to the jobs database 27 since a particular search query was last submitted to the search engine 26 so that, if it is the first time a particular search query is carried out, the entirety of the jobs database 27 is searched in accordance with the search query. If the answer is yes, then the job alerter causes the search engine 26 to be instructed to carry out the search query (step S162) and at step S163 sends the results to the application server 22 which will then email the search results to the candidate associated with the search query.
The job alerter 25 may be arranged to cause the search queries associated with it to be applied to new jobs as and when they are added to the database. Alternatively, the job alerter 25 may cause the searches to be instructed periodically, dependent upon the frequency with which jobs are added to the database. In the latter case, the job alerter 25 may be configured to cause the search engine 26 to restrict its searches to jobs added to the jobs database 27 since the last search was
instructed by the job alerter 25 to reduce the number of jobs to be searched. One of the fields or components included within the search based on a candidate's personal profile is "skills". It is often difficult for a candidate to recognise the features recited in his or her CV that actually constitute skills. Accordingly, the present invention provides as shown in Figure 4, a skills extractor 24 that enables skills to be extracted automatically from a CV input by a candidate.
Figure 20 shows a flow chart for illustrating operation of the skills extractor 24. Thus, at step S10 the skills extractor 24 compares the terms used in the candidate's CV and the terms in the skills table 230h and if, at step Sll, the skills extractor 24 finds a term that matches or is comparable to the term in CV, then that skill is stored for that candidate at step S12. When comparing the terms in the CV with the terms in the skills table, the skills extractor 24 looks not only for exact matches.
Rather the skills extractor looks, in the manner described in US-A-5778364, also for comparable words that is, for example: words having the same stem (so that for example the words"recruiting"and"recruiter"would be considered comparable to the term"recruitment"because they share the same stem"recruit"); wildcard terms, that is terms that include a given alphanumeric string; common misspelling of words; phonetically similar words; and
synonyms. Also, where the skill term consists of a phrase consisting of two or more words or components, then the skills extractor will check to see if the words or components of the phrase (or comparable words or components) can be found, adjacent to one another, close together, in the same sentence, paragraph, or, for example within a specified number of characters of one another.
Each occurrence of a match or comparable word and each occurrence of a particular relationship between the components of a phrase in a CV is assigned a value and a total score for a particular skill term determined in accordance with the rules set out in US-A-5778364. If the total score meets a given threshold then that skill is assumed to be present in the CV.
At step S13, the skills extractor 24 checks to see whether there are further terms in the CV that need to be compared with the skills table and repeats step S10 to S13 until the answer at step S13 is no at which time the skills extractor 24 will have extracted all possible skills from the information given in the candidates CV.
This information is then stored in the skills components field of that candidates personal profile.
The use of the skill extractor 24 ensures that the personal profile includes all skills present in the candidates CV whether or not they are specifically
identified by the candidate as being skills and whether or not the candidate's CV uses exactly the. same terminology as the skills table. searches may be initiated by a candidate off-line where the search does not require access to the candidates personal profile. In this case, the candidate may be emailed the results of the search or may pick them up next time the candidate logs on.
The recruitment service provider 1 also enables two different types of search to be conducted on behalf of a client to locate candidates for a job. Generally, such searches will be conducted by authorised personnel at the recruitment service provider 1. When such a user logs onto the system and enters their password a screen such 56 shown in Figure 21 will be displayed prompting them to select one of the two different types of searches.
If the user selects"search for candidates"then a further screen will be displayed to the user including a form for completion of the search details. An example of such a screen is shown as screen 57 in Figure 22. This screen 57 allows the user to carry out a relatively limited free text search to identify candidates having particular attributes, as shown candidates at a particular job level within a particular functional area as input by the user, so that the user can then advise a client how many likely candidates they have meeting those
limited requirements. of course, this search could include further ones of the components shown in Figure 5. The second or"head-hunter"type of search that may be carried out by an authorised user enables identification of candidates that are particularly suited to a particular job and requires that the client has already submitted a job description and that this is stored in the database 23. When the user clicks on"head-hunter search"in Figure 21, a message is displayed to the user requesting the user to identify the required job description (step S25) in Figure 23. Once the required job definition has been identified, the application server 22 retrieves the job definition and generates a search query on the basis of that job definition and submits the search query to the search engine 26 at step S26. The application server 22 then waits for the search results from the search engine and at step S27 displays them to the authorised user. This search will automatically include in the search query attributes specified by the client in all of the fields or components of the job definition as shown in Figure 5.
Accordingly. the results of the search should more accurately reflect the client's requirements.
The searches for candidates instructed by the authorised user will identify only candidate who have indicated that they wish to be head-hunted. When the user has a list of likely candidates, he can then act in accordance with
normal head-hunting practice to arrange discussions between the likely candidates and the client acting on behalf or actually forming the potential employer. The recruitment service provider 1 may automatically email any candidate included in the results of a head-hunting search or contact may be made in conventional manner by the authorised user.
Further details of how the actual search queries are constructed at step S16 in Figures 17 and 19a, step 16a in Figure 19b and step S26, in Figure 23 will now be described with reference to Figure 24.
At step S30, the application server 22 determines from the input search request (the completed search form, personal profile or job description as the case may be) and the constraints discussed above with reference to Figure 10 which of the attributes specified in the search request are essential. At step S31, the application server 22 defines a filter query consisting of Boolean query terms each representing one of the essential requirements or attributes and with the Boolean query terms being separated by an"AND"operator so that only search documents (candidate CVs or job descriptions stored in the candidate and jobs database, respectively) incorporating all of the essential requirements will pass the filter.
At step S32 the application server 21 identifies from the input search request the preferred attributes. At step S33, a weighting factor is determined for each preferred attribute in accordance with data stored in the corresponding component table of the data store 230 (Figure 6) and at step S34 a rank query defined consisting of weighted query terms representing the preferred attributes combined by the ACCRUE operator as described in US-A-5778364 so that the result of the rank query will order the search documents meeting the essential requirements in accordance with a score representing the sum of the weighted scores for each of the preferred attributes.
In a search query, keywords will be included as a text string separated by the operator"OR"and a simple matching process carried out between the keywords used in the search request (job description, completed form or CV) and the documents being searched (CVs or job descriptions). A ranking score for the keywords will be based simply on the number of keywords found in the particular search document.
Once the rank query has been defined at step S34, then the application server 22 submits the search query consisting of the filter plus rank query to the search engine 26 at step S35.
In the above described embodiments, the attributes used by the application server 1 to construct the search query are those identified from the information provided by the candidate or client with, in the case of a candidate, the skills extractor 24 being used to extract skills from a CV provided by the candidate, if necessary. However, in the case of candidates, jobs which do not meet precisely their essential features may also prove to be of interest while in the case of clients candidates who have, for example, skills that are close to but not an exact match for the attributes specified by the client may be of interest because they may easily be trainable in the skills required the client.
The taxonomical or hierarchical structure of some of the component tables as described above with reference to Figure 6 and Figures 9a to 9d facilitates determination of additional attributes for a candidate beyond those specified in a candidate's personal profile or beyond the skills extracted from a CV supplied by a candidate and extension of the attributes of a job description beyond the attributes actually specified, enabling, as will be described below, the user's search request to be modified automatically so as to include in the rank query component of the search query additional attributes that are parent nodes of a child node specified within the search request.
To facilitate this, parent nodes (which may themselves be child nodes) within a taxonomic structure are associated with a code representing their relationship with their child nodes. This can be illustrated by reference to the part of the skills table 230h shown in Figure 9d. As mentioned above, top nodes within the taxonomy are denoted by a single * while direct child nodes are denoted by a ** and child nodes of a child node are denoted by a ***.
In this taxonomy, the top nodes"job types"and "applications"are included for navigation purposes and are too general for searching purposes. Another example of a top node that would be too broad in contact for useful searching would be the top node"programming skills". Accordingly each of these top nodes is associated with a"non-assignable"code shown for simplicity in Figure 9d as NC.
Other parent nodes within the IT taxonomy may themselves provide useful results when used as an attribute within a search. Examples of such assignable parent nodes are the attributes"mark-up languages"and"e-commerce packages"shown in Figure 9d. Each such assignable parent node will be associated with a code defining its relationship to its child node or nodes. As an example,
in the case of the parent node"mark-up languages"then the attribute may be"ACCRUE"so that the score determined by the rank query for"mark-up languages"is
dependent on the number of child nodes that are also present. Thus, for example, a candidate will obtain a higher score for"mark-up languages"skills if he has skills in both HTML and SGML than he will if he only has skills in HTML. This parent-child association is indicated in Figure 9d by the code"ACC".
For other skills, skill in the attribute defined by a child node may be sufficient to indicate that the candidate has good skills in the attribute defined by the parent node. For example, if the parent node attribute as"word processing packages"and the child node attribute skills in commercial word processing packages such as"WordPerfect","Microsoft Word" (both registered Trade Marks), etc. then a person having skills in one of these word processing languages may readily become skilful in another and accordingly the operator associated with the parent node"word processing languages"would be"OR"so that where, for example, a client specifies"Microsoft Word"as essential then the attribute"word processing packages"will be included within the rank query with a maximum weighting, generally one.
In other cases, the relationship between the parent node and the child nodes will be such that the parent node cannot be included in the rank query unless all of the child nodes are present. An example of the situation where this may apply is where the parent node is
"MS Office"and the child nodes are"Microsoft Word", "Microsoft Excell","Microsoft Access"and the other components of MS Office. In this situation, the parent node"MS Office"would be associated with the operator "AND"so that the parent node cannot form part of the search query unless all of the child nodes are present.
Figure 25 shows a flow chart for illustrating widening or extending of a candidate's skills beyond those actually determined by being input by the candidate or extracted by the skills extractor 25 by the steps shown in Figure 20. At step S36, the node within the relevant taxonomy associated with a determined skill is identified and, at step S37, a determination is made as to whether that node is a child node. If the answer is no, then no extension of the skills is possible and the procedure ends.
If, however, the answer is yes at step S37, then the parent node of that child node is identified at step S38 and at step S39 the codes associated with that parent node determined.
At step S40 the recruitment service provider determines whether the parent node is associated with a"nonassignable"code. If so, then the skill cannot be widened and the process ends.
If the answer at step S40 is no, then the application server 22 determines at step S41 whether the parent node
is associated with the operator"AND", meaning that the skills represented by all of the child attributes must be present in the documents being searched for that skill attribute to be added. If the answer at step S41 is yes, then, again it is not possible to widen the skill and the process ends.
If, at step S41, the answer is no, then the application server 22 determines at step S42 whether the operator associated with the parent node is the"ACCRUE"operator.
If the answer is yes, then, at step S43, the application server 22 determines that the skill can be added as an additional candidate skill but weighted in accordance with the number of the child nodes that represent skill attributes that the candidate also has.
If the answer at step S42 is no, then in this embodiment, the application server determines that the operator associated with the parent node is"OR"at step S44, and that the skill associated with the parent node can be added as an additional candidate skill with maximum weighting.
The skill extending procedure for a given skill may end at this stage. However, the recruitment service provider may continue with the skill extending procedure by checking at step S45 whether the parent node is the top node. If the answer is yes, then the widening procedure ends. If however, the answer is no, then the application
server 22 sets the parent node as the child node at step S46 and repeats steps S38 to S45 until the answer at step S45 is no. The steps shown in Figure 25 are repeated for each identified skill of a candidate to provide a list of additional skills for that candidate which may then be added to the skills section of the candidate's CV and personal profile.
The procedure shown in Figure 25 to add additional attributes to those identified from a candidate's CV may in principle be applied for any of the taxonomies within the data store 230 but is particularly applicable to skills because of the fact that different skills may be closely related and expertise in one skill field may be evidence of skill in a subsidiary or related skill field or provide an indication that a candidate will quickly acquire skills in a closely associated skill field.
Specific considerations apply to the location table 230i (Figure 6) however because, generally, candidates are in practice willing to consider jobs in an area larger than that they specify as essential. Accordingly, if, for example, the candidates specifies as the location attribute an area (for example, Norfolk) within a region (in this example East Anglia) then the region will be added as an additional location attribute which will be included in the rank query section of any search query submitted for that candidate. Conversely, job descriptions will tend to specify a region (in this
example East Anglia) while potential candidates will tend to specify an area (Norfolk in this example). Therefore the areas within a region constitute useful additional location information for a job description. As mentioned above the location taxonomy includes forward coding associating a parent with a child in the manner described above to enable movement up the taxonomy to add a region (in this example East Anglia) location attribute to an area (Norfolk in this example) location attribute specified by candidate and includes reverse coding associating a child with a parent to enable movement down the taxonomy to add an area (Norfolk in this example) location attribute to a region (in this example East Anglia) location attribute specified by a client.
Any additional attributes (for example skills attributes) added by the widening procedure discussed above with reference to Figure 25 will be included by the application server 22 in the rank query and not in the filter query part of the search query.
Once the search query, including any additional attributes as discussed above, has been defined as described with reference to Figure 24, then the search query is submitted to the search engine 26 as, where the search engine is the Verity search engine mentioned above, an XML document.
Figure 26 shows the steps carried out by the search engine 26 in response to receipt of a search query. Thus at step S50 the search engine receives the search query. At step S51 the search engine applies the filter query to identify, as the case may be, any candidate CVs in the candidates database 28 or job descriptions in the jobs database 27 matching the filter query. Then at step S52, the search engine applies the rank query to the identified candidate CVs or job descriptions and determines using the weighting factors set out in the rank query, a score for each identified candidate CV or job description and at step S54 returns as the search result information identifying the located CVs or job description together with the ranking information so that the recruitment service provider 1 can access the main database 23 to obtain full details of the CVs and job descriptions and can provide the candidate or the authorised user acting on behalf of a client with an ordered list of job descriptions or candidates.
In the above described example, additional attributes (for example additional skills or wider locations) are added using the taxonomies so as provide the candidate or client with job or candidate details that may be of interest to the candidate or client even though they do not meet the precise job or candidate specification of the client. This inclusion of additional attributes may be carried out automatically or may be effected once the search has been conducted in accordance with the
candidate's or client's specific requirements where the number of identified suitable candidates or jobs is less than a predetermined number or is zero or modified where too large a number of candidates or jobs are located.
Figure 27 is a flow chart to show the latter process.
At step S56 in Figure 27, the application server 22 receives the search results. At step S57 the application server checks to see whether the search results include less than or more than a predetermined number of candidates or jobs. If the answer at step S57 is no then the search results are displayed to the user as before at step S58. If, however, the answer at step S57 is yes, then the application server 22 checks at step S59 whether the search has already been repeated x (for example 3) times. If the answer at step S59 is no, then the application server 22 prompts the user to modify the attributes used to form the search query (step S60).
Where the located number of candidates or jobs is too low, then the user is prompted to relax or widen the search criteria (which may involve instructing the application server 22 to carry out step S36 to S45 set out in Figure 25 at step S59), whereas if located number of candidates or jobs is too high the user is prompted to restrict or tighten the search criteria (which may involve instructing the application server 22 to remove added attributes). Then at step S61, the application server 22 generates a new search query and submits it to the search engine and then returns to step S56 awaiting
the new search results. This process may be repeated one or more times. If the answer at step S59 is yes, then the user will be presented with the current search results or, if no search results are found, then the user will be advised that there are no jobs or candidates matching their search enquiry.
It should be appreciated that, in practice, the application server 22 places further restraints on the search process so that, for example, a job will only be included in the results of a search conducted on behalf of a candidate if that particular job is still valid, that is there is still a vacancy and, for example, the deadline for submitting CVs for interviews has not passed. In addition, candidates will only be included in the searches on behalf of clients for potential candidates where the candidates have indicated that they wish to be head-hunted and where the candidates are not already considering a job offer from a client of the recruitment service provider 1 or have accepted another job available via the recruitment service provider 1. When a candidate has been offered and is considering accepting a job or has just accepted a job, then that candidate is marked"off limits"for head-hunting searches.
Clients may also specify types of candidates that may not be included within a head-hunting search. This may include, for example, current employees, past employees
or people who have previously been turned down for a job by the client or employer on behalf of whom the client is acting. This may be facilitated by providing codes in the candidates file in the candidates store 232 (Figure 6) indicating when and under what circumstances the candidate is off-limits for head-hunting. The recruitment service provider 1 is also configured to avoid a headhunting search on behalf of one client including candidates who are current employees of another client.
A head-hunting search for a particular client may also be ring-fenced so as to define a specific pool of candidates to which the head-hunting search can be conducted so that certain types of candidates can be excluded, for example candidates who are current employees of direct competitors. This may be achieved by incorporating ring fencing codes within the candidate files in the candidate store 232. However, where the client is a sufficiently large client with an ongoing account with the recruitment service provider 1, then a separate candidate store may be provided for that particular client so that only candidates that meet the ring fencing and off limits requirements are included within that candidates store.
This should facilitate head-hunting searches for the particular client.
In the embodiments described above, whether a particular component attribute is considered as essential (a filter query attribute) or preferred (a rank query attribute)
is, as shown in Figure 10, determined by the recruitment service provider 1 as are the relationships between parent and child nodes within a taxonomy as described with reference to Figures 25 and 9b and 9d above. However, especially in the case of a particularly large client, a data store 230 may be specifically adapted for that client so that the client, in consultation with the operators of the recruitment service provider 1, defines which job component attributes are essential and which are preferred and also the relationships between the parent and child nodes so as to determine how the search may be widened and how preferred features are ranked.
This enables very precise tailoring of a head-hunter search to the requirements of a particular client.
In the embodiments described above, communication between a candidate computer system and the recruitment service provider and between a client computer system and the recruitment service provider is via the Internet.
However, as mentioned above, communication could be via any form of network and, moreover, the recruitment service provider 1 may provide facilities for a candidate and/or client to be physically present at a computer terminal provided at a recruitment service provider. In addition, in the embodiments described above, a client does not receive directly the results of a search for likely candidates. However, in the case of a relatively large and well established client, the arrangements with the recruitment service provider may be such as to enable
the client themselves to conduct searches for likely candidates in the manner described above.
In the above described embodiments, CVs, personal profiles and job descriptions are input electronically by the candidate or client, as the case may be. However, the searching facilities described above may also be applied where the CV, personal profile or job description is input to the system by an authorised user at the recruitment service provider on the basis of information communicated to that person by a candidate or client via the network N, via the telephone system or in person.
The search process described above offers a very flexible method of identifying candidates CVs or job descriptions, as the case may be, that match the basic requirements specified in a search query while generating a relative ranking for all documents that do match using a scoring system based on weighting factors. In addition, performing the filter query prior to the ranking query enables the speed of the search to be increased because the ranking query needs only to be formed on the candidates CVs or job descriptions that meet the requirements of the filter query.
In addition, the recruitment service provider described above enables head-hunting services to be tailored to a particular client and to conduct the searches in such a manner that the searches are not necessarily restricted
to the specific attributes specified by the client but will also locate candidates that may be of interest to the client even though they do not meet the precise specification of the client, for example candidates who have related skills and who may be adaptable to training in the skill actually required by the client.
In the above described embodiments, the search engine 26 carries out searches using the index job and candidate databases 27 and 28 and, when the search results are returned to the application server, the application server extracts the full information for the CV or job description, as the case may be, from the main database 23. This facilitates quick searching. However, the present invention may also be applied where searching is carried out directly on the candidate CVs and job descriptions stored in the main database 23.
It will be appreciated that components other than those shown in Figure 5 may be used. Moreover, the tables which adopt a taxonomical structure need not necessarily be the tables described above. Indeed, whether or not a table adopts a taxonomical structure will depend upon, to a large extent, the size of that table. For example, a taxonomical structure may be adopted for the degree and professional qualifications tables where the database stores a large number of degree types and professional qualification types. Also, in the above described embodiments, whether or not the selected attribute (s) for
a particular component can be considered essential is determined at least in part by the recruitment service provider as set out in Figure 10. This need not, however, necessarily be the case and selection as to whether a particular component attribute is essential may be left to the client or candidate, as the case may be, or may be tailored to a particular client. Also whether or not additional attributes for a particular component may be added as described with reference to Figure 25 may be determined by the recruitment service provider 1 or, where the client is large enough, tailored for a specific client.
As described above additional attributes such as skills are determined by the application server. This task may however be carried out by the skills extractor. Also, although as described above the additional attributes are determined and then saved for a particular candidate or job description, these additional attributes may be generated each time a search query is generated and thus the process of adding additional attributes may be carried out by the search engine 26 in response to receipt of a search query.
It will be appreciated that not all components of the recruitment service provider need to physically located in the same building. Rather they may be connected via communications interfaces and a network such as the Internet enabling, for example, the database 23 and/or the search engine to be at a different location or locations from the application server 22.

Claims (91)

  1. CLAIMS : 1. Apparatus for submitting to a search engine search instructions to enable a search to be conducted through a database of search documents each including a plurality of searchable components having one or more attributes, the apparatus comprising: a data store defining, for at least some of the components, a component table wherein attributes of that component are arranged in a hierarchical structure consisting of parent nodes and child nodes with each parent node representing a respective attribute and each child node representing a subsidiary attribute falling within an area defined by the attribute represented by the parent node and with at least some parent nodes being associated with information identifying the relationship between the parent node and its child node or nodes; receiving means for receiving a search request identifying for at least some of the components attributes specified by a user; determining means for accessing the data store to determine whether an attribute specified by a user is represented as a child node in the data store; identifying means for identifying the parent node of a child node where the determining means determines that the attribute specified by a user is represented as a child node in the data store; relationship determining means for determining from the relationship identifying information associated with an identified parent node the relationship between that
    parent node and the child node representing the attribute specified by the user ; and search instructing means for instructing the search engine to carry out a search wherein the search engine instructing means is arranged to determine whether or not the attribute represented by the parent node is to be included in the search in dependence upon the relationship identifying information associated with that parent node.
  2. 2. Apparatus according to claim 1, wherein at least some parent nodes may be associated with information indicating that the associated attribute is not a searchable attribute and cannot be included in a search.
  3. 3. Apparatus according to Claim 1 or 2, wherein the relationship identifying information indicates that the attribute represented by a parent node may be included in the search only if all of the attributes represented by its child nodes are also present or that the parent node may be included in a search if the attribute represented by any of the child nodes is also present.
  4. 4. Apparatus according to claim 1,2 or 3, wherein the search instructing means is arranged to define an attribute as essential or preferred and to cause the search engine to return only search documents including the essential attribute or attributes and to rank the
    returned search documents in accordance the preferred attributes.
  5. 5. Apparatus according to claim 4, wherein the search instructing means is arranged to constrain the search instructions such that at least one attribute specified by a user is defined as essential.
  6. 6. Apparatus according to claim 4 or 5, wherein the search instructing means is arranged to constrain the search instructions such that the attribute specified by a user for a specified component can only be defined as essential.
  7. 7. Apparatus according to claim 4,5 or 6, wherein the search instructing means is arranged to constrain the search instructions such that the attribute specified by a user for a specified component can only be defined as preferred.
  8. 8. Apparatus according to claim 4,5, 6 or 7, wherein the search instructing means is arranged to allow a user to specify that an attribute specified by the user for a component is essential or preferred.
  9. 9. Apparatus according to claim any one of claims 4 to 8, wherein the search instructing means is arranged to determine a score based on a weighted combination of the preferred attributes present in a search document such
    that the search documents are ranked in accordance with their respective scores.
  10. 10. Apparatus according to any one of claims 4 to 9, wherein the search instructing means is arranged to cause an attribute represented by a parent node of a child node representing an attribute included in a search request to be included as a preferred and not an essential attribute.
  11. 11. Apparatus according to claim 10, wherein the search instructing means is arranged to cause the weighting for an attribute represented by such a parent node to be determined by the relationship identifying information associated with that parent node.
  12. 12. Apparatus according to any one of the preceding claims, comprising saving means for saving a user's search request and control means for causing the search to be repeated at a later time and the new search results provided to the user.
  13. 13. Apparatus according to any one of the preceding claims, wherein the data store defines components that may form part of a curriculum vitae (CV) or a job description and the attributes represent information that may be presented in a CV or job description for those components.
  14. 14. Apparatus according to claim 13, wherein the components include at least some of : job level ; functional area; industry sector; company size; language; degree; professional qualification; skills; location; willingness to travel; working hours; salary; keywords describing the person or job.
  15. 15. Apparatus according to claim 13 or 14, comprising CV storage means for storing CVs submitted by potential job candidates.
  16. 16. Apparatus according to claim 15, comprising job description receiving means for receiving a job description from a user in the form of a client comprising or acting on behalf of a employer.
  17. 17. Apparatus according to claim 16, comprising control means for causing the search instructing means to instruct the search engine to carry out a search through CVs in the CV storage means on the basis of a search request having the component attributes specified in the job description.
  18. 18. Apparatus according to claim 16 or 17, comprising control means for causing the search instructing means to instruct the search engine to carry out a search through CVs in the CV storage means on the basis of a search request having component attributes input by the client.
  19. 19. Apparatus according to claim 17 or 18, wherein the control means is arranged to cause the search instructing means to instruct the search engine to omit certain CVs from the search in dependence upon at least one of information provided by the client, information provided by the candidate indicating that they do not wish to be head-hunted or the status of the candidate,
  20. 20. Apparatus according to any one of claims 13 to 19, comprising job data storage means for storing job descriptions submitted by a client comprising or acting on behalf of a employer.
  21. 21. Apparatus according to claim 20, comprising personal profile providing means for providing a personal profile for a user in the form of a job candidate including attributes for at least some of the components and control means for causing the search instructing means to instruct the search engine to carry out a search through job descriptions in the job data storage means on the basis of a search request having the component attributes specified in the personal profile.
  22. 22. Apparatus according to claim 21, wherein a personal profile includes candidate skills and skill extracting means are provided for extracting a candidate's skills from a CV submitted by the candidate.
  23. 23. Apparatus according to claim 20, 21 or 22, comprising control means for causing the search instructing means to instruct the search engine to carry out a search through job descriptions in the job data storage means on the basis of a search request having component attributes input by the candidate.
  24. 24. Apparatus according to claim 20,21, 22 or 23, wherein the control means is arranged to cause the search instructing means to instruct the search engine to omit certain job descriptions from the search in dependence upon at least one of information provided by the client, information provided by the candidate or the status of the job.
  25. 25. Apparatus according to any one of the preceding claims, wherein the apparatus comprises a main database storing the search documents and a separate data base accessible by the search engine and storing component attributes of a search document as indices specified in the data store.
  26. 26. Apparatus for submitting to a search engine search instructions to enable a search to be conducted through a database of searchable documents each including a plurality of searchable components having one or more attributes, the apparatus comprising: receiving means for receiving a search request identifying for component attributes specified by a user;
    specifying means for specifying whether an attribute is essential or preferred ; and search instructing means for instructing the search engine to carry out a search wherein the search engine instructing means is arranged to cause the search engine to return in the search results only search documents deemed by the search engine to have all of the essential attributes and to rank the returned search documents in accordance with the preferred attributes present in the returned search documents.
  27. 27. Apparatus according to claim 26, wherein the search instructing means is arranged to constrain the search instructions such that the attribute specified by a user for a specified component can only be defined as essential.
  28. 28. Apparatus according to claim 26 or 27, wherein the search instructing means is arranged to constrain the search instructions such that the attribute specified by a user for a specified component can only be defined as preferred.
  29. 29. Apparatus according to claim 26,27 or 28, wherein the search instructing means is arranged to allow a user to specify that an attribute specified by the user for a component is essential or preferred.
  30. 30. Apparatus according to claim any one of claims 26 to 29, wherein the search instructing means is arranged to determine a score based on a weighted combination of the
    preferred attributes present in a search document such that the returned search documents are ranked in accordance with their respective scores.
  31. 31. Apparatus according to any one of claims 26 to 30, wherein the components represent job-related components and the search documents comprise at least one of job descriptions and CVs.
  32. 32. Apparatus according to any one of the preceding claims, comprising communication means for communicating with a user over a network.
  33. 33. Apparatus according to any one of the preceding claims, comprising communication means for communicating with a user over the Internet.
  34. 34. Apparatus according to any one of the preceding claims, further comprising the search engine.
  35. 35. Apparatus according to claim 34, wherein the search engine is a structured query based search engine.
  36. 36. A data store for use in apparatus in accordance with any one of the preceding claims, the data store comprising at least one component table wherein attributes of that component are arranged in a hierarchical structure consisting of parent nodes and child nodes with each parent node representing a respective attribute and each child
    node representing a subsidiary attribute falling within an area defined by the attribute represented by the parent node and with at least some parent nodes being associated with information identifying a relationship between the parent node and its child node or nodes.
  37. 37. In a computer processing apparatus, a method of generating search instructions for submission to a search engine to enable a search to be conducted through a database of search documents each including a plurality of searchable components having one or more attributes, the method comprising the steps of: receiving a search request identifying for at least some of the components attributes specified by a user; accessing a data store defining, for at least some of the components, a component table wherein attributes of that component are arranged in a hierarchical structure consisting of parent nodes and child nodes with each parent node representing a respective attribute and each child node representing a subsidiary attribute falling within an area defined by the attribute represented by the parent node and with at least some parent nodes being associated with information identifying the relationship between the parent node and its child node or nodes to determine whether an attribute specified by a user is represented as a child node in the data store; identifying the parent node of a child node where the determining means determines that the attribute specified by a user is represented as a child node in the data store;
    determining from the relationship identifying information associated with an identified parent node the relationship between that parent node and the child node representing the attribute specified by the user; determining whether or not the attribute represented by the parent node is to be included in the search in dependence upon the relationship identifying information associated with that parent node; and instructing the search engine to carry out a search.
  38. 38. A method according to claim 37, wherein at least some parent nodes may be associated with information indicating that the associated attribute is not a searchable attribute and cannot be included in a search.
  39. 39. A method according to Claim 37 or 38, wherein the relationship identifying information indicates that the attribute represented by a parent node may be included in the search only if all of the attributes represented by its child nodes are also present or that the parent node may be included in a search if the attribute represented by any of the child nodes is also present.
  40. 40. A method according to claim 37,38 or 39, wherein the search instructing step defines an attribute as essential or preferred and causes the search engine to return only search documents including the essential attribute or attributes and to rank the returned search documents in accordance the preferred attributes.
  41. 41. A method according to claim 40, wherein the search instructing step constrains the search instructions such that at least one attribute specified by a user is defined as essential.
  42. 42. A method according to claim 40 or 41, wherein the search instructing step constrains the search instructions such that the attribute specified by a user for a specified component can only be defined as essential.
  43. 43. A method according to claim 40,41 or 42, wherein the search instructing step constrains the search instructions such that the attribute specified by a user for a specified component can only be defined as preferred.
  44. 44. A method according to claim 40,41, 42, or 43, wherein the search instructing step allows a user to specify that an attribute specified by the user for a component is essential or preferred.
  45. 45. A method according to claim any one of claims 40 to 44, wherein the search instructing step is arranged to cause a score based on a weighted combination of the preferred attributes present in a search document to be determined and the search documents to be ranked in accordance with their respective scores.
  46. 46. A method according to any one of claims 40 to 45, wherein the search instructing step causes an attribute
    represented by a parent node of a child node representing an attribute included in a search request to be included as a preferred and not an essential attribute.
  47. 47. A method according to claim 46, wherein the search instructing step causes the weighting for an attribute represented by such a parent node to be determined by the relationship identifying information associated with that parent node.
  48. 48. A method according to any one of claims 37 to 47, further comprising the steps of saving a user's search request and causing the search to be repeated at a later time and the new search results provided to the user.
  49. 49. A method according to any one of claims 37 to 48, wherein the data store defines components that may form part of a curriculum vitae (CV) or a job description and the attributes represent information that may be presented in a CV or job description for those components.
  50. 50. A method according to claim 49, wherein the components include at least some of: job level; functional area; industry sector; company size; language; degree; professional qualification; skills; location; willingness to travel; working hours; salary; keywords describing the person or job.
  51. 51. A method according to claim 49 or 50, comprising the step of storing CVs submitted by potential job candidates in CV storage means.
  52. 52. A method according to claim 51, comprising the step of receiving a job description from a user in the form of a client comprising or acting on behalf of a employer.
  53. 53. A method according to claim 52, comprising carrying out the search instructing step by instructing the search engine to carry out a search through CVs in the CV storage means on the basis of a search request having the component attributes specified in the job description.
  54. 54. A method according to claim 52 or 53, comprising carrying out the search instructing step by causing the search engine to carry out a search through CVs in the CV storage means on the basis of a search request having component attributes input by the client.
  55. 55. A method according to claim 53 or 54, comprising causing the search engine to omit certain CVs from the search in dependence upon at least one of information provided by the client, information provided by the candidate indicating that they do not wish to be head-hunted or the status of the candidate,
  56. 56. A method according to any one of claims 49 to 55, comprising the step of storing job descriptions submitted
    by a client comprising or acting on behalf of a employer in job data storage means.
  57. 57. A method according to claim 56, comprising the steps of providing for a user in the form of a job candidate a personal profile including attributes for at least some of the components and causing the search engine to carry out a search through job descriptions in the job data storage means on the basis of a search request having the component attributes specified in the personal profile.
  58. 58. A method according to claim 57, wherein a personal profile includes candidate skills and the method further comprises extracting a candidate's skills from a CV submitted by the candidate.
  59. 59. A method according to claim 56,57 or 58, comprising carrying out the search instructing means by instructing the search engine to carry out a search through job descriptions in the job data storage means on the basis of a search request having component attributes input by the candidate.
  60. 60. A method according to claim 56,57, 58 or 59, comprising carrying out the search instructing step by instructing the search engine to omit certain job descriptions from the search in dependence upon at least one of information provided by the client, information provided by the candidate or the status of the job.
  61. 61. A method according to any one of claims 37 to 60, comprising the steps of using a main database to store search documents and a separate data base accessible by the search engine and storing component attributes of a search document as indices specified in the data store.
  62. 62. In a computer system, a method for submitting to a search engine search instructions to enable a search to be conducted through a database of searchable documents each including a plurality of searchable components having one or more attributes, the method comprising the steps of: receiving a search request identifying for component attributes specified by a user; specifying whether an attribute is essential or preferred; and instructing the search engine to carry out a search wherein the search engine instructing means is arranged to cause the search engine to return in the search results only search documents having all of the essential attributes and to rank the returned search documents in accordance with the preferred attributes present in the returned search documents.
  63. 63. A method according to claim 62, wherein the search instructing step constrains the search instructions such that the attribute specified by a user for a specified component can only be defined as essential.
  64. 64. A method according to claim 62 or 63, wherein the search instructing step constrains the search instructions such that the attribute specified by a user for a specified component can only be defined as preferred.
  65. 65. A method according to claim 62,63 or 64, wherein the search instructing step allows a user to specify that an attribute specified by the user for a component is essential or preferred.
  66. 66. A method according to claim any one of claims 62 to 65, wherein the search instructing step causes a score based on a weighted combination of the preferred attributes present in a search document to be determined such that search documents are ranked in accordance with their respective scores.
  67. 67. A method according to any one of claims 62 to 66, wherein the components represent job-related components and the search documents comprise at least one of job descriptions and CVs.
  68. 68. Apparatus for determining a job or jobs suitable for a candidate, which apparatus comprises: job information receiving means for receiving job information including skills or attributes related to a job; candidate information receiving means for receiving candidate information including skills or attributes possessed by a candidate;
    comparing means for comparing terms in candidate information with terms in job information ; and means for determining that a candidate has a skill or attributed specified in the job information when the job term for a particular skill or attribute is present in or is similar or closely related to a term used in the information provided by the candidate.
  69. 69. Apparatus for determining a job or jobs suitable for a candidate, which apparatus comprises: job information receiving means for receiving job information including skills related to a job; candidate information receiving means for receiving candidate information; means for identifying a candidate's skills from information provided by the candidate; means for adding additional skills to the identified skills in accordance with predetermined rules; means for comparing terms representing the identified and the additional skills with terms used in the job information; means for identifying the jobs requiring the candidate's identified skills; and means for ranking or ordering the identified jobs in accordance with the candidate's additional skills that are determined to be present in the information for the identified jobs.
  70. 70. Apparatus for determining candidates suitable for a particular job, which apparatus comprises : job information receiving means for receiving job information including skills related to the job; candidate information receiving means for receiving candidate information; identifying means of identifying a candidate's skills from information provided by the candidate; adding means for adding additional skills to the identified skills in accordance with predetermined rules; comparing means for comparing terms in the job information with terms representing the candidates identified and additional skills; candidate identifying means for identifying the candidates having as identified skills skills required by the job; and ranking means or ordering the identified candidates in accordance with their additional skills.
  71. 71. Apparatus according to claim 68 or 69, wherein the comparing means is arranged to determine that a candidate has a skill specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information.
  72. 72. Apparatus for determining candidates who may be suitable for a particular job, which apparatus comprises:
    receiving means for receiving job information for the job ; identifying means for identifying a candidate's skills from information provided by the candidate; adding means for adding additional skills to the identified skills in accordance with predetermined rules, comparing means for comparing terms representing the identified and the additional skills with terms used in the job information, and determining means for determining that a candidate has a skill or attribute specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information.
  73. 73. Apparatus according to any one of claims 68 to 72, wherein the adding means are arranged to access a taxonomical skills database and to use the skills database to determine whether or not an additional skill can be added to an identified skill.
  74. 74. Apparatus for alerting a candidate to jobs that may be suitable for that candidate, including: means for storing information relating to a candidate in a candidate's data; means for receiving information relating to jobs; means for comparing the candidate's information with received job information; and
    means for alerting the candidate to the existence of a potentially suitable job when the terms used in the job information for skills or attributes required by the information for that job are present in or are similar or closely related to terms used in the information provided by the candidate.
  75. 75. Apparatus according to claim 74, further comprising: adding means for adding additional skills to skills in the stored candidate information in accordance with predetermined rules; and wherein the comparing means is arranged to compare terms representing the identified and the additional skills with terms used in the job information, and the alerting means is arranged to determine that a job is potentially suitable for a candidate when terms used in the identified and additional skills of a candidate are present in or are similar or closely related to terms used in the job information.
  76. 76. In a computer processing apparatus, a method of determining a job or jobs suitable for a candidate, which method comprises: receiving job information including skills or attributes related to a job; receiving candidate information including skills or attributes possessed by a candidate;
    comparing terms in candidate information with terms in job information ; and determining that a candidate has a skill or attributed specified in the job information when the job term for a particular skill or attribute is present in or is similar or closely related to a term used in the information provided by the candidate.
  77. 77. In a computer processing apparatus, a method determining a job or jobs suitable for a candidate, which method comprises: receiving job information including skills related to a job; receiving candidate information; identifying a candidate's skills from information provided by the candidate; adding additional skills to the identified skills in accordance with predetermined rules; comparing terms representing the identified and the additional skills with terms used in the job information; identifying the jobs requiring the candidate's identified skills; and ranking or ordering the identified jobs in accordance with the candidate's additional skills that are determined to be present in the information for the identified jobs.
  78. 78. In a computer processing apparatus, a method of determining candidates suitable for a particular job, which method comprises:
    receiving job information including skills related to the job ; receiving candidate information; identifying a candidate's skills from information provided by the candidate; adding additional skills to the identified skills in accordance with predetermined rules; comparing terms in the job information with terms representing the candidates identified and additional skills; identifying the candidates having as identified skills skills required by the job; and ranking or ordering the identified candidates in accordance with their additional skills.
  79. 79. A method according to claim 77 or 78, which comprises determining that a candidate has a skill specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information.
  80. 80. In a computer processing apparatus, a method of determining candidates who may be suitable for a particular job, which method comprises: receiving job information for the job; identifying a candidate's skills from information provided by the candidate; adding additional skills to the identified skills in accordance with predetermined rules,
    comparing terms representing the identified and the additional skills with terms used in the job information, and determining that a candidate has a skill or attribute specified in the job information when the term used in the identified and additional skills is present in or is similar or closely related to a term used in the job information.
  81. 81. A method according to any one of claims 77 to 80, which comprises accessing a taxonomical skills database to determine whether or not an additional skill can be added to an identified skill.
  82. 82. In a computer processing apparatus, a method of alerting a candidate to jobs that may be suitable for that candidate, including the steps of: storing information relating to a candidate in a candidate's data; receiving information relating to jobs; comparing the candidate's information with received job information; and alerting the candidate to the existence of a potentially suitable job when the terms used in the job information for skills or attributes required by the information for that job are present in or are similar or closely related to terms used in the information provided by the candidate.
  83. 83. A method according to claim 82, further comprising : adding additional skills to skills in the stored candidate information in accordance with predetermined rules; comparing terms representing the identified and the additional skills with terms used in the job information, and alerting the candidate that a job is potentially suitable when terms used in the identified and additional skills of a candidate are present in or are similar or closely related to terms used in the job information.
  84. 84. A method according to any one of claims 37 to 67 and 75 to 83, further comprising communicating with a user over a network.
  85. 85. A method according to any one of claims 37 to 67 and 75 to 83, further comprising communicating with a user over the Internet.
  86. 86. A method of supplying a user with a signal or document representing results of a requested search, which method comprises using a method in accordance with any one of claims 37 to 69 and 75 to 83 to instruct a search engine to carry out the requested search and supplying the search results provided by the search engine to the user.
  87. 87. A method according to claim 86, which comprises carrying out the search using a structured query based search engine.
  88. 88. A signal carrying processor implementable instructions for causing processing means to become configured to carry out a method in accordance with any one of claims 37 to 67 and 75 to 86.
  89. 89. A computer storage medium carrying processor implementable instructions for causing processing means to become configured to carry out a method in accordance with any one of claims 37 to 67 and 75 to 86.
  90. 90. A signal carrying processor implementable instructions for causing processing means to become configured to carry out a method in accordance with any one of claims 37 to 67 and 75 to 86.
  91. 91. A computer storage medium carrying processor implementable instructions for causing processing means to become configured to carry out a method in accordance with any one of claims 37 to 67 and 75 to 86.
GB0023492A 2000-09-25 2000-09-25 Search method for job/candidate database Withdrawn GB2367157A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB0023492A GB2367157A (en) 2000-09-25 2000-09-25 Search method for job/candidate database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0023492A GB2367157A (en) 2000-09-25 2000-09-25 Search method for job/candidate database

Publications (2)

Publication Number Publication Date
GB0023492D0 GB0023492D0 (en) 2000-11-08
GB2367157A true GB2367157A (en) 2002-03-27

Family

ID=9900097

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0023492A Withdrawn GB2367157A (en) 2000-09-25 2000-09-25 Search method for job/candidate database

Country Status (1)

Country Link
GB (1) GB2367157A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1979837B1 (en) * 2006-01-17 2019-02-27 Robert Bosch GmbH Method for outputting data records, and apparatus therefor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108241646B (en) * 2016-12-23 2021-12-17 阿里巴巴集团控股有限公司 Search matching method and device and recommendation method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0589178A (en) * 1991-09-25 1993-04-09 Nec Corp Data base device
WO1997012334A1 (en) * 1995-09-25 1997-04-03 International Compu Research, Inc. Matching and ranking legal citations
US5832497A (en) * 1995-08-10 1998-11-03 Tmp Worldwide Inc. Electronic automated information exchange and management system
WO1999017242A2 (en) * 1997-09-29 1999-04-08 Network Recruiting, Inc. On-line recruiting system with improved candidate and position profiling
US5897639A (en) * 1996-10-07 1999-04-27 Greef; Arthur Reginald Electronic catalog system and method with enhanced feature-based search
WO2000036535A1 (en) * 1998-12-16 2000-06-22 Cvbase Ag Method and system for structured processing of personal information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0589178A (en) * 1991-09-25 1993-04-09 Nec Corp Data base device
US5832497A (en) * 1995-08-10 1998-11-03 Tmp Worldwide Inc. Electronic automated information exchange and management system
WO1997012334A1 (en) * 1995-09-25 1997-04-03 International Compu Research, Inc. Matching and ranking legal citations
US5897639A (en) * 1996-10-07 1999-04-27 Greef; Arthur Reginald Electronic catalog system and method with enhanced feature-based search
WO1999017242A2 (en) * 1997-09-29 1999-04-08 Network Recruiting, Inc. On-line recruiting system with improved candidate and position profiling
WO2000036535A1 (en) * 1998-12-16 2000-06-22 Cvbase Ag Method and system for structured processing of personal information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACT OF JAPAN & JP 05 089 178 A *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1979837B1 (en) * 2006-01-17 2019-02-27 Robert Bosch GmbH Method for outputting data records, and apparatus therefor

Also Published As

Publication number Publication date
GB0023492D0 (en) 2000-11-08

Similar Documents

Publication Publication Date Title
US6385620B1 (en) System and method for the management of candidate recruiting information
US6598046B1 (en) System and method for retrieving documents responsive to a given user's role and scenario
US7082418B2 (en) System and method for network-based personalized education environment
US8712816B2 (en) Computerized apparatus for identifying industries for potential transfer of a job function
US8019749B2 (en) System, method, and user interface for organizing and searching information
US20050060283A1 (en) Content management system for creating and maintaining a database of information utilizing user experiences
US20030176995A1 (en) Translation mediate system, translation mediate server and translation mediate method
US20060265270A1 (en) Intelligent job matching system and method
US20050086204A1 (en) System and method for searching date sources
US20080222133A1 (en) System that automatically identifies key words & key texts from a source document, such as a job description, and apply both (key words & text) as context in the automatic matching with another document, such as a resume, to produce a numerically scored result.
US7076497B2 (en) Method for providing and exchanging search terms between internet site promoters
EP1027671A2 (en) On-line recruiting system with improved candidate and position profiling
US20060074843A1 (en) World wide web directory for providing live links
US20050125273A1 (en) System and method for interactive coordination of time schedules and project opportunities
US8024323B1 (en) Natural language search for audience
US20090037235A1 (en) System that automatically identifies a Candidate for hiring by using a composite score comprised of a Spec Score generated by a Candidates answers to questions and an Industry Score based on a database of key words & key texts compiled from source documents, such as job descriptions
US20080221910A1 (en) Scientific Formula and System using a slider bar which derives standardized data and faster search processes in a Personnel Recruiting System that generates more accurate results
GB2367157A (en) Search method for job/candidate database
US20060206344A1 (en) Scientific Formula and System which derives and creates a standardized data table in a Personnel Recruiting System
Manjunatha Selection criteria for electronic resources
US20150039291A1 (en) Using a group of CVs and Job Descriptions in a database to establish a library of contextual words and phrases against which documents (CVs or Job Descriptions) can be matched, scored, and ranked.
US8548928B1 (en) Method and system for providing search assistance via a communications network
US20060085736A1 (en) A Scientific Formula and System which derives standardized data and faster search processes in a Personnel Recruiting System, that generates more accurate results
WO2005029281A2 (en) Content management system for creating and maintaining a database of information utilizing user experiences
Kießling et al. Mobile search in a preference world

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)