Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR AUTOMATICALLY PRODUCING A DATABASE FROM A GENERIC DATA MODEL AND A TAXONOMY
Document Type and Number:
WIPO Patent Application WO/2016/124851
Kind Code:
A1
Abstract:
The invention relates to a method for automatically producing a database from a generic data model and a taxonomy characterised in that at least part of the data is subjected to version control and comprises queryable temporal information determining the relevant period of each of the versions, the temporal information having at least one relation with at least one other datum, the method for producing said database consisting in determining a unique taxonomy common to the whole of a domain.

Inventors:
NOWAK FRÉDÉRIC (FR)
MORENO GOMEZ CARLOS (FR)
Application Number:
PCT/FR2016/050213
Publication Date:
August 11, 2016
Filing Date:
February 02, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SHOOTSHARESHOW (FR)
International Classes:
G06F17/30
Foreign References:
US8768928B22014-07-01
Other References:
"Grid and cooperative computing - GCC 2004 : third international conference, Wuhan, China, October 21 - 24, 2004IN: Lecture notes in computer science , ISSN 0302-9743 ; Vol. 3251", vol. 6050, 19 May 2011, SPRINGER VERLAG, DE, ISBN: 978-3-642-24711-8, ISSN: 0302-9743, article GEORGIOS PETASIS ET AL: "Ontology Population and Enrichment: State of the Art", pages: 134 - 166, XP055236201, 032548, DOI: 10.1007/978-3-642-20795-2_6
BRANDT ET AL: "An ontology-based approach to knowledge management in design processes", COMPUTERS & CHEMICAL ENGINEERING, PERGAMON PRESS, OXFORD, GB, vol. 32, no. 1-2, 1 November 2007 (2007-11-01), pages 320 - 342, XP022324497, ISSN: 0098-1354, DOI: 10.1016/J.COMPCHEMENG.2007.04.013
"Ingénierie des connaissances: évolutions récentes et nouveaux défis", 22 February 2000, EYROLLES, ISBN: 978-2-212-09110-6, article BRUNO BACHIMONT: "Engagement sémantique et engagement ontologique : conception et réalisation d'ontologies en Ingénierie des connaissances", XP055236266
JOHANNES HEINECKE: "Génération automatique des représentations ontologiques", TRAITEMENT AUTOMATIQUE DES LANGUES NATURELLES, 10 April 2006 (2006-04-10), pages 502 - 511, XP055236154
MAEDCHE, ALEXANDER ET AL.: "IEEE Intelligent Systems", March 2003, IEEE COMPUTER SOCIETY, article "Ontologies for Enterprise Knowledge Management", pages: 26 - 33
GEORGIOS PETASIS: "ontology population and enrichment", GRID AND COOPÉRATION COMPUTING, 19 May 2011 (2011-05-19)
Attorney, Agent or Firm:
BREESE, Pierre (FR)
Download PDF:
Claims:
Revendications

1 — Procédé de production automatique d'une base de données à partir d'un modèle de données générique et d'une taxinomie caractérisée en ce qu'une partie au moins des données sont versionnées, et comporte une information temporelle requétable déterminant la période de pertinence de chacune des versions, l'information temporelle comprend au moins une relation avec au moins une autre donnée, le procédé de constitution de ladite base de donnée consistant à déterminer une taxinomie unique commune à l'ensemble d'un domaine, le procédé de production automatique de la base de données comportant :

une étape de définition de la taxinomie par l'enregistrement d'un fichier structurée de représentation arborescente de N niveaux de catégories descriptives d'un domaine de connaissances

- une étape de définition d'un modèle de données sous forme de fichier structuré décrivant des types entités et leurs relations génériques

une étape de spécialisation de chaque type d'entité par rapport à ladite taxinomie, consistant à définir un fichier structuré comportant des types d'entités et leurs relations spécifiques à certaines catégories ainsi que leurs relations de spécialisation d'appartenance à une catégorie de niveau supérieur

une étape de création de types d'entités additionnelles, spécifiques à une catégorie [exemple voiture pour « sport automobile)] décrites sous forme de fichier structuré [RDF] décrivant des types entités et leurs relations spécialisées

- la réitération de l'étape de spécialisation de chaque type d'entité par rapport à ladite taxinomie, consistant à définir un fichier structuré [rdf] comportant des types d'entités additionnelles et leurs relations spécifiques à certaines catégories ainsi que leurs relations de spécialisation d'appartenance à une catégorie de niveau supérieur [exemple un joueur de tennis est une personne (spécialisation) et participe à une compétition de tennis ( événement ) ]

Une étape de définition des types d'entités versionnables temporellement , dont les relations ne sont pas constantes mais dépendent du temps,

- l'enregistrement de chacune des nouvelles entrées consistant à définir sa période de validité temporelles et les relations avec d'autres entités pendant la période de validité .

Description:
PROCÉDÉ DE PRODUCTION AUTOMATIQUE D'UNE BASE DE DONNÉES À PARTIR D'UN MODÈLE DE DONNÉES GÉNÉRIQUE ET D'UNE TAXINOMIE

Domaine de 1 ' invention

La présente invention concerne le domaine de la constitution et l'exploitation de bases de données informatiques permettant des traitements d'extraction et d'analyse des contenus.

Etat de la technique

L'article "Ontologies for Enterprise Knowledge Management" Maedche, Alexander, et al., IEEE Intelligent Systems, IEEE Computer Society, Mar./Apr. 2003, pp. 26-33 décrit le principe général des architectures de gestion, et notamment de la prise en charge de plusieurs ontologies et la gestion de l'évolution des ontologies.

On connaît dans l'état de la technique le brevet américain US8768928 concernant un procédé de construction d'un modèle ontologique. Cette solution propose un procédé pour générer une pluralité de sources d'informations dérivées d'une plate-forme de développement de logiciels, le procédé comprenant :

a) la définition d'une ontologie à fournir une représentation basée sur une pluralité de sources d'informations d'origine, ces sources d'informations ayant des formes de représentation hétérogènes;

b) la transformation par un traitement informatique de la pluralité de sources d'informations d'origine

c) la génération automatique d'une pluralité de sources d'informations dérivées à partir de l'ontologie, pour générer la source de 1 ' information dérivée dans des formats respectifs de la pluralité de sources d'informations et de dérivés correspondants étant dérivés de la pluralité de sources d'information d'origine.

On connaît également dans l'état de la technique l'article Georgios Petasis « ontology population and enrichment » paru dans « Grid and coopération Computing » du 19 Mai 2011 ISSN 0302-9743.

Inconvénient de l'art antérieur La solution de l'art antérieur présente plusieurs inconvénients .

En premier lieu, elle ne permet l'enregistrement et l'exploitation que des données pleinement conformes à l'ontologie définie pendant la phase de construction. Des entités non représentables dans cette ontologie générée à partir de la taxinomie ne peuvent pas être traitées par la base de données constituée selon l'art antérieur.

Ces entités devraient être traitées dans une deuxième base de données pour l'enregistrement et le traitement des exceptions, avec des traitements globaux pour coordonner l'utilisation des deux bases données. Ceci entraînerait des temps de traitements importants.

En deuxième lieu, lorsque les relations entre des entités varient, il est nécessaire de procéder à une recherche des enregistrements qui ne sont plus pertinents et leur remplacement par des données actualisées, ce qui entraîne une grande lourdeur de la maintenance de la base de données.

En troisième lieu, la solution de l'art antérieur ne permet pas de réaliser de manière simple une mise en concordance manuelle ou automatique avec un modèle de données extérieur, distinct de celui construit selon le procédé décrit dans ce brevet afin d'insérer les données venant de ce référentiel extérieur. Solution apportée par l'invention L'objet de l'invention concerne un procédé de production automatique d'une base de données apportant une solution aux problèmes techniques de l'art antérieur, à savoir :

L'impossibilité, avec les solutions de l'art antérieur, d'enregistrer et d'exploiter des données qui ne sont pas pleinement conformes à l'ontologie définie pendant la phase de construction.

· La nécessiter de traiter certaines entités correspondant à des exception dans une deuxième base de données ce qui se traduit par des temps de traitements importants .

• La nécessité de traitements lourds de recherche des enregistrements qui ne sont plus pertinents et leur remplacement par des données actualisées

• L'impossibilité de réaliser de manière simple une mise en concordance manuelle ou automatique avec un modèle de données extérieur, distinct de celui construit initialement, afin d'insérer les données venant de ce référentiel extérieur.

Pour répondre à ces inconvénients, l'invention porte sur un procédé de production automatique de base de données mettant en œuvre sept étapes principales se traduisant par des traitements techniques. La présente invention concerne selon son acception la plus générique un procédé de production automatique d'une base de données unique à partir d'un modèle de données générique et d'une taxinomie caractérisée en ce qu'une partie au moins des données sont versionnées, et comporte une information temporelle requétable déterminant la période de pertinence de chacune des versions, l'information temporelle comprend au moins une relation avec au moins une autre donnée, le procédé de constitution de ladite base de donnée consistant à déterminer une taxinomie unique commune à l'ensemble d'un domaine, le procédé de production automatique de la base de données comportant :

a) une étape de définition de la taxinomie-racine par l'enregistrement d'un fichier structuré de représentation arborescente de N niveaux de catégories descriptives d'un domaine de connaissances [fichier XML, exemple l'ensemble des sports des grandes familles et de ses variantes]

b) une étape de définition d'un modèle de données sous forme de fichier structuré [RDF] décrivant des types entités et leurs relations génériques [exemple : événements, personnes, lieu,...]

c) une étape de spécialisation de chaque type d'entité par rapport à ladite taxinomie-racine, consistant à définir un fichier structuré [rdf] comportant des types d'entités et leurs relations spécifiques à certaines catégories ainsi que leurs relations de spécialisation d'appartenance à une catégorie de niveau supérieur [exemple un joueur de tennis est une personne (spécialisation) et participe à une compétition de tennis (événement)]

d) une étape de création de types d'entités additionnelles, non prévues dans la taxinomie racine et spécifiques à une catégorie [exemple voiture pour « sport automobile »] décrites sous forme de fichier structuré [RDF] décrivant des types entités et leurs relations spécialisées

e) la réitération de l'étape de spécialisation de chaque type d'entité par rapport à ladite taxinomie, consistant à définir un fichier structuré [rdf] comportant des types d'entités additionnelles et leurs relations spécifiques à certaines catégories ainsi que leurs relations de spécialisation d'appartenance à une catégorie de niveau supérieur [exemple un joueur de tennis est une personne (spécialisation) et participe à une compétition de tennis ( événement ) ] f) la définition des types d'entités versionnables temporellement , dont les relations ne sont pas constantes mais dépendantes du temps,

h) une étape d'enregistrement de chacune des nouvelles entrées consistant à définir sa période de validité temporelles et les relations avec d'autres entités pendant la période de validité.

Description détaillée d'un exemple non limitatif de

1 ' invention

La présente invention sera mieux comprise à la lecture de la description qui suit, se référant aux dessins annexés représentant de façon non limitative un exemple de mise en œuvre de l'invention, où :

- la figure 1 représente le schéma de principe du traitement pour la constitution d'une base de données

- la figure 2 représente un exemple de fichier html pour la construction des catégories

- la figure 3 représente un exemple de fichier XML produit par l'analyseur

la figure 4 représente une représentation graphique d'une otologie racine

- la figure 5 représente une vue graphique d'une ontologie spécialisée (7)

la figure 6 est une représentation graphique d'une ontologie de raffinement

- la figure 7 représente un schéma du processus itératif des types d'entités générées

- la figure 8 représente une vue schématique du processus versionnage.

La figure 1 représente le schéma de principe du traitement pour la constitution d'une base de données

Le traitement pour la construction d'un fichier (1) représentatif de la taxinomie consiste à extraire d'un document racine (2) les liens hypertextes par un analyseur syntaxique (3) (« parser »). L'analyseur syntaxique est configuré pour éliminer les liens hypertextes identifiés et non représentatifs de l'arborescence de type. Cette analyse se fait à partir d'un enregistrement des balises et des attributs délimitant les zones contenant des informations à analyser, ainsi que des termes représentatifs de l'arborescence à construire .

L'analyseur syntaxique (3) procède également au chargement des fichiers liés par les liens hypertextes, et procède de manière itérative à leur analyse pour compléter les données enregistrées dans le fichier (1). Ce fichier (1) est par exemple un fichier XML contenant une représentation de N niveaux d'une arborescence. Chaque niveau est représenté par un identifiant unique, par exemple l'URL de l'hyperlien, un nom et une description déterminés par extraction du contenu des fichiers (2) par l'analyseur syntaxique (3).

Après cette première étape de définition de l'arborescence, on formalise un ensemble de type d'entités et leurs relations dans un fichier (5) de type « rdf » par exemple .

On utilise ensuite un générateur (6) pour produire un fichier (7) de type « rdf » contenant l'ensemble des types d'entités et de leurs relations spécialisées par rapport à des types d'entités parentes en fonction de l'arborescence de catégorie définie dans le fichier XML (2).

Pour chaque sous-domaine identifié dans le fichier XML (1), nécessitant des types d'entités spécifiques, on redéfinit un ou plusieurs fichiers « rdf » (8) pour formaliser les nouveaux types d'entités et leurs relations spécialisées avec les autres types d'entités dans le fichier (5).

On réapplique l'étape de génération (6) avec le même traitement, appliqué au sous-ensemble des types de fichiers associés au sous-ensemble susvisé. On détermine ensuite dans les fichiers (5) et (8) les types d'entités versionnables , c'est-à-dire dont les entités peuvent présenter une variabilité temporelle, soit en ce qui concerne leurs propriétés soit en ce qui concerne leurs instances de relations avec d'autres entités. Cette variabilité peut se traduire par des instances de relation valables pendant une période temporelle donnée seulement, et d'autres instances de relations pour d'autres périodes temporelles .

Le modèle de données obtenu présente une structure comprenant des types d'entités, des relations et des plages temporelles .

Une donnée comprend :

-un identifiant unique commun à toutes les versions de la même entité

-un ensemble de propriété d'une entité

-une version exprimée sous forme de date, ou d'un intervalle de temps

-un ensemble d'instances de relations

-un identifiant unique, pour chacune les versions de la même entité

- des instances de relation de type « parent » ou « fils » et d'instances de relations de type « précédent » ou « suivant » par rapport à d'autres versions représentatives de la même entité.

L'utilisation de cette base ainsi constituée consiste à l'interroger par une requête comprenant un ensemble de critères ainsi qu'un intervalle de temps permettant de sélectionner les données dont la version est comprise dans l'intervalle de temps.

La figure 2 représente un exemple du code d'un fichier structuré (2). Il s'agit d'un fichier HTML avec des balises introduisant une taxinomie non structurée, que le traitement par l'analyseur syntaxique (3) permettra de construire une ontologie. Chacune des balises peut contenir une catégorie de la taxinomie à générer.

Le traitement par l'analyseur (3) consiste à :

- identifier si la balise contient une catégorie, en fonction du type de la balise et de son ou ses attribut (s) s'il a reconnu une catégorie, déterminer le niveau de la catégorie dans l'arborescence en fonction du niveau d'imbrication de la balise correspondante, en omettant les balises de niveau d'imbrication supérieur ne correspondant pas à des balises de catégorie

à enregistrer la séquence de caractères correspondante dans la taxinomie, au niveau de catégorie déterminé lors de l'étape précédente

- à associer des informations associées telles que l'URL et les traductions, figurant dans la même balise ;

L'analyseur (3) procède également au remplacement des caractères accentués par des caractères non accentués, à la suppression des caractères non-alphanumériques, puis au dédoublonnage de la taxinomie.

Le résultat de ce traitement est un fichier XML dont la figure 3 représente un exemple. Ce ficher XML (1) définit la taxinomie du domaine.

Chaque niveau correspond à une catégorie à laquelle sont associés des attributs notamment :

- un identifiant unique au sein de la taxinomie

- une URL pointant vers une page HTML descriptive correspondant à la catégorie

- le cas échéant, les traductions en langue étrangère du nom de la catégorie

- et toute autre information disponible et associée à la catégorie concernée.

A titre d'exemple, une taxinomie simplifiée à trois niveaux dans le domaine du sport comprend des catégories telles que - « Formule 1 « (niveau inférieur)

- « sport mécanique » (niveau intermédiaire)

- « sport » (niveau supérieur)

La figure 4 représente une représentation graphique d'une ontologie racine.

La catégorie racine de la taxinomie est représentée par une classe « Sport » (10) dans l'ontologie racine.

Tous les types d'entités (11 à 13) sont liés entre eux et à la classe (10) par des relations sémantiques, telles que « pratique », « participe à », « couvre », « se déroule à » définies par un opérateur en fonction d'une nomenclature standardisée .

La figure 5 représente une vue graphique d'une ontologie spécialisée (7).

Le traitement par le cominateur (6) conduit à générer de nouveaux types d'entités (21 à 24) complétant les entités (10, 20, 30) de la taxinomie racine. Ces catégories sont calculées en fonction des types d'entités (11 à 13) de l'entité racine ainsi que des relations sémantiques. Elles sont reproduites à l'identique au niveau des niveaux inférieurs des types d'entités.

La figure 6 est une représentation graphique d'une ontologie de raffinement associée à une sous-catégorie de la taxinomie .

Cette ontologie permet de décrire des types d'entités spécifiques à toutes les sous-catégories de la sous- catégorie précitée. Par exemple, un nouveau type d'entité « voiture » (25) est introduit au niveau de l'entité « sport mécanique automobile » (20). L'opérateur définit les relations entre ce nouveau type d'entité (20) aux types d'entités (20 à 22) qui ont déjà été définies dans l'ontologie générée à l'itération précédente.

La figure 7 représente un schéma du processus itératif des types d'entités générées. A partir d'une ontologie existante (40) et d'une taxinomie (46) — au départ l'ontologie racine, on procède à un traitement par un combinateur-applicateur (44) pour générer une nouvelle ontologie (45) consistant à déduire des informations des ontologies spécialisées (41 à 43) génériques d'une sous-catégorie de la taxinomie la liste de types d'entités nouvelles.

Gestion des versions

La figure 8 représente une vue schématique du processus versionnage.

Ce processus consiste à générer à partir d'une ontologie une ontologie versionnée permettant de gérer des versions pour un sous-ensemble de ses types d'entités.

Ce versionnage peut notamment consister à enregistrer pour une entité donnée des informations ou des relations différentes en fonction d'un paramètre tel que la date ou une période temporelle.

On enregistre une liste de versions ordonnées (50) sous forme d'un fichier XML. On définit une ontologie (51) correspondant à un modèle de représentation des entités versionnées et de leurs versions.

On définit également une liste des types racines (52) versionnables dans l'ontologie applicative (53).

Le générateur de l'arbre de versions (54) et des nouvelles classes versionnables construit une ontologie (55) d'entités versionnables.

Cette ontologie (55) permet d'enregistrer des entités associées à des versions multiples.