FR2858079A1 - Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree - Google Patents

Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree Download PDF

Info

Publication number
FR2858079A1
FR2858079A1 FR0309183A FR0309183A FR2858079A1 FR 2858079 A1 FR2858079 A1 FR 2858079A1 FR 0309183 A FR0309183 A FR 0309183A FR 0309183 A FR0309183 A FR 0309183A FR 2858079 A1 FR2858079 A1 FR 2858079A1
Authority
FR
France
Prior art keywords
information
input
output information
key
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0309183A
Other languages
English (en)
Inventor
Isabelle Amonou
Christian Bertin
Franck Geslin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR0309183A priority Critical patent/FR2858079A1/fr
Priority to EP04741251A priority patent/EP1649386A1/fr
Priority to PCT/EP2004/008280 priority patent/WO2005020095A1/fr
Publication of FR2858079A1 publication Critical patent/FR2858079A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26603Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for automatically generating descriptors from content, e.g. when it is not made available by its provider, using content analysis techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

L'invention concerne 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'une clé comportant des conditions de mise en correspondance d'au moins é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 clé et de formation de l'ensemble d'informations de sortie en fonction du traitement associé à la clé. L'invention concerne aussi le dispositif associé.

Description

i
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 Markup Language ).
Ce langage XML est un langage de balisage, c'est-à-dire un langage qui 10 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 même élément à la même 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 20 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 25 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 même attribut sont détectés.
Selon cette technique, les différences dans les documents sont détectées avant 30 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 même 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 10 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 20 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 25 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 30 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 i r 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 5 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 10 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 15 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 même langage de balisage, ce qui simplifie le procédé et le dispositif selon 25 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 mêmes 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. l
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 même 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 10 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 15 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 20 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 25 é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 30 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 10 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 à 15 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 20 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é. 25 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 30 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. i
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 5 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 10 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 15 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 20 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 25 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 30 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 10 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 15 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 20 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étadonné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 25 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 30 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 1 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 10 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 15 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 20 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 25 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-donné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 30 de ce programme telles que son titre, une description sommaire et/ou détaillée de celuici, 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 1 la est par exemple constitué d'autres informations relatives au même programme audiovisuel telles que le résumé 10 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 même programme audiovisuel telles que par exemple la liste des acteurs jouant dans ce programme audiovisuel, voire des informations 15 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 20 secondaire d'informations XML 11 a 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 11 b.
Dans un mode particulier de l'invention, l'enrichissement est effectué en 25 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 30 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 10 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 1 la.
Le filtre mélangeur 12 détermine ensuite la règle d'insertion du ou des éléments de l'ensemble secondaire XML 1 la dans l'ensemble principal 10 et insère ceux-ci 20 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 30 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étadonné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 25 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 15 sera pas plus explicité. Le fichier des priorités 210 ainsi que le fichier des seuils 212, de la
même 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 20 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 30 é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 même 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 5 données décrites dans le même 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-données à destination de moyen de visualisation 10 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 15 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étadonné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 20 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. 25 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 1 lb, 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, 30 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 10 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 1la et i lb, 15 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 Intemet.
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 même langage de balisage.
Le processeur 300 du dispositif d'enrichissement 30 lit, à partir de la mémoire 5 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 10 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 même valeur d'attribut, des clés permettant de fusionner deux éléments possédant une même 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 13a, 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 à 25 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 30 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 13a, respectivement 211 de la même 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 15 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 25 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 1i 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 30 identiques.
Si aucun élément de l'ensemble secondaire 1la, 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 lb et retourne à l'étape E405 précédemment décrite.
Le processeur 300 effectue alors les étapes E405 et E407 de la même 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. 10 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, 15 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 20 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 30 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 1 lb, respectivement 205. Cette ou ces 5 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 15 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 20 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 même 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 même manière que celle précédemment décrite.
Dans l'affirmative, le processeur 300 passe à l'étape E420. L'ensemble principal 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 20 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 30 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, 5 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 15 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 20 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 25 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 30 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étadonnées contenant un programme télévisé décrites selon la norme DVBSI 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 DVBSI à 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 15 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 20 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 DVBSI 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 25 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 30 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 I'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 mêmes 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 15 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>
<ProgramlnformationTable> <ProgramInformation programld="crid://www.francetelecom.com /FESTIVAL/Charlemagne" fragmentVersion="3">
<BasicDescription>
<Title>Charlemagne, le prince à cheval</Title> <Genre href=":x:x"> <Name>soap/melodrama/folkloric</Name> </Genre>
</BasicDescription>
</ProgramInformation> </ProgramlnformationTable>
</ProgramDescription>
</TVAMain> L'ensemble secondaire d'informations XML 1 la est quant à lui un ensemble décrivant un programme audiovisuel Charlemagne de la forme: <TVAMain >
<ProgramDescription>
<ProgramlnformationTable> <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> </BasicDescription> </ProgramInformation> </ProgramlnformationTable> <ProgramLocationTable copyrightNotice="France Télécom 2003"> <Schedule servicelDRef="3"> <ScheduleEvent> <Program crid=" crid://www.francetelecom.com/FESTIVAL /Charlemagne "/> <PublishedStartTime>2000-05-31T 12:10:00</PublishedStartTime> <PublishedDuration>P 1Y2M3DT0 1 H30MOOS</PublishedDuration> </ScheduleEvent> </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> 10 </PersonName> <Reviewer> </Review> </ProgramReviewTable>
</ProgramDescription> 15 </TVAMain>
Le schéma XML 14 est quant à lui de la forme: <element name="Programlnformation" type=" ProgramlnformationType"/> 20 <complexType name="ProgramlnformationType"> <sequence> <element name="BasicDescription" type=" BasicContentDescriptionType"/> </sequence> v <attribute name="programld" type ="tva:CRIDType" use="required"/> 25 </complexType>
<complexType name="BasicContentDescriptionType">
<sequence> <element name="Title" type="mpeg7:TitleType" maxOccurs="unbounded"/> <element name="Synopsis" type="tva:SynopsisType" minOccurs="0" 30 maxOccurs="unbounded"/> <element name="Keyword" type="tva:KeywordType" minOccurs="0" maxOccurs="unbounded"/> <element name="Genre" type ="tva:GenreType" rninOccurs="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 même 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/ProgramlnformationTable /Programinformation[(programld] == S:ProgramInformation[programld]"><Action type="merge" element="Programlnformation"/> </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>
<ProgramlnformationTable copyrightNotice="String"> <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... 30 </Synopsis> <Keyword>Xavier</Keyword> <Keyword>charlemagne</Keyword> <Genre href=":x:x"> <Name>soap/melodrama/folkloric</Name> </Genre>
</BasicDescription>
</ProgramInformation> </ProgramlnformationTable>
</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 10 désigné par le chemin TVAMAIN/Program/ProgramlnformationTable/Programlnformation 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 lia, 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 20 de la forme: <Keybag xmlns:xsi="http://www.w3.org/200 1/XMLSchema-instance" xsi:noNamespaceSchemaLocation=" clef.xsd"> <Key test="P:TVAMain/ProgramDescription/ProgramlnformationTable /Program 25 Information[programld] ==S:ProgramLocationTable/Schedule/ScheduleEvent[@CRID]"> <Action type="merge" element="ProgramLocationTable/Schedule/ScheduleEvent" /> <Action type="merge" element="ProgramLocationTable/copyrightNotice" 30 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: TVAMain/ProgramDescription/ProgramlnformationTable/Programlnformation 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 15 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 20 à 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>
<ProgramlnformationTable> </ProgramlnformationTable> <ProgramLocationTable> <Schedule service ID Ref="3"> <ScheduleEvent> <Program crid=" crid://www.francetelecom.com/FESTIVAL /Charlemagne "/> <PublishedStartTime>2000-05-31 T12:10:00</PublishedStartTime> <PublishedDuration>P i Y2M3DT01 iH30MOOS</PublishedDuration> </ScheduleEvent> </Schedule> </ProgramLocationTable>
</ProgramDescription>
</TVAMain> Dans un troisième exemple, le fichier des clés 13a comporte une clé de mise en 10 correspondance d'un élément de l'ensemble principal XML 10 désigné par le chemin TVAMain/ProgramDescription/ProgramlnformationTable/Programlnformation 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 15 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 13a est dans ce troisième exemple de la forme 20 <Keybag xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="clef.xsd"> <Key test="(P:TVAMain/ProgramDescription /ProgramlnformationTable/ ProgramInformation [@programld] == S:ProgramInformation[(Programld]) AND 25 (P:TVAMain/ProgramDescription /ProgramlnformationTable/Programlnformation [@version] &It; S: Programinformation[@version])"> <Action type="merge" element="Programlnformation"/> </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/Programlnformation 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 5 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 15 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. 20 La clé du fichier des clés 13a est dans ce quatrième exemple de la forme: <Key test="(P:TVAMain/ProgramDescription/ProgramlnformationTable /Programinformation[(programld] == S:ProgramReviewTable/Review[CRID]) AND (S:ProgramReviewTable/Review/Reviewer/PersonName/GivenName== 25 'Michel') "> <Action type="insert" element="ProgramReviewTable/Program"primarySetNode
="TVAMain/ProgramDescription/ProgramReviewTable"/>
<Action type="insert" element="ProgramReviewTable/Review"primarySetNode ="TVAMain/ProgramDescription/ProgramReviewTable"/> 30 L'ensemble de sortie XML enrichi est alors de la forme <TVAMain >
<ProgramDescription>
<ProgramlInformationTable> </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> 15 </PersonName> </Reviewer> </Review> </ProgramReviewTable>
</ProgramDescription> 20 <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 25 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" 30 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"/> </xs:sequence> 10 </xs: complexType> </xs:element> <xs:element name="Action"> <xs:complexType> <xs:attribute name="type" type="actionType"/> 15 <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"/> </xs: restriction> 25 </xs:simpleType> <xs:simpleType name="actionType"> <xs:restriction base="xs:string"> <xs:enumeration value="insert"/> <xs:enumeration value="merge"/> 30 <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 5 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 10 programmes audiovisuels déjà présents dans l'ensemble principal XML 201.
L'ensemble principal XML 201 est de la forme: <TVAMain> <ProgramLocationTable > 15 <Schedule> <Event> <Program crid="crid://www.ft.com/Merlin" />
<EventDescription>
<PublishedTime>2000-05-31 T12:10:00</PublishedTime>
</EventDescription> </Event> 20 <Event >
<Program crid="crid://www.ft.com/Viviane" />
<EventDescription>
<PublishedTime>2000-05-31 T 14:00:00</PublishedTime>
</EventDescription> </Event > 25 </Schedule>
<ProgramLocationTable > <ProgramInformationTable> <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 > </ProgramlnformationTable> </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> 15 </EventDescription> </Event> <Event> <Program crid="crid://www.ft.com/Arthur" />
<EventDescription>
<PublishedTime>2000-05-31 T16:10:00</PublishedTime> 20 </EventDescription> </ Event > <Event > <Program crid="crid://www.ft.com/Lancelot" />
<EventDescription>
<PublishedTime>2000-06-01 T17:10:00</PublishedTime> 25 <EventDescription> </Event> </Schedule> </ProgramLocationTable> <ProgramlnformationTable> <Programlnformationprogramld="crid://www. FT.com/Merlin"> 30 <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://www.FT.com/Lancelot">
<BasicDescription>
<Title> Le Chevalier </ Title>
</BasicDescription>
</ProgramInformation > <ProgramInformation programld="crid://www.FT.com/Arthur"> 10 <BasicDescription>
<Title> Le Roi </Title ></BasicDescription>
</ProgramInformation > </ProgramlnformationTable> </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 ProgramlnformationTable 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 20 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/
ProgramlnformationTable/Programlnformation [(programld]== S:Programlnformation[(programld]"> <Action type="merge" element "Programlnformation"/></Key> <Key test="P:TVAMain/ProgramDescription/ ProgramlnformationTable /Programlnformation@programld] ==S:ProgramLocationTable/Schedule/ScheduleEvent[(CRID]"> <Action type="merge"element="ProgramLocationTable/Schedule /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 10 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 20 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) && 25 (time)Event/EventDescription/PublishedTime > 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 Programlnformation/BasicDescription/Langage: 10 Programlnformation/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 > 15 <Schedule> <Event> <Program crid="crid://www.ft.com/Merlin" />
<EventDescription>
<PublishedTime>2000-05-31 T12:10:00/></PublishedTime> <PublishedDuration>P 1 YOMODT01 H35MOOS<PublishedDuration> 20 </EventDescription> </Event> <Event > <Program crid="crid://www.ft.com/Viviane" />
<EventDescription>
<PublishedTime>2000-05-31 T 14:00:00/></PublishedTime> 25 </EventDescription> </Event > <Event > <Program crid="crid://www.ft.com/Arthur" />
<EventDescription>
<PublishedTime>2000-05-31 T1 6:10:00</PublishedTime> 30 </EventDescription></ Event > </Schedule> </ProgramLocationTable> <ProgramIlnformationTable> <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>
</ProgramIlnformation > 10 <ProgramInformation" programld="crid://www.FT. comViviane">
<BasicDescription>
<Title> La fée </Title >
</BasicDescription> 15 </ProgramInformation >
<ProgramInformation > programld="crid://www.FT.com/Arthur">
<BasicDescription>
<Title> Le Roi </Title > 20 </BasicDescription> </ProgramInformation > </PrograminformationTable> </TVAMain> Il est à remarquer que le l'ensemble enrichi de sortie précédemment décrit est 25 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.

Claims (19)

REVENDICATIONS
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, la, lb, 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 (1 la, 1 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 15 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 20 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 25 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 30 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 5 qu'un ensemble d'informations d'entrée est principal (10, 201) et les autres ensembles d'informations d'entrée sont secondaires (la, lb, 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. 10
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 5 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 10 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 15 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é. 20
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 Intemet (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é 10 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 15 à 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é luedont les conditions de mise en correspondance 20 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. 25
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.
FR0309183A 2003-07-25 2003-07-25 Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree Pending FR2858079A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR0309183A FR2858079A1 (fr) 2003-07-25 2003-07-25 Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree
EP04741251A EP1649386A1 (fr) 2003-07-25 2004-07-22 Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree
PCT/EP2004/008280 WO2005020095A1 (fr) 2003-07-25 2004-07-22 Procede et dispositif de formation d’un ensemble d’informations de sortie a partir d’au moins deux ensembles d’informations d’entree

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0309183A FR2858079A1 (fr) 2003-07-25 2003-07-25 Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree

Publications (1)

Publication Number Publication Date
FR2858079A1 true FR2858079A1 (fr) 2005-01-28

Family

ID=33561143

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0309183A Pending FR2858079A1 (fr) 2003-07-25 2003-07-25 Procede et dispositif de formation d'un ensemble d'informations de sortie a partir d'au moins deux ensembles d'informations d'entree

Country Status (3)

Country Link
EP (1) EP1649386A1 (fr)
FR (1) FR2858079A1 (fr)
WO (1) WO2005020095A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2983605A1 (fr) 2011-12-05 2013-06-07 France Telecom Dispositif et procede de selection et de mise a jour du profil d'un utilisateur.

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1244309A1 (fr) * 2001-03-24 2002-09-25 Deutsche Thomson-Brandt Gmbh Méthode et système à microprocesseur pour construire un flux de sortie comprenant des metadata

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1266522B1 (fr) * 2000-03-31 2012-02-15 OpenTV, Inc. Systeme et procede d'insertion de meta-donnees locales
US6757678B2 (en) * 2001-04-12 2004-06-29 International Business Machines Corporation Generalized method and system of merging and pruning of data trees
US20030009472A1 (en) * 2001-07-09 2003-01-09 Tomohiro Azami Method related to structured metadata
US20030084180A1 (en) * 2001-10-31 2003-05-01 Tomohiro Azami Metadata receiving apparatus, receiving method, metadata receiving program, computer-readable recording medium recording therein metadata receiving program, metadata sending apparatus, and transmitting method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1244309A1 (fr) * 2001-03-24 2002-09-25 Deutsche Thomson-Brandt Gmbh Méthode et système à microprocesseur pour construire un flux de sortie comprenant des metadata

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
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 <URL:http://www.ruleml.org/indesign.html> [retrieved on 20040511] *
CHRISTOPHIDES V ET AL: "On wrapping query languages and efficient XML integration", SIGMOD RECORD, SIGMOD, NEW YORK, NY, US, VOL. 29, NR. 2, PAGE(S) 141-152, ISSN: 0163-5808, XP008023111 *
DEUTSCH A ET AL: "A query language for XML", COMPUTER NETWORKS, ELSEVIER SCIENCE PUBLISHERS B.V., AMSTERDAM, NL, VOL. 31, NR. 11-16, PAGE(S) 1155-1169, ISSN: 1389-1286, XP004304546 *
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 <URL:http://www.ebu.ch/trev_284-contents.html> [retrieved on 20040511] *
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 *
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 <URL:http://www.cooltown.hp.com/papers/adcon/MMCN2000> [retrieved on 20010528] *

Also Published As

Publication number Publication date
EP1649386A1 (fr) 2006-04-26
WO2005020095A1 (fr) 2005-03-03

Similar Documents

Publication Publication Date Title
US9674588B2 (en) Methods, systems, and computer program products for categorizing/rating content uploaded to a network for broadcasting
JP4634723B2 (ja) マルチメディアプログラミングコンテンツおよび電子プログラム・ガイド(epg)情報のためのグローバル・リスティング・フォーマット(glf)
US8589973B2 (en) Peer to peer media distribution system and method
US20070214480A1 (en) Method and apparatus for conducting media content search and management by integrating EPG and internet search systems
Chang et al. Overview of the MPEG-7 standard
US7493341B2 (en) Metadata brokering server and methods
US8996589B2 (en) Digital asset management data model
AU2016208427A1 (en) Content provision
US8505043B2 (en) Method and apparatus for providing metadata of content, and method and apparatus for limiting content usage authority
US20100100899A1 (en) Accessing content
US20120020647A1 (en) Filtering repeated content
FR2902543A1 (fr) Procede de creation de contenus multimedia pour terminaux mobiles, produit programme d&#39;ordinateur pour la mise en oeuvre d&#39;un tel procede
US20040088180A1 (en) Downloadable remotely stored device drivers for communication with set-top box peripherals
US20100082568A1 (en) Method and apparatus for generating integrated metadata
US20160295248A1 (en) Aggregating media content
US8234158B1 (en) Analyzing text streams for cue points of advertisements in a media stream
FR2858079A1 (fr) Procede et dispositif de formation d&#39;un ensemble d&#39;informations de sortie a partir d&#39;au moins deux ensembles d&#39;informations d&#39;entree
US9516353B2 (en) Aggregating media content
US20240137613A1 (en) Providing Related Episode Content
EP2695372B1 (fr) Procede de determination d&#39;un comportement inhabituel d&#39;un appareil electronique, et appareil electronique apte a mettre en oeuvre un tel procede
FR3032584A1 (fr) Acces ameliore a un contenu numerique
FR2850509A1 (fr) Procede d&#39;enregistrement thematique de contenus numeriques a diffusion programmee
US20160295247A1 (en) Assembly of media content
Papadimitriou et al. Integrating Semantic Technologies with Interactive Digital TV
FR2850510A1 (fr) Procede d&#39;enregistrement, avec mise a jour, de contenus audiovisuels a diffusion programmee