EP1272944A1 - Systeme de recherche et d'aide au choix - Google Patents
Systeme de recherche et d'aide au choixInfo
- Publication number
- EP1272944A1 EP1272944A1 EP01925630A EP01925630A EP1272944A1 EP 1272944 A1 EP1272944 A1 EP 1272944A1 EP 01925630 A EP01925630 A EP 01925630A EP 01925630 A EP01925630 A EP 01925630A EP 1272944 A1 EP1272944 A1 EP 1272944A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- list
- attributes
- attribute
- contents
- content
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Definitions
- the present invention relates to a data processing method for searching and assisting in the selection of objects from a set of objects stored in the form of cards in a data processing system, in which each object is associated with the content of each of several attributes, as well as a data processing system and man / machine interface for the implementation of this process.
- object designates any material or immaterial entity capable of being described by a certain number of attributes, hereinafter also called containers, the attributes being able to present one of several values given hereinafter called contents.
- attributes In an ordinary database, all the attributes or containers are common to all the files and the information in a file consists of the list of associated content. Searching on these databases, for example, calls for the use of keywords, crossing criteria, etc. In very many cases, research on these conventional databases can lead to the lack of response or to too many responses.
- the invention aims to provide a data processing system for searching for objects which guarantees that users are always presented with answers, and this in the form of short lists of relevant answers, while using computer means of limited power. and by offering a high speed of treatment and a reasonable value for money.
- the invention relates to a data processing system for the selection of objects from a set of objects stored in the form of files in said system, in which each object is identified by the content of each of several attributes, comprising: ai) means for storing a hierarchically structured table of all the attributes and contents associated with said objects, in which said attributes are classified hierarchically into several ranks, each attribute of a secondary rank content of an attribute of hierarchically higher rank, and each pair consisting of an attribute and its content is associated with a specific code, a2) means of storage, for each memorized object, of a file in which each attribute of said object and its content is identified by the specific code assigned to said attribute-content pair in said table, and b) means of calculation and interface for, in response to a request for searching for an applicant: c) building a first table (S) containing all of the memorized files relating to said request, d) building, by means of said codes, in accordance with said hierarchical structure of attribute-content pairs, a second table (C
- the search takes place in stages, each stage involving the choice of an attribute or container among those available and the choice of content among those available in the attribute or container chosen.
- Each step leads to presenting only relevant information to the applicant since it is only presented with search criteria which lead to answers and since search criteria are only presented to it as long as there are answers.
- said calculation and interface means e) for presenting successive choices of attributes and contents to said requester, in the hierarchical order defined in said second table (C), comprise: e1) means for establishing, by exploring said second table (C) at the highest hierarchical rank not yet explored, a list of attributes having at least two contents represented in said first table (S), and one of the two means comprising: e2) means for presenting said list of attributes to said requester with a view to choosing one of said attributes if said list of attributes comprises at least two attributes, and e3) means for directly presenting the contents of a attribute to said requester with a view to choosing one of said contents if said list of attributes includes only said attribute.
- said means e2) for presenting said list of attributes to said requester with a view to choosing one of said attributes, if said list of attributes comprises at least two attributes comprises: e21) means for establishing, in response to the choice of one of said attributes by said requester, a list of contents of said chosen attribute represented in said first table (S), e22) means for presenting said list of contents to said requester for the purpose of choice of one of said contents.
- said means e1) comprise means for establishing, for each of said attributes of said list of attributes, a list of the contents of this attribute which are represented in said first table (S), and said means e2) comprise means for presenting to the requester all the attribute-content pairs selected by said means e1), with a view to the choice of one of said pairs by said requester.
- the invention also includes one or more of the following characteristics considered alone or in combination: said condition of operation g) is satisfied if said list of attributes established by said means e1) is empty. - Said condition of the operation implemented by said means g) is satisfied if the number of cards of said first table (S) is less than a predetermined value.
- said calculating and interface means comprise means for, following said operations implemented by said means c) and f), presenting to said requester the number of said cards from the first table (S).
- said calculation and interface means include means for, following said operations implemented by said means c) and f), presenting to said requester the list of attribute-content pairs previously selected.
- calculation and interface means comprise means for, following said operations implemented by said means c) and f), present to said requester the list of attribute-content pairs which, although never having been selected by the applicant, are nevertheless common to all the remaining files (F) - said calculation and interface means include means for:
- - define at least one of said attribute-content pairs constituting a priority search criterion, - constructing said first table (S) and said second table (C) of said operations implemented by said means c) and d) by selecting, from said set of files, a subset of said files satisfying said criterion, and - executing said operations implemented by said means e) to h) by means of said subset of files, - said definition of a priority search criterion comprises the step consisting in offering said applicant to choose at least one priority criterion consecutively to said step e), adding said priority criterion chosen by said requester to a list of priority criteria, and developing said subset of files by selecting files from said set meeting the priority criteria of said list.
- said means for defining a priority search criterion include means for offering said applicant to choose at least one priority criterion following said operation implemented by said means e), means for adding said priority criterion chosen by said applicant to a list (P) of priority criteria, and means for developing said subset of files by selecting files from said set satisfying the priority criteria of said list (P).
- said system has a client-server architecture, said interface means comprising a client terminal.
- FIG. 1 is a table illustrating the hierarchical structure of all the attributes or containers and the contents associated with the objects in a system according to the invention
- Figure 2 is a table similar to that of Figure 1 illustrating the containers and contents in the case of a practical application;
- FIG. 3 to 9 are flowcharts implemented by the system according to the invention
- FIG. 10 to 13 are tables illustrating an example of coding of content implemented by the system according to the invention.
- Table T of Figure 1 ⁇ which illustrates the hierarchical structure of all the containers and contents associated with objects stored in a computer resource and among which a search is likely to be performed.
- F sheets consisting of: - on the one hand, various information on which it is not possible to carry out research by means of the mechanisms of the invention, for example texts, images, digital data and / or other information of any kind ;
- container-content pairs (cna-cnu) likely each to have one of several contents, which belong to the hierarchical table of FIG. 1 and which serve both for various information and for criteria of research.
- the cna-cnu pairs of a file F constitute a subset of the table T in FIG. 1 and have the following property: if, in the table T, there are cna-cnu sub-couples of a couple cna- cnu determined belonging to the file, then there exists in the file one of these sub-couples, that is to say that the file is complete.
- the containers and contents are classified hierarchically into several rows A, B, C ... and each container of a secondary rank is attached to a content of a containing a hierarchically higher rank.
- a level or rank A of the table is provided for a Container 1 and a Container 2 corresponding to the main classification themes.
- Container 1 can have several possible values or contents, namely cnu 1a, cnu 1b, cnu 1c, At level or hierarchical rank B corresponding to sub-themes, there are four containers.
- the cnulal and cnu1a2 containers are attached to the cnu 1a content.
- the cnulbl and cnu1 2 containers are attached to the cnulb content.
- the cnulal container can have two possible values or contents, namely cnulala or cnulalb.
- the content can be "Apartment” or "House”
- the content can be "Sale” or “Rental”, etc.
- the containers are each attached to one of the contents of the higher hierarchical rank: the containers “Number of rooms” and “Floor” are attached to the “Apartment” content and the container “Land” is attached to the "House” content.
- each container-content pair is unique and can be associated with a specific code making it possible to designate said pairs in sheets F.
- FIGS. 3 to 9 illustrate the mechanisms used to carry out a search among a set of files F coded in accordance with the hierarchical structure of the table in FIG. 1.
- Step 1 corresponds to the start of a search, that is to say the preparation of tables S and C intended to reflect all the existing files F among which the search must be carried out.
- Table S is a table of selected records F and their container-content pairs, this first table being constantly updated during the search.
- the second table C is a table of the contents present in any one of the files of the first table S. If each file F is considered as a subset of contents, then table C can be considered as the set constituted by the union of the subsets F, it being understood that each container-content pair is only represented once in the table C. In addition, this table is organized in accordance with the hierarchical structure of the table T to reflect the hierarchy container-content pairs. This means that the containers are only represented implicitly in this table, since each content has a specific code, from which its container can be deduced as shown in table T. If, following the start of the research in step 1, it turns out that the total number of memorized files among which the search is carried out is less than a predetermined value, test 2 leads directly in 3 to the presentation to the applicant of the list of all the files existing.
- step 1 If the number of files in the table S developed in step 1 is greater than said predetermined value, that is to say if it is not a short list, we go through the test
- step 4 corresponds to a module, a first embodiment of which is illustrated in FIG. 4 and a second embodiment in FIG. 5.
- step or module 4 it is examined in 5 whether there is still a possibility of choice of container / content. If there is still at least one choice, test 5 brings you back to the entry for test 2. Otherwise, you go directly to 3 to present the list of files found.
- the number of files presented to the applicant is greater than a predetermined parameter, this means that it is desirable to improve the search by refining the criteria containing (attribute) -content depending on those chosen.
- search criteria containers and their contents
- contents for one or more existing containers (attributes).
- it can be in this case provided an order to notify the manager of the definition of criteria.
- FIG. 4 illustrating the first embodiment 4.1 of module 4 of FIG. 3.
- This module 4.1 begins with a step 10 entitled "Divisible containers" and illustrated by the flowcharts of FIGS. 6 and 7.
- This module 10 has the purpose of creating a list of containers by hierarchical search in the second table C of the containers having at least two contents represented in the first table S.
- the module 10 begins at step 100 with the exploration of the second table C at the highest hierarchical rank not yet explored to determine which are the container-content pairs of this hierarchical rank.
- each container is treated as will be described with reference to FIG. 7 and at 102 a list of containers is provided for presentation to the applicant as will be described below.
- the step or module 101 begins with step 200 consisting in searching whether the container treated has content represented in table S. If no content is found in 201, that is ie if the result is R0, we go directly to 202 at the end of the processing of the container concerned. If the response to the test 201 is positive, we go to step 203 consisting in finding whether the container treated has a second content represented in the table S. If the result of the test 204 is negative, that is to say if the container has only one content R1, the container is ignored, but the search is extended to 205 by also processing all the containers depending on the content found.
- the result is Rn, that is to say that we found in table S at least two different contents for the container treated.
- the process 101 for processing a container of FIG. 7 is repeated for each of the containers selected in step 100 of FIG. 6, until all the selected containers have been used up.
- test 11 if it turns out in test 11 that the list of containers 102 is empty, that is to say that there is no choice to offer the applicant as indicated in 12, we then go to 3 (figure 3) to present the list of files found. If by virtue of test 11, it turns out that the list of containers 102 is not empty, it is examined at 13 whether this list comprises one or more containers. If this list contains several containers, they are presented to the applicant at 14 and the latter selects one of the containers at 15. When the requester has chosen a container at 15 or if the test 13 determines that the list of containers 102 contains only one container, we go to the content selection module of step 16 consisting in creating a list of represented contents. in table S for the single container or the container chosen at 15 by the requestor.
- the first step 300 of the content selection module 16 consists in locating in table C the container chosen at 15 or the single container from the list 102, hereinafter called DAC, then finding the first CNU content of this container.
- the next step 301 consists in searching if the couple CNA-CNU is part of one of the cards of the table S. If it turns out in 302 that this is the case, then we go to step 303 where l 'we add this CNU content to the list of contents of the CNA container.
- the number of files in table S including the CNA-CNU pair is also calculated in 303 and a list of files in table S is created which includes the couple CNA-CNU.
- test 304 we determine if the DAC container contains other content. If so, we go to 305 to the following content and then we return to step 301 to determine if the new CNA-CNU pair is part of one of the cards in table S. We then repeat steps 302, 303 and 304 until all contents of the CNA container have been examined. If, during this process, it turns out that a CNA-CNU couple is not part of one of the cards in table S, the response to test 302 is negative and we then go to test 304, which means that the content in question is not added to the results list.
- step 17 of FIG. 4 the list of selected contents is provided at 306 and is presented to the applicant in step 17 of FIG. 4.
- the applicant proceeds in 18 to choose a content among those presented to it and then we go to step 19 of reduction which consists in deleting from table S all the files which do not contain one of the container-content pairs indicated by the applicant.
- step 19 of reduction which consists in deleting from table S all the files which do not contain one of the container-content pairs indicated by the applicant.
- step 19 of reduction which consists in deleting from table S all the files which do not contain one of the container-content pairs indicated by the applicant.
- step 20 which indicates that the applicant has made a choice of container in 15 and of content in 18, we return to the entry of test 2 of FIG. 3 to determine whether the list of cards contained in table S is a short list or not.
- the search is finished and we go to step 3 of presentation of the found files, while in the negative, we repeat the process of module 4 described above by successively exploring the containers and contained in the hierarchical order until a short list is obtained.
- a short list is a list whose number of files is less than or equal to a predetermined value, for example ten files.
- FIG. 5 illustrates a second embodiment 4.2 of module 4 of FIG. 3 in which all the divisible containers by module 10 of FIG. 6 are determined, and all the possible contents of each of the divisible containers found by means of the module 16 of FIG. 8.
- Step 24 indicates that the choice of a container-content pair has been made and, as for the module of figure 4, one returns then to the entry of the test 2. As indicated previously, the process of Successive Selections then continues until obtaining a short list.
- FIG. 9 illustrates an alternative embodiment of the mechanisms of FIGS. 3 to 8 according to which the process of successive selections can be initialized by application of priority criteria necessarily leading to one or more responses.
- priority selection criteria can be predefined, for example:
- step 401 corresponds to this optional predefinition of one or more priority criteria.
- P the list of priority criteria.
- the next step 402 consists in automatically applying to the set of files F all the priority criteria which have been predefined, in order to prepare the tables S and C described above. With the files remaining at the end of step 402, the algorithm "successive selections" in FIG. 3 is then executed in 403 (steps 401 and 402 corresponding to phase 1 of initialization of the search), which implies successive choices by the applicant as described above.
- the applicant has the option in 404 of choosing one or more priority criteria.
- a positive response to test 404 therefore leads to completing in 405 the list P of the priority criteria already obtained by those who have just been newly chosen.
- the list P of priority criteria gives at least one answer.
- step 402 that is to say that the priority criteria of the list P completed in 405 are automatically applied to all the files F and the process of "successive selections" is restarted. until a negative answer is given to test 404.
- FIGS. 10 to 13 illustrate an example of coding of the contents by bit tables for the implementation of the mechanism described above.
- FIG. 10 is a representation in the form of a tree structure equivalent to the table T of FIG. 1.
- each content of the tree hierarchical table is numbered in the order of encounter according to a recursive scan of the tree structure: c is thus that the first content which depends on the container Cna1 of level or hierarchical rank A carries the number 1 (Cnu1 in FIG. 10), the contents of the container Cna1.1.1 (rank B) depending on Cnu1 carry the numbers 2 and 3 (Cnu2 and Cnu3), etc.
- the sheet F describing each object consists of a table with as many memory locations as there are contents in the table or tree structure of Figure 10, in this case 9 in the example considered.
- Each of these memory locations can take the logical value 1 if the corresponding content of the table T is included in the file and 0 otherwise.
- the position of each memory location in the file F that is to say its address, corresponds to a content number assigned in the table T as shown in Figure 11.
- each memory location of the file F is associated in a one-to-one way to a container-content pair of the table T.
- the table S is made up of all the files F which have been selected until then. Referring to Figure 12, we will assume that after a first choice of a container Cna1 by an applicant, there are four files F1, F2, F3 and F4 in table S. These files have the following contents:
- F1 Cnu1, Cnu3, Cnu7 and Cnu ⁇
- F2 Cnu4, Cnu5, Cnu7 and Cnu9
- the table C is therefore organized in the same way as a file F: the bits or memory locations constituting this table are arranged in the order of a hierarchical exploration of the contents of the table T.
- the order number of the bit also allows to find in one or more annex files not shown (for example one file per language) the description of the content and vice versa.
- This arrangement also makes it possible to group together the bits of the contents which depend on the same container whatever the hierarchical difference between the container and the contents considered. In the example considered, the order is: Cnu1, Cnu2, Cnu3, Cnu4, Cnu5, Cnu6, Cnu7, Cnu8, Cnu9.
- This coding mode has the advantage of allowing a very compact representation of the table T, the files F and the tables S and C if the average number of contents per container of the table T is low. We can indeed represent several contents in a single machine word.
- This coding and organization mode also offers the possibility of making a logical OR especially a machine word, therefore on several contents at the same time, which saves considerable time in finding the contents represented in any of the remaining records.
- the module 16 for selecting the contents of FIG. 8 it will be possible to simultaneously test several contents (as many as bits in a machine word) and this module will be accelerated thereby.
- the disadvantage is that the initialization of the search requires the scanning of all the files, which can be circumvented by constituting pre-sorted auxiliary tables to analyze the first criterion introduced.
- the table S in FIG. 12 consists of a table of pointers to each of the files F selected from the set of files among which the search is carried out.
- table S contains the list of all the files F and a marker indicates the total number of files selected.
- all the cards up to the marker are analyzed, and the selected cards are pushed to one end of the table and the marker is moved to indicate the new number of cards remaining.
- the rejected cards can be packed towards the other end of the table, which allows it to be segmented according to the search stages and therefore to quickly go back on a research stage.
- the described method and system are particularly suitable for multi-criteria research when the research theme allows a hierarchy of these criteria.
- the tree structure or hierarchical structure of table T varies according to the theme considered, that is to say that it is not the same depending on whether this theme concerns for example the automobile, real estate, household appliances, etc.
- the search method described can be preceded by a search in traditional mode, for example by keyword, to select the theme which will constitute the root R of all the containers among which the search will be carried out as described with reference to FIGS. 3 to 9.
- the data processing system for the implementation of the mechanisms described requires data storage means for the storage of the table T, the files F and the tables C and S, calculation means for the implementation of the process described with reference to FIGS. 3 to 9 and interface means for presenting choices to the applicant, to allow him to make these choices and to present to him the result of his choices.
- the data processing system can be of any type and it can in particular be a system with client-server architecture used via a network such as the Internet from a client terminal such as a personal computer PC, mobile phone operated by input or by voice recognition, etc.
- the choices offered to an applicant can be offered to him on the screen of his terminal in the form of dynamic pages composed, for example, of one or more of the following windows:
- - a window representing reactive vertical histograms illustrating prices, measures or qualities (weight, size, surface, area, distance, time, period, color); - a window of remaining possibilities with the selection criteria (attributes or containers) still possible and, for each of these criteria, the list of available values or content with the number of responses opposite, presented in the form of horizontal histograms or drop-down menus;
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Ce système comprend des moyens pour coder les données relatives auxdits objets en (a) établissant un tableau (T) à structure hiérarchique de l'ensemble des attributs (Cna) et contenus (Cnu) associés auxdits objets, et (b) en établissant pour chaque objet mémorisé une fiche dans laquelle chaque attribut dudit objet et son contenu est identifié par le code spécifique assigné audit couple attribut-contenu dans ledit tableau. Ce système comprend des moyens de calcul et d'interface pour, en réponse à une requête de recherche d'un requérant, (c) construire une première table contenant l'ensemble des fiches mémorisées relatives à une requête, (d) construire une deuxième table des contenus présents dans l'une quelconque desdites fiches de la première table, (e) présenter des choix successifs d'attributs et de contenus audit requérant, dans l'ordre hiérarchique défini dans ladite deuxième table, (f) actualiser ladite première table en sélectionnant dans ladite première table les fiches comportant ledit couple attribut-contenu sélectionné, (g) répéter lesdites opérations e) et f) jusqu'à satisfaction d'au moins une condition prédéterminée, et (h) présenter le résultat de ladite recherche audit requérant lorsque ladite condition est satisfaite.
Description
SYSTEME DE RECHERCHE ET D'AIDE AU CHOIX
La présente invention concerne un procédé de traitement de données pour la recherche et l'aide au choix d'objets parmi un ensemble d'objets mémorisés sous forme de fiches dans un système de traitement de données, dans lequel chaque objet est associé au contenu de chacun de plusieurs attributs, ainsi qu'un système de traitement de données et d'interface homme/machine pour la mise en oeuvre de ce procédé.
Dans la suite, le terme objet désigne toute entité matérielle ou immatérielle susceptible d'être décrite par un certain nombre d'attributs, ci-après appelés également contenants, les attributs pouvant présenter l'une de plusieurs valeurs données ci-après appelées contenus. Dans une base de données ordinaire, l'ensemble des attributs ou contenants est commun à toutes les fiches et l'information d'une fiche consiste en la liste des contenus associés. La recherche sur ces bases de données fait par exemple appel à l'utilisation de mots-clés, au croisement de critères, etc. Dans de très nombreux cas, les recherches sur ces bases de données conventionnelles peuvent conduire à l'absence de réponse ou à un trop grand nombre de réponses.
C'est ainsi que, pour trouver un site Web sur le réseau Internet, il faut consulter des moteurs de recherche qui, selon les cas, ne donnent aucune réponse ou proposent plusieurs milliers ou dizaines de milliers de réponses. L'usager, en présence d'une longue liste de réponse, ne peut pas affiner sa question et, de plus, il ne sait pas quelle pertinence attendre des réponses proposées.
L'invention vise à fournir un système de traitement de données pour la recherche d'objets qui garantisse de toujours présenter aux utilisateurs des réponses, et ceci sous forme de listes courtes de réponses pertinentes, tout en faisant appel à des moyens informatiques de puissance limitée et en offrant une grande rapidité de traitement et un- rapport qualité/coût raisonnable.
A cet effet, l'invention a pour objet un système de traitement de données pour la sélection d'objets parmi un ensemble d'objet mémorisés sous forme de fiches dans ledit système, dans lequel chaque objet est identifié par le contenu de chacun de plusieurs attributs, comprenant : ai) des moyens de stockage d'un tableau à structure hiérarchique de l'ensemble des attributs et contenus associés auxdits objets, dans lequel lesdits attributs sont classés hiérarchiquement en plusieurs rangs, chaque attribut d'un rang secondairëTest rattaché à un contenu d'un attribut de rang hiérarchiquement supérieur, et à chaque couple constitué d'un attribut et de son contenu est associé un code spécifique, a2) des moyens de stockage, pour chaque objet mémorisé, d'une fiche dans laquelle chaque attribut dudit objet et son contenu est identifié par le code spécifique assigné audit couple attribut-contenu dans ledit tableau, et
b) des moyens de calcul et d'interface pour, en réponse à une requête de recherche d'un requérant: c) construire une première table (S) contenant l'ensemble des fiches mémorisées relatives à de ladite requête, d) construire, au moyen desdits codes, conformément à ladite structure hiérarchique des couples attribut-contenu, une deuxième table (C) des contenus présents dans l'une quelconque desdites fiches de la première table (S), e) présenter des choix successifs d'attributs et de contenus audit requérant, dans l'ordre hiérarchique défini dans ladite deuxième table (C), f) actualiser ladite première table (S) en réponse au choix par ledit requérant d'un couple attribut-contenu consécutivement à ladite étape e), en sélectionnant dans ladite première table (S) les fiches comportant ledit couple attribut-contenu sélectionné, g) répéter lesdites opérations e) et f) jusqu'à satisfaction d'au moins une condition prédéterminée, et h) présenter le résultat de ladite recherche audit requérant lorsque ladite condition est satisfaite.
Ainsi, selon le système de l'invention, la recherche se déroule par étapes, chaque étape impliquant le choix d'un attribut ou contenant parmi ceux disponibles et le choix d'un contenu parmi ceux disponibles dans l'attribut ou contenant choisi. Chaque étape conduit à ne présenter que des informations pertinentes au requérant puisqu'on ne lui présente que des critères de recherche qui débouchent sur des réponses et que des critères de recherche ne lui sont présentés que tant qu'il y a des réponses.
Suivant une caractéristique de l'invention, lesdits moyens de calcul et d'interface e) pour présenter des choix successifs d'attributs et de contenus audit requérant, dans l'ordre hiérarchique défini dans ladite deuxième table (C), comprennent : e1) des moyens pour établir, par exploration de ladite deuxième table (C) au rang hiérarchique le plus élevé non encore exploré, une liste d'attributs ayant au moins deux contenus représentés dans ladite première table (S), et l'un des deux moyens comprenant : e2) des moyens pour présenter ladite liste d'attributs audit requérant en vue du choix de l'un desdits attributs si ladite liste d'attributs comprend au moins deux attributs, et e3) des moyens pour présenter directement les contenus d'un attribut audit requérant en vue du choix de l'un desdits contenus si ladite liste d'attributs ne comprend que ledit attribut.
Suivant un mode de réalisation de l'invention, lesdits moyens e2) pour présenter ladite liste d'attributs audit requérant en vue du choix de l'un desdits attributs, si ladite liste d'attributs comprend au moins deux attributs, comprennent : e21) des moyens pour établir, en réponse au choix de l'un desdits attributs par ledit requérant, une liste de contenus dudit attribut choisi représentés dans ladite première table (S), e22) des moyens pour présenter ladite liste de contenus audit requérant en vue du choix de l'un desdits contenus. Suivant un autre mode de réalisation de l'invention: - lesdits moyens e1) comprennent des moyens d'établissement, pour chacun desdits attributs de ladite liste d'attributs, d'une liste des contenus de cet attribut qui sont représentés dans ladite première table (S), et lesdits moyens e2) comprennent des moyens de présentation audit requérant de tous les couples attribut-contenu sélectionnés par lesdits moyens e1), en vue du choix de l'un desdits couples par ledit requérant.
L'invention comporte également une ou plusieurs des caractéristiques suivantes considérées seules ou en combinaison : ladite condition de l'opération g) est satisfaite si ladite liste d'attributs établie par lesdits moyens e1) est vide. - ladite condition de l'opération mise en œuvre par lesdits moyens g) est satisfaite si le nombre de fiches de ladite première table (S) est inférieur à une valeur prédéterminée. lesdits moyens de calcul et d'interface comprennent des moyens pour, consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant le nombre desdites fiches de la première table (S). lesdits moyens de calcul et d'interface comprennent des moyens pour, consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant la liste des couples attribut-contenu précédemment sélectionnés. - lesdits moyens de calcul et d'interface comprennent des moyens pour, consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant la liste des couples attribut-contenu qui, bien que n'ayant jamais été sélectionnés par le requérant, sont néanmoins communs à toutes les fiches (F) restantes - lesdits moyens de calcul et d'interface comprennent des moyens pour :
- définir au moins un desdits couples attribut-contenu constituant un critère de recherche prioritaire,
- construire ladite première table (S) et ladite deuxième table (C) desdites opérations mises en œuvre par lesdits moyens c) et d) en sélectionnant, parmi ledit ensemble de fiches, un sous-ensemble desdites fiches satisfaisant audit critère, et - exécuter lesdites opérations mises en œuvre par lesdits moyens e) à h) au moyen dudit sous-ensemble de fiches, - ladite définition d'un critère de recherche prioritaire comprend l'étape consistant à offrir audit requérant de choisir au moins un critère prioritaire consécutivement à ladite étape e), à ajouter ledit critère prioritaire choisi par ledit requérant à une liste de critères prioritaires, et à élaborer ledit sous-ensemble de fiches par sélection des fiches dudit ensemble satisfaisant aux critères prioritaires de ladite liste. lesdits moyens de définition d'un critère de recherche prioritaire comprennent des moyens pour offrir audit requérant de choisir au moins un critère prioritaire consécutivement à ladite opération mise en œuvre par lesdits moyens e), des moyens pour ajouter ledit critère prioritaire choisi par ledit requérant à une liste (P) de critères prioritaires, et des moyens pour élaborer ledit sous-ensemble de fiches par sélection des fiches dudit ensemble satisfaisant aux critères prioritaires de ladite liste (P). ledit système présente une architecture client-serveur, lesdits moyens d'interface comprenant un terminal client. D'autres caractéristiques et avantages de l'invention ressortiront de la description qui va suivre de modes de réalisation donnés uniquement à titre d'exemples et illustrés par les dessins annexés sur lesquels :
- la figure 1 est un tableau illustrant la structure hiérarchique de l'ensemble des attributs ou contenants et des contenus associés aux objets dans un système selon l'invention ;
- la figure 2 est un tableau similaire à celui de la figure 1 illustrant les contenants et contenus dans le cas d'une application pratique ;
- les figures 3 à 9 sont des organigrammes mis en œuvre par le système selon l'invention, et - les figures 10 à 13 sont des tables illustrant un exemple de codage des contenus mis en oeuvre par le système selon selon l'invention.
On se reportera tout d'abord au tableau T de la figure 1~qui illustre la structure hiérarchique de l'ensemble des contenants et contenus associés aux objets stockés dans une ressource informatique et parmi lesquels une recherche est susceptible d'être effectuée.
Ces objets sont représentés par des fiches F constituées :
- d'une part, d'informations diverses sur lesquelles il n'est pas possible d'effectuer des recherches au moyen des mécanismes de l'invention, par exemple des textes, des images, données numériques et/ou autres informations de toute nature ;
- d'autre part, de couples contenants-contenus (cna-cnu) susceptibles d'avoir chacun l'un parmi plusieurs contenus, qui appartiennent au tableau hiérarchique de la figure 1 et qui servent aussi bien d'informations diverses que de critères de recherche.
Les couples cna-cnu d'une fiche F constituent un sous-ensemble du tableau T de la figure 1 et présentent la propriété suivante : si, dans le tableau T, il existe des sous- couples cna-cnu d'un couple cna-cnu déterminé appartenant à la fiche, alors il existe dans la fiche un de ces sous-couples, c'est-à-dire que la fiche est complète.
Ainsi que le montre la figure 1 , dans le tableau T à structure hiérarchique, les contenants et contenus sont classés hiérarchiquement en plusieurs rangs A, B, C ... et chaque contenant d'un rang secondaire est rattaché à un contenu d'un contenant d'un rang hiérarchiquement supérieur. C'est ainsi qu'un niveau ou rang A du tableau sont prévus un Contenant 1 et un Contenant 2 correspondant à des thèmes principaux de classement. Le Contenant 1 peut avoir plusieurs valeurs ou contenus possibles, à savoir cnu 1a, cnu 1b, cnu 1c, Au niveau ou rang hiérarchique B correspondant à des sous- thèmes, il existe quatre contenants. Les contenants cnulal et cnu1a2 sont rattachés au contenu cnu 1a. De même, les contenants cnulbl et cnu1 2 sont rattachés au contenu cnulb. A ce même niveau ou rang hiérarchique B, le contenant cnulal peut présenter deux valeurs ou contenus possibles, à savoir cnulala ou cnulalb. En parcourant l'arborescence du tableau hiérarchique T de la figure 1 , il est ainsi possible de décrire la totalité des couples contenant-contenu de l'une quelconque des fiches F, ainsi que les liens hiérarchiques de ces différents couples dans la fiche. La figure 2 illustre l'application du tableau T de la figure 1 au domaine de l'immobilier. C'est ainsi que les contenants du niveau ou rang A supérieur comprennent le type de bien immobilier, la nature de la transaction sur ce bien et le lieu où est localisé le bien. Pour le contenant "Type de bien", le contenu peut être "Appartement" ou "Maison", pour le contenant "Transaction", le contenu peut être "Vente" ou "Location", etc. Au rang ou niveau hiérarchique B suivant, les contenants (Nombres de pièces, Etage, Terrain, Prix, etc.) sont rattachés chacun à l'un des contenus du rang hiérarchique supérieur : les contenants "Nombre de pièces" et "Etage" sont rattachés au contenu "Appartement" et le contenant "Terrain" est rattaché au contenu "Maison".
Il résulte de ce qui précède que dans le tableau hiérarchique T de la figure 1, chaque couple contenant-contenu est unique et peut être associé à un code spécifique permettant de désigner lesdits couples dans les fiches F.
On se reportera également aux organigrammes des figures 3 à 9 qui illustrent les mécanismes mis en oeuvre pour effectuer une recherche parmi un ensemble de fiches F codées conformément à la structure hiérarchique du tableau de la figure 1.
L'organigramme général de la figure 3 intitulé Sélections successives a pour objet la présentation des choix successifs de contenants et de contenus à un requérant jusqu'à l'obtention d'une liste courte. L'étape 1 correspond au démarrage d'une recherche, c'est- à-dire à la préparation de tables S et C destinées à refléter l'ensemble des fiches F existantes parmi lesquelles la recherche doit être effectuée.
La table S est une table des fiches F sélectionnées et de leurs couples contenant- contenu, cette première table étant constamment actualisée au cours de la recherche.
La deuxième table C est une table des contenus présents dans l'une quelconque des fiches de la première table S. Si chaque fiche F est considérée comme un sous- ensemble de contenus, alors la table C peut être considérée comme l'ensemble constitué par l'union des sous-ensembles F, étant entendu que chaque couple contenant-contenu n'est représenté qu'une fois dans la table C. De plus, cette table est organisée en conformité avec la structure hiérarchique du tableau T pour refléter la hiérarchie des couples contenant-contenu. Cela signifie que les contenants ne sont représentés que de manière implicite dans cette table, du fait que chaque contenu a un code spécifique, d'où peut être déduit son contenant comme le montre le tableau T. Si, à la suite du démarrage de la recherche à l'étape 1, il s'avère que le nombre total de fiches mémorisées parmi lesquelles la recherche est effectuée est inférieur à une valeur prédéterminée, le test 2 conduit directement en 3 à la présentation au requérant de la liste de toutes les fiches existantes.
Si le nombre de fiches de la table S élaborée à l'étape 1 est supérieur à ladite valeur prédéterminée, c'est-à-dire s'il ne s'agit pas d'une liste courte, on passe par le test
2 à l'étape 4 de choix contenant/contenu. Cette étape 4 correspond à un module dont un premier mode de réalisation est illustré à la figure 4 et un second mode de réalisation à la figure 5.
A la suite de l'étape ou module 4, on examine en 5 s'il existe encore une possibilité de choix contenant/contenu. S'il existe encore au moins un choix, le test 5 ramène à l'entrée du test 2. Dans le cas contraire, on passe directement en 3 à la présentation de la liste des fiches trouvées.
Si le nombre de fiches présentées au requérant est supérieur à un paramètre prédéterminé, cela signifie qu'il est souhaitable d'améliorer la recherche en affinant les critères contenant(attribut)-contenu dépendant de ceux choisis. En d'autres termes, il convient d'ajouter des critères de recherche (contenants et leurs contenus) et/ou d'ajouter des contenus pour un ou plusieurs contenants (attributs) existants. En option, il peut être
dans ce cas prévu une commande pour avertir le responsable de la définition des critères.
On se reportera maintenant à la figure 4 illustrant le premier mode de réalisation 4.1 du module 4 de la figure 3. Ce module 4.1 commence par une étape 10 intitulée "Contenants divisibles" et illustrée par les organigrammes des figures 6 et 7. Ce module 10 a pour objet de créer une liste de contenants par recherche hiérarchique dans la deuxième table C des contenants ayant au moins deux contenus représentés dans la première table S.
En se référant à la figure 6, le module 10 débute à l'étape 100 par l'exploration de la deuxième table C au rang hiérarchique le plus élevé non encore exploré pour déterminer quels sont les couples contenant-contenu de ce rang hiérarchique. A l'étape 101 , chaque contenant est traité comme cela sera décrit en regard de la figure 7 et en 102 une liste des contenants est fournie en vue de sa présentation au requérant comme cela sera décrit dans la suite. En se reportant à la figure 7, l'étape ou module 101 débute par l'étape 200 consistant à rechercher si le contenant traité a un contenu représenté dans la table S. Si aucun contenu n'est trouvé en 201 , c'est-à-dire si le résultat est R0, on passe directement en 202 à la fin du traitement du contenant concerné. Si la réponse au test 201 est positive, on passe à l'étape 203 consistant à rechercher si le contenant traité a un second contenu représenté dans la table S. Si le résultat du test 204 est négatif, c'est-à-dire si le contenant n'a qu'un seul contenu R1 , le contenant est ignoré, mais la recherche est prolongée en 205 en traitant également tous les contenants dépendant du contenu trouvé.
Si la réponse au test 204 est positive, le résultat est Rn, c'est-à-dire que l'on a trouvé dans la table S au moins deux contenus différents pour le contenant traité. On ajoute en 206 le contenant traité à la liste des résultats et on arrive ensuite en 202 à la fin du traitement de ce contenant.
Le processus 101 de traitement d'un contenant de la figure 7 est répété pour chacun des contenants sélectionnés à l'étape 100 de la figure 6, jusqu'à épuisement de tous les contenants sélectionnés. On dispose alors en 102 de la liste de tous les contenants ayant au moins deux contenus représentés dans la table S, étant entendu que n'y figurent pas les contenants ayant au moins deux contenus, mais dépendant hiérarchiquement d'un autre contenant qui figure aussi dans la liste.
En revenant à la figure 4, s'il s'avère au test 11 que la liste des contenants 102 est vide, c'est-à-dire qu'il n'existe aucun choix à proposer au requérant comme indiqué en 12, on passe alors en 3 (figure 3) à la présentation de la liste des fiches trouvées.
Si en vertu du test 11 , il s'avère que la liste des contenants 102 n'est pas vide, on examine en 13 si cette liste comporte un seul ou plusieurs contenants. Si cette liste comporte plusieurs contenants, on les présente au requérant en 14 et celui-ci effectue en 15 le choix de l'un des contenants. Lorsque le requérant a choisi un contenant en 15 ou si le test 13 détermine que la liste des contenants 102 ne contient qu'un seul contenant, on passe au module de Sélection de contenus de l'étape 16 consistant à créer une liste de contenus représentés dans la table S pour le contenant unique ou le contenant choisi en 15 par le requérant.
En se référant à la figure 8, la première étape 300 du module 16 de Sélection de contenus consiste à repérer dans la table C le contenant choisi en 15 ou le contenant unique de la liste 102, ci-après appelé CNA, puis à trouver le premier contenu CNU de ce contenant. L'étape suivante 301 consiste à rechercher si le couple CNA-CNU fait partie d'une des fiches de la table S. S'il s'avère en 302 que tel est le cas, on passe ensuite à l'étape 303 où l'on ajoute ce contenu CNU à la liste des contenus du contenant CNA. De manière facultative, on calcule également en 303 le nombre de fiches de la table S comprenant le couple CNA-CNU et on crée une liste des fiches de la table S qui inclut le couple CNA-CNU.
On passe ensuite au test 304 où l'on détermine si le contenant CNA contient d'autres contenus. Dans l'affirmative, on passe en 305 au contenu suivant puis on revient à l'étape 301 pour détermine si le nouveau couple CNA-CNU fait partie d'une des fiches de la table S. On répète ensuite les étapes 302, 303 et 304 jusqu'à ce que tous les contenus du contenant CNA aient été examinés. Si, au cours de ce processus, il s'avère qu'un couple CNA-CNU ne fait pas partie d'une des fiches de la table S, la réponse au test 302 est négative et on passe alors au test 304, ce qui signifie que le contenu en question n'est pas ajouté à la liste des résultats.
Une fois que tous les contenus d'un contenant CNA ont été examinés, la liste des contenus sélectionnés est fournie en 306 et elle est présentée au requérant à l'étape 17 de la figure 4. Le requérant procède en 18 au choix d'un contenu parmi ceux qui lui sont présentés et on passe ensuite à l'étape 19 de réduction qui consiste à supprimer de la table S toutes les fiches qui ne contiennent pas l'un des couples contenant-contenu indiqué par le requérant. De manière facultative, il est possible de présenter au requérant la liste des couples contenant-contenu qui, bien que n'ayant jamais été sélectionnés par le requérant, sont néanmoins communs à toutes les fiches restantes. Il s'agit de couples qui ont été déduits au cours du processus de recherche de façon à éliminer les contenants n'ayant qu'un contenu possible ; cette élimination découle du choix R1 de l'étape 204 de la figure 7.
Après l'étape 20, qui indique que le requérant a effectué un choix de contenant en 15 et de contenu en 18, on revient à l'entrée du test 2 de la figure 3 pour déterminer si la liste des fiches contenue dans la table S est une liste courte ou non. Dans l'affirmative, la recherche est terminée et on passe à l'étape 3 de présentation des fiches trouvées, tandis que dans la négative, on répète le processus du module 4 décrit ci-dessus en explorant successivement les contenants et contenus dans l'ordre hiérarchique jusqu'à l'obtention d'une liste courte. Une liste courte est une liste dont le nombre de fiches est inférieur ou égal à une valeur prédéterminée, par exemple dix fiches.
La figure 5 illustre un second mode de réalisation 4.2 du module 4 de la figure 3 dans lequel on détermine à la fois tous les Contenants divisibles par le module 10 de la figure 6 et tous les contenus possibles de chacun des Contenants divisibles trouvés au moyen du module 16 de la figure 8. Comme dans le mode de réalisation de la figure 4, on passe directement à l'étape 12 ramenant à l'étape 3 s'il s'avère en 11 qu'il n'existe aucun contenant ayant au moins deux contenus représentés dans la table S. Dans le cas contraire, on déroule le module 16 de Sélection de contenus pour chacun des contenants trouvés et on présente ensuite au requérant en 21 tous les couples contenant-contenu, c'est-à-dire les couples offrant un choix.
En 22 le requérant procède au choix d'un couple et en 23, il est procédé à la réduction décrite à l'étape 19 de la figure 4. L'étape 24 indique que le choix d'un couple contenant-contenu a été effectué et, comme pour le module de la figure 4, on revient ensuite à l'entrée du test 2. Comme indiqué précédemment, le processus de Sélections successives se poursuit ensuite jusqu'à l'obtention d'une liste courte.
L'organigramme de la figure 9 illustre une variante de réalisation des mécanismes des figures 3 à 8 selon laquelle le processus de sélections successives peut être initialisé par application de critères prioritaires conduisant nécessairement à une ou plusieurs réponses.
Ces critères de sélection prioritaires (couples contenant/contenu) peuvent être prédéfinis, par exemple :
- au moyen d'un extrait de sélections antérieures comme décrit ci-après en égard de la figure 9 ;
- en fonction d'une dépendance par rapport au moyen utilisé pour entrer dans le système de recherche ;
- en fonction du profil du requérant ;
- en fonction de la localisation géographique du requérant, qu'il a préalablement spécifiée ou qui est détectée en utilisant un système de type GPS ou autre ;
- au moyen d'une recherche libre préliminaire de type "full text" sur l'ensemble des contenants/contenus de l'ensemble des fiches ;
- en réponse à une spécification du requérant de ne traiter que les fiches fournies par un ou plusieurs organismes déterminés, cette liste n'étant pas exhaustive.
En se reportant à la figure 9, l'étape 401 correspond à cette prédéfinition facultative d'un ou plusieurs critères prioritaires. Dans la suite, on appellera P la liste des critères prioritaires.
L'étape suivante 402 consiste à appliquer automatiquement à l'ensemble des fiches F tous les critères prioritaires qui ont été prédéfinis, afin de préparer les tables S et C décrites ci-dessus. Avec les fiches restantes à l'issue de l'étape 402, on exécute alors en 403 l'algorithme "sélections successives" de la figure 3 (les étapes 401 et 402 correspondant à la phase 1 d'initialisation de la recherche), qui implique des choix successifs du requérant comme décrit précédemment.
Après le déroulement de l'algorithme de la figure 3, le requérant a la faculté en 404 de choisir un ou plusieurs critères prioritaires.
Si le requérant choisit en 404 d'appliquer un ou plusieurs critères prioritaires à la recherche, cela signifie qu'il s'est aperçu que ce ou ces critères étaient plus importants que ceux qu'il a éventuellement sélectionnés par l'algorithme de la figure 3. Le requérant souhaite donc appliquer ce ou ces critères prioritaires, déjà obtenus, à l'ensemble des fiches F.
Une réponse positive au test 404 conduit donc à compléter en 405 la liste P des critères prioritaires déjà obtenus par ceux qui viennent d'être nouvellement choisis. Par construction, la liste P de critères prioritaires donne au moins une réponse. On revient ensuite à l'étape 402, c'est-à-dire qu'on applique automatiquement à l'ensemble des fiches F les critères prioritaires de la liste P complétée en 405 et l'on recommence le processus de "sélections successives" jusqu'à ce qu'une réponse négative soit donnée au test 404. On aboutit alors en 406 à la fin de la recherche.
On se référera maintenant aux tables des figures 10 à 13 qui illustrent un exemple de codage des contenus par tables de bits pour la mise en oeuvre du mécanisme décrit ci-dessus.
La figure 10 est une représentation sous forme d'arborescence équivalente au tableau T de la figure 1. Dans cet exemple de réalisation, chaque contenu du tableau hiérarchique arborescent est numéroté dans l'ordre de rencontre selon un balayage récursif de l'arborescence : c'est ainsi que le premier contenu qui dépend du contenant Cna1 de niveau ou rang hiérarchique A porte le numéro 1 (Cnu1 sur la figure 10), les contenus du contenant Cna1.1.1 (rang B) dépendant de Cnu1 portent les numéros 2 et 3 (Cnu2 et Cnu3), etc. Dans l'exemple de la figure 10, il existe neuf contenus.
Comme le montre la figure 11 , la fiche F décrivant chaque objet est constituée d'une table comportant autant d'emplacements mémoire qu'il y a de contenus dans le tableau ou arborescence de la figure 10, en l'espèce 9 dans l'exemple considéré. Chacun de ces emplacements mémoire peut prendre la valeur logique 1 si le contenu correspondant du tableau T est inclus dans la fiche et 0 dans le cas contraire. La position de chaque emplacement mémoire dans la fiche F, c'est-à-dire son adresse, correspond à un numéro de contenu attribué dans le tableau T comme le montre la figure 11. Ainsi, chaque emplacement mémoire de la fiche F est associé de manière biunivoque à un couple contenant-contenu du tableau T. A chaque instant du processus de recherche, la table S est constituée de l'ensemble des fiches F qui ont été sélectionnées jusqu'alors. En se reportant à la figure 12, on supposera qu'après un premier choix d'un contenant Cna1 par un requérant, il reste quatre fiches F1 , F2, F3 et F4 dans la table S. Ces fiches ont les contenus suivants :
- pour F1 : Cnu1 , Cnu3, Cnu7 et Cnuδ ; - pour F2 : Cnu4, Cnu5 , Cnu7 et Cnu9 ;
- pour F3 : Cnu4, Cnu6, Cnu7 et Cnu9 ; et
- pour F4 : Cnu1 , Cnu2, Cnu7 et Cnuδ.
Etant donné que dans la phase précédente le requérant a choisi le contenant Cna1, il lui est maintenant demandé de choisir entre les contenus Cnu1 et Cnu4. En supposant que le requérant choisisse Cnu1, la table S ne sera alors plus constituée que des fiches F1 et F4, et, comme représenté à la figure 13, la table C sera directement déduite de la table S en effectuant sur chacun des bits de même ordre dans chacune des fiches sélectionnées (F1 et F4) une opération de OU inclusif.
La table C est donc organisée de la même manière qu'une fiche F : les bits ou emplacements mémoire constituant cette table sont rangés dans l'ordre d'une exploration hiérarchique des contenus du tableau T. Le numéro d'ordre du bit permet aussi de retrouver dans un ou plusieurs fichiers annexes non représentés (par exemple un fichier par langue) la description du contenu et vice versa. Cet agencement permet aussi de regrouper les bits des contenus qui dépendent d'un même contenant quelle que soit la différence hiérarchique entre le contenant et les contenus considérés. Dans l'exemple considéré, l'ordre est : Cnu1, Cnu2, Cnu3, Cnu4, Cnu5, Cnu6, Cnu7, Cnu8, Cnu9.
Ce mode de codage a pour avantage de permettre une représentation très compacte du tableau T, des fiches F et des tables S et C si le nombre moyen de contenus par contenant du tableau T est faible. On peut en effet représenter plusieurs contenus dans un seul mot machine. Ce mode de codage et d'organisation offre en outre la possibilité de faire un OU logique surtout un mot machine, donc sur plusieurs contenus à la fois, d'où un gain de temps considérable pour trouver les contenus représentés dans
l'une quelconque des fiches restantes. Par ailleurs, lors de la mise en oeuvre du module 16 de Sélection des contenus de la figure 8, il sera possible de tester simultanément plusieurs contenus (autant que de bits dans un mot machine) et ce module s'en trouvera accéléré. L'inconvénient est que l'initialisation de la recherche nécessite le balayage de toutes les fiches, ce qui peut être contourné en constituant des tables auxiliaires prétriées pour analyser le premier critère introduit.
En pratique, la table S de la figure 12 est constituée d'une table de pointeurs vers chacune des fiches F sélectionnée dans l'ensemble des fiches parmi lesquelles la recherche est effectuée. Initialement, la table S contient la liste de toutes les fiches F et un marqueur indique le nombre total de fiches sélectionnées. A chaque étape de la recherche, toutes les fiches jusqu'au marqueur sont analysées, et les fiches retenues sont poussées à une extrémité de la table et le marqueur est déplacé pour indiquer le nouveau nombre de fiches restantes. De manière facultative, les fiches rejetées peuvent être tassées vers l'autre extrémité de la table, ce qui permet de la segmenter en fonction des étapes de recherche et donc de revenir rapidement en arrière sur une étape de recherche.
Il résulte de ce qui précède que le procédé et le système décrits sont particulièrement adaptés à la recherche multicritères lorsque le thème de la recherche permet une hiérarchisation de ces critères. Bien entendu, l'arborescence ou structure hiérarchique du tableau T varie en fonction du thème considéré, c'est-à-dire qu'elle n'est pas la même suivant que ce thème concerne par exemple l'automobile, l'immobilier, l'électroménager, etc. Le procédé de recherche décrit peut être précédé d'une recherche en mode traditionnel, par exemple par mot-clé, pour sélectionner le thème qui constituera la racine R de tous les contenants parmi lesquels la recherche sera menée comme décrit en regard des figures 3 à 9.
Le système de traitement de données pour la mise en oeuvre des mécanismes décrits requiert des moyens de stockage de données pour le stockage du tableau T, des fiches F et des tables C et S, des moyens de calcul pour la mise en oeuvre du processus décrit en regard des figures 3 à 9 et des moyens d'interface pour présenter des choix au requérant, pour lui permettre d'opérer ces choix et pour lui présenter le résultat de ses choix. Le système de traitement de données peut être d'un type quelconque et il peut s'agir en particulier d'un système à architecture client-serveur utilisé via un réseau tel qu'Internet à partir d'un terminal-client tel qu'un ordinateur personnel PC, un téléphone mobile fonctionnant par saisie ou par reconnaissance vocale, etc..
Les choix offerts à un requérant peuvent lui être proposés sur l'écran de son terminal sous forme de pages dynamiques composées par exemple d'une ou plusieurs des fenêtres suivantes :
- une fenêtre présentant une carte géographique réactive avec un camaïeu de couleurs ou des pictogrammes fonctions du nombre de réponse propres à chaque lieu
(pays, région, département, ville) ;
- une fenêtre représentant des histogrammes verticaux réactifs illustrant des prix, mesures ou qualités (poids, taille, surface, superficie, distance, horaire, période, couleur ) ; - une fenêtre de possibilités restantes avec les critères de sélection (attributs ou contenants) encore possibles et, pour chacun de ces critères, la liste des valeurs ou contenus disponibles avec en regard le nombre de réponses, présentées sous forme d'histogrammes horizontaux ou de menus déroulants ;
- une fenêtre représentant les choix déjà effectués par le requérant sous forme d'une fiche virtuelle composée d'une liste de contenants et de contenus qui augmente au fur et à mesure des choix successifs ;
- une fenêtre de résultats synthétisés sous forme de tableau à deux dimensions avec des éléments réactifs (photos, textes, titres, logos, menus déroulants ....) ou sous forme de cumuls dynamiques présentés de façon graphique (camemberts, histogrammes ) ; - etc
Les éléments de ces différentes fenêtres sont réactifs en ce sens qu'ils permettent d'effectuer un choix au moyen d'une souris en déplaçant un pointeur sur ces éléments, comme cela est désormais classique.
Il va de soi que les modes de réalisation décrits ne sont que des exemples et l'on pourrait les modifier, notamment par substitution d'équivalents techniques, sans pour autant sortir du cadre de l'invention.
Claims
1. Système de traitement de données pour la sélection d'objets parmi un ensemble d'objet mémorisés sous forme de fiches dans ledit système, dans lequel chaque objet est identifié par le contenu de chacun de plusieurs attributs, caractérisé en ce qu'il comprend : ai) des moyens de stockage d'un tableau à structure hiérarchique de l'ensemble des attributs et contenus associés auxdits objets, dans lequel lesdits attributs sont classés hiérarchiquement en plusieurs rangs, chaque attribut d'un rang secondaire est rattaché à un contenu d'un attribut de rang hiérarchiquement supérieur, et à chaque couple constitué d'un attribut et de son contenu est associé un code spécifique, a2) des moyens de stockage, pour chaque objet mémorisé, d'une fiche dans laquelle chaque attribut dudit objet et son contenu est identifié par le code spécifique assigné audit couple attribut-contenu dans ledit tableau, et b) des moyens de calcul et d'interface pour, en réponse à une requête de recherche d'un requérant: c) construire une première table (S) contenant l'ensemble des fiches mémorisées relatives à de ladite requête, d) construire, au moyen desdits codes, conformément à ladite structure hiérarchique des couples attribut-contenu, une deuxième table (C) des contenus présents dans l'une quelconque desdites fiches de la première table (S), e) présenter des choix successifs d'attributs et de contenus audit requérant, dans l'ordre hiérarchique défini dans ladite deuxième table (C), f) actualiser ladite première table (S) en réponse au choix par ledit requérant d'un couple attribut-contenu consécutivement à ladite étape e), en sélectionnant dans ladite première table (S) les fiches comportant ledit couple attribut-contenu sélectionné, g) répéter lesdites opérations e) et f) jusqu'à satisfaction d'au moins une condition prédéterminée, et h) présenter le résultat de ladite recherche audit requérant lorsque ladite condition est satisfaite.
2. Système selon la revendication 1 , caractérisé en ce que lesdits moyens de calcul et d'interface e) pour présenter des choix successifs d'attrIBϋts et de contenus audit requérant, dans l'ordre hiérarchique défini dans ladite deuxième table (C), comprennent : e1) des moyens pour établir, par exploration de ladite deuxième table (C) au rang hiérarchique le plus élevé non encore exploré, une liste d'attributs ayant au moins deux contenus représentés dans ladite première table (S), et l'un des deux moyens comprenant :
e2) des moyens pour présenter ladite liste d'attributs audit requérant en vue du choix de l'un desdits attributs si ladite liste d'attributs comprend au moins deux attributs, et e3) des moyens pour présenter directement les contenus d'un attribut audit requérant en vue du choix de l'un desdits contenus si ladite liste d'attributs ne comprend que ledit attribut.
3. Système selon la revendication 2, caractérisé en ce que lesdits moyens e2) pour présenter ladite liste d'attributs audit requérant en vue du choix de l'un desdits attributs si ladite liste d'attributs comprend au moins deux attributs comprennent : e21) des moyens pour établir, en réponse au choix de l'un desdits attributs par ledit requérant, une liste de contenus dudit attribut choisi représentés dans ladite première table (S), e22) des moyens pour présenter ladite liste de contenus audit requérant en vue du choix de l'un desdits contenus.
4. Système selon la revendication 2, caractérisé en ce que : lesdits moyens e1) comprennent des moyens d'établissement, pour chacun desdits attributs de ladite liste d'attributs, d'une liste des contenus de cet attribut qui sont représentés dans ladite première table (S), et lesdits moyens e2) comprennent des moyens de présentation audit requérant de tous les couples attribut-contenu sélectionnés par lesdits moyens e1), en vue du choix de l'un desdits couples par ledit requérant.
5. Système selon l'une quelconque des revendications 2 à 4, caractérisé en ce que ladite condition de l'opération g) est satisfaite si ladite liste d'attributs établie par lesdits moyens e1) est vide.
6. Système selon l'une quelconque des revendications 1 à 5, caractérisé en ce que ladite condition de l'opération mise en œuvre par lesdits moyens g) est satisfaite si le nombre de fiches de ladite première table (S) est inférieur à une valeur prédéterminée.
7. Système selon l'une quelconque des revendications 1 à 6, caractérisé en ce que lesdits moyens de calcul et d'interface comprennent des moyens pour, consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant le nombre desdites fiches de la première table (S).
8. Système selon l'une quelconque des revendication 1 à 7, caractérisé en ce que lesdits moyens de calcul et d'interface comprennent des moyens pour, consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant la liste des couples attribut-contenu précédemment sélectionnés.
9. Système selon l'une quelconque des revendications 1 à 8, caractérisé en ce que lesdits moyens de calcul et d'interface comprennent des moyens pour,
consécutivement auxdites opérations mises en œuvre par lesdits moyens c) et f), présenter audit requérant la liste des couples attribut-contenu qui, bien que n'ayant jamais été sélectionnés par le requérant, sont néanmoins communs à toutes les fiches (F) restantes.
10. Système selon l'une quelconque des revendications 1 à 9, caractérisé en ce que lesdits moyens de calcul et d'interface comprennent des moyens pour :
- définir au moins un desdits couples attribut-contenu constituant un critère de recherche prioritaire,
- construire ladite première table (S) et ladite deuxième table (C) desdites opérations mises en œuvre par lesdits moyens c) et d) en sélectionnant, parmi ledit ensemble de fiches, un sous-ensemble desdites fiches satisfaisant audit critère, et
- exécuter lesdites opérations mises en œuvre par lesdits moyens e) à h) au moyen dudit sous-ensemble de fiches,
11. Système selon la revendication 10, caractérisé en ce que lesdits moyens de définition d'un critère de recherche prioritaire comprennent des moyens pour offrir audit requérant de choisir au moins un critère prioritaire consécutivement à ladite opération mise en œuvre par lesdits moyens e), des moyens pour ajouter ledit critère prioritaire choisi par ledit requérant à une liste (P) de critères prioritaires, et des moyens pour élaborer ledit sous-ensemble de fiches par sélection des fiches dudit ensemble satisfaisant aux critères prioritaires de ladite liste (P).
12. Système selon l'une quelconque des revendications 1 à 11, caractérisé en ce qu'il présente une architecture client-serveur, lesdits moyens d'interface comprenant un terminal-client.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0004702A FR2807849B1 (fr) | 2000-04-12 | 2000-04-12 | Procede et systeme de recherche et d'aide au choix |
FR0004702 | 2000-04-12 | ||
PCT/FR2001/001132 WO2001077889A1 (fr) | 2000-04-12 | 2001-04-12 | Systeme de recherche et d'aide au choix |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1272944A1 true EP1272944A1 (fr) | 2003-01-08 |
Family
ID=8849179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP01925630A Withdrawn EP1272944A1 (fr) | 2000-04-12 | 2001-04-12 | Systeme de recherche et d'aide au choix |
Country Status (5)
Country | Link |
---|---|
US (1) | US7363292B2 (fr) |
EP (1) | EP1272944A1 (fr) |
AU (1) | AU2001252326A1 (fr) |
FR (1) | FR2807849B1 (fr) |
WO (1) | WO2001077889A1 (fr) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7366709B2 (en) * | 2004-04-02 | 2008-04-29 | Xpertuniverse, Inc. | System and method for managing questions and answers using subject lists styles |
CA2576278A1 (fr) * | 2004-05-17 | 2005-11-24 | Spatial Data Analytics Corporation | Systeme de communication et procede de communication pour collecte, agregation et dissemination globale d'information geospatiale |
US20060136383A1 (en) * | 2004-12-20 | 2006-06-22 | Alcatel | Method and system enabling Web content searching from a remote set-top control interface or device |
WO2006081698A1 (fr) * | 2005-02-02 | 2006-08-10 | Sdn Ag | Systeme d'autoapprentissage base sur l'utilisation de moteurs de recherche |
US8612570B1 (en) | 2006-09-18 | 2013-12-17 | Emc Corporation | Data classification and management using tap network architecture |
US10394849B2 (en) | 2006-09-18 | 2019-08-27 | EMC IP Holding Company LLC | Cascaded discovery of information environment |
US9141658B1 (en) | 2007-09-28 | 2015-09-22 | Emc Corporation | Data classification and management for risk mitigation |
US8548964B1 (en) | 2007-09-28 | 2013-10-01 | Emc Corporation | Delegation of data classification using common language |
US9461890B1 (en) | 2007-09-28 | 2016-10-04 | Emc Corporation | Delegation of data management policy in an information management system |
US9323901B1 (en) | 2007-09-28 | 2016-04-26 | Emc Corporation | Data classification for digital rights management |
US8868720B1 (en) | 2007-09-28 | 2014-10-21 | Emc Corporation | Delegation of discovery functions in information management system |
US8522248B1 (en) | 2007-09-28 | 2013-08-27 | Emc Corporation | Monitoring delegated operations in information management systems |
FR2956499B1 (fr) * | 2010-02-15 | 2012-04-13 | Airbus Operations Sas | Procede et dispositif permettant l'exploitation fonctionnelle, dans un aeronef, d'un grand nombre d'informations issues de differentes sources |
JP5998835B2 (ja) * | 2012-10-18 | 2016-09-28 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
CN103714127A (zh) * | 2013-12-11 | 2014-04-09 | 金蝶软件(中国)有限公司 | 表格分信息组展示方法和系统 |
US11082757B2 (en) | 2019-03-25 | 2021-08-03 | Rovi Guides, Inc. | Systems and methods for creating customized content |
US11195554B2 (en) | 2019-03-25 | 2021-12-07 | Rovi Guides, Inc. | Systems and methods for creating customized content |
US11562016B2 (en) | 2019-06-26 | 2023-01-24 | Rovi Guides, Inc. | Systems and methods for generating supplemental content for media content |
US11256863B2 (en) | 2019-07-19 | 2022-02-22 | Rovi Guides, Inc. | Systems and methods for generating content for a screenplay |
US11145029B2 (en) | 2019-07-25 | 2021-10-12 | Rovi Guides, Inc. | Automated regeneration of low quality content to high quality content |
US11604827B2 (en) | 2020-02-21 | 2023-03-14 | Rovi Guides, Inc. | Systems and methods for generating improved content based on matching mappings |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5765149A (en) * | 1996-08-09 | 1998-06-09 | Digital Equipment Corporation | Modified collection frequency ranking method |
DE69624809T2 (de) * | 1996-08-28 | 2003-07-03 | Koninklijke Philips Electronics N.V., Eindhoven | Verfahren und System zum Auswählen eines Informarionsgegenstandes |
US5920861A (en) * | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
US6874146B1 (en) * | 1999-06-30 | 2005-03-29 | Unisys Corporation | Metadata driven system for effecting extensible data interchange based on universal modeling language (UML), meta object facility (MOF) and extensible markup language (XML) standards |
US6732331B1 (en) * | 2000-02-15 | 2004-05-04 | Vlad Alexander | System and process for managing content organized in a tag-delimited template using metadata |
-
2000
- 2000-04-12 FR FR0004702A patent/FR2807849B1/fr not_active Expired - Fee Related
-
2001
- 2001-04-12 EP EP01925630A patent/EP1272944A1/fr not_active Withdrawn
- 2001-04-12 AU AU2001252326A patent/AU2001252326A1/en not_active Abandoned
- 2001-04-12 WO PCT/FR2001/001132 patent/WO2001077889A1/fr not_active Application Discontinuation
- 2001-04-12 US US10/257,672 patent/US7363292B2/en not_active Expired - Lifetime
Non-Patent Citations (2)
Title |
---|
None * |
See also references of WO0177889A1 * |
Also Published As
Publication number | Publication date |
---|---|
WO2001077889A1 (fr) | 2001-10-18 |
FR2807849B1 (fr) | 2002-07-26 |
US7363292B2 (en) | 2008-04-22 |
WO2001077889A9 (fr) | 2002-04-04 |
AU2001252326A1 (en) | 2001-10-23 |
FR2807849A1 (fr) | 2001-10-19 |
US20030105750A1 (en) | 2003-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1272944A1 (fr) | Systeme de recherche et d'aide au choix | |
EP0593354B1 (fr) | Procédé d'aide à l'optimisation d'une requête d'un système de gestion de base de données relationnel | |
EP1214669B1 (fr) | Procede de classification thematique de documents, module de classification thematique et moteur de recherche incorporant un tel module | |
EP1483693B1 (fr) | Representation informatique d'une structure de donnees arborescente et methodes de codage/decodage associees | |
EP2188744B1 (fr) | Installation de gestion d'une base de données | |
WO2002027566A1 (fr) | Moteur de recherche | |
EP1184796A1 (fr) | Procédé de navigation associative dans des bases de données multimédia | |
CN112307291A (zh) | 一种网上商城在线咨询管理方法及管理系统 | |
WO2006027470A2 (fr) | Edition de graphiques vectoriels , notamment de cartes geographiques | |
EP1912170A1 (fr) | Dispositif informatique de corrélation propagative | |
FR2859801A1 (fr) | Procede de traitement de donnees sur la base de structures dynamiques d'elements simples | |
EP4300326A1 (fr) | Procédé d'appariement d'un ensemble à évaluer et d'une liste de référence, moteur d'appariement et programme d'ordinateur correspondants | |
EP0599707A1 (fr) | Méthode d'extraction de profils de statistiques, utilisation des statistiques créées par la méthode | |
FR2816734A1 (fr) | Procede de recherche, de selection et de representation cartographique de pages web | |
WO2002003245A1 (fr) | Procede de stockage d'objets informationnels au format xml dans une base de donnees relationnelle | |
WO2009004231A2 (fr) | Procede de tri d'informations | |
EP1408428A1 (fr) | Système et procédé de traitement et de visualisation des résultats de recherches effectuées par un moteur de recherche à base d'indexation, modèle d'interface et méta-modèle correspondants | |
EP1222575A1 (fr) | Procede pour creer une structure hierarchique variable d'acces a des actions dans un systeme informatique | |
FR3093200A1 (fr) | Procédé de détermination d’un schéma comportemental | |
WO2019106239A1 (fr) | Procédé de configuration d'un paramètre variable lié à l'affichage d'une formation et système pour la mise en œuvre du procédé | |
WO2001086496A1 (fr) | Systeme et procede de traitement de donnes pour l'acces cible a un serveur a partir d'une interrogation en langage naturel | |
FR3112220A1 (fr) | Procede de recherche assistee dans une base de donnees et systeme de recherche associe | |
FR3096157A1 (fr) | procédé d’indexation multidimensionnelle de contenus textuels | |
FR3052314A1 (fr) | ||
WO2019034452A1 (fr) | Procede de completion de requete sql |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20021023 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR |
|
AX | Request for extension of the european patent |
Free format text: AL;LT;LV;MK;RO;SI |
|
17Q | First examination report despatched |
Effective date: 20070116 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20070727 |