FR3140192A1 - Process for checking the conformity of data and entries in a computer application via a third-party computer application - Google Patents
Process for checking the conformity of data and entries in a computer application via a third-party computer application Download PDFInfo
- Publication number
- FR3140192A1 FR3140192A1 FR2209607A FR2209607A FR3140192A1 FR 3140192 A1 FR3140192 A1 FR 3140192A1 FR 2209607 A FR2209607 A FR 2209607A FR 2209607 A FR2209607 A FR 2209607A FR 3140192 A1 FR3140192 A1 FR 3140192A1
- Authority
- FR
- France
- Prior art keywords
- computer
- computer application
- application
- data
- value
- 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.)
- Pending
Links
- 238000004883 computer application Methods 0.000 title claims abstract description 105
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000014509 gene expression Effects 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 14
- 238000013479 data entry Methods 0.000 claims abstract description 13
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 10
- 238000010200 validation analysis Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 230000000903 blocking effect Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 230000006399 behavior Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/174—Form filling; Merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/226—Validation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0277—Online advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q90/00—Systems or methods specially adapted for administrative, commercial, financial, managerial or supervisory purposes, not involving significant data processing
Abstract
L’invention concerne un procédé, mis en œuvre par ordinateur, de contrôle de la conformité d’une valeur d’au moins un champ de données d’une première application informatique, ledit au moins un champ de données étant apte à être modifié par un utilisateur de la première application informatique via une interface de saisie de données, l’ordinateur comprenant des moyens de traitement et des moyens mémoire stockant une seconde application informatique, la seconde application informatique étant configurée de telle sorte qu’elle vient en surcouche de la première application informatique, le procédé comportant les étapes suivantes : une comparaison (20) de la syntaxe de la valeur dudit au moins un champ de données à une expression régulière prédéfinie ; etlorsque, à l’issue de l’étape de comparaison (20), la syntaxe de la valeur dudit au moins un champ de données ne correspond pas à l’expression régulière prédéfinie, un actionnement (30) d’un mécanisme informatique prédéterminé. Figure 2The invention relates to a method, implemented by computer, for checking the conformity of a value of at least one data field of a first computer application, said at least one data field being capable of being modified by a user of the first computer application via a data entry interface, the computer comprising processing means and memory means storing a second computer application, the second computer application being configured such that it overlays the first computer application, the method comprising the following steps: a comparison (20) of the syntax of the value of said at least one data field to a predefined regular expression; andwhen, at the end of the comparison step (20), the syntax of the value of said at least one data field does not correspond to the predefined regular expression, an actuation (30) of a predetermined computer mechanism. Figure 2
Description
L’invention concerne un procédé de contrôle de la conformité de données et de saisies dans une application informatique via une application informatique tierce.The invention relates to a method for checking the conformity of data and entries in a computer application via a third-party computer application.
L’invention se rapporte au domaine des procédés et logiciels de contrôle qualité, appliqués par exemple (mais de manière non limitative) au champ publicitaire et/ou marketing.The invention relates to the field of quality control processes and software, applied for example (but in a non-limiting manner) to the advertising and/or marketing field.
L’attribution des performances des campagnes publicitaires ou marketing (via emailing, etc.) est un enjeu majeur pour les marques et leurs agences. Afin d’identifier quelles sont les caractéristiques associées à la campagne, la méthode la plus communément utilisée consiste en l’utilisation de nomenclatures de nommage associées à des taxonomies. Lorsqu'une personne lance une campagne publicitaire en ligne, par exemple sur un site internet dédié (comme par exemple le site Facebook de l’entreprise FACEBOOK, INC.), elle le fait en effet à partir d'une application informatique dans laquelle est saisie le nom de la campagne publicitaire. Le nom saisi renseigne les attributs de la campagne publicitaire (telle que le nom du produit, le type de campagne, etc.) selon une syntaxe prédéfinie. Le nom est communiqué au site internet par l'application informatique. Une fois les campagnes réalisées, des analyses de ces campagnes peuvent être effectuées à l’aide d’outils informatiques dédiés. Les campagnes sont filtrées en fonction des attributs de la nomenclature (de tels attributs étant par exemple une marque, un modèle, ou encore un type d’offre), afin de mettre en œuvre les analyses. Ceci permet ensuite d’analyser en détails les performances de la campagne (ou de façon plus granulaire par exemple au niveau d’une publicité donnée), en attribuant les performances de la campagne.Attributing the performance of advertising or marketing campaigns (via emailing, etc.) is a major issue for brands and their agencies. In order to identify the characteristics associated with the campaign, the most commonly used method consists of the use of naming nomenclatures associated with taxonomies. When a person launches an online advertising campaign, for example on a dedicated website (such as the Facebook site of the company FACEBOOK, INC.), they do so from a computer application in which is enter the name of the advertising campaign. The entered name populates the attributes of the advertising campaign (such as product name, campaign type, etc.) according to a predefined syntax. The name is communicated to the website by the computer application. Once the campaigns have been carried out, analyzes of these campaigns can be carried out using dedicated IT tools. The campaigns are filtered according to the attributes of the nomenclature (such attributes being for example a brand, a model, or even a type of offer), in order to implement the analyses. This then makes it possible to analyze the performance of the campaign in detail (or in a more granular manner, for example at the level of a given advertisement), by attributing the performance of the campaign.
Les erreurs humaines sont toutefois fréquentes dans le remplissage des formulaires et en particulier dans le remplissage du nom des campagnes publicitaires. Si la nomenclature (et en particulier la syntaxe du nom de campagne saisi) n’est pas respectée à la lettre, alors l’analyse de la campagne est rendue difficile voire impossible. En effet, de par le filtrage effectué sur les noms de campagnes lors des analyses, la campagne en question ne sera pas intégrée dans l’analyse. Par exemple, si l’utilisateur qui saisit le nom de la campagne inverse l’ordre de deux champs, rajoute un caractère « _ », ou bien fait une faute de frappe lors de la saisie, l’analyse ultérieure de la campagne devient impossible. En outre, l’utilisateur de l’application informatique, s’il est à même de saisir le nom de la campagne dans le champ prévu à cet effet, n’est cependant pas propriétaire de l’application et n’est donc pas en mesure de modifier le comportement de cette dernière lors de la saisie.However, human errors are common when filling out forms and particularly when filling in the names of advertising campaigns. If the nomenclature (and in particular the syntax of the campaign name entered) is not respected to the letter, then the analysis of the campaign is made difficult or even impossible. Indeed, due to the filtering carried out on campaign names during analyses, the campaign in question will not be integrated into the analysis. For example, if the user who enters the name of the campaign reverses the order of two fields, adds a “_” character, or makes a typo during entry, subsequent analysis of the campaign becomes impossible. . In addition, the user of the computer application, if he is able to enter the name of the campaign in the field provided for this purpose, is however not the owner of the application and is therefore not in able to modify the behavior of the latter during entry.
Il existe donc un besoin de pouvoir disposer d’un procédé, mis en œuvre par ordinateur, de contrôle de la conformité d’une valeur d’au moins un champ de données de l’application informatique, qui permette d’éviter des erreurs de saisie manuelle à un utilisateur de l’application non propriétaire de cette dernière, afin notamment d’améliorer la fiabilité des analyses ultérieures effectuées sur les données saisies.There is therefore a need to be able to have a method, implemented by computer, for checking the conformity of a value of at least one data field of the computer application, which makes it possible to avoid errors of manual entry to a user of the application who is not the owner of the latter, in particular to improve the reliability of subsequent analyzes carried out on the data entered.
La présente invention vise à résoudre tout ou partie des inconvénients de l’état de la technique cités précédemment.The present invention aims to resolve all or part of the drawbacks of the state of the art cited above.
Ainsi, selon un premier aspect, l’invention concerne un procédé, mis en œuvre par ordinateur, de contrôle de la conformité d’une valeur d’au moins un champ de données d’une première application informatique, la première application informatique étant stockée dans ledit ordinateur ou dans un serveur informatique, le serveur informatique étant relié le cas échéant audit ordinateur via un réseau de communication de données, ledit au moins un champ de données étant apte à être modifié par un utilisateur de la première application informatique via une interface de saisie de données, l’ordinateur comprenant des moyens de traitement et des moyens mémoire reliés aux moyens de traitement et stockant une seconde application informatique, la seconde application informatique étant configurée de telle sorte qu’elle vient en surcouche de la première application informatique, le procédé comportant les étapes suivantes, mises en œuvre par la seconde application informatique lorsque cette dernière est exécutée par les moyens de traitement de l’ordinateur :
- une comparaison de la syntaxe de la valeur dudit au moins un champ de données à une expression régulière prédéfinie au sein de la seconde application informatique et attendue par la seconde application informatique ; et
- lorsque, à l’issue de l’étape de comparaison, la syntaxe de la valeur dudit au moins un champ de données ne correspond pas à l’expression régulière prédéfinie, un actionnement d’un mécanisme informatique prédéterminé.
- a comparison of the syntax of the value of said at least one data field to a regular expression predefined within the second computer application and expected by the second computer application; And
- when, at the end of the comparison step, the syntax of the value of said at least one data field does not correspond to the predefined regular expression, an actuation of a predetermined computer mechanism.
Grâce à l’étape de comparaison de la syntaxe de la valeur du champ de données à une expression régulière prédéfinie au sein de la seconde application informatique, le procédé selon l’invention permet d’actionner automatiquement un mécanisme informatique prédéterminé en cas de non correspondance. Ceci permet d’informer en temps réel l’utilisateur de la première application informatique lorsqu’il commet des erreurs de saisie dans la première application, ou bien d’empêcher l’utilisateur de commettre de telles erreurs. La fiabilité des analyses ultérieures effectuées sur les données saisies dans la première application est ainsi avantageusement améliorée. La seconde application informatique, qui vient en surcouche de la première application informatique, permet ainsi d’effectuer des contrôles qualité sur des données et des saisies effectuées sur l’interface de saisie d’une application tierce dont l’utilisateur de l’application n’est pas propriétaire.Thanks to the step of comparing the syntax of the value of the data field to a predefined regular expression within the second computer application, the method according to the invention makes it possible to automatically activate a predetermined computer mechanism in the event of a non-match . This makes it possible to inform the user of the first computer application in real time when he makes input errors in the first application, or to prevent the user from making such errors. The reliability of subsequent analyzes carried out on the data entered in the first application is thus advantageously improved. The second computer application, which is an overlay of the first computer application, thus makes it possible to carry out quality checks on data and entries made on the input interface of a third-party application of which the user of the application n is not the owner.
Selon un premier mode de réalisation, la première application informatique est stockée dans un serveur informatique de type serveur Web, le réseau de communication de données étant configuré comme un réseau Internet, l’interface de saisie de données étant une page Internet accessible via un navigateur Internet, et la seconde application informatique est une application choisie parmi le groupe consistant en : une application configurée pour agir comme une extension dudit navigateur Internet ; un navigateur dédié apte à modifier ladite page Internet ; un module d’extension d’application Web (aussi appelé « plug-in Web » en anglais) ; et une application de lecture d’écran d’ordinateur.According to a first embodiment, the first computer application is stored in a computer server of the Web server type, the data communication network being configured as an Internet network, the data entry interface being an Internet page accessible via a browser Internet, and the second computer application is an application selected from the group consisting of: an application configured to act as an extension of said Internet browser; a dedicated browser capable of modifying said Internet page; a web application extension module (also called a “web plug-in” in English); and a computer screen reading application.
Selon un deuxième mode de réalisation, la première application informatique est stockée dans les moyens mémoire dudit ordinateur, conjointement avec la seconde application informatique. Selon ce deuxième mode de réalisation, la première application informatique est par exemple un fichier Excel.According to a second embodiment, the first computer application is stored in the memory means of said computer, together with the second computer application. According to this second embodiment, the first computer application is for example an Excel file.
Selon un mode de réalisation, l’étape d’actionnement d’un mécanisme informatique prédéterminé est une étape choisie parmi le groupe consistant en : un affichage, sur un écran dudit ordinateur, d’au moins un indicateur d’une couleur prédéfinie, et/ou d’un symbole ou d’un texte d’erreur ; un blocage d’une action prédéfinie sur l’interface de saisie de données ; un déclenchement d’une alerte sur l’ordinateur ; et une modification d’au moins une donnée parmi les données affichées dans l’interface de saisie de données. Ceci permet d’informer en temps réel l’utilisateur de la première application informatique lorsqu’il commet des erreurs de saisie dans la première application, ou bien d’empêcher l’utilisateur de commettre de telles erreurs.According to one embodiment, the step of actuating a predetermined computer mechanism is a step chosen from the group consisting of: a display, on a screen of said computer, of at least one indicator of a predefined color, and /or an error symbol or text; blocking a predefined action on the data entry interface; triggering an alert on the computer; and a modification of at least one piece of data among the data displayed in the data entry interface. This makes it possible to inform the user of the first computer application in real time when he makes input errors in the first application, or to prevent the user from making such errors.
De manière préférée, la seconde application informatique comporte un générateur de valeurs qui vient en surcouche de la première application informatique, ledit générateur de valeurs étant configuré pour générer des valeurs valides prédéfinies dans ledit au moins un champ de données de la première application informatique. Ceci permet de simplifier davantage l’expérience de l’utilisateur ainsi que son confort, en évitant à ce dernier de devoir passer continuellement de la première application informatique à un outil de générateur de valeurs distinct de cette première application informatique (ce qui impose en outre à l’utilisateur de devoir recopier manuellement les valeurs dans la première application informatique). Les valeurs valides sont par exemple prédéfinies selon des définitions et des contraintes précédemment établies par un opérateur tiers.Preferably, the second computer application comprises a value generator which is an overlay of the first computer application, said value generator being configured to generate predefined valid values in said at least one data field of the first computer application. This makes it possible to further simplify the user experience as well as their comfort, by avoiding the latter having to continually switch from the first computer application to a value generator tool distinct from this first computer application (which also imposes the user to have to manually copy the values into the first computer application). Valid values are, for example, predefined according to definitions and constraints previously established by a third-party operator.
Selon un mode de réalisation, la seconde application informatique comporte un analyseur syntaxique, ledit analyseur syntaxique étant configuré pour valider en temps réel une règle prédéfinie au sein de la seconde application informatique, ladite règle prédéfinie étant composée d'au moins une expression régulière, la ou chaque expression régulière définissant un ensemble de valeurs possibles pour ledit au moins un champ de données.According to one embodiment, the second computer application comprises a syntactic analyzer, said syntactic analyzer being configured to validate in real time a predefined rule within the second computer application, said predefined rule being composed of at least one regular expression, the or each regular expression defining a set of possible values for said at least one data field.
De manière préférée, lorsque la valeur dudit au moins un champ de données est une chaîne de caractères, l’étape de comparaison de la syntaxe de la valeur dudit au moins un champ de données à une expression régulière prédéfinie comporte une première phase de découpage de ladite chaîne de caractères, une deuxième phase de création d’une grammaire en fonction de ladite règle prédéfinie, une troisième phase d’analyse ascendante partant de différents caractères acceptés dans l’expression régulière prédéfinie pour les regrouper en axiomes, et une quatrième phase de validation de la dépendance entre les axiomes, une deuxième phase de création d’une grammaire en fonction de ladite règle prédéfinie, une troisième phase d’analyse ascendante partant de différents caractères acceptés dans l’expression régulière prédéfinie pour les regrouper en axiomes, et une quatrième phase de validation de la dépendance entre les axiomes. Ceci permet d’améliorer substantiellement les performances et l’efficacité de l’étape de comparaison, pour décider de la validité de la valeur du champ de données, et le cas échéant recourir à l’actionnement du mécanisme informatique prédéterminé pour récupérer dès que possible sur un état valide.Preferably, when the value of said at least one data field is a character string, the step of comparing the syntax of the value of said at least one data field to a predefined regular expression comprises a first phase of cutting the said character string, a second phase of creating a grammar according to said predefined rule, a third phase of bottom-up analysis starting from different characters accepted in the predefined regular expression to group them into axioms, and a fourth phase of validation of the dependence between the axioms, a second phase of creating a grammar according to said predefined rule, a third phase of bottom-up analysis starting from different characters accepted in the predefined regular expression to group them into axioms, and a fourth phase of validation of the dependence between the axioms. This makes it possible to substantially improve the performance and efficiency of the comparison step, to decide on the validity of the value of the data field, and if necessary resort to the actuation of the predetermined computer mechanism to recover as soon as possible to a valid state.
Selon un mode de réalisation, l’ensemble de valeurs possibles définies par la ou chaque expression régulière est propre à un identifiant spécifique utilisé par l’utilisateur sur la première application informatique. Ceci permet par exemple d’individualiser et de particulariser, pour chaque utilisateur, les expressions régulières attendues par la seconde application informatique, le lien avec les expressions régulières attendues s’effectuant par le biais de l’identifiant spécifique de l’utilisateur. Ainsi, des valeurs d’expressions régulières différentes peuvent être utilisées par la seconde application informatique pour des utilisateurs distincts, selon le compte avec lequel chaque utilisateur est connecté sur la première application informatique. La récupération des valeurs individuelles dans la seconde application informatique s’effectue alors en se basant sur l’identifiant spécifique de l’utilisateur.According to one embodiment, the set of possible values defined by the or each regular expression is specific to a specific identifier used by the user on the first computer application. This makes it possible, for example, to individualize and particularize, for each user, the regular expressions expected by the second computer application, the link with the expected regular expressions being made via the specific identifier of the user. Thus, different regular expression values can be used by the second computer application for distinct users, depending on the account with which each user is connected to the first computer application. The recovery of individual values in the second computer application is then carried out based on the specific identifier of the user.
Selon un mode de réalisation, le type de donnée dont la conformité de la valeur est à contrôler par le procédé est une nomenclature devant respecter un format prédéterminé.According to one embodiment, the type of data whose conformity of the value is to be checked by the method is a nomenclature which must respect a predetermined format.
De manière préférée, la nomenclature est composée d’une pluralité d’éléments séparés par des séparateurs, la valeur de chacun des éléments étant découpée et ségréguée lors de la première phase de découpage de la chaîne de caractères, et la quatrième phase de validation de la dépendance entre les axiomes est effectuée séquentiellement pour chacun desdits éléments. Ceci permet d’effectuer une validation de la valeur du champ de données élément par élément, et d’identifier ainsi précisément quel élément de la nomenclature est conforme et quel autre n’est pas conforme. La précision du contrôle de conformité effectué par le procédé selon l’invention est ainsi améliorée.Preferably, the nomenclature is composed of a plurality of elements separated by separators, the value of each of the elements being cut and segregated during the first phase of cutting the character string, and the fourth phase of validation of the dependence between the axioms is carried out sequentially for each of said elements. This makes it possible to validate the value of the data field element by element, and thus precisely identify which element of the nomenclature is compliant and which other is not compliant. The precision of the conformity check carried out by the method according to the invention is thus improved.
Selon une application particulière de l’invention, la première application informatique est une application de création de campagnes publicitaires.According to a particular application of the invention, the first computer application is an application for creating advertising campaigns.
Selon un deuxième aspect, l’invention concerne également un produit programme d’ordinateur comportant des instructions de programme stockées dans des moyens mémoire d’un ordinateur et qui, lorsqu’exécutées par des moyens de traitement de l’ordinateur, sont aptes à mettre en œuvre le procédé tel que décrit ci-dessus, pour le contrôle de la conformité de la valeur dudit au moins un champ de données de la première application informatique, le produit programme d’ordinateur constituant la seconde application informatique.According to a second aspect, the invention also relates to a computer program product comprising program instructions stored in memory means of a computer and which, when executed by processing means of the computer, are capable of putting implementing the method as described above, for checking the conformity of the value of said at least one data field of the first computer application, the computer program product constituting the second computer application.
Par « ordinateur » est entendu selon l’invention toute structure matérielle comprenant au moins une unité de traitement de données munie d’un ou plusieurs processeur(s) et d’une ou plusieurs mémoire(s), que cette structure soit localisée et concentrée dans une seule unité matérielle comme c’est le cas pour un ordinateur individuel, ou déportée et/ou répartie sur plusieurs unités comme c’est le cas pour un serveur informatique ou un ensemble de serveurs informatiques.By “computer” is meant according to the invention any hardware structure comprising at least one data processing unit provided with one or more processor(s) and one or more memory(s), whether this structure is localized and concentrated in a single hardware unit as is the case for an individual computer, or remote and/or distributed over several units as is the case for a computer server or a set of computer servers.
Par « champ de données » est entendu selon l’invention l'information élémentaire d'une base de données, d'un fichier informatique, et plus généralement d'une ressource informatique où existent des termes indexés.By “data field” is meant according to the invention the elementary information of a database, of a computer file, and more generally of a computer resource where indexed terms exist.
Par « valeur d’un champ de données » est entendu selon l’invention l'instance particulière d’un champ de données, par exemple saisie ou modifiée par un utilisateur. La valeur d’un champ de données est typiquement constituée d’une chaîne de caractères ou encore d’une valeur d’un opérateur booléen.By “value of a data field” is meant according to the invention the particular instance of a data field, for example entered or modified by a user. The value of a data field typically consists of a character string or the value of a Boolean operator.
Par « expression régulière » est entendu selon l’invention une chaîne de caractères qui décrit, selon une syntaxe précise, un ensemble de chaînes de caractères possibles.By “regular expression” is meant according to the invention a character string which describes, according to a precise syntax, a set of possible character strings.
Par « venir en surcouche » est entendu selon l’invention le fait d’ajouter, par une application tierce, des fonctionnalités supplémentaires à un logiciel préexistant pour en augmenter les possibilités.By “coming as an overlay” is meant according to the invention the fact of adding, through a third-party application, additional functionalities to pre-existing software to increase its possibilities.
Par « analyseur syntaxique » est entendu selon l’invention le programme informatique qui effectue la tâche consistant à mettre en évidence la structure d'un texte, et en particulier à diviser un énoncé en langage informatique en plusieurs parties exploitables par l'ordinateur. Le texte à analyser est en effet défini par un ensemble de règles de syntaxe formant une grammaire formelle. La structure révélée par l'analyse donne alors précisément la façon dont les règles de syntaxe sont combinées dans le texte. Les parties divisées peuvent ensuite être utilisées par l’ordinateur pour développer d’autres actions ou créer des instructions formant un programme exécutable.By “syntactic analyzer” is meant according to the invention the computer program which carries out the task consisting of highlighting the structure of a text, and in particular of dividing a statement in computer language into several parts usable by the computer. The text to be analyzed is in fact defined by a set of syntax rules forming a formal grammar. The structure revealed by the analysis then gives precisely the way in which the rules of syntax are combined in the text. The divided parts can then be used by the computer to develop further actions or create instructions forming an executable program.
Par « axiome » est entendu selon l’invention un élément de l'ensemble des non-terminaux, l’ensemble des non-terminaux étant un ensemble fini de symboles d’une grammaire formelle ; une grammaire étant un formalisme permettant de définir une syntaxe et donc un langage formel, c'est-à-dire un ensemble de mots admissibles sur un alphabet donné.By “axiom” is meant according to the invention an element of the set of non-terminals, the set of non-terminals being a finite set of symbols of a formal grammar; a grammar being a formalism making it possible to define a syntax and therefore a formal language, that is to say a set of admissible words on a given alphabet.
Sur la
Dans l’exemple de réalisation illustré sur la
L’ordinateur 4 comporte des moyens de traitement 8 et des moyens mémoire 10 reliés aux moyens de traitement 8. Les moyens de traitement 8 sont par exemple constitués d’un ou plusieurs processeur(s). Les moyens mémoire 10 sont par exemple constitués d’une ou plusieurs mémoire(s), volatile(s) ou non. Les moyens mémoire 10 stockent une seconde application informatique 12. La seconde application informatique 12 est configurée de telle sorte qu’elle vient en surcouche de la première application informatique 7. De préférence, la seconde application informatique 12 comporte un générateur de valeurs (non représenté sur les figures) qui vient en surcouche de la première application informatique 7. Le générateur de valeurs est configuré pour générer des valeurs valides prédéfinies dans le ou chaque champ de données de la première application informatique 7. Le générateur de valeurs permet par exemple à un utilisateur de pouvoir définir des informations clés dans des menus déroulants ou dans des champs de texte. Les valeurs valides sont par exemple prédéfinies par un autre utilisateur, et respectent une ou plusieurs contrainte(s) prédéterminée(s) (telle(s) que par exemple un nombre de caractères maximal et/ou une absence de caractères spéciaux).The computer 4 comprises processing means 8 and memory means 10 connected to the processing means 8. The processing means 8 are for example made up of one or more processor(s). The memory means 10 are for example made up of one or more memory(s), volatile or not. The memory means 10 store a second computer application 12. The second computer application 12 is configured such that it overlays the first computer application 7. Preferably, the second computer application 12 comprises a value generator (not shown in the figures) which is an overlay of the first computer application 7. The value generator is configured to generate predefined valid values in the or each data field of the first computer application 7. The value generator allows for example a user to be able to define key information in drop-down menus or in text fields. The valid values are for example predefined by another user, and respect one or more predetermined constraints (such as for example a maximum number of characters and/or an absence of special characters).
De préférence encore, la seconde application informatique 12 comporte en outre un analyseur syntaxique (non représenté sur les figures). L’analyseur syntaxique est configuré pour valider en temps réel une règle prédéfinie au sein de la seconde application informatique 12. La règle prédéfinie est composée d'au moins une expression régulière, la ou chaque expression régulière définissant un ensemble de valeurs possibles pour le ou chaque champ de données de la première application informatique 7. La règle est par exemple prédéfinie au sein de la seconde application informatique 12 par un utilisateur de l’application. Il est à noter que, dans certains modes de réalisation, une expression régulière donnée peut réduire les valeurs d’une autre expression régulière à un sous-ensemble de valeurs possibles pour le ou chaque champ de données de la première application informatique 7.More preferably, the second computer application 12 further comprises a syntactic analyzer (not shown in the figures). The syntactic analyzer is configured to validate in real time a predefined rule within the second computer application 12. The predefined rule is composed of at least one regular expression, the or each regular expression defining a set of possible values for the or each data field of the first computer application 7. The rule is for example predefined within the second computer application 12 by a user of the application. It should be noted that, in certain embodiments, a given regular expression can reduce the values of another regular expression to a subset of possible values for the or each data field of the first computer application 7.
La seconde application informatique 12 est par exemple choisie parmi le groupe consistant en : une application configurée pour agir comme une extension d’un navigateur Internet ; un navigateur dédié apte à modifier une page Internet ; un module d’extension d’application Web (aussi appelé « plug-in Web » en anglais) ; et une application de lecture d’écran d’ordinateur ; sans que cela ne soit limitatif dans le cadre de la présente invention. Lorsque la seconde application informatique 12 utilise un mécanisme ou un module d’extension, ce dernier est notamment apte à lire et à modifier du contenu d’un langage informatique tel que par exemple Javascript ou HTML (de l’anglais HyperText Markup Language) ou tout autre langage informatique connu. La seconde application informatique 12 est par exemple téléchargeable depuis un serveur applicatif annexe, non représenté sur les figures.The second computer application 12 is for example chosen from the group consisting of: an application configured to act as an extension of an Internet browser; a dedicated browser capable of modifying an Internet page; a web application extension module (also called a “web plug-in” in English); and a computer screen reading application; without this being limiting in the context of the present invention. When the second computer application 12 uses a mechanism or an extension module, the latter is particularly capable of reading and modifying the content of a computer language such as for example Javascript or HTML (from the English HyperText Markup Language) or any other known computer language. The second computer application 12 can for example be downloaded from an additional application server, not shown in the figures.
Le réseau de communication de données 6 est muni d’une infrastructure de communication privée ou étendue permettant la connexion, ou l’accès, à des équipements de communication de type serveurs et/ou bases de données et/ou ordinateurs. De manière classique, l’infrastructure de communication forme un réseau sans fil, ou un réseau filaire, ou encore un réseau comprenant une portion sans fil et une portion filaire. Dans un mode de réalisation particulier, le réseau de communication de données 2 est conçu comme un réseau Internet conforme au protocole IP (de l’anglais « Internet Protocol »).The data communication network 6 is provided with a private or extended communication infrastructure allowing connection, or access, to communication equipment such as servers and/or databases and/or computers. Conventionally, the communication infrastructure forms a wireless network, or a wired network, or even a network comprising a wireless portion and a wired portion. In a particular embodiment, the data communication network 2 is designed as an Internet network conforming to the IP protocol (English “Internet Protocol”).
Le procédé de contrôle de la conformité d’une valeur du ou de chaque champ de données de la première application informatique 7, mis en œuvre par la seconde application informatique 12 lorsqu’elle est exécutée par les moyens de traitement 8, va maintenant être décrit en référence à la
On suppose qu’initialement, un utilisateur modifie manuellement la valeur d’un des champs de données de la première application informatique 7. Pour ce faire, l’utilisateur utilise par exemple la page Internet constituant l’interface de saisie de données, et entre une chaîne de caractères ou modifie la valeur d’un opérateur booléen dans le champ de données en question. De préférence, le type de donnée dont la conformité de la valeur est à contrôler par le procédé est une nomenclature devant respecter un format prédéterminé (par exemple une nomenclature permettant de nommer une campagne publicitaire, sans que cela ne soit limitatif dans le cadre de la présente invention).It is assumed that initially, a user manually modifies the value of one of the data fields of the first computer application 7. To do this, the user uses for example the Internet page constituting the data entry interface, and enters a character string or modifies the value of a Boolean operator in the data field in question. Preferably, the type of data whose value conformity is to be checked by the method is a nomenclature which must respect a predetermined format (for example a nomenclature allowing the naming of an advertising campaign, without this being restrictive in the context of the present invention).
Le procédé comporte une première étape 20 au cours de laquelle la seconde application informatique 12 compare la syntaxe de la valeur du champ de données à une expression régulière prédéfinie au sein de la seconde application informatique 12 et attendue par la seconde application informatique 12. De préférence, l’ensemble de valeurs possibles définies par la ou chaque expression régulière attendue par la seconde application informatique 12 est propre à un identifiant spécifique utilisé par l’utilisateur sur la première application informatique 7. Le lien avec les expressions régulières attendues par la seconde application informatique 12 s’effectue alors par le biais de l’identifiant spécifique de l’utilisateur (un tel identifiant pouvant également être paramétré pour être spécifique d’un marché et/ou d’un pays dans le cadre notamment d’un outil de création de campagnes publicitaires). Ainsi, des valeurs d’expressions régulières différentes peuvent être utilisées par la seconde application informatique 12 pour des utilisateurs distincts, selon le compte avec lequel chaque utilisateur est connecté sur la première application informatique 7. La récupération des valeurs individuelles dans la seconde application informatique 12 s’effectue alors en se basant sur l’identifiant spécifique de l’utilisateur.The method comprises a first step 20 during which the second computer application 12 compares the syntax of the value of the data field to a regular expression predefined within the second computer application 12 and expected by the second computer application 12. Preferably , the set of possible values defined by the or each regular expression expected by the second computer application 12 is specific to a specific identifier used by the user on the first computer application 7. The link with the regular expressions expected by the second application computing 12 is then carried out by means of the specific identifier of the user (such an identifier can also be configured to be specific to a market and/or a country in the context in particular of a creation tool advertising campaigns). Thus, different regular expression values can be used by the second computer application 12 for distinct users, depending on the account with which each user is connected to the first computer application 7. Retrieving the individual values in the second computer application 12 is then carried out based on the specific identifier of the user.
De préférence, lorsque la valeur du champ de données est une chaîne de caractères, la première étape de comparaison 20 comporte une première phase 22 de découpage de la chaîne de caractères, puis une phase suivante 24 de création d’une grammaire en fonction de la règle prédéfinie au sein de la seconde application informatique 12, puis une troisième phase 26 d’analyse ascendante partant de différents caractères acceptés dans l’expression régulière prédéfinie pour les regrouper en axiomes, et enfin une quatrième phase 28 de validation de la dépendance entre les axiomes. Lorsque le type de donnée dont la conformité de la valeur est à contrôler est une nomenclature composée d’une pluralité d’éléments séparés par des séparateurs, la première phase de découpage 22 consiste par exemple à découper et ségréguer la valeur de chacun des éléments, et la quatrième phase de validation 28 est par exemple effectuée séquentiellement pour chacun de ces éléments. Ceci permet d’effectuer une validation de la valeur du champ de données élément par élément, et d’identifier ainsi précisément quel élément de la nomenclature est conforme et quel autre n’est pas conforme. A titre d’exemple non limitatif, une telle nomenclature composée d’une pluralité d’éléments séparés par des séparateurs est par exemple composée des éléments suivants : « PAYS », « TYPE D’OFFRE », « MARQUE », « MODELE », de tels éléments étant séparés deux à deux par des caractères « _ » pour former, une fois accolés, le nom d’une campagne publicitaire. La conformité de la valeur de chacun des éléments est ainsi validée individuellement.Preferably, when the value of the data field is a character string, the first comparison step 20 comprises a first phase 22 of cutting the character string, then a following phase 24 of creating a grammar according to the predefined rule within the second computer application 12, then a third phase 26 of bottom-up analysis starting from different characters accepted in the predefined regular expression to group them into axioms, and finally a fourth phase 28 of validation of the dependence between the axioms. When the type of data whose conformity of the value is to be checked is a nomenclature composed of a plurality of elements separated by separators, the first division phase 22 consists for example of dividing and segregating the value of each of the elements, and the fourth validation phase 28 is for example carried out sequentially for each of these elements. This makes it possible to validate the value of the data field element by element, and thus precisely identify which element of the nomenclature is compliant and which other is not compliant. By way of non-limiting example, such a nomenclature composed of a plurality of elements separated by separators is for example composed of the following elements: "COUNTRY", "TYPE OF OFFER", "BRAND", "MODEL", such elements being separated two by two by “_” characters to form, once joined, the name of an advertising campaign. The conformity of the value of each element is thus validated individually.
Si, à l’issue de la première étape 20, la syntaxe de la valeur du champ de données ne correspond pas à l’expression régulière prédéfinie au sein de la seconde application informatique 12, le procédé comporte une étape suivante 30. Sinon, le procédé comporte une étape suivante 32.If, at the end of the first step 20, the syntax of the value of the data field does not correspond to the regular expression predefined within the second computer application 12, the method comprises a following step 30. Otherwise, the process includes a following step 32.
Au cours de l’étape 30, la seconde application informatique 12 actionne un mécanisme informatique prédéterminé. L’étape d’actionnement 30 est par exemple une étape choisie parmi le groupe consistant en : un affichage, sur un écran de l’ordinateur 4, d’au moins un indicateur d’une couleur prédéfinie, et/ou d’un symbole ou d’un texte d’erreur ; un blocage d’une action prédéfinie sur l’interface de saisie de données (par exemple le blocage de la création d’une campagne publicitaire) ; un déclenchement d’une alerte sur l’ordinateur 4 ; et une modification d’au moins une donnée parmi les données affichées dans l’interface de saisie de données ; sans que cela ne soit limitatif dans le cadre de la présente invention.During step 30, the second computer application 12 activates a predetermined computer mechanism. The actuation step 30 is for example a step chosen from the group consisting of: a display, on a screen of the computer 4, of at least one indicator of a predefined color, and/or of a symbol or error text; blocking a predefined action on the data entry interface (for example blocking the creation of an advertising campaign); triggering an alert on computer 4; and a modification of at least one piece of data among the data displayed in the data entry interface; without this being limiting in the context of the present invention.
De préférence, au cours de l’étape 32, la seconde application informatique 12 actionne également un mécanisme informatique prédéterminé, différent en général du mécanisme informatique actionné au cours de l’étape 30 (par exemple un affichage, sur l’écran de l’ordinateur 4, d’au moins un indicateur d’une couleur différente de celle choisie pour l’affichage de l’indicateur de l’étape 30).Preferably, during step 32, the second computer application 12 also activates a predetermined computer mechanism, generally different from the computer mechanism activated during step 30 (for example a display, on the screen of the computer 4, of at least one indicator of a color different from that chosen for displaying the indicator of step 30).
On conçoit ainsi qu’un tel procédé de contrôle de la conformité d’une valeur selon l’invention d’éviter des erreurs de saisie manuelle à un utilisateur de la première application informatique 7, afin notamment d’améliorer la fiabilité des analyses ultérieures effectuées sur les données saisies.We can thus see that such a method of checking the conformity of a value according to the invention avoids manual entry errors for a user of the first computer application 7, in particular in order to improve the reliability of subsequent analyzes carried out. on the data entered.
Claims (10)
- une comparaison (20) de la syntaxe de la valeur dudit au moins un champ de données à une expression régulière prédéfinie au sein de la seconde application informatique (12) et attendue par la seconde application informatique (12) ; et
- lorsque, à l’issue de l’étape de comparaison (20), la syntaxe de la valeur dudit au moins un champ de données ne correspond pas à l’expression régulière prédéfinie, un actionnement (30) d’un mécanisme informatique prédéterminé.
- a comparison (20) of the syntax of the value of said at least one data field to a regular expression predefined within the second computer application (12) and expected by the second computer application (12); And
- when, at the end of the comparison step (20), the syntax of the value of said at least one data field does not correspond to the predefined regular expression, an actuation (30) of a predetermined computer mechanism.
Computer program product (12) comprising program instructions stored in memory means (10) of a computer (4) and which, when executed by processing means (8) of the computer (4), are capable of implementing the method according to any one of the preceding claims, for checking the conformity of the value of said at least one data field of the first computer application (7), the computer program product (12 ) constituting the second computer application.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2209607A FR3140192A1 (en) | 2022-09-22 | 2022-09-22 | Process for checking the conformity of data and entries in a computer application via a third-party computer application |
PCT/EP2023/075997 WO2024061998A1 (en) | 2022-09-22 | 2023-09-21 | Method for checking the conformity of data and inputs in a computer application via a third-party computer application |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2209607 | 2022-09-22 | ||
FR2209607A FR3140192A1 (en) | 2022-09-22 | 2022-09-22 | Process for checking the conformity of data and entries in a computer application via a third-party computer application |
Publications (1)
Publication Number | Publication Date |
---|---|
FR3140192A1 true FR3140192A1 (en) | 2024-03-29 |
Family
ID=84331519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2209607A Pending FR3140192A1 (en) | 2022-09-22 | 2022-09-22 | Process for checking the conformity of data and entries in a computer application via a third-party computer application |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR3140192A1 (en) |
WO (1) | WO2024061998A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9330198B1 (en) * | 2012-11-16 | 2016-05-03 | Amazon Technologies, Inc. | Mapping stored client data to requested data using metadata |
US10372804B2 (en) * | 2016-05-17 | 2019-08-06 | Bruce HASSEL | Interactive audio validation/assistance system and methodologies |
-
2022
- 2022-09-22 FR FR2209607A patent/FR3140192A1/en active Pending
-
2023
- 2023-09-21 WO PCT/EP2023/075997 patent/WO2024061998A1/en unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9330198B1 (en) * | 2012-11-16 | 2016-05-03 | Amazon Technologies, Inc. | Mapping stored client data to requested data using metadata |
US10372804B2 (en) * | 2016-05-17 | 2019-08-06 | Bruce HASSEL | Interactive audio validation/assistance system and methodologies |
Also Published As
Publication number | Publication date |
---|---|
WO2024061998A1 (en) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11113041B2 (en) | Spreadsheet-based software application development | |
US10706735B2 (en) | Guiding creation of an electronic survey | |
US8577829B2 (en) | Extracting information from unstructured data and mapping the information to a structured schema using the naïve bayesian probability model | |
EP3718000B1 (en) | Spreadsheet-based software application development | |
US8862622B2 (en) | Analysis, inference, and visualization of social networks | |
FR2813409A1 (en) | Configuration of a peripheral for processing of electronic documents in a communication network, uses user data to access level of service available to that user on a network and prepares configuration from user data and service level data | |
US8768920B1 (en) | Posting questions from search queries | |
CA2561762A1 (en) | Information retrieval | |
US20070156871A1 (en) | Secure dynamic HTML pages | |
US11726753B2 (en) | Spreadsheet-based software application development | |
EP2612236A1 (en) | Method of gathering data of an event-like nature from electronic forms | |
Akgul | Web site accessibility, quality and vulnerability assessment: a survey of government web sites in the Turkish Republic | |
US20100070893A1 (en) | Data quality administration framework | |
EP1921550A1 (en) | Method of analysing and processing requests applied to a search engine | |
FR3140192A1 (en) | Process for checking the conformity of data and entries in a computer application via a third-party computer application | |
WO2016147219A1 (en) | Text visualization system, text visualization method, and recording medium | |
US9946700B2 (en) | Systems and methods for providing for display a map that graphically represents the association among documents | |
EP0331551A2 (en) | Programmable logic controller using a structured programming language | |
US11340918B2 (en) | Knowledge engine auto-generation of guided flow experience | |
US11733847B2 (en) | Knowledge engine auto-generation of guided flow experience | |
US11790296B1 (en) | Machine learning predictive modeling with natural language processing of end-user communications | |
EP4328764A1 (en) | Artificial intelligence-based system and method for improving speed and quality of work on literature reviews | |
US11755774B1 (en) | Chat attachment screening | |
FR3056318A1 (en) | METHOD FOR ANALYZING MALFUNCTIONS OF AN ONBOARD SYSTEM, COMPUTER PROGRAM PRODUCT, AND ANALYZING DEVICE THEREFOR | |
FR2848689A1 (en) | Computer data acquisition process, involves selecting page containing data in function of rules of navigation and acquired data trade, determining rules and trades and applying configuration of page to selected page |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20240329 |