Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR FORMING AN OUTPUT INFORMATION SET FROM AT LEAST TWO INPUT INFORMATION SETS
Document Type and Number:
WIPO Patent Application WO/2005/020095
Kind Code:
A1
Abstract:
The invention relates to a method of forming an output information set from at least two input information sets, said information being given in a markup language containing elements from the information sets. The invention is characterised in that the method comprises the following steps consisting in: reading one key from a set of keys, said key comprising conditions for matching at least one element from an input set and/or information associated with an element from an input set with at least one element from the other input set and/or information associated with an element from the other input set; verifying if the matching conditions are satisfied, and, if so, reading at least one processing to be performed, from the set of keys, said processing being associated with the aforementioned key; and forming the output information set according to the processing associated with the key. The invention also relates to the associated device.

Inventors:
AMONOU ISABELLE (FR)
BERTIN CHRISTIAN (FR)
GESLIN FRANCK (FR)
Application Number:
PCT/EP2004/008280
Publication Date:
March 03, 2005
Filing Date:
July 22, 2004
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FRANCE TELECOM (FR)
AMONOU ISABELLE (FR)
BERTIN CHRISTIAN (FR)
GESLIN FRANCK (FR)
International Classes:
G06F17/30; H04N7/24; (IPC1-7): G06F17/30
Foreign References:
US20020188598A12002-12-12
EP1244309A12002-09-25
Other References:
HUNTER A: "Logical fusion rules for merging structured news reports", DATA & KNOWLEDGE ENGINEERING - ELSEVIER SCIENCE PUBLISHERS B. V., vol. 42, no. 1, July 2002 (2002-07-01), Elsevier Science Publishers B. V. Amsterdam, pages 23 - 56, XP002279569
ABITEBOUL S, CLUET S, MILO T: "Correspondence and translation for heterogeneous data", THEORETICAL COMPUTER SCIENCE, ELSEVIER SCIENCE PUBLISHERS B.V., 28 March 2002 (2002-03-28), Amsterdam, NL, pages 179 - 213, XP002279604
BOLEY H, GROSOF B, SINTEK M, TABET S, WAGNET G: "RuleML Design", HTTP://WWW.RULEML.ORG, 3 September 2002 (2002-09-03), pages 1 - 4, XP002279570, Retrieved from the Internet [retrieved on 20040511]
EVAIN JP: "TV-Anytime A preliminary specification on schedule!", EBU TECHNICAL REVIEW, no. 284, September 2000 (2000-09-01), pages 1/14 - 14/14, XP002279571, Retrieved from the Internet [retrieved on 20040511]
MA WEI-YING ET AL: "Framework for adaptive content delivery in heterogeneous network environments", PROCEEDINGS MULTIMEDIA COMPUTING AND NETWORKING 2000, vol. 3969, 24 January 2000 (2000-01-24) - 26 January 2000 (2000-01-26), San Jose, CA, USA, pages 86 - 100, XP002168331, Retrieved from the Internet [retrieved on 20010528]
See also references of EP 1649386A1
"Logical fusion rules for merging structured news reports", A. HUNTER DATA & KNOWLEDGE ENGINEERING, 1 July 2002 (2002-07-01)
Attorney, Agent or Firm:
Maillet, Alain (5 place Newqua, B.P. 70250 Dinard Cedex, FR)
Download PDF:
Claims:
REVENDICATIONS
1. 1) Procédé de formation d'un ensemble d'informations de sortie (15,214) à partir d'au moins deux ensembles d'informations d'entrée (10, lla, llb, 201,205), les informations étant décrites dans un langage de balisage encadrant des éléments des ensembles d'informations, caractérisé en ce que le procédé comporte les étapes de : lecture (E401, E419), dans un ensemble de clés (13a, 211), d'au moins une clé comportant des conditions de mise en correspondance d'au moins un élément d'un ensemble d'entrée (10,201) et/ou d'informations associées à un élément d'un ensemble d'entrée avec au moins un élément de l'autre ensemble d'entrée (l la, l lb, 205) et/ou d'informations associées à un élément de l'autre ensemble d'entrée, vérification (E407) si les conditions de mise en correspondance sont remplies, lecture (E408) dans l'ensemble de clés d'au moins un traitement à effectuer associé à la ou chaque clé lue dont les conditions de mise en correspondance sont remplies, formation (E410) d'un ensemble d'informations de sortie en fonction du ou de chaque traitement associé à la ou chaque clé lue dont les conditions de mise en correspondance sont remplies, transfert (E420) de l'ensemble d'informations de sortie.
2. Procédé selon la revendication 1, caractérisé en ce que l'ensemble des clés est décrit dans un langage de balisage, la ou chaque clé est incluse entre des balises et en ce que le ou chaque traitement à effectuer associé à la ou chaque clé est inclus entre les balises incluant la ou chaque clé.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que les conditions de mise en correspondance sont des conditions d'identité de valeurs d'informations associées à un élément d'un ensemble d'entrée à des valeurs d'informations associées à un élément de l'autre ensemble d'informations d'entrée.
4. Procédé selon la revendication 1 ou 2, caractérisé en ce que les conditions de mise en correspondance sont des conditions d'identité de valeurs d'informations associées à une pluralité d'éléments d'un ensemble d'entrée à des valeurs d'informations associées à une pluralité d'éléments de l'autre ensemble d'informations d'entrée.
5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'un ensemble d'informations d'entrée est principal (10, 201) et les autres ensembles d'informations d'entrée sont secondaires (lla, llb, 205), et en ce que l'ensemble d'informations de sortie (15,214) comporte les éléments de l'ensemble d'informations d'entrée principal et des éléments insérés, lesdits éléments insérés étant des éléments d'un des ensembles d'informations d'entrée secondaires.
6. Procédé selon la revendication 5, caractérisé en ce que le traitement à effectuer est une insertion dans un élément de l'ensemble d'informations de sortie d'au moins un élément d'un ensemble d'informations d'entrée secondaire.
7. Procédé selon la revendication 5, caractérisé en ce que le traitement à effectuer est un effacement d'un élément de l'ensemble d'informations de sortie et d'une insertion à la place de l'élément effacé d'au moins un élément d'un ensemble d'informations d'entrée secondaire.
8. Procédé selon la revendication 5, caractérisé en ce que le traitement à effectuer est une insertion d'informations associées à un élément d'un ensemble d'informations d'entrée secondaire, lesdites informations associées à un élément étant insérées sous la forme d'un élément dans l'ensemble d'informations de sortie.
9. Procédé selon la revendication 5, caractérisé en ce que le traitement à effectuer est une création d'un élément dans l'ensemble d'informations de sortie et une insertion d'un élément d'un ensemble d'informations d'entrée secondaire dans l'élément de l'ensemble d'informations de sortie créé.
10. Procédé selon l'une quelconque des revendications 1 à 9, caractérisé en ce que le procédé comporte en outre l'étape de : détermination de critères d'insertion (E409, E411, E412) d'au moins un élément de l'ensemble d'entrée d'un ensemble d'informations de sortie, et en ce que l'ensemble d'informations de sortie est formé conformément aux critères déterminés.
11. Procédé selon la revendication 10, caractérisé en ce que les critères d'insertion sont déterminés à partir d'un schéma structurel (14,213) prédéfini de l'ensemble d'informations de sortie et/ou de priorités (13b, 210) allouées à l'élément ou l'information associée à l'élément de l'ensemble secondaire à insérer et/ou d'un seuil d'enrichissement (13c, 212) de l'ensemble d'informations de sortie.
12. Procédé selon la revendication 11, caractérisé en ce qu'un élément et/ou les informations associées à un élément sont insérés dans l'ensemble d'informations de sortie conformément à un schéma structurel (14,213) prédéfini de l'ensemble d'informations de sortie.
13. Procédé selon la revendication 12, caractérisé en ce que si la priorité (210, 13b) allouée à l'élément ou les informations associées à un élément de l'ensemble secondaire inséré ou à insérer est supérieur au seuil d'enrichissement (13c, 212) de l'ensemble d'informations de sortie, l'élément ou les informations associées à un élément de l'ensemble d'informations d'entrée secondaire inséré est effacé (E414) de l'ensemble d'informations de sortie ou l'élément ou les informations associées à un élément de l'ensemble d'informations d'entrée secondaire à insérer n'est pas inséré.
14. Procédé selon l'une quelconque des revendications 1 à 13, caractérisé en ce que les informations de l'ensemble d'informations de sortie (214) sont des informations décrivant au moins un programme audiovisuel.
15. Procédé selon la revendication 14, caractérisé en ce que le procédé comporte en outre une étape de transcodage (202) d'informations décrivant au moins un programme audiovisuel (203) dans un format prédéterminé en un ensemble d'informations décrites dans un langage de balisage.
16. Procédé selon la revendication 15, caractérisé en ce que l'ensemble d'informations transcodées et décrites dans un langage de balisage forment une partie de l'ensemble d'informations de sortie, l'autre partie étant formée par des éléments et/ou des informations associées à un élément d'autres ensembles d'informations d'entrée.
17. Procédé selon l'une quelconque des revendications 14 à 16, caractérisé en ce que le format prédéterminé est conforme à la norme DVB et en ce que l'ensemble d'informations de sortie est décrit dans un langage de balisage et est transmis sur un réseau de type Internet (217).
18. Dispositif de formation d'un ensemble d'informations de sortie à partir d'au moins deux ensembles d'informations d'entrée, les informations étant décrites dans un langage de balisage encadrant des éléments des ensembles d'informations, caractérisé en ce que le dispositif comporte : des moyens de lecture, dans un ensemble de clés, d'au moins une clé comportant des conditions de mise en correspondance d'au moins un élément d'un ensemble d'entrée et/ou d'informations associées à un élément d'un ensemble d'entrée avec au moins un élément de l'autre ensemble d'entrée et/ou d'informations associées à un élément de l'autre ensemble d'entrée, des moyens de vérification si les conditions de mise en correspondance sont remplies, des moyens de lecture dans l'ensemble de clés d'au moins un traitement à effectuer associé à la ou chaque clé lue dont les conditions de mise en correspondance sont remplies, des moyens de formation de l'ensemble d'informations de sortie en fonction du traitement associé à la ou chaque clé lue dont les conditions de mise en correspondance sont remplies, des moyens de transfert de l'ensemble d'informations de sortie.
19. Programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant de mettre en oeuvre le procédé selon l'une quelconque des revendications 1 à 17, lorsqu'il est chargé et exécuté par un système informatique.
Description:
Procédé et dispositif de formation d'un ensemble d'informations de sortie à partir d'au moins deux ensembles d'informations d'entrée La présente invention concerne un procédé et un dispositif de formation d'un ensemble d'informations de sortie à partir d'au moins deux ensembles d'informations d'entrée, les informations étant décrites dans un langage de balisage encadrant des éléments des ensembles d'informations.

Actuellement, les échanges de données entre des dispositifs de communication tels que des ordinateurs sont réalisés au moyen de transferts de documents présentés dans un langage de balisage du type Langage Extensible de balisage ou XML (en anglais « eXtensible Marlçup Language »).

Ce langage XML est un langage de balisage, c'est-à-dire un langage qui présente l'information encadrée par des balises.

Le langage XML a été crée par le W3C acronyme de World Wide Web Consortium.

Selon le langage XML, le développeur crée ses propres balises afin d'identifier précisément le contenu des données comprises dans lesdites balises.

La fusion de documents XML est connue dans l'état de la technique. Par exemple, lorsque que deux fichiers XML comportent un mme élément à la mme valeur, les sous éléments ainsi que les informations associées à un élément dans un document sont insérées dans l'autre document à la suite de l'élément.

Les informations associées sont dans le cas du langage XML, appelées communément attributs. A un élément peuvent tre associés un ou plusieurs attributs.

Cette fusion est effectuée de manière automatique et systématique. Les critères utilisés pour la fusion sont simples et la fusion est effectuée sur des ensembles d'informations de structure simple. L'insertion des informations dans un élément, ne permet pas l'enrichissement d'un document selon des critères et des conditions complexes tout en fournissant un document final structuré.

La fusion de fichiers XML édités et/ou modifiés indépendamment dans un contexte de multi-édition est aussi connue. Selon cette technique, les différents éléments des documents édités comportant le mme attribut sont détectés.

Selon cette technique, les différences dans les documents sont détectées avant leur fusion dans un document pour former un fichier final. Ceci est effectué de manière automatique et cela sur tous éléments et/ou les attributs ou sur certains éléments et/ou attributs seulement s'ils sont identifiés par des balises spécifiques.

L'ajout de telles balises dans les documents rend chaque document plus complexe et plus long.

De plus, selon cette technique, la fusion d'éléments possédant plusieurs attributs communs n'est pas réalisable.

Ainsi, les solutions proposées dans l'état de la technique ne permettent pas d'effectuer des fusions de documents selon des critères multiples.

Les solutions de l'état de la technique ne permettent pas de fusionner des éléments possédant une mme valeur de champ, qu'elle soit textuelle ou numérique dans un des sous-éléments du fichier à enrichir.

Aussi, les solutions de l'état de la technique ne permettent pas de remplacer des éléments d'un fichier dit principal par des éléments d'un autre fichier dit fichier secondaire ou d'insérer dans le fichier principal des éléments du fichier secondaire n'existant pas dans le fichier principal.

De plus, les solutions de l'état de la technique ne permettent pas de transformer des éléments du fichier principal en attributs d'éléments ou de transformer des attributs d'éléments du fichier principal en élément.

Enfin, il n'est pas possible selon l'état de la technique d'enrichir un document avec des éléments en fonction d'une priorité allouée à ces éléments.

L'invention a pour but de résoudre les inconvénients de l'art antérieur en proposant un procédé de formation d'un ensemble d'informations de sortie à partir d'au moins deux ensembles d'informations d'entrée, les informations étant décrites dans un langage de balisage encadrant des éléments des ensembles d'informations, caractérisé en ce que le procédé comporte les étapes de lecture, dans un ensemble de clés, d'au moins une clé comportant des conditions de mise en correspondance d'au moins un élément d'un ensemble d'entrée et/ou d'informations associées à un élément d'un ensemble d'entrée avec au moins un élément de l'autre ensemble d'entrée et/ou d'informations associées à un élément de l'autre ensemble d'entrée, de vérification si les conditions de mise en correspondance sont remplies, et dans l'affirmative, de lecture dans l'ensemble de clés d'au moins un traitement à effectuer associé à la ou chaque clé lue, de formation d'un ensemble d'informations de sortie en fonction du ou de chaque traitement associé à la ou chaque clé lue et de transfert de l'ensemble d'informations de sortie.

Corrélativement, l'invention propose un dispositif de formation d'un ensemble d'informations de sortie à partir d'au moins deux ensembles d'informations d'entrée, les informations étant décrites dans un langage de balisage encadrant des éléments des ensembles d'informations, caractérisé en ce que le dispositif comporte des moyens de lecture, dans un ensemble de clés, d'au moins une clé comportant des conditions de mise en correspondance d'au moins un élément d'un ensemble d'entrée et/ou d'informations associées à un élément d'un ensemble d'entrée avec au moins un élément de l'autre ensemble d'entrée et/ou d'informations associées à un élément de l'autre ensemble d'entrée, des moyens de vérification si les conditions de mise en correspondance sont remplies, et dans l'affirmative, des moyens de lecture dans l'ensemble de clés d'au moins un traitement à effectuer associé à la ou chaque clé lue, des moyens de formation de l'ensemble d'informations de sortie en fonction du traitement associé à la ou chaque clé lue et des moyens de transfert de l'ensemble d'informations de sortie.

Ainsi, il est possible de réaliser des traitements d'ensemble d'informations tels que des fichiers comprenant des informations décrites dans un langage de balisage selon des conditions multiples.

En créant un ensemble de clés, par exemple sous la forme d'un fichier, et en associant à chacune de ces clés un ou plusieurs traitements, il est possible de former un ensemble de sortie à partir d'informations présentes dans au moins deux ensembles d'informations d'entrée de manière simple et flexible.

L'ensemble d'informations de sortie est ainsi adapté à toutes les situations possibles considérées dans le fichier des clés.

De plus, l'ensemble des clés est décrit dans un langage de balisage, la ou chaque clé est incluse entre des balises et le ou chaque traitement à effectuer associé à la ou chaque clé est inclus entre les balises incluant la ou chaque clé.

Ainsi, les ensembles d'informations, l'ensemble des clés sont décrits dans un mme langage de balisage, ce qui simplifie le procédé et le dispositif selon l'invention. De plus, l'association entre une clé et le ou les traitements associés à cette clé est réalisée de façon simple. La clé ainsi que le ou les traitements associés étant inclus dans les mmes balises, l'association est implicite. Il n'est plus alors nécessaire d'associer explicitement aux clés les traitements associés en ajoutant des informations dans l'ensemble des clés. L'ensemble des clés est alors plus compact.

Plus précisément, les conditions de mise en correspondance sont des conditions d'identité de valeurs d'informations associées à un élément d'un ensemble d'entrée à des valeurs d'informations associées à un élément de l'autre ensemble d'informations d'entrée.

Avantageusement, les conditions de mise en correspondance sont des conditions d'identité de valeurs d'informations associées à une pluralité d'éléments d'un ensemble d'entrée à des valeurs d'informations associées à une pluralité d'éléments de l'autre ensemble d'informations d'entrée.

Ainsi, il est possible de réaliser des conditions de mise en correspondance complexes. Plusieurs conditions peuvent ainsi tre utilisées pour une mme clé, ce qui permet ainsi une formation de l'ensemble d'informations de sortie adaptée à différentes situations.

Plus précisément, un ensemble d'informations d'entrée est principal et les autres ensembles d'informations d'entrée sont secondaires, et l'ensemble d'informations de sortie comporte les éléments de l'ensemble d'informations d'entrée principal et des éléments insérés, lesdits éléments insérés étant des éléments d'un des ensembles d'informations d'entrée secondaires.

Ainsi, il est possible d'enrichir un ensemble d'informations avec des éléments d'au moins un second ensemble d'informations. L'enrichissement d'un ensemble d'informations par de simples ajouts simplifie la formation de l'ensemble d'informations de sortie.

Plus précisément, le traitement à effectuer est une insertion dans un élément de l'ensemble d'informations de sortie d'au moins un élément d'un ensemble d'informations d'entrée secondaire.

Ainsi, un élément de l'ensemble d'informations de sortie est enrichi par un élément d'un ensemble d'informations d'entrée secondaire.

Aussi, le traitement à effectuer est un effacement d'un élément de l'ensemble d'informations de sortie et une insertion à la place de l'élément effacé d'au moins un élément d'un ensemble d'informations d'entrée secondaire.

Ainsi, il est possible de remplacer des éléments d'un ensemble d'informations d'entrée principal par des éléments d'un ensemble d'entrée secondaire. L'ensemble d'informations de sortie est formé selon une grande flexibilité d'enrichissement.

Avantageusement, le traitement à effectuer est une insertion d'informations associées à un élément d'un ensemble d'informations d'entrée secondaire, lesdites informations associées à un élément étant insérées sous la forme d'un élément dans l'ensemble d'informations de sortie.

Ainsi, des informations associées à un élément d'un ensemble d'informations d'entrée secondaire telles que des attributs d'un élément sont transformées dans l'ensemble d'informations de sortie en éléments. La formation de l'ensemble de sortie est ainsi très flexible et adaptée à de multiples situations.

Aussi, le traitement à effectuer est une création d'un élément dans l'ensemble d'informations de sortie et une insertion d'un élément d'un ensemble d'informations d'entrée secondaire dans l'élément de l'ensemble d'informations de sortie créé.

Plus précisément, on détermine des critères d'insertion d'au moins un élément d'un ensemble d'entrée dans l'ensemble d'informations de sortie, et l'ensemble d'informations de sortie est formé conformément aux critères déterminés.

Ainsi, il est possible de former un ensemble d'informations de sortie en fonction de multiples critères indépendants des conditions définies par les clés comprises dans le fichier des clés.

Plus précisément, les critères d'insertion sont déterminés à partir d'un schéma structurel prédéfini de l'ensemble d'informations de sortie et/ou de priorités allouées à l'élément ou aux informations associées à un élément de l'ensemble secondaire à insérer et/ou d'un seuil d'enrichissement de l'ensemble d'informations de sortie.

Ainsi, l'ensemble d'informations de sortie est compatible avec un schéma structurel prédéfini. Il est alors plus aisé pour un dispositif de télécommunication recevant l'ensemble d'informations de sortie de traiter celui-ci.

De plus, en allouant des priorités, il est possible de classifier les informations insérées selon un ordre d'importance.

Aussi, en disposant d'un seuil d'enrichissement comme critère d'insertion, il est possible de contrôler l'enrichissement d'un ensemble d'informations principal.

L'enrichissement peut ainsi tre adapté aux conditions du réseau de télécommunication dans lequel l'ensemble d'informations de sortie est transféré.

L'ensemble d'informations de sortie peut ainsi tre enrichi d'une quantité importante d'informations lorsque le réseau de télécommunication dispose d'une bande passante élevée ou l'ensemble d'informations de sortie peut ainsi tre enrichi d'une quantité faible d'informations lorsque le réseau de télécommunication dispose d'une bande passante relativement faible. Ceci permet alors d'éviter que le réseau de télécommunication soit saturé et que l'ensemble d'informations de sortie ne soit pas reçu par un dispositif de télécommunication connecté à ce réseau de télécommunication.

Avantageusement, un élément et/ou les informations associées à un élément sont insérés dans l'ensemble d'informations de sortie conformément à un schéma structurel prédéfini de l'ensemble d'informations de sortie.

Ainsi, il est possible d'insérer des informations à différents endroits de l'ensemble d'informations de sortie et cela conformément à un schéma structurel prédéfini.

Plus précisément, si la priorité allouée à l'élément ou les informations associées à un élément de l'ensemble secondaire inséré ou à insérer est supérieur au seuil d'enrichissement de l'ensemble d'informations de sortie, l'élément ou les informations associées à un élément de l'ensemble d'informations d'entrée secondaire inséré est effacé de l'ensemble d'informations de sortie ou l'élément ou les informations associées à un élément de l'ensemble d'informations d'entrée secondaire à insérer n'est pas inséré.

Avantageusement, les informations de l'ensemble d'informations de sortie sont des informations décrivant au moins un programme audiovisuel.

Plus précisément, on transcode des informations décrivant au moins un programme audiovisuel dans un format prédéterminé en un ensemble d'informations décrites dans un langage de balisage.

Ainsi, en utilisant des informations décrivant au moins un programme audiovisuel dans un format prédéterminé, la formation de l'ensemble d'informations de sortie est simplifiée.

Avantageusement, l'ensemble d'informations transcodées et décrites dans un langage de balisage forment une partie de l'ensemble d'informations de sortie, l'autre partie étant formée par des éléments et/ou des les informations associées à un élément d'autres ensembles d'informations d'entrée.

Ainsi, il est possible d'enrichir des informations décrivant de manière succincte au moins un programme audiovisuel par d'autres informations mémorisées par exemple dans une base de données.

Plus précisément, le format prédéterminé est conforme à la norme DVB et l'ensemble d'informations de sortie est décrit dans un langage de balisage et est transmis sur un réseau de type Internet.

DVB est l'acronyme de Digital Vidéo Broadcast ou diffusion de vidéo numérique en français.

L'invention concerne aussi le programme d'ordinateur stocké sur un support d'informations, ledit programme comportant des instructions permettant de mettre en oeuvre le procédé précédemment décrit, lorsqu'il est chargé et exécuté par un système informatique.

Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels : la Fig. 1 représente un schéma bloc des différents éléments constitutifs de la présente invention ; la Fig. 2 représente un schéma bloc des différents éléments constitutifs de la présente invention dans un mode particulier d'enrichissement de données de description audiovisuelles ; la Fig. 3 représente un schéma bloc du dispositif d'enrichissement d'un ensemble d'informations décrites dans un langage de balisage à partir d'au moins un autre ensemble comprenant des informations décrites dans un langage de balisage selon l'invention ; la Fig. 4 représente l'algorithme d'enrichissement d'un fichier comprenant un ensemble d'informations décrites dans un langage de balisage à partir d'au moins un autre fichier comprenant des informations décrites dans un langage de balisage ; la Fig. 5 représente un fichier d'attribution de priorités selon l'invention ; les Figs. 6a et 6b représentent des tables de conversion d'un ensemble de méta- données contenant un programme télévisé décrites selon la norme DVB-SI en un ensemble de méta-données conformes à la spécification TV Anytime décrites dans un langage de balisage.

La Fig. 1 représente un schéma bloc des différents éléments constitutifs du système selon la présente invention.

Le système selon l'invention forme un ensemble de sortie enrichi 15 d'informations décrites dans un langage de balisage tel que le langage XML à partir de plusieurs ensembles d'informations décrites dans un langage de balisage tel que le langage XML. Ces ensembles sont notés 10, 1 la et l lb en Fig. 1.

Il est à remarquer ici que d'autres langages de balisage peuvent aussi tre utilisés dans la présente invention. Ces langages sont par exemple et de manière non limitative le langage HTML ou le langage SGML.

HTML est l'acronyme de HyperText Markup Langage ou langage de balisage d'hypertexte.

SGML est l'acronyme de Standard Generalized Markup Language ou langage de balisage généralisé standard.

La formation, ou plus précisément l'enrichissement de l'ensemble d'informations est effectué par un filtre mélangeur 12 à partir d'un schéma XML 14 et plus précisément selon des critères d'enrichissement 13.

L'invention telle que décrite est utilisée dans différents domaines d'applications.

La transmission d'informations à des terminaux de télécommunication tels que des terminaux téléphoniques mobiles est un domaine d'application de la présente invention. En effet, en fonction de la disponibilité du réseau de télécommunication ou des caractéristiques des terminaux de télécommunication, la présente invention enrichit ou crée l'ensemble 15 d'informations de sortie XML à partir d'un ou plusieurs ensembles d'informations d'entrée décrites dans le langage XML. Selon l'invention, un ensemble principal faiblement enrichi d'informations XML est transmis vers des terminaux téléphoniques mobiles, tandis qu'un ensemble plus enrichi d'informations est transmis vers des terminaux de télécommunication tels que des ordinateurs reliés à un réseau Internet.

L'invention est aussi particulièrement intéressante dans la diffusion d'informations associées à des programmes audiovisuels sur des réseaux de diffusion tels que par exemple le réseau Internet.

Dans ce type d'application, il est transmis au dispositif de réception client des méta-domées représentatives des contenus audiovisuels transmis. Ces méta-données sont par exemple et de manière non limitative le guide des programmes audiovisuels transmis, ou pour un programme audiovisuel prédéterminé, des données descriptives de ce programme telles que son titre, une description sommaire et/ou détaillée de celui-ci, un descriptif d'un ou des acteurs jouant dans le programme audiovisuel ou une ou plusieurs critiques de celui-ci.

La sémantique ainsi que la syntaxe de ces méta-données sont par exemple conformes à celles décrites selon le langage XML par le forum TV Anytime.

Selon les disponibilités du réseau de communication, il est intéressant de pouvoir enrichir ces données avec d'autres informations lorsque la bande passante disponible dans le réseau de télécommunication 16 le permet.

Le réseau de télécommunication 16 est par exemple un réseau de type Internet.

L'ensemble principal d'informations XML 10 est par exemple constitué des éléments de base d'une description d'un programme audiovisuel tels que le titre et le genre du programme audiovisuel.

L'ensemble secondaire d'informations XML lia est par exemple constitué d'autres informations relatives au mme programme audiovisuel telles que le résumé de celui-ci, son synopsis, des mots clés associés à celui-ci, des critiques ainsi que l'heure de début et de fin du programme audiovisuel.

L'ensemble secondaire de données XML 1 lb est par exemple constitué d'autres données relatives au mme programme audiovisuel telles que par exemple la liste des acteurs jouant dans ce programme audiovisuel, voire des informations bibliographiques sur ceux-ci.

Le schéma XML 14 décrit la syntaxe de l'ensemble de sortie XML enrichi 15.

Selon l'invention, le filtre mélangeur XML 12 utilise le schéma XML 14 pour vérifier que chaque élément contenu dans l'ensemble de sortie XML enrichi 15 est conforme à la description de l'élément dans laquelle le contenu de l'ensemble secondaire d'informations XML 1 la est inséré.

Un schéma définit entre autres une structure pour des documents XML.

Le filtre mélangeur XML 12 enrichit l'ensemble principal XML 10 avec un ou plusieurs éléments du ou des fichiers secondaires 1 la et 1 lb.

Dans un mode particulier de l'invention, l'enrichissement est effectué en fonction de critères entre autres définis par un fichier de clés 13a permettant de désigner les critères d'enrichissement 13.

Nous entendons ici par enrichissement, une insertion dans un élément de l'ensemble d'informations de sortie d'au moins un élément d'un ensemble d'informations d'entrée secondaire ou un effacement d'un élément de l'ensemble d'informations de sortie et d'une insertion à la place de l'élément effacé d'au moins un élément d'un ensemble d'informations d'entrée secondaire ou une insertion d'informations associées à un élément d'un ensemble d'informations d'entrée secondaire, lesdites informations associées à un élément étant insérées sous la forme d'un élément dans l'ensemble d'informations de sortie ou une insertion d'un élément d'un ensemble d'informations d'entrée secondaire et une création d'un élément dans l'ensemble d'informations de sortie, l'élément créé comprenant l'élément inséré dans l'ensemble d'informations de sortie.

Il est à remarquer ici que les différents traitements précédemment mentionnés peuvent se combiner les uns avec les autres.

D'autres critères d'enrichissement tels que des critères de priorité 13b, ou un seuil d'enrichissement 13c peuvent aussi tre utilisés pour l'enrichissement.

Un fichier de clés 13a est constitué d'un ensemble de clés, chaque clé pouvant éventuellement comporter des actions ou traitements à effectuer. Ces clés sont regroupées sous une racine appelée keybag. Par exemple, une seule clé est comprise dans ce fichier des clés. Une clé définit les conditions pour lesquelles l'action associée à la clé doit tre effectuée.

Le filtre mélangeur 12 enrichit ainsi l'ensemble principal XML10 d'éléments de l'ensemble secondaire XML 1 la en fonction de critères prédéterminés.

Selon cet exemple, la clé met en correspondance un élément de l'ensemble principal XML 10 désigné par un chemin avec un ou plusieurs éléments de l'ensemble secondaire XML lia.

Le filtre mélangeur 12 détermine ensuite la règle d'insertion du ou des éléments de l'ensemble secondaire XML lla dans l'ensemble principal 10 et insère ceux-ci conformément à la règle définie par le schéma XML 14.

Enfin, le filtre mélangeur 12 détermine la ou les priorités 13b du ou des éléments insérés et vérifie si celles-ci ou ceux-ci sont compatibles avec le seuil 13c.

Si le seuil est supérieur à ces priorités, le ou les éléments insérés sont retirés de l'ensemble principal 10.

La Fig. 2 représente un schéma bloc des différents éléments constitutifs de la présente invention dans un mode particulier d'enrichissement d'informations de description audiovisuelles.

Le système selon l'invention enrichit ou créé un ensemble de sortie enrichi 214 d'informations décrites dans un langage de balisage tel que le langage XML à partir de plusieurs ensembles d'informations décrites dans un langage de balisage tel que le langage XML. Ces ensembles sont notés 201 et 205.

Dans ce mode particulier de réalisation, l'ensemble principal XML 201 est obtenu par un transcodeur 202 de méta-données transmises par une source délivrant des informations conformes à la norme DVB-SI d'un réseau de télécommunication DVB 204.

DVB-SI est l'acronyme de Digital Vidéo Broadcast Service Information ou signalisation de service de diffusion vidéo numérique.

Le transcodeur 202 effectue un transcodage à partir des tables de conversion 6a et 6b qui seront décrites ultérieurement, d'un ensemble de méta-données décrivant un programme audiovisuel diffusé décrites selon la norme DVB-SI en un ensemble de méta-données conformes à la spécification TV Anytime décrites dans un langage de balisage et forme ainsi un ensemble principal XML 201.

TV Anytime est un forum spécifiant des méta-données et les schémas associées à des programmes audiovisuels diffusés entre autres sur le réseau Internet.

En effet, des méta-données sont aussi transmises lors de la diffusion de programmes audiovisuels conformes à la norme DVB. Ces données sont décrites par la norme DVB-SI et ne comportent que peu d'informations.

Selon ce mode particulier de l'invention, les programmes audiovisuels diffusés par le réseau DVB sont aussi diffusés par l'intermédiaire du réseau Internet 217. Ces programmes audiovisuels sont, préalablement à leur diffusion sur le réseau de télécommunication Internet 217, traités par un moyen de traitement 216 de manière à adapter ceux-ci aux spécificités du réseau de télécommunication 217.

Les méta-données transmises lors de la diffusion de programmes audiovisuels conformes à la norme DVB-SI ne comportent que peu d'informations. L'invention va ainsi transcoder et enrichir ces méta-données d'informations supplémentaires préalablement à leur transmission sur le réseau de télécommunication 217.

Ces informations supplémentaires contenues dans un ou plusieurs ensembles secondaires XML 205 sont obtenues d'une base de données locale ou distante 207 et sont, si nécessaire, transcodées par un ou plusieurs transcodeurs 202 de manière à les mettre sous forme d'ensemble d'informations décrites dans un langage de balisage tel que le langage XML. Ce transcodage sera décrit plus précisément en référence aux Figs. 6a et 6b.

La formation de l'ensemble de sortie XML 214 est effectuée par un filtre mélangeur 208 à partir d'un schéma XML 213 et plus précisément selon des critères d'enrichissement 210,211 et 212.

Le réseau de télécommunication 217 est par exemple un réseau de type Internet.

L'ensemble principal d'informations XML 201 est identique à l'ensemble principal d'informations XML 10 de la Fig. 1. Il ne sera pas plus décrit.

L'ensemble secondaire d'informations XML 205 est identique à l'ensemble secondaire d'informations XML 11 de la Fig. 1. Il ne sera pas plus décrit.

Le schéma XML 213 est un schéma identique au schéma XML 14 de la Fig. 1.

Il est dans cet exemple conforme au schéma tel que défini dans la spécification des méta-données du forum TV Anytime.

Le filtre mélangeur XML 208 est identique au filtre mélangeur XML 12. Il ne sera pas plus décrit.

Le fichier des priorités 210 est identique au fichier des priorités 13b de la Fig. 1.

Il ne sera pas plus explicité.

Le fichier des clés 211 est identique au fichier des clés 13a de la Fig. 1. Il ne sera pas plus explicité.

Le fichier des seuils 212 est identique au fichier des seuils 13c de la Fig. 1. Il ne sera pas plus explicité.

Le fichier des priorités 210 ainsi que le fichier des seuils 212, de la mme manière que le fichier des priorités 13b ainsi que le fichier des seuils 13b sont utilisés selon une variante de l'invention.

Le filtre mélangeur 208 enrichit l'ensemble principal XML 201 d'éléments de l'ensemble secondaire XML 205 en fonction de critères 210,211 et 212 pour former un ensemble de sortie XML 214.

Le filtre mélangeur 208 détermine ensuite la règle d'insertion du ou des éléments de l'ensemble secondaire XML 205 dans l'ensemble principal 201 et insère ceux-ci conformément à la règle définie par le schéma XML 213.

Enfin, le filtre mélangeur 208 détermine la ou les priorités 210 du ou des éléments insérés et vérifie si celles-ci ou ceux-ci sont compatibles avec le seuil 212.

Si le seuil est inférieur à ces priorités, le ou les éléments insérés sont retirés de l'ensemble de sortie XML enrichi 214.

Il est à remarquer que selon une variante de l'invention, un ou plusieurs éléments de l'ensemble principal peuvent tre aussi effacés si leurs priorités sont d'importance plus élevée que le seuil.

La Fig. 3 représente un schéma bloc du dispositif d'enrichissement d'un ensemble d'informations décrites dans un langage de balisage à partir d'au moins un ensemble comprenant des données décrites dans le mme langage de balisage selon l'invention.

Ce dispositif 30 est adapté pour former un ensemble d'informations décrites dans un langage de balisage à partir d'au moins un autre ensemble comprenant des données décrites dans le mme langage de balisage selon des clés, des priorités, un seuil d'enrichissement et conformément à un schéma permettant de contrôler la syntaxe de l'ensemble de sortie XML enrichi.

Le dispositif 30 est par exemple un micro-ordinateur. Il peut tre aussi intégré dans un moyen de diffusion de méta-doimées à destination de moyen de visualisation de séquences d'images vidéo tel qu'un téléviseur ou tout autre dispositif de génération d'ensemble d'informations à destination de terminaux récepteurs tels que des téléphones mobiles.

Le dispositif 30 comporte un bus de communication 301 auquel sont reliés une unité centrale 300, une mémoire morte 302, une mémoire vive 303, un écran 304, un clavier 314, un disque dur 308, un lecteur/enregistreur de disque compact ou CD, une interface de communication 306 avec un premier réseau de télécommunication 204 délivrant un ensemble de méta-données et un second réseau de télécommunication tel que le réseau de télécommunication 16 de la Fig. 1 ou le réseau de télécommunication 217 de la Fig. 2 assurant le transfert de l'ensemble de sortie enrichi vers des terminaux de télécommunication destinataires non représentés.

Le disque dur 308 mémorise le programme mettant en oeuvre l'invention, ainsi que les données permettant l'enrichissement selon l'invention. Ces données sont le fichier des clés 13a ou 211 où chaque clé du fichier des clés 13a ou 211 définit les conditions pour lesquelles le ou les traitements associés à la clé doivent tre effectués.

Ces données sont aussi le fichier d'attribution des priorités 13b ou 210 qui affecte une priorité à chacun des éléments et attributs des ensembles secondaires d'entrée 1 la et 11 b, respectivement à chacun des éléments et attributs des ensembles secondaires d'entrée 205. Ces données sont aussi le schéma XML 14, respectivement le schéma XML 213 décrivant la syntaxe de l'ensemble de sortie XML enrichi 15, respectivement 214. Ces données sont aussi un seuil d'enrichissement prédéfini ou déterminé en fonction des conditions du réseau de télécommunication 16, respectivement 217 ou en fonction des caractéristiques du ou des terminaux de télécommunication destinataires de l'ensemble de sortie XML enrichi 15, respectivement 214.

Le disque dur 308 comporte aussi l'ensemble principal XML 10, respectivement 201, ainsi que les ensembles secondaires 1 la et 1 lb, respectivement 205.

Ces programmes et ces données peuvent aussi tre lus par l'intermédiaire du disque compact ou reçus via le réseau de télécommunication 204.

De manière plus générale, les programmes selon la présente invention sont mémorisés dans un moyen de stockage. Ce moyen de stockage est lisible par un ordinateur ou un microprocesseur 300. Ce moyen de stockage est intégré ou non au dispositif, et peut tre amovible.

Lors de la mise sous tension du dispositif 30, les programmes selon la présente invention sont transférés dans la mémoire vive 303 qui contient alors le code exécutable de l'invention ainsi que les données nécessaires à la mise en oeuvre de l'invention.

Le dispositif 30 peut également recevoir l'ensemble d'informations à enrichir 10, respectivement 201, les ensembles d'informations secondaires lla et llb, respectivement 205, d'un dispositif distant via un réseau de télécommunication tel que le réseau de communication 204 de la Fig. 2 et transmettre l'ensemble de sortie XML enrichi 15, respectivement 214 à destination d'un dispositif distant par l'intermédiaire du réseau de télécommunication 16 de la Fig. 1, respectivement le réseau de télécommunication 217 de la Fig. 2.

Les réseaux de télécommunication 16 et/ou 217 sont par exemple des réseaux de type Internet ou des réseaux téléphoniques.

Les réseaux de télécommunication 16 et/ou 217 peuvent aussi tre un réseau de diffusion Hertzien ou satellite d'informations audiovisuelles auxquelles est associé l'ensemble de sortie XML enrichi 15, respectivement 214.

Le réseau de communication 204 est par exemple un réseau de diffusion Hertzien ou satellite d'informations audiovisuelles auxquelles sont associées des méta-données. Ces méta-données, après transcodage, forment l'ensemble d'entrée principal 201.

Le réseau de communication 204 peut aussi tre un réseau de type Internet.

Le dispositif 30 comporte un écran 304 apte à reproduire l'ensemble de sortie XML enrichi 15, respectivement 214.

Le dispositif 30 comporte aussi un clavier 314 servant d'interface utilisateur.

Par l'intermédiaire de ce clavier 314, l'utilisateur peut définir les différents critères d'enrichissement de l'ensemble principal 10, respectivement 201.

La Fig. 4 représente l'algorithme d'enrichissement d'un fichier comprenant un ensemble d'informations décrites dans un langage de balisage à partir d'au moins un autre fichier comprenant des données décrites dans le mme langage de balisage.

Le processeur 300 du dispositif d'enrichissement 30 lit, à partir de la mémoire 302, les instructions du programme correspondant aux étapes E400 à E420 de la Fig. 4 et les charge en mémoire vive 403 pour les exécuter.

A l'étape E400, le processeur 300 recopie l'ensemble principal XML 201 respectivement 201 et créé ainsi un ensemble de sortie XML.

Cet ensemble de sortie XML comme cela sera décrit par la suite va tre enrichi d'éléments et ou d'informations associées à des éléments des ensembles secondaires 11, respectivement 205.

A l'étape E401, le processeur 300 lit dans le disque dur 308 du dispositif d'enrichissement 30 la première clé comprise dans le fichier des clés 13a, respectivement 211.

Les clés comprises dans le fichier des clés 13a, respectivement le fichier des clés 211, font partie du groupe de clés permettant de fusionner deux éléments possédant une mme valeur d'attribut, des clés permettant de fusionner deux éléments possédant une mme valeur d'attribut dans des tables différentes, des clés permettant de fusionner des éléments selon un double critère.

La première clé du fichier des clés 13 a, respectivement 211, obtenue, le processeur 300 du dispositif d'enrichissement 30 passe à l'étape suivante E402 qui consiste à se positionner en début de l'ensemble de sortie précédemment recopié à l'étape E400 et à sélection le premier ensemble secondaire 1 la, respectivement 205.

Cette opération effectuée, le processeur 300 passe à l'étape E403 qui consiste à rechercher dans l'ensemble de sortie précédemment recopié à l'étape E400 l'élément de l'ensemble principal considéré par la clé lue à l'étape précédente. Cet élément est par exemple accessible via un chemin, défini par exemple par une expression de type XPATH dans l'ensemble de sortie précédemment recopié à l'étape E400.

Une expression de type Xpath est une expression conforme à la recommandation 16 de novembre 1999 de la recommandation version 1.0 « XML Path Language (Xpath) » issue par le consortium W3C.

Cette opération réalisée, le processeur 300 vérifie à l'étape E404 si un élément de l'ensemble de sortie précédemment recopié à l'étape E400 correspond à l'élément de l'ensemble principal considéré par la clé.

Si aucun élément de l'ensemble recopié à l'étape E400 ne correspond à l'élément de l'ensemble principal considéré par la clé, le processeur passe à l'étape E419.

A cette étape, le processeur 300 vérifie si le fichier des clés 13a, respectivement 211, comporte d'autres clés.

Dans l'affirmative, le processeur 300 lit à l'étape E420 la clé suivante du fichier des clés 13 a, respectivement 211 de la mme manière que celle décrite à l'étape E401.

La clé suivante lue, le processeur 300 passe à l'étape E402 qui consiste à se positionner en début de l'ensemble de sortie précédemment recopié à l'étape E400.

Le processeur 300 recherche ensuite à l'étape E403 dans l'ensemble de sortie recopié à l'étape E400, l'élément de l'ensemble principal considéré par la clé lue à l'étape précédente.

Cette opération réalisée, le processeur 300 vérifie à l'étape E404 si un élément de l'ensemble recopié à l'étape E400, correspond à l'élément de l'ensemble principal considéré par la clé.

Si un élément de l'ensemble recopié correspond à l'élément de l'ensemble principal considéré par la clé, le processeur 300 passe à l'étape E405.

A cette étape, le processeur 300 se positionne en début de l'ensemble secondaire.

Cette opération réalisée, le processeur 300 passe ensuite à l'étape E406.

A cette étape, le processeur 300 recherche dans l'ensemble secondaire XML 1 la, respectivement 205, l'élément de l'ensemble secondaire 11 considéré par la clé lue précédemment. Cet élément est par exemple accessible via un chemin, défini par exemple par une expression de type XPATH dans l'ensemble secondaire 1 la ou dans l'ensemble secondaire 205.

Il est à remarquer que cet élément valide la clé.

Cette opération réalisée, le processeur 300 vérifie à l'étape E407 si un élément de l'ensemble secondaire 1 la, respectivement 205, correspond à l'élément de l'ensemble secondaire considéré par la clé et plus précisément si leurs valeurs sont identiques.

Si aucun élément de l'ensemble secondaire 1 la, respectivement 205, ne correspond à l'élément de l'ensemble secondaire considéré par la clé, le processeur passe à l'étape E416.

A cette étape, le processeur 300 vérifie s'il existe d'autres ensembles secondaires.

Dans l'affirmative, le processeur 300 lit le fichier secondaire suivant, en l'occurrence, le ficher secondaire llb et retourne à l'étape E405 précédemment décrite.

Le processeur 300 effectue alors les étapes E405 et E407 de la mme manière que celle précédemment décrite et cela pour le fichier secondaire 1 lb.

Si un élément de l'ensemble secondaire 1 la correspond à l'élément de l'ensemble secondaire 11 considéré par la clé, le processeur 300 passe à l'étape E408.

A cette étape, le processeur 300 lit dans le fichier des clés 13a, respectivement dans le fichier des clés 211, le traitement ou action associé à la clé traitée. Cette action indique le ou les éléments de l'ensemble secondaire 11, respectivement 205, devant tre inclus dans l'ensemble recopié à l'étape E400.

Ensuite, le processeur 300, l'étape E409 recherche dans le schéma XML 14, respectivement dans le schéma XML 213, les règles d'insertion du ou des éléments devant tre inclus.

Le schéma XML 14, respectivement 213, décrit la syntaxe de l'ensemble de sortie XML enrichi 15, respectivement 214. Selon l'invention, le processeur 300 utilise le schéma XML 14, respectivement 213, pour vérifier que chaque élément contenu dans l'ensemble de sortie XML enrichi 15, respectivement 214, est inséré conformément à la syntaxe de l'ensemble de sortie enrichi.

Le processeur 300 passe ensuite à l'étape suivante E410 et insère le ou les éléments dans l'ensemble principal XML 10, respectivement 201, à la position correspondante définie par le schéma XML 14, respectivement 213.

Nous entendons ici par insertion, l'insertion dans un élément de l'ensemble d'informations de sortie d'au moins un élément d'un ensemble d'informations d'entrée secondaire ou un effacement d'un élément de l'ensemble d'informations de sortie et d'une insertion à la place de l'élément effacé d'au moins un élément d'un ensemble d'informations d'entrée secondaire ou une insertion d'informations associées à un élément d'un ensemble d'informations d'entrée secondaire, lesdites informations associées à un élément étant insérées sous la forme d'un élément dans l'ensemble d'informations de sortie ou une insertion d'un élément d'un ensemble d'informations d'entrée secondaire et une création d'un élément dans l'ensemble d'informations de sortie, l'élément créé comprenant l'élément inséré dans l'ensemble d'informations de sortie.

Cette opération effectuée, le processeur 300 lit à l'étape E411 la priorité associée à l'élément inclus dans l'ensemble principal llb, respectivement 205. Cette ou ces priorités sont mémorisées dans le fichier de priorités 13b, respectivement dans le fichier de priorités 210.

Dans le fichier d'attribution des priorités 13b, respectivement 210, sont définies les priorités attribuées à chacun des éléments et des attributs des ensembles d'entrées 11, respectivement 205.

Un exemple de fichier d'attribution des priorités est représenté en Fig. 5.

A partir d'un chiffre représentatif de la priorité, le processeur 300 attribue une priorité à chacun des éléments.

Cette opération réalisée, le processeur 300, à l'étape E412, obtient le seuil d'enrichissement 13c, respectivement 412. Ce seuil d'enrichissement a soit une valeur prédéterminée ou une valeur évoluant dans le temps.

Le seuil d'enrichissement 13c, respectivement 212, est représentatif d'une contrainte externe au dispositif d'enrichissement 30. Cette contrainte externe est par exemple définie en fonction du débit maximum autorisé par le réseau de télécommunication 16 ou le réseau de télécommunication 217. Cette contrainte externe peut aussi tre définie en fonction des caractéristiques des terminaux de télécommunication destinataires de l'ensemble de sortie XML enrichi 15 ou 214.

Cette opération effectuée, le processeur 300 vérifie ensuite à l'étape E413 si chacune des priorités déterminées à l'étape E412 est inférieure au seuil obtenu précédemment à l'étape E407.

Si une priorité d'un élément ou un attribut est supérieure à ce seuil, l'élément ou l'attribut correspondant est effacé de l'ensemble principal précédemment enrichi à l'étape E410.

Cette opération effectuée, ou si aucune priorité d'un élément ou un attribut n'est supérieure à ce seuil, le processeur 300 passe à l'étape suivante E415.

A cette étape, le processeur 300 vérifie si tout l'ensemble secondaire en cours de traitement a été traité.

Dans la négative le processeur 300 retourne à l'étape E406 et continue la recherche d'un élément de l'ensemble secondaire 11 considéré par la clé lue précédemment.

Les étapes E406 à E415 sont alors réitérées de la mme manière que celle précédemment décrite.

Dans l'affirmative, le processeur 300 passe à l'étape E416.

A cette étape, le processeur 300 vérifie si tous les ensembles secondaires ont été traités.

Dans la négative, le processeur 300 prend l'ensemble secondaire suivant et retourne à l'étape E405 précédemment décrite.

Dans l'affirmative, le processeur 300 passe à l'étape E417. A cette étape, le processeur 300 vérifie si tout l'ensemble recopié à l'étape E400 a été traité.

Dans la négative, le processeur 300 retourne à l'étape E403 et continue la recherche d'un élément dans l'ensemble recopié dans la partie non encore traitée.

Dans l'affirmative, le processeur 300 passe à l'étape suivante E418 et vérifie à cette étape si toutes les clés comprises dans le fichier des clés 13a, respectivement 211, ont été traitées.

Dans la négative, le processeur 300 passe à l'étape suivante E419 et réitère les étapes E402 à E418 de la mme manière que celle précédemment décrite.

Dans l'affirmative, le processeur 300 passe à l'étape E420. L'ensemble principal 10 ou 201 a été enrichi par des éléments ou des attributs des ensembles secondaires 11 ou 205 pour former un ensemble de sortie XML enrichi 15 ou 214. L'ensemble de sortie XML enrichi est alors transféré sur le réseau de télécommunication 16 ou 217 ou transféré dans une base de donnée non représentée pour tre mémorisé.

Il est à remarquer qu'en variante de l'algorithme tel que décrit en Fig. 4, un ensemble secondaire peut aussi tre enrichi avec des éléments ou des attributs d'autres ensembles secondaires.

La Fig. 5 représente un fichier d'attribution de priorités selon l'invention.

Le fichier d'attribution des priorités 210 est identique au fichier d'attribution des priorités 13b, seul le fichier d'attribution des priorités 13b sera donc décrit.

Le fichier d'attribution des priorités 13b est constitué sous forme d'une table de quatre colonnes notées 50 à 53 et à chaque ligne du fichier d'attribution des priorités correspond un élément ou un attribut de l'ensemble principal 10 et/ou d'un ensemble secondaire 11. Chaque élément ou attribut est désigné par son chemin dans l'ensemble d'entrée auquel il appartient, précédé éventuellement d'un suffixe représentatif de l'ensemble dont il fait partie. Il est à remarquer ici que le chemin de chaque élément ou attribut est un chemin défini par une expression Xpath.

La colonne notée 50 décrit chaque élément ou un attribut de l'ensemble principal 10 et/ou d'un ensemble secondaire 11. La colonne notée 51 décrit l'ensemble de provenance de l'élément ou l'attribut de la ligne de la table. La colonne notée 52 comprend la priorité associée à l'élément ou l'attribut de la ligne de la table, et la colonne 53 décrit le type de priorité allouée à l'élément ou l'attribut de la ligne de la table.

Ainsi, des éléments ou des attributs peuvent provenir à la fois de l'ensemble principal 10 et de l'ensemble secondaire 11. D'autres éléments ou attributs peuvent aussi ne provenir uniquement que d'un ensemble secondaire 11.

Trois types de priorités sont définis dans la colonne 53 du fichier d'attribution des priorités.

Un premier type de priorité est la priorité explicite. Une priorité explicite est une priorité explicitement définie pour un élément du fichier d'attribution des priorités 13b. A titre d'exemple, l'élément genre de la ligne 54 du fichier d'attribution des priorités 13b a une priorité explicite à la valeur 2.

Un second type de priorité est la priorité héritée. Une priorité héritée est la priorité d'un élément auquel se réfère l'élément ou l'attribut. A titre d'exemple, l'élément titre ou « title » de la ligne 55 du fichier d'attribution des priorités 13b hérite de la priorité de l'élément parent qui est la table d'information des programmes ou « ProgramInformationTable » de la ligne 56. La priorité de l'élément titre est alors égale à 1.

Un troisième type de priorité est la priorité implicite. Une priorité implicite est une priorité n'ayant pas été définie. L'élément ou l'attribut ne se référant à aucun élément dont la priorité est explicite ou héritée, celle-ci est mise à une valeur par défaut égale à l'infini.

Il est à remarquer ici que ces priorités peuvent tre définies par le processeur 300 du dispositif d'enrichissement 30. Le processeur 300 analyse périodiquement les éléments décrivant l'heure et la date de diffusion des programmes audiovisuels décrits dans l'ensemble secondaire XML 205 ou l'ensemble principal XML 201. En analysant ces éléments, le processeur 300 détermine pour chacun de ces éléments une priorité qui est fonction de la date et heure de diffusion et crée le fichier des priorités 210.

Les Figs. 6a et 6b représentent des tables de conversion d'un ensemble de méta- données contenant un programme télévisé décrites selon la norme DVB-SI en un ensemble de méta-données conformes à la spécification TV Anytime décrites dans un langage de balisage.

La norme DVB-SI définit les informations de services dans les systèmes de type DVB. Ces informations de services sont les méta-données selon l'invention.

Ces méta-données sont prélevées par la source DVB-SI 203 de la Fig. 2 et transférées au transcodeur 202.

Le transcodeur 202 va transcrire les méta-données conformes à la norme DVB- SI à l'aide des tables 6a et 6b en un ensemble principal XML 201.

Les tables de conversion 6a et 6b sont constituées de cinq colonnes.

La colonne 60 décrit les champs des méta-données DVB-SI devant tre détectés pour tre transcodés dans un ensemble d'informations dans la forme d'un langage de balisage.

La colonne 61 décrit le type de données associées à ce champ. Cette colonne comprend pour chaque champ compris dans la colonne 60 son nombre d'octets ainsi que des informations sur les éléments nécessaires au transcodage du champ considéré.

La colonne 62 décrit aussi le type de données associées à ce champ ainsi que la structure de celles-ci.

La colonne 63 décrit le champ conforme à la spécification TVAnytime correspondant au champ de méta-données de la norme DVB-SI de la colonne 60.

La colonne 64 donne des exemples de transcodage de champs de la norme DVB-SI en éléments conformes à la spécification TV Anytime pour former un ensemble principal XML 201.

La ligne 66 de la Fig. 6a décrit un exemple de transcodage du champ indiquant le début d'un programme audiovisuel selon la norme DVB-SI en un format conforme à la spécification TV Anytime.

Lorsque le transcodeur 202 détecte parmi les informations reçues de la source 203 le champ comprenant l'information « startTime », le transcodeur détermine le type de données correspondant à ce champ. A partir des informations contenues dans la colonne 61 de la ligne 66, le transcodeur 203 détermine le nombre d'octets comprenant des informations à transcoder ainsi que le type de traduction à effectuer.

Selon notre exemple, les données sont comprises dans cinq octets et la traduction doit tre effectuée conformément à l'algorithme tel que décrit dans l'ETR 300-468.

ETR est l'acronyme de European Technical Report ou en Français Rapport Technique Européen.

Le transcodeur 202 détermine ensuite le type et la structure et des données à traiter. Dans notre exemple, les données sont conformes aux formats UTC et MJD de la norme EN 300-468.

UTC est l'acronyme de Universal Time Coordinates ou coordonnées du temps universelles et MJD est l'acronyme de Modified Julian Date.

A partir de ces informations, le transcodeur 202 détermine les données associées au champ traité.

Ces informations déterminées, le transcodeur 202 lit dans la table de conversion 6a l'élément associé au champ DVB-SI en cours de traitement et inclut l'élément dans l'ensemble principal XML 201 avec les données précédemment déterminées.

Le transcodeur 202 effectue les mmes opérations que celles précédemment décrites pour la ligne 66 à chaque fois qu'il détecte un champ DVB-SI inclus dans les tables de conversion 6a et 6b.

Ainsi, le transcodeur 202 met dans un langage de balisage tel que le langage XML les méta-données conformes à la norme DVB-SI.

Nous allons maintenant décrire quelques exemples d'enrichissement d'un ensemble principal XML 10 ou 201.

Dans un premier exemple, l'ensemble principal d'informations XML 10 est par exemple un ensemble décrivant un programme audiovisuel Charlemagne de la forme : <TVAMain > <ProgramDescription> <ProgramInformationTable> <ProgramInformation programld="crid ://www. francetelecom. com /FESTIVAL/Charlemagne"fragmentVersion="3"> <BasicDescription> <Title>Charlemagne, le prince à cheval</Title> <Genre href=" : x : x"> <Name>soap/melodraina/folkloric</Name> </Genre> </BasicDescription> </ProgramInformation> </ProgramInformationTable> </ProgramDescription> </TVAMain> L'ensemble secondaire d'informations XML lia est quant à lui un ensemble décrivant un programme audiovisuel Charlemagne de la forme : <TVAMain > <ProgramDescription> <ProgramInformationTable> <ProgramInformation programld="crid ://www. francetelecom. com /FESTIVAL/Charlemagne"fragmentVersion="4"> <BasicDescription> <Title>Charlemagne, le prince à cheval</Title> <Synopsis> Le Royaume des Francs, en 768 à Saint-Denis. Pépin-le-Bref, premier roi de France, règne sur un territoire qui s'étend des Pyrénées à la Frise et de la Bretagne à la Bavière. Charles a 26 ans...

</Synopsis> <Keyword>Xavier</Keyword> <Keyword>charlemagne</Keyword> </B asicDescription> </ProgramInformation> </ProgramInformationTable> <ProgramLocationTable copyrightNotice="France Télécom 2003"> <Schedule serviceIDRef="3"> <S cheduleEvent> <Program crid="crid ://www. francetelecom. com/FESTIVAL /Charlemagne"/> <PublishedStartTime>2000-05-31 T12 : 10 : 00</PublishedStartTime> <PublishedDuration>P 1 Y2M3DTO 1 H3 OMOOS</PublishedDuration> </S cheduleEvent> </Schedule> </ProgramLocationTable> <ProgramReviewTable> <Program crid="crid ://www. francetelecom. com/FESTIVAL/Charlemagne" /> <Review > <FreeTextReview> Un très bon film sur un sujet contemporain qui ne manquera pas d'intéresser tous les publics</FreeTextReview> <Reviewer> <PersonName> <mpeg7 : GivenName>Michel</mpeg7 : GivenName> </PersonName> <Reviewer> </Review> </ProgramReviewTable> </ProgramDescription> </TVAMain> Le schéma XML 14 est quant à lui de la forme : <element name="ProgramInformation"type="ProgramInformationType"/> <complexType name="ProgramInformationType"> <sequence> <element name="BasicDescription"type="BasicContentDescriptionType"/&g t; </sequence> <attribute name="programld"type ="tva : CRIDType" use="required"/> </complexType> <complexType name="BasicContentDescriptionType"> <sequence> <element name="Title"type="mpeg7 : TitleType" maxOccurs="unbounded"/> <element name="Synopsis"type="tva : SynopsisType" minOccurs="0" maxOccurs="unbounded"/> <element name="Keyword"type="tva : KeywordType"minOccurs="0" maxOccurs="unbounded"/> <element name="Genre"type ="tva : GenreType" minOccurs="0"maxOccurs="unbounded"/> </sequence> Il est à remarquer que le schéma XML 14 précédemment décrit est un extrait du schéma méta-données de la spécification TV Anytime.

De ce mme premier exemple, le fichier de clés est de la forme : <Keybag xmlns : xsi="http ://www. w3. org/2001/XMLSchema-instance" xsi : noNamespaceSchemaLocation="clef. xsd"> <Key test="P : TVAMain/ProgramDescription/ProgramInformationTable /Programinformation [@programld] == S : ProgramInformation [@programld]"> <Action type="merge"element="ProgramInformation"/> </Key> <Keybag> Le filtre mélangeur XML 12 enrichit conformément à l'algorithme tel que décrit à la Fig. 4, l'ensemble principal XML 10 avec un ou plusieurs éléments du fichier secondaire 1 la en fonction du fichier de clés 13a pour former un ensemble de sortie XML enrichi 15 de la forme : <TVAMain > <ProgramDescription> <BR> <BR> <ProgramInformationTable copyrightNotice="String"><BR> <ProgramInformation programld="crid : //www. francetelecom. com /FESTIVAL/Charlemagne"> <BasicDescription> <Title>Charlemagne, le prince à cheval</Title> <Synopsis> Le Royaume des Francs, en 768 à Saint-Denis.

Pépin-le-Bref, premier roi de France, règne sur un territoire qui s'étend des Pyrénées à la Frise et de la Bretagne à la Bavière. Charles a 26 ans...

</Synopsis> <Keyword>Xavier</Keyword> <Keyword>charlemagne</Keyword> <Genre href=" : x : x"> <Name>soap/melodrama/folkloric</Name> </Genre> </BasicDescription> </ProgramInformation> <BR> <BR> </ProgramInformationTable><BR> </ProgramDescription> </TVAMain > Comme nous le voyons dans ce premier exemple, le fichier des clés 13a comporte une clé de mise en correspondance d'un élément de l'ensemble principal 10 désigné par le chemin TVAMAIN/Program/ProgramInformationTable/ProgramInformation avec un ou plusieurs éléments de l'ensemble secondaire 1 la. Dans cet exemple, deux éléments de l'ensemble secondaire 1 la sont fusionnés à l'ensemble principal 10 puisque leurs valeurs d'attribut programld sont égales.

Il est aussi à remarquer que l'ensemble de sortie XML enrichi 15 est conforme au schéma XML 14.

Dans un second exemple, l'ensemble principal d'informations XML 10, l'ensemble secondaire XML lla, le schéma XML 14 sont identiques au premier exemple. Le fichier des clés 13a est quant à lui différent. Le schéma des clés 13a est de la forme : <Keybag xmlns : xsi="http : //www. w3. org/2001/XMLSchema-instance" xsi : noNamespaceSchemaLocation="clef. xsd"> <Key test="P : TVAMain/ProgramDescription/ProgramInformationTable/Program Information [@programld] ==S : ProgramLocationTable/Schedule/ScheduleEvent [@CRID]"> <BR> <BR> <Action type="merge"element="ProgramLocationTable/Schedule/ScheduleE vent"<BR> /><BR> <Actiontype="mcrge"element="ProgramLocationTable/@copyrig htNotice" primarySetNode="TVAMain/ProgramDescription"/> </Key> </Keybag> Le fichier des clés 13a comporte une clé de mise en correspondance d'un élément de l'ensemble principal 10 désigné par le chemin : <BR> <BR> TVAMain/ProgramDescription/ProgramInformationTable/ProgramIn formation avec un ou plusieurs éléments de l'ensemble secondaire 1 la désigné par le chemin ProgramLocationTable/schedule/scheduleEvent. Deux éléments sont mis en correspondance pour enrichir l'ensemble principal XML 10 si l'attribut CRID de l'élément secondaire 1 la est égal à l'attribut programld de l'élément principal 10.

CRID est l'acronyme de Content Reference Identifier ou identificateur de référence de contenu.

A cette clé, sont associées deux actions. La première action comporte deux attributs précisant le type d'insertion, ici une fusion simple. Une fusion simple est une insertion, si l'élément existe déjà dans l'ensemble principal XML 10, d'un élément de l'ensemble secondaire 1 la pour compléter l'élément existant de l'ensemble principal XML 10. La première action comporte aussi des informations indiquant quel élément doit tre inséré. Il s'agit ici de l'élément ProgramLocationTable/Schedule/ScheduleEvent sur lequel le test a été effectué. Il est à remarquer ici que tout autre élément de l'ensemble secondaire peut tre spécifié à la place de cet élément.

Le filtre mélangeur XML 12 enrichit conformément à l'algorithme tel que décrit à la Fig. 4, l'ensemble principal XML 10 avec un ou plusieurs éléments du fichier secondaire 1 la en fonction du fichier de clés 13a pour former un ensemble de sortie XML enrichi 15 de la forme : <TVAMain > <CopyrightNotice>France Télécom</CopyrightNotice> <ProgramDescription> <ProgramInformationTable> </ProgramInformationTable> <ProgramLocationTable> <Schedule service ID Ref="3"> <ScheduleEvent> <BR> <BR> <Program crid="crid : //www. francetelecom. com/FESTIVAL<BR> /Charlemagne"/> <PublishedStartTime>2000-05-31 T12 : 10 : 00</PublishedStartTime> <PublishedDuration>P 1 Y2M3DT01 H30MOOS</PublishedDuration><BR> </ScheduleEvent><BR> </Schedule> </ProgramLocationTable> </ProgramDescription> </TVAMain> Dans un troisième exemple, le fichier des clés 13a comporte une clé de mise en correspondance d'un élément de l'ensemble principal XML 10 désigné par le chemin TVAMain/ProgramDescription/ProgramInformationTable/ProgramIn formation avec un ou plusieurs éléments des ensembles secondaires 11 désignés par le chemin ProgramInformation. Deux éléments vont enrichir l'ensemble principal XML 10 si l'attribut programld d'un ensemble secondaire 11 est égal à l'attribut programld de l'ensemble principal XML 10 et si l'attribut version de l'ensemble principal XML 10 est inférieur à celui du fichier secondaire XML 11.

L'action effectuée est dans ce cas la fusion de l'élément ProgramInformation dans l'ensemble principal XML 10.

Le fichier des clés 13 a est dans ce troisième exemple de la forme : <Keybag xmlns : xsi="http : //www. w3. org/2001/XMLSchema-instance" xsi : noNamespaceSchemaLocation="clef. xsd"> <Key test="(P : TVAMain/ProgramDescription/ProgramInformationTable/ ProgramInformation [@programld] == S : ProgramInformation [@Programld]) AND (P : TVAMain/ProgramDescription/ProgramInformationTable/ProgramIn formation [@version] &It ; S : Programinformation [@version])"> <Action type="merge"element="ProgramInformation"/> </Key> <Keybag> Dans un quatrième exemple, le fichier des clés 13a comporte une clé de mise en correspondance d'un élément de l'ensemble principal XML 10 désigné par le chemin TVAMain/ProgramDescription/ProgramInformationTable/ProgramIn formation avec un ou plusieurs éléments des ensembles secondaires 11 désignés par le chemin ProgramReviewTable/review. Un élément va enrichir l'ensemble principal XML 10 si l'attribut CRID d'un ensemble secondaire 11 est égal à l'attribut programld de l'ensemble principal XML 10 et si le sous-élément « Givenname » de l'élément Review/Reviewer/Person name est égal à Michel. Ainsi, les éléments Review de l'ensemble secondaire XML 11 dont le CRID est connu dans l'ensemble principal XML 10 et dont l'auteur est Michel sont insérés dans l'ensemble de sortie XML enrichi 15.

L'élément ProgramReview n'existant pas dans l'ensemble principal XML 10, celui-ci et selon l'invention est créé.

A cette fin, deux actions sont associées à la clé du fichier des clés.

La première action comporte trois attributs. Le premier attribut spécifie le type d'insertion à effectuer, en l'occurrence, une fusion avec création éventuelle de l'élément ProgramReview s'il n'existe pas.

Le second attribut spécifie l'élément à insérer, en l'occurrence, l'élément Program correspondant à la valeur de la clé.

Le troisième attribut spécifie l'élément dans lequel est effectuée la fusion, en l'occurrence, l'élément TVAMain/ProgramDescription/ProgramReviewTable.

La seconde action décrit la copie l'élément Review précédemment sélectionné dans le nouvel élément créé ProgramReviewTable de l'ensemble principal XML 10.

La clé du fichier des clés 13 a est dans ce quatrième exemple de la forme : <Key test=" (P : TVAMain/ProgramDescription/ProgramInformationTable /Programinformation [@programld] == S : ProgramReviewTable/Review [@CRID]) AND (S : ProgramReviewTable/Review/Reviewer/PersonName/GivenName == 'Michel')"> <Action type="insert"element="ProgramReviewTable/Program"primarySetN ode ="TVAMain/ProgramDescription/ProgramReviewTable"/> Action type="insert"element="ProgramReviewTable/Review"primarySetNo de ="TVAMain/ProgramDescription/ProgramReviewTable"/> L'ensemble de sortie XML enrichi est alors de la forme : <TVAMain > <ProgramDescription> <ProgramInformationTable> </ProgramInformationTable> <ProgramLocationTable copyrightNotice="France Télécom 2003"> </ProgramLocationTable> <ProgramReviewTable> <Program crid=crid ://www. francetelecom. com/FESTIVAL/Charlemagne/> <Review > <FreeTextReview> Un très bon film sur un sujet contemporain qui ne manquera pas d'intéresser tous les publics</FreeTextReview> <Reviewer> <PersonName> <mpeg7 : GivenName>Michel</mpeg7 : GivenName> </PersonName> </Reviewer> </Review> </ProgramReviewTable> </ProgramDescription> <TVAMain> Le fichier des clés 13a ou 211 peut tre prédéfini ou modifié périodiquement en fonction des caractéristiques du réseau de télécommunication 217 ou des caractéristiques des terminaux de télécommunication destinataires des ensembles de sortie 15 ou 215. Un fichier des clés 13a ou 211 doit néanmoins tre conforme à un schéma XML tel que par exemple le schéma suivant : <? xml version--"1. 0" encoding="UTF-8" ? > <xs : schema xmlns : xs=http ://www. w3. org/2001/XMLSchema" elementFormDefault="qualified"> <xs : element name="Key"> <xs : complexType> <xs : sequence> <xs : element ref="Action"minOccurs="0"maxOccurs="unbounded"/> </xs : sequence> <xs : attribute name="test"type="xs : string"/> </xs : complexType> </xs : element <xs : element name="Keybag"> <xs : complexType> <xs : sequence> <xs : element ref="Key"maxOccurs--"'unbounded"h </xs : sequence> </xs : complexType> </xs : element <xs : element name="Action"> <xs : complexType> <xs : attribute name="type"type="actionType"/> <xs : attribute name="element"type="xs : string <xs : attribute name--"number"type ="numberType"/> <xs : attribute name="primarySetNode"type="xs : string"/> </xs : complexType> </xs : element <xs : simpleType name="numberType"> <xs : restriction base="xs : string"> <xs : enumeration value="1"/> <xs : enumeration value="all"P </xs : restriction> </xs : simpleType> <xs : simpleType name="actionType"> <xs : restriction base="xs : string"> <xs : enumeration value="insert"P <xs : enumeration value="merge"/> <xs : enumeration value="replace"/> </xs : restriction> </xs : simpleType> </xs : schema> Dans un cinquième exemple conforme à la Fig. 2, un ensemble principal XML 201 de méta-données comprend des informations sur deux programmes audiovisuels appelés Merlin et Vivianne.

L'ensemble secondaire 205 comprend quant à lui entre autres des informations sur deux programmes audiovisuels diffusés ultérieurement. Ces programmes sont appelés dans notre exemple Arthur et Lancelot.

Le filtre d'enrichissement 208 selon ce cinquième exemple insère des informations sur des programmes audiovisuels absents de l'ensemble principal XML 201 et enrichit avec des éléments de l'ensemble secondaire les informations sur les programmes audiovisuels déjà présents dans l'ensemble principal XML 201.

L'ensemble principal XML 201 est de la forme : <TVAMain> <ProgramLocationTable > <BR> <BR> <Schedule> <Event><BR> <Program crid="crid : //www. ft. com/Merlin"/> <EventDescription> <PublishedTime>2000-05-31 T12 : 10 : 00</PublishedTime> </EventDescription> </Event> <Event > <Program crid="crid ://www. ft. com/Viviane"/> <EventDescription> <PublishedTime>2000-05-31T14 : 00 : 00</PublishedTime> </EventDescription> </Event > </Schedule> <ProgramLocationTable > <Pro gramInformationTable> <ProgramInformation programld="crid ://www. FT. com/Merlin"> <BasicDescription> <Title> L'enchanteur </Title > </BasicDescription> </ProgramInformation > <ProgramInformation programld=crid ://www. ft. com/Viviane" > <BasicDescription> <Title> La fée </Title > </BasicDescription> </ProgramInformation > </ProgramInformationTable> </TVAMain> L'ensemble secondaire XML 205 est de la forme : <TVAMain> <ProgramLocationTable > <Schedule> <Event> <Program crid="crid ://www. ft. com/Merlin"/> <EventDescription> <PublishedTime>2000-05-31 T12 : 10 : 00</PublishedTime> </EventDescription> </Event> <Event> <Program crid="crid ://www. ft. com/Arthur"/> <EventDescription> <PublishedTime>2000-05-31 T16 : 10 : 00</PublishedTime> </EventDescription></Event > <Event > <Program crid="crid ://www. ft. com/Lancelot"/> <EventDescription> <PublishedTime>2000-06-01 T17 : 10 : 00</PublishedTime> <EventDescription></Event> </Schedule> </ProgramLocationTable> <ProgramInformationTable> <ProgramInformationprogramld="crid ://www. FT. com/Merlin"> <BasicDescription> <Title> L'enchanteur </Title > <Synopsis> légende arthurienne </Synopsis> <Keyword> de Troyes </Keyword> <Keyword>Camelot</Keyword> <Language>fr</Language> </BasicDescription> </ProgramInformation > <ProgramInformation programld="crid ://. FT. com/Lancelot"> <BasicDescription> <Title> Le Chevalier </Title> </BasicDescription> </ProgramInformation > <ProgramInformation programld="crid ://www. FT. com/Arthur"> <BasicDescription> <Title> Le Roi </Title ></BasicDescription> </ProgramInformation > </ProgramInformationTable> </TVAMain> Le fichier des clés 211 comprend dans ce cinquième exemple deux clés.

Une première clé permet d'enrichir la table des informations de programmes « ProgramInformationTable » si le CRID de l'élément principal 201 est égal à celui de l'élément secondaire XML 205. Les éléments insérés sont entre autres le synopsis d'un des programmes audiovisuels, un prochain programme audiovisuel, ses horaires de diffusion ainsi que son titre.

Une seconde clé permet d'insérer des éléments supplémentaires tels qu'un prochain programme audiovisuel dans la table d'adresse des programmes audiovisuels ProgramLocationTable.

Le fichier des clés 211 est ainsi de la forme : <Keybag xsi : noNamespaceSchemaLocation="clef. xsd"> <Key test="P : TVAMain/ProgramDescription/ ProgramInformationTable/ProgramInformation [@programld] == S : ProgramInformation [@programld]"> <Action type="merge"element"ProgramInformation"/></Key> <Key test="P : TVAMain/ProgramDescription/ProgramInformationTable /ProgramInformation@programld] ==S : ProgramLocationTable/Schedule/ScheduleEvent [@CRID]"> <Action type="merge"element="ProgramLocationTable/Schedule<BR> /ScheduleEvent"/> </Key> </Keybag> Le fichier des priorités 210 comprend les priorités associées aux éléments de l'ensemble secondaire XML 205. Il est à remarquer aussi que des priorités peuvent aussi tre allouées aux éléments de l'ensemble principal 201.

En règle générale, il est alloué des priorités maximales aux éléments de l'ensemble XML secondaire 205 représentatif d'informations associées à des programmes audiovisuels diffusés dans un avenir proche.

Les éléments de l'ensemble XML secondaire 205 représentatif d'informations associées à des programmes audiovisuels diffusés dans un avenir plus lointain ont des priorités moins importantes.

Ces priorités sont par exemple définies par le processeur 300 du dispositif d'enrichissement 30. Le processeur 300 analyse périodiquement les éléments décrivant l'heure et la date de diffusion des programmes audiovisuels décrits dans l'ensemble secondaire XML 205 ou l'ensemble principal XML 201. En analysant ces éléments, le processeur 300 détermine pour chacun de ces éléments une priorité qui est fonction de la date et heure de diffusion et crée le fichier des priorités 210.

Le programme d'attribution des priorités exécuté par le processeur 300 est par exemple de la forme : setpriority [(date) Event/EventDescription/PublishedTime == 2000-05-31) && (time) Event/EventDescription/PubIishedTime > CurrentTime] : 1 ListTodayCrids = GetCrids (ProgramLocationTable/schedule, 1) //priorité 10 aux événements futurs setpriority [(date) Event/EventDescription/PublishedTime > 2000-05-31)] : 10 ListFutureCrids = GetCrids (ProgramLocationTable/schedule, 10) ProgramInformation [/@programld () == une des valeurs de ListTodayCrids] : 1 ProgramInformation [/@programld () == une des valeurs de ListFutureCrids] : 10 ProgramInformation/BasicDescription/Langage : 10 ProgramInformation/BasicDescription/Keywords : 3 Dans ce cinquième exemple, un seuil 212 permet la détermination des éléments devant tre inclus dans l'ensemble de sortie 214 formé par l'invention.

Tous les éléments et attributs correspondant aux actions associées aux clés contenues dans le fichier des clés 211 et dont la priorité est inférieure ou égale à ce seuil présents dans l'ensemble secondaire XML sont inclus dans l'ensemble de sortie XML enrichi 214.

L'ensemble de sortie XML enrichi 214 est alors de la forme : <TVAMain> <ProgramLocationTable > <Schedule> <Event> <Program crid="crid : //www. ft. com/Merlin"/> <EventDescription> <PublishedTime>2000-05-31 T12 : 10 : 00/></PublishedTime> <PublishedDuration>P 1 YOMODTO H35MOOS<PublishedDuration> </EventDescription> </Event> <Event > <Program crid="crid ://www. ft. com/Viviane"/> <EventDescription> <PublishedTime>2000-05-31 T14 : 00 : 00/></PublishedTime> </EventDescription> </Event > <Event > <Program crid="crid ://www. ft. com/Arthur"/> <EventDescription> <PublishedTime>2000-05-31 Tl 6 : 10 : 00</PublishedTime> </EventDescription></Event > </Schedule> </ProgramLocationTable> <ProgramInformationTable> <ProgramInformation programld="crid ://www. FT. com/Merlin"> <BasicDescription> <Title> L'enchanteur </Title > <Synopsis>La légende arthurien </Synopsis> <Keyword> de Troyes </Keyword> <Keyword>Camelot</Keyword> </BasicDescription> </PrograinInformation > <ProgramInformation" programld="crid ://www. FT. comViviane"> <BasicDescription> <Title> La fée </Title > </BasicDescription> </ProgramInformation > <ProgramInformation > programld="crid ://www. FT. com/Arthur"> <BasicDescription> <Title> Le Roi </Title > </BasicDescription> </ProgramInformation > </PrograminformationTable> </TVAMain> Il est à remarquer que le l'ensemble enrichi de sortie précédemment décrit est conforme au schéma méta-données de la spécification TV Anytime.

Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits ici, mais englobe, bien au contraire, toute variante à la portée de l'homme du métier.