FR3021787A1 - - Google Patents

Download PDF

Info

Publication number
FR3021787A1
FR3021787A1 FR1554332A FR1554332A FR3021787A1 FR 3021787 A1 FR3021787 A1 FR 3021787A1 FR 1554332 A FR1554332 A FR 1554332A FR 1554332 A FR1554332 A FR 1554332A FR 3021787 A1 FR3021787 A1 FR 3021787A1
Authority
FR
France
Prior art keywords
data
standard
record
content
type
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.)
Granted
Application number
FR1554332A
Other languages
French (fr)
Other versions
FR3021787B1 (en
Inventor
Vanessa Fontebride
Christel Charrat
Sinq Ludovic Le
Marion Francois
Pierre Gadeyne
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.)
Amadeus SAS
Original Assignee
Amadeus SAS
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
Priority claimed from EP14305811.3A external-priority patent/EP2950244A1/en
Priority claimed from US14/291,837 external-priority patent/US10042871B2/en
Application filed by Amadeus SAS filed Critical Amadeus SAS
Publication of FR3021787A1 publication Critical patent/FR3021787A1/fr
Application granted granted Critical
Publication of FR3021787B1 publication Critical patent/FR3021787B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/14Travel agencies

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

L'invention concerne un procédé de gestion de contenu fourni par un ou plusieurs fournisseurs de contenu (4, 5) dans un système de gestion de contenu comprenant un agrégateur d'applications (3) comprenant un ensemble d'applications et une structure de données d'enregistrement étendue (9). La structure de données d'enregistrement étendue comprend une structure de données d'enregistrement standard (90) pour stocker un enregistrement associé à des éléments de données standard de types standard prédéfinis et une structure de données d'enregistrement non-standard (91) pour stocker des enregistrements associés à des éléments de données non-standard ayant un type non-standard différent des types standard prédéfinis. Le procédé comprend la réception de contenu provenant d'un ou plusieurs fournisseurs de contenu (4, 5), ledit contenu comprenant un ensemble d'éléments de données associés de types respectifs, et, pour chaque élément de données : - la création d'un enregistrement pour l'élément de données dans la structure de données d'enregistrement standard (90) si l'élément de données présente un type standard, ledit enregistrement comprenant un identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; - la génération d'un conteneur de données non-standard pour ledit élément de données si l'élément de données a un type non-standard et la création d'un enregistrement pour l'élément de données dans la structure de données d'enregistrement non-standard (91), l'enregistrement comprenant l'identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; le procédé de gestion de contenu comprenant en outre la gestion de l'accès aux enregistrements maintenus dans la structure de données d'enregistrement étendue (9) sur la base de l'identifiant d'enregistrement commun.A content management method provided by one or more content providers (4, 5) in a content management system comprising an application aggregator (3) comprising a set of applications and a data structure extended recording (9). The extended record data structure includes a standard record data structure (90) for storing a record associated with standard data elements of standard predefined types and a non-standard record data structure (91) for store records associated with non-standard data items having a non-standard type other than the standard predefined types. The method includes receiving content from one or more content providers (4, 5), said content comprising a set of associated data items of respective types, and, for each data item: - the creation of a record for the data item in the standard record data structure (90) if the data item has a standard type, said record including a common record identifier and data values corresponding to the item of data ; generating a non-standard data container for said data element if the data element has a non-standard type and creating a record for the data element in the registration data structure non-standard (91), the record including the common record identifier and data values corresponding to the data item; the content management method further comprising managing access to the records maintained in the extended record data structure (9) based on the common registration identifier.

Description

Système de gestion de contenu ARRIERE-PLAN La présente invention concerne de manière générale les systèmes de gestion de données, et en particulier des procédés, systèmes et produits de programmes d'ordinateur pour la gestion de contenu comprenant un contenu standard et un contenu non-standard. Les systèmes de gestion de contenu peuvent offrir un accès à un contenu spécifique à un ou plusieurs clients (par exemple, des consommateurs finaux) connectés au système via des réseaux de communication dédiés.BACKGROUND OF THE INVENTION The present invention relates generally to data management systems, and particularly to methods, systems and computer program products for managing content including standard content and non-content content. standard. Content management systems can provide access to specific content to one or more customers (eg, end users) connected to the system via dedicated communication networks.

Avec l'apparition d'un nombre gigantesque de fournisseurs de distribution de contenu dans chaque secteur industriel, il existe un besoin pour chaque consommateur de pouvoir accéder à plusieurs fournisseurs de contenu via un unique système de gestion de contenu. Par exemple, dans l'industrie du tourisme, des systèmes de gestion de voyages 15 peuvent être utilisés pour distribuer du contenu obtenu auprès d'un ensemble de systèmes de fournisseurs de voyages (fournisseurs de contenu) vers une pluralité de systèmes d'agences de voyages (consommateurs de contenu). L'industrie du tourisme a connu une croissance considérable durant ces dernières décennies et, dans le même temps, les services proposés par l'industrie du tourisme ont considérablement changé, de sorte qu'une large variété de services 20 est maintenant offerte aux consommateurs finaux, impliquant un contenu hétérogène. En outre, l'industrie du tourisme implique maintenant beaucoup d'acteurs entre les fournisseurs de voyages et les consommateurs finaux, avec une énorme quantité de données à gérer entre ces différents acteurs. Entre le fournisseur de voyages et l'utilisateur final, des intermédiaires voyagistes tels que des Systèmes de Distribution Globale (GDS, "Global Distribution 25 Systems") fournissent des Systèmes de Gestion de Voyages pour permettre aux agents voyagistes de récupérer des informations auprès de fournisseurs de voyages traditionnels (compagnies aériennes), ou de conduire des transactions entre des consommateurs finaux et des fournisseurs de voyages traditionnels. Le modèle métier des agences de voyages qui se concentrait principalement sur la 30 distribution exclusive de transports aériens évolue et des acteurs réalisent maintenant des marges plus importantes grâce à un contenu non aérien. Une très grande variété de services 3021787 2 offerts par de nouveaux types de fournisseurs de voyages est ainsi proposée à destination. Avec l'attractivité de ces canaux de distribution alternatifs, les agences de voyages tendent à distribuer de plus en plus de contenu non GDS (par exemple, hôtels, locations de véhicules, etc.) en plus du contenu GDS habituel (par exemple, un contenu de voyage par 5 avion ou par train). Cependant, les systèmes de gestion de voyages classiques n'offrent pas de moyens appropriés pour fournir directement aux agences de voyages des informations relatives à du contenu non GDS. Tel que représenté sur la Figure 1, un système de gestion de voyages 1 comprend 10 généralement une structure de données d'enregistrement telle qu'une structure de données "Enregistrement du Nom du Passager" 900 pour stocker des enregistrements associés à du contenu GDS reçu directement de fournisseurs de contenu GDS 40. Chaque enregistrement (PNR) est identifié dans une base de données BD par un repère de dossier. Les repères de dossier PNR peuvent alors être utilisés pour accéder au contenu GDS et le distribuer à des dispositifs clients tels que des systèmes d'agents voyagistes ou de consommateurs finaux (60). La structure de données PNR 900 contient un repère de dossier en association avec des données de voyages associées à un passager donné ou un groupe de passagers voyageant ensemble (le repère de dossier est également connu comme un numéro de confirmation, un 20 numéro de réservation, un code de confirmation, une référence de réservation, etc.). Par exemple, lorsqu'une réservation est effectuée pour un passager ou un groupe de passagers, un PNR est créé dans la structure de données 900, ce PNR comprenant un repère de dossier et des données correspondant au contenu de la réservation (par exemple, données du vol telles que l'heure d'arrivée, l'heure de départ, etc.).With the emergence of a huge number of content distribution providers in each industry sector, there is a need for each consumer to be able to access multiple content providers via a single content management system. For example, in the tourism industry, travel management systems 15 can be used to distribute content obtained from a set of travel provider systems (content providers) to a plurality of travel agency systems. travel (consumers of content). The tourism industry has grown considerably in recent decades and, at the same time, the services offered by the tourism industry have changed considerably, so that a wide variety of services 20 is now available to end consumers , involving heterogeneous content. In addition, the tourism industry now involves many players between travel suppliers and end consumers, with a huge amount of data to manage between these different actors. Between the travel supplier and the end user, travel intermediaries such as Global Distribution Systems (GDS) provide Travel Management Systems to enable tour operators to retrieve information from suppliers. traditional travel (airlines), or to conduct transactions between end consumers and traditional travel providers. The travel agency business model, which focused primarily on the exclusive distribution of air transport, is evolving and players are now achieving higher margins through non-airline content. A wide variety of services offered by new types of travel providers are thus offered at destination. With the attractiveness of these alternative distribution channels, travel agencies tend to distribute more non-GDS content (eg hotels, car rentals, etc.) in addition to the usual GDS content (for example, a travel content by 5 plane or by train). However, conventional travel management systems do not provide adequate means to directly provide travel agencies with non-GDS content information. As shown in Figure 1, a travel management system 1 generally includes a registration data structure such as a "Passenger Name Record" data structure 900 for storing records associated with received GDS content. directly from GDS content providers 40. Each record (PNR) is identified in a database BD by a folder mark. PNR file markers can then be used to access GDS content and distribute it to client devices such as tour operator or end-user systems (60). The PNR 900 data structure contains a file mark in association with travel data associated with a given passenger or a group of passengers traveling together (the file mark is also known as a confirmation number, a reservation number, a confirmation code, a reservation reference, etc.). For example, when a reservation is made for a passenger or a group of passengers, a PNR is created in the data structure 900, this PNR comprising a file reference and data corresponding to the content of the reservation (for example, data flight such as arrival time, departure time, etc.).

25 Actuellement, les systèmes de gestion de voyages ne peuvent pas recevoir directement du contenu non GDS en provenance de fournisseurs de voyages non GDS 50 en raison de contraintes de normalisation. En effet, la manière dont un système de gestion de voyages échange avec un fournisseur de voyages standard (40) est soumis aux règles définies par l'Association 30 Internationale des Transports Aériens (IATA, "International Air Transport Association"), dans les Procédures de Messages Interlignes de Réservations ATA/IATA - Passagers 3021787 3 (AIRIMP, "ATA/IATA Reservations Interline Message Procedures - Passenger"). En particulier, les messages échangés entre un fournisseur de voyages standard 40 et le moteur de gestion de contenu de voyages 30 doivent satisfaire à un format d'échange de messages TTY (format Télétype) défini par la norme IATA et les PNR conventionnels 900 sont 5 configurés pour ne traiter que du contenu reçu dans un tel format TTY. Aucune norme industrielle n'est définie en tant que telle pour la topologie et le contenu d'un PNR 900. Cependant, chaque système de gestion de voyages (par exemple, un Système de Réservation par Ordinateur, (CRS, "Computer Reservation System") définit ses propres normes propriétaires pour la topologie et le contenu du PNR, en tenant compte des 10 limitations de l'AIRIMP et en particulier la nécessité d'établir aisément une correspondance entre données PNR et messages AIRIMP. Par conséquent, il existe de nombreuses similitudes en ce qui concerne les contenus et formats de données de PNR 900 tenus par différents systèmes de gestion de voyages. En particulier, chaque structure de données PNR 900 est telle que les données de voyages associées à un repère de dossier doivent satisfaire à un 15 certain nombre de types prédéfinis qui correspondent au contenu GDS normalisé par l'IATA (données aériennes, données ferroviaires, etc.). Par conséquent, seul du contenu GDS (par exemple, des données aériennes, ferroviaires) peut être enregistré dans la structure de données PNR 900 dans un format statique satisfaisant aux contraintes associées à la norme d'échange de messages IATA. Il n'est donc pas possible de créer d'enregistrement pour un contenu non GDS (location de véhicules, jet-ski, etc.). Le document US2012259667 propose une solution pour le stockage de contenu non GDS dans le PNR 900 sous la forme de remarques, de segments divers ou fantômes. Cependant, une telle solution ne permet pas au système de gestion de voyages de stocker de 2 5 manière dynamique et fluide du contenu non GDS reçu directement d'un fournisseur de voyages non-standard, d'une manière structurée, à l'avance, dans le PNR 900 parmi d'autres éléments non GDS. Les systèmes de gestion de voyages classiques 1 ne traitent que du contenu provenant de fournisseurs de voyages GDS, tels que des fournisseurs de lignes aériennes. Un 30 système de gestion de voyages classique comprend un moteur de gestion de contenu de voyages 30 utilisant un nombre considérable d'applications, chaque application étant associée à un service de voyage spécifique (par exemple, réservation, boutique, prix, etc.). En réponse 3021787 4 à une demande provenant d'un agent voyagiste donné Ai (70), le moteur de gestion de contenu de voyages 30 peut uniquement récupérer du contenu auprès de fournisseurs de voyages GDS 40, générer un enregistrement dans le PNR 900 et renvoyer une représentation de l'enregistrement PNR ainsi créé à l'agent voyagiste Ai.Currently, travel management systems can not directly receive non-GDS content from non-GDS 50 travel providers due to standardization constraints. Indeed, the manner in which a travel management system exchanges with a standard travel provider (40) is subject to the rules defined by the International Air Transport Association (IATA) in the Procedures. of ATA / IATA Reservations Interline Reservations - Passengers 3021787 3 (AIRIMP, "ATA / IATA Reservations Interline Message Procedures - Passenger"). In particular, the messages exchanged between a standard travel provider 40 and the travel content management engine 30 must satisfy a TTY message exchange format (Teletype format) defined by the IATA standard and the conventional 900 PNRs are 5 configured to process only the content received in such a TTY format. No industry standard is defined as such for the topology and content of a PNR 900. However, each travel management system (for example, a Computer Reservation System (CRS) ) defines its own proprietary standards for the topology and content of the PNR, taking into account the limitations of the AIRIMP and in particular the need to easily match PNR data with AIRIMP messages. similarities in the content and formats of PNR 900 data maintained by different travel management systems, in particular, each PNR 900 data structure is such that travel data associated with a file reference must satisfy number of predefined types that correspond to the GDS content standardized by IATA (aerial data, rail data, etc.) Therefore, only GD content S (for example, aerial, railway data) can be stored in the PNR 900 data structure in a static format satisfying the constraints associated with the IATA message exchange standard. It is therefore not possible to create a record for non-GDS content (vehicle rental, jet-ski, etc.). Document US2012259667 proposes a solution for the storage of non-GDS content in the PNR 900 in the form of remarks, various segments or ghosts. However, such a solution does not allow the travel management system to dynamically and fluidly store non-GDS content received directly from a non-standard travel provider in a structured manner in advance. in the PNR 900 among other non-GDS elements. Conventional travel management systems 1 only deal with content from GDS travel providers, such as airline providers. A conventional travel management system includes a travel content management engine using a considerable number of applications, each application being associated with a specific travel service (eg booking, shop, price, etc.). In response to a request from a given travel agent Ai (70), the travel content management engine 30 can only retrieve content from GDS travel providers 40, generate a record in the PNR 900 and send back a representation of the PNR record thus created to the travel agent Ai.

5 Chaque agent voyagiste doit être connecté directement à un ensemble de fournisseurs de contenu non GDS 50 si l'agent voyagiste a besoin d'accéder à du contenu non GDS, tandis que le système de gestion de voyages 1 n'est connecté directement qu'à des fournisseurs de contenu GDS 40. D'autre part, chaque agent voyagiste est connecté directement à un ensemble spécifique de fournisseurs de voyages 50 pour obtenir du contenu 10 de voyage non GDS (taxi, billets de spectacles, etc.). Le moteur de gestion de contenu de voyages 30 expose donc n plateformes de services de voyages (une plateforme 2.1, 2.2, ...2.i, 2.n pour chaque agent voyagiste Al à An), tout en ne traitant que du contenu de voyages standard (contenu GDS) provenant des fournisseurs de voyages standard 40. Par conséquent, si un agent voyagiste Ai donné souhaite un contenu spécifique 15 provenant d'un fournisseur de voyages non-standard 50 (par exemple, un billet de musée), ce contenu doit être implémenté personnellement par l'agent voyagiste Ai. Cette implémentation personnelle est particulièrement coûteuse et complexe pour les agents voyagistes. Il existe donc un besoin pour des systèmes, procédés et produits de programmes d'ordinateur améliorés pour la gestion de contenu, permettant de distribuer de manière 20 dynamique et fluide tout type de contenu à partir d'un fournisseur de contenu quelconque (à la fois contenu standard et non-standard) par le biais d'une plate-forme unique. RESUME Afin de résoudre ces problèmes ainsi que d'autres, il est mis à disposition un procédé de gestion de contenu tel que défini dans la revendication indépendante 1 présentée en annexe, et un système de gestion de contenu tel que défini dans la revendication indépendante 12 présentée en annexe. Des formes de réalisation préférées sont définies dans les revendications dépendantes. Le procédé et le système selon les différentes formes de réalisation de l'invention 30 permettent au dispositif de gestion de contenu de recevoir directement n'importe quel type de contenu, tout en supprimant la nécessité pour le dispositif client de recevoir séparément le 3021787 5 contenu non-standard. En outre, l'utilisation d'un identifiant commun partagé par la structure de données d'enregistrement standard et la structure de données d'enregistrement non-standard permet au conteneur de données non-standard de gérer l'accès aux éléments de données comme s'ils étaient stockés dans une structure de données d'enregistrement unique.Each travel agent must be directly connected to a set of non-GDS 50 content providers if the travel agent needs access to non-GDS content, while the travel management system 1 is directly connected only to In addition, each travel agent is directly connected to a specific set of travel providers 50 to obtain non-GDS travel content (taxi, show tickets, etc.). The travel content management engine 30 thus exposes n travel service platforms (a platform 2.1, 2.2, ... 2.i, 2.n for each tour operator Al to An), while dealing only with the content Standard travel (GDS content) from standard travel providers 40. Therefore, if a given travel agent Ai wishes for specific content from a non-standard travel provider 50 (for example, a museum ticket), this content must be implemented personally by the travel agent Ai. This personal implementation is particularly expensive and complex for tour operators. There is therefore a need for improved content management computer program systems, methods and products for content management, to dynamically and fluidly distribute any type of content from any content provider (at a time). standard and non-standard content) through a single platform. SUMMARY In order to solve these and other problems, there is provided a content management method as defined in the independent claim 1 presented in the appendix, and a content management system as defined in the independent claim 12 presented in the appendix. Preferred embodiments are defined in the dependent claims. The method and system according to the various embodiments of the invention enable the content management device to directly receive any type of content, while eliminating the need for the client device to receive the content separately. not standard. In addition, the use of a common identifier shared by the standard registration data structure and the non-standard registration data structure allows the non-standard data container to manage access to the data items as if they were stored in a single record data structure.

5 D'autres avantages de la présente invention deviendront clairs pour l'homme du métier à l'examen des dessins et de la description détaillée. Il est prévu que tout avantage additionnel soit incorporé ici. BREVE DESCRIPTION DES DESSINS 10 Les dessins joints, qui sont incorporés ici et qui constituent une partie de la présente demande, illustrent différentes formes de réalisation de l'invention et, en association avec la description générale de l'invention donnée ci-dessus et la description détaillée des formes de réalisation données ci-après, servent à expliquer les formes de réalisation de l'invention. La Figure 1 est une vue schématique d'un système de gestion de contenu classique 15 selon la technique antérieure ; La Figure 2 est une vue schématique d'un système de gestion de contenu selon certaines formes de réalisation incluant une pluralité de systèmes informatiques connectés via un réseau ; La Figure 3 est une vue schématique d'un environnement de fonctionnement 2 0 représentatif incluant un système de gestion de contenu ; La Figure 4 est une vue schématique d'un système informatique représentatif des Figures 2 et 3 ; La Figure 5 est un organigramme décrivant un processus qui peut être exécuté pour ajouter un nouveau contenu dans la structure de données d'enregistrement étendue ; 2 5 La Figure 6 est une vue schématique de la structure d'une application interne s'exécutant dans le système de gestion de contenu selon certaines formes de réalisation ; La Figure 7 est une vue schématique décrivant le fonctionnement d'une application interne basée sur des objets techniques du type Modèle d'Objet Métier ; La Figure 8 est une vue schématique du système de gestion de contenu décrivant des 3 0 interactions représentatives entre des applications internes ; 3021787 6 La Figure 9 est une vue schématique d'un conteneur de données non-standard représentatif défini par un ensemble de valeurs de clés ; La Figure 10 est une vue schématique de formats de sérialisation représentatifs ; La Figure 11 est une vue schématique du conteneur de données non-standard 5 représentatif de la Figure 9 avec des informations de type incluses dans le conteneur de données non-standard ; La Figure 12 est une vue schématique du fichier de description de structure représentatif associé au conteneur de données non-standard de la Figure 12 ; La Figure 13 est un organigramme d'un procédé qui peut être exécuté pour un accès 10 de contenu par une application ; La Figure 14 est une vue schématique d'une unité d'échange de contenu représentative ; La Figure 15 est un organigramme d'un processus qui peut être exécuté pour transmettre du contenu à un dispositif client ; 15 La Figure 16 est une vue schématique d'une conversion XSLT d'un conteneur de données standard de type C ; La Figure 17 est une vue schématique d'une conversion XSLT d'un conteneur de données non-standard du même type C que le conteneur de données standard de la Figure 16 ; La Figure 18 est une vue schématique d'une conversion XSLT d'un conteneur de 2 0 données standard du type D comprenant un ensemble d'attributs ; La Figure 19 est une vue schématique d'une conversion XSLT d'un conteneur de données non-standard de type E ayant certains attributs identiques aux attributs du conteneur de données standard de la Figure 18 ; La Figure 20 est un organigramme d'un processus qui peut être exécuté pour 2 5 réarranger des éléments de données ; et La Figure 21 est une vue schématique d'une structure de données d'enregistrement étendue, selon certaines formes de réalisation. DESCRIPTION DETAILLEE Les procédés, systèmes et produits de programmes informatiques selon des formes 3021787 7 de réalisation de l'invention peuvent permettre une gestion dynamique de tout type de contenu (standard et non-standard) reçu en provenance de fournisseurs de contenu et d'un stockage centralisé d'enregistrements associés à ce contenu, quel que soit le type de contenu. Le système de gestion de contenu 100 peut être basé sur une architecture client/serveur 5 permettant la réception de demandes de clients. En référence à la Figure 2, il est mis à disposition un système de gestion de contenu 100 par l'intermédiaire duquel un certain nombre de clients utilisateurs 7 peut accéder directement, via une plateforme unique, à tout type de contenu fourni par un ensemble de systèmes de fournisseurs de contenu 4, 5. Le contenu traité par le système de gestion de 10 contenu 100 peut être reçu de systèmes de fournisseurs de contenu standard 4 communiquant avec le système de gestion de contenu 100 en fonction d'un premier type de format d'échange de messages 14, tel qu'un format d'échange de messages standardisé prédéfini, ou de systèmes de fournisseurs de contenu non-standard 5 communiquant avec le système de gestion de contenu 100 selon un deuxième type de format d'échange de messages 15.Other advantages of the present invention will become clear to those skilled in the art upon review of the drawings and the detailed description. It is expected that any additional benefits will be incorporated here. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are incorporated herein and which constitute a part of the present application, illustrate various embodiments of the invention and, together with the general description of the invention given above and the Detailed description of the embodiments given below serve to explain the embodiments of the invention. Figure 1 is a schematic view of a conventional content management system according to the prior art; Figure 2 is a schematic view of a content management system according to some embodiments including a plurality of computer systems connected via a network; Figure 3 is a schematic view of a representative operating environment including a content management system; Figure 4 is a schematic view of a computer system representative of Figures 2 and 3; Fig. 5 is a flowchart describing a process that can be executed to add new content to the extended record data structure; Figure 6 is a schematic view of the structure of an internal application running in the content management system according to some embodiments; Figure 7 is a schematic view describing the operation of an internal application based on technical objects of the type Business Object Model; Figure 8 is a schematic view of the content management system describing representative interactions between internal applications; Figure 9 is a schematic view of a representative non-standard data container defined by a set of key values; Figure 10 is a schematic view of representative serialization formats; Figure 11 is a schematic view of the representative non-standard data container of Figure 9 with type information included in the non-standard data container; Fig. 12 is a schematic view of the representative structure description file associated with the non-standard data container of Fig. 12; Figure 13 is a flowchart of a method that can be executed for content access by an application; Figure 14 is a schematic view of a representative content exchange unit; Figure 15 is a flowchart of a process that can be executed to transmit content to a client device; Fig. 16 is a schematic view of an XSLT conversion of a standard C-type data container; Figure 17 is a schematic view of an XSLT conversion of a non-standard data container of the same type C as the standard data container of Figure 16; Figure 18 is a schematic view of an XSLT conversion of a standard D-type data container comprising a set of attributes; Figure 19 is a schematic view of an XSLT conversion of a non-standard type E data container having certain attributes identical to the attributes of the standard data container of Figure 18; Figure 20 is a flowchart of a process that can be executed to rearrange data items; and Figure 21 is a schematic view of an extended record data structure, according to some embodiments. DETAILED DESCRIPTION The methods, systems, and computer program products according to embodiments of the invention can enable dynamic management of any type of content (standard and non-standard) received from content providers and a user. centralized storage of records associated with this content, regardless of the type of content. The content management system 100 may be based on a client / server architecture 5 for receiving customer requests. Referring to Figure 2, there is provided a content management system 100 through which a number of user clients 7 can directly access, via a single platform, any type of content provided by a set of Content provider systems 4, 5. The content processed by the content management system 100 may be received from standard content provider systems 4 communicating with the content management system 100 according to a first type of format. message exchange 14, such as a predefined standardized message exchange format, or non-standard content provider systems 5 communicating with the content management system 100 according to a second type of message exchange format. messages 15.

15 Le système de gestion de contenu 100 peut être connecté à un réseau de communication 13, lequel réseau de communication 13 peut comprendre l'Internet, un réseau local (LAN), un réseau étendu (WAN), un réseau voix/données cellulaires, une ou plusieurs connexions par bus haute vitesse, et/ou d'autres réseaux de communication de ce type. Le système de gestion de contenu 100 peut être dédié à un ou plusieurs champs 2 0 spécifiques (par exemple, le champ voyage). Un ou plusieurs dispositifs clients 7 peuvent être connectés chacun au réseau de communication 13, de telle sorte qu'un utilisateur puisse initialiser une session de demande de service auprès du système de gestion de voyages 100 et recevoir du contenu en provenance du système de gestion de voyages 100 en réponse à la demande de service.The content management system 100 may be connected to a communication network 13, which communication network 13 may include the Internet, a local area network (LAN), a wide area network (WAN), a cellular voice / data network, one or more high speed bus connections, and / or other communication networks of this type. The content management system 100 may be dedicated to one or more specific fields (for example, the travel field). One or more client devices 7 may each be connected to the communication network 13, so that a user can initiate a service request session with the travel management system 100 and receive content from the management system of the service. 100 trips in response to the service request.

2 5 Des formes de réalisation de l'invention peuvent être implémentées par un système informatique comprenant un ou plusieurs ordinateurs ou serveurs en réseau. Le système informatique peut proposer des fonctions de traitement et de base de données pour une gestion de contenu. Chaque dispositif client 7 peut être un dispositif informatique personnel, un 3 0 ordinateur de type tablette, un terminal client mince, un smartphone et/ou d'autres dispositifs informatiques de ce type. Chaque dispositif client 7 peut héberger des navigateurs Web et/ou 3021787 8 un logiciel d'application personnalisé (par exemple, un système client) et peut inclure une interface utilisateur cliente. Chaque système de fournisseur de contenu 4 ou 5 peut être connecté au réseau de communication 13. Chaque système de fournisseur de contenu 4 ou 5 peut héberger un ou 5 plusieurs sites Web et/ou avoir un service d'hébergement hébergeant un ou plusieurs sites Web. Un utilisateur (à savoir, un voyageur) utilisant l'un des dispositifs clients 7 peut se connecter au système de gestion de contenu 100 à l'aide du dispositif client 7 pendant une session de demande de service associée à une application (accédée par exemple par 10 connexion à un service Web). Le système de gestion de contenu 100 comprend un moteur de gestion de contenu 3 pour traiter la demande de service émanant du dispositif client 7. Le moteur de gestion de contenu 3 peut échanger des messages avec les fournisseurs de voyages standard 4 en utilisant le format d'échange de messages TTY normalisé selon la norme IATA (premier format d'échange de messages 14).Embodiments of the invention may be implemented by a computer system comprising one or more computers or networked servers. The computer system can provide processing and database functions for content management. Each client device 7 may be a personal computing device, a tablet computer, a thin client terminal, a smartphone and / or such other computing devices. Each client device 7 may host web browsers and / or custom application software (for example, a client system) and may include a client user interface. Each content provider system 4 or 5 may be connected to the communication network 13. Each content provider system 4 or 5 may host one or more websites and / or have a hosting service hosting one or more websites. . A user (ie, a traveler) using one of the client devices 7 can connect to the content management system 100 using the client device 7 during a service request session associated with an application (accessed, for example by 10 connection to a web service). The content management system 100 includes a content management engine 3 for processing the service request from the client device 7. The content management engine 3 can exchange messages with the standard travel providers 4 using the data format. standardized IATA message exchange according to the IATA standard (first message exchange format 14).

15 Le moteur de gestion de contenu 3 peut en outre échanger des messages avec les fournisseurs non-standard 5 via une unité d'échange de données 11. L'unité d'échange de données 11 peut utiliser des messages définis selon un langage de description de données tel que le langage de balisage extensible (deuxième format d'échange de messages 15) pour communiquer avec les fournisseurs de contenu non-standard, par exemple en réponse à une 2 0 recherche, une réservation, une demande de prix, une délivrance, une demande d'annulation émanant d'un client utilisateur 7 associé à une entité d'agent voyagiste (par exemple, un opérateur agent voyagiste ou un système d'agent voyagiste). L'utilisateur peut soumettre la demande de service au système de gestion de contenu 100 en saisissant des informations au niveau du dispositif client 7 via une interface graphique 2 5 utilisateur générée sur le dispositif client 7 par une application s'exécutant sur le système de gestion de contenu 100 (par exemple, sous la forme d'un service Web). Des informations reçues de l'utilisateur peuvent être accumulées jusqu'à ce que l'utilisateur soumette la demande de service au système de gestion de contenu 100 (par exemple, en exécutant une action de soumission).The content management engine 3 can furthermore exchange messages with the non-standard providers 5 via a data exchange unit 11. The data exchange unit 11 can use messages defined according to a description language such as the extensible markup language (second message exchange format 15) for communicating with non-standard content providers, for example in response to a search, a reservation, a quote, a delivery a cancellation request from a user client 7 associated with a travel agent entity (for example, a travel agent operator or a travel agent system). The user can submit the service request to the content management system 100 by entering information at the client device 7 via a graphical user interface generated on the client device 7 by an application running on the management system. content 100 (for example, in the form of a web service). Information received from the user may be accumulated until the user submits the service request to the content management system 100 (for example, by performing a submission action).

3 0 En réponse à la demande utilisateur, le moteur de gestion de contenu 3 peut demander et obtenir du contenu auprès des systèmes de fournisseurs de contenu 4 et/ou 5 3021787 9 selon les formats d'échange de messages 14 et/ou 15 et stocker un enregistrement apparenté au contenu récupéré dans une structure de données d'enregistrement étendue 9. La structure de données d'enregistrement étendue 9 peut être stockée dans un contexte et sauvegardée dans une ou plusieurs bases de données 8 en réponse à une demande de sauvegarde, ou bien 5 périodiquement. D'une autre manière, dans certaines formes de réalisation, la structure de données d'enregistrement étendue 9 peut être stockée directement dans une ou plusieurs bases de données 8. La structure de données d'enregistrement étendue 9 comprend une structure de données d'enregistrement standard 90 pour stocker des enregistrements en association avec 10 des données standard et une structure de données d'enregistrement non-standard 91 pour stocker des enregistrements en association avec des données non-standard. Un enregistrement comprend un identifiant d'enregistrement (également appelé "repère de dossier") en association avec des éléments de données apparentés. L'identifiant d'enregistrement peut être d'un type quelconque ou d'un format quelconque, tel qu'un nombre.In response to the user request, the content management engine 3 may request and obtain content from the content provider systems 4 and / or the message exchange formats 14 and / or 15 and store a record related to the retrieved content in an extended record data structure 9. The extended record data structure 9 may be stored in context and stored in one or more databases 8 in response to a backup request or else periodically. Alternatively, in some embodiments, the extended record data structure 9 may be stored directly in one or more databases 8. The extended record data structure 9 includes a data structure of standard record 90 for storing records in association with standard data and a non-standard record data structure 91 for storing records in association with non-standard data. A record includes a record identifier (also referred to as a "folder mark") in association with related data items. The registration identifier may be of any type or format, such as a number.

15 La structure de données d'enregistrement standard 90 est statique car elle est uniquement adaptée pour stocker un enregistrement pour des types prédéfinis de contenu (appelé contenu "standard") ayant un ou plusieurs attributs parmi un ensemble prédéfini d'attributs. Tel qu'utilisé ici, le terme "standard" fait référence à un contenu standard ayant un format et/ou un type prédéfini correspondant au format et/ou aux types pris en charge par la 2 0 structure de données d'enregistrement standard 90. Un enregistrement peut être ajouté dans la structure de données d'enregistrement standard 90 pour un contenu reçu comprenant des éléments de données apparentés, si le contenu reçu comprend uniquement des éléments de données standard. L'enregistrement comprend un identifiant d'enregistrement en association avec les éléments de données.The standard record data structure 90 is static because it is only adapted to store a record for predefined types of content (called "standard" content) having one or more of a predefined set of attributes. As used herein, the term "standard" refers to standard content having a predefined format and / or type corresponding to the format and / or types supported by the standard record data structure 90. A record may be added in the standard record data structure 90 for a received content including related data items, if the received content includes only standard data items. The record includes a record identifier in association with the data items.

2 5 D'une autre manière, un enregistrement peut être ajouté à la structure de données d'enregistrement non-standard 91 pour un contenu reçu comprenant des éléments de données apparentés, si le contenu reçu comprend uniquement des éléments de données non-standard. L'enregistrement comprend un identifiant d'enregistrement en association avec au moins un conteneur de données non-standard comprenant les éléments de données non-standard.Alternatively, a record may be added to the non-standard record data structure 91 for a received content including related data items, if the received content includes only non-standard data items. The registration includes a registration identifier in association with at least one non-standard data container including non-standard data elements.

3 0 En outre, un enregistrement peut être ajouté à la structure de données d'enregistrement standard 90 et à la structure de données d'enregistrement non-standard 91 3021787 10 pour un contenu reçu comprenant des éléments de données apparentés, si le contenu reçu comprend des éléments de données non-standard et une structure de données d'enregistrement standard 90. Les deux enregistrements ajoutés pour le standard de contenu reçu dans la structure de données d'enregistrement 90 et dans la structure de données d'enregistrement 5 non-standard 91 peuvent se voir attribuer tous les deux le même identifiant d'enregistrement (appelé ci-après "identifiant d'enregistrement commun"). L'identifiant d'enregistrement commun est partagé entre un ou plusieurs éléments de données standard (contenu standard) dans la structure de données d'enregistrement standard 90 et/ou un ou plusieurs conteneurs de données non-standard (comprenant des éléments de données non-standard) dans la structure 10 de données d'enregistrement non-standard 91. En utilisant un même identifiant d'enregistrement dans les deux structures de données d'enregistrement 90 et 91 pour identifier des éléments de données standard et non-standard apparentés, le système de gestion de contenu 100 peut gérer les deux structures de données d'enregistrement de manière transparente comme si elles formaient une unique 15 structure de données d'enregistrement. Le moteur de gestion de contenu 3 peut enregistrer un certain nombre d'applications associées à différents services. Le moteur de gestion de contenu 3 peut exécuter une ou plusieurs applications en fonction de la demande de service reçue en provenance du dispositif client 7, qui peut déclencher une récupération de contenu auprès de systèmes de fournisseurs 20 de contenu et le stockage des enregistrements apparentés à ce contenu reçu dans la structure de données étendue 9. Le moteur de gestion de contenu peut être en outre configuré pour renvoyer la réponse à la demande de service, en fonction des enregistrements stockés dans la structure de données d'enregistrement étendue 9, quel que soit le type de contenu, aux clients utilisateurs utilisant le contenu enregistré dans la structure de données d'enregistrement 25 étendue 9. Pour retourner la réponse aux clients, le moteur de gestion de contenu 3 peut utiliser une unité d'échange de données 11 pour générer une représentation uniforme du contenu des dispositifs clients 7, quels que soient les types de contenu compris dans les enregistrements récupérés de la structure de données d'enregistrement étendue 9. Le moteur de gestion de contenu 3 joue donc le rôle d'un agrégateur d'applications pour fournir des services aux clients utilisateurs 7. Dans une forme de réalisation préférée de l'invention, le système de gestion de contenu 100 peut être un Système de Gestion de Voyages. Le système de gestion de voyages 3021787 11 100 peut être mis en oeuvre par un opérateur intermédiaire (par exemple, un Système de Distribution Mondial (GDS) dans le domaine des voyages) pour permettre une gestion centralisée du contenu du voyage, implémentée par exemple par un GDS (acronyme pour "Global Distribution System" (Système de Distribution Mondial)).In addition, a record may be added to the standard record data structure 90 and the non-standard record data structure for content received including related data items, if the content received includes non-standard data items and a standard record data structure 90. The two records added for the content standard received in the record data structure 90 and the non-standard record data structure. standard 91 can both be assigned the same registration identifier (hereinafter referred to as "common registration identifier"). The common registration identifier is shared between one or more standard data elements (standard content) in the standard registration data structure 90 and / or one or more non-standard data containers (including non-standard data elements). -standard) in the non-standard record data structure 91. Using the same record identifier in the two record data structures 90 and 91 to identify related standard and non-standard data items, the content management system 100 can handle the two record data structures transparently as if they formed a single record data structure. The content management engine 3 can register a number of applications associated with different services. The content management engine 3 may execute one or more applications depending on the service request received from the client device 7, which may trigger content recovery from content provider systems and the storage of the related records. this content received in the extended data structure 9. The content management engine may further be configured to return the response to the service request, based on the records stored in the extended record data structure 9, regardless of whether or the content type, to the user clients using the content stored in the extended registration data structure 9. To return the response to the clients, the content management engine 3 may use a data exchange unit 11 to generate a uniform representation of the content of the client devices 7, regardless of the types of content included in the The content management engine 3 thus acts as an aggregator of applications to provide services to the client users 7. In a preferred embodiment of invention, the content management system 100 may be a Travel Management System. The travel management system 3021787 11 100 can be implemented by an intermediate operator (for example, a global distribution system (GDS) in the travel field) to allow centralized management of the travel content, implemented for example by a GDS (acronym for "Global Distribution System").

5 La Figure 3 présente un environnement de fonctionnement représentatif 10 d'un tel système de gestion de contenu 100 mis en oeuvre dans un GDS 1. Dans cette forme de réalisation, le contenu standard fait référence au contenu GDS compatible avec les contraintes IATA (tel que des données aériennes, ferroviaires) fourni par des systèmes de fournisseurs de voyages standard 4, tandis que le contenu non-standard peut être un type 10 quelconque de contenu non GDS qui ne satisfait pas aux contraintes IATA (par exemple, la location de véhicules) fourni par des systèmes de fournisseurs de voyages non-standard 5 ou réservé en dehors du système GDS. La structure de données d'enregistrement standard 90 peut être une structure de données PNR standard (également appelée ci-après "PNR standard", PNR étant l'acronyme de "Passenger Name Record" (Enregistrement du Nom du 15 Passager)) qui est configurée pour stocker du contenu standard tandis que la structure de données d'enregistrement non-standard 91 (également appelée ci-après "PNR non-standard") est configurée pour enregistrer de façon dynamique tout type de contenu non-standard sans qu'il soit nécessaire que les types et attributs du contenu non-standard soient prédéfinis par un codage matériel des mécanismes de mappage et de compilation des données. Le PNR 20 standard 90 comporte généralement un ensemble complet de données pour un itinéraire de voyage, incluant des segments provenant de porteuses multiples, avec des structures de données prédéfinies (types, attributs, familles) et/ou d'autres services constituant le voyage, tels que les réservations d'un hôtel et d'un véhicule de location. La structure de données d'enregistrement étendue 9 forme un Enregistrement de 2 5 Voyage Etendu (également appelé ci-après "ETR" ("Extended Travel Record")), où chaque enregistrement de contenu peut être manipulé de manière fluide par le moteur de gestion de contenu 3 quel que soit le type de contenu associé à l'enregistrement. Les dispositifs clients 7 peuvent être associés à une pluralité de systèmes d'agences de voyages 700 demandant des services via des interfaces clientes respectives 2. Plus 3 0 particulièrement, le système de gestion de voyages 100 peut également accéder à différents types de dispositifs clients soumettant différents types de demandes selon une approche client/serveur, tels que des dispositifs de voyageurs 6 via des interfaces utilisateurs 3021787 12 respectives 2 ou même des systèmes de fournisseurs de voyages 4 ou 5 (par exemple, pour l'échange de contenus stockés dans l'Enregistrement de Voyage Etendu 9). Les systèmes de fournisseurs de voyages standard 4 peuvent inclure une pluralité de systèmes de compagnies ou systèmes de voyageurs. Les systèmes de fournisseurs de produits 5 de voyages non-standard 5 peuvent inclure des systèmes de location de véhicule, des systèmes de réservation de musée, etc. Lorsqu'ils sont implémentés, les systèmes de compagnies peuvent inclure un Système de Réservation par Ordinateur (CRS, "Computer Reservation System") et/ou un système de facturation pour la ligne aérienne concernée, qui permet le GDS 1. Les systèmes d'agences de voyages 700 peuvent être configurés pour 10 réserver et payer pour des billets de voyages et/ou des services additionnels offerts par des fournisseurs de voyages non-standard 5. Certains systèmes de fournisseurs de voyages standard 4 peuvent également interagir entre eux, soit directement soit via le GDS 1, pour permettre à une compagnie émettrice de vendre des billets pour des sièges fournis par une compagnie exploitante. La compagnie exploitante peut alors facturer la compagnie émettrice 15 pour les services fournis. Le GDS 1 peut être configuré pour faciliter la communication entre les fournisseurs de voyages 4 et 5 et les systèmes d'agences de voyages 700 en permettant aux agents voyagistes, aux compagnies émettrices, ou à d'autres vendeurs indirects de rechercher des segments disponibles et d'effectuer des réservations sur un ou plusieurs systèmes de 20 compagnies 4 et de rechercher et réserver des services additionnels (par exemple, location de véhicule, billets de musées, etc.) via le GDS 1. Chaque système d'agence de voyages 70 peut inclure un serveur Web qui fournit un site Web accessible au public. Ce site Web peut être configuré pour offrir un accès à des fonctionnalités de planification de voyage, telles que la possibilité de rechercher des produits 25 de voyage concordant avec une demande concernant un voyage. A cette fin, le système d'agence de voyages 70 peut fournir au voyageur un accès à des données provenant d'une ou plusieurs bases de données hébergées par le GDS 1, les fournisseurs de voyages 4 et 5, et le système d'agence de voyages 70. Dans une autre forme de réalisation de l'invention, le système d'agence de voyages 70 peut être un système propriétaire qui limite l'accès aux 30 fournisseurs de services de voyages ou aux agents voyagistes, auquel cas un accès peut être fourni via un site Web privé ou une autre application. Les voyageurs ou les agents voyagistes peuvent utiliser le système d'agence de 3021787 13 voyages 70 pour générer et/ou rechercher des propositions de voyage qui satisfont à une demande concernant un voyage reçue du voyageur à l'aide d'une application spécifique relative aux voyages (par exemple, une application de planification de voyage). Des dispositifs de voyageurs 6 peuvent être connectés directement au système de 5 gestion des voyages 100 via un réseau publique ou privé 13 (par exemple, l'Internet). Le dispositif de voyageur 6 peut être un quelconque système informatique approprié configuré pour communiquer sur le réseau 13 avec le système de gestion de voyages 100. Par exemple, le dispositif de voyageur 6 peut comprendre un ordinateur de bureau, un ordinateur portable ou une tablette, un téléphone intelligent, ou tout autre dispositif informatique qui permet à un 10 voyageur de rechercher et de réserver des services de voyages sur le réseau 20. Dans une forme de réalisation de l'invention, le dispositif de voyageur 6 peut inclure une application de navigateur Web qui communique avec une application de services Web hébergée par le moteur de gestion de contenu 3 du système de gestion de voyages 100 pour soumettre des demandes de voyages en fonction de l'application de services Web.Figure 3 shows an operating environment representative of such a content management system 100 implemented in a GDS 1. In this embodiment, the standard content refers to the GDS content compatible with the IATA constraints (such as as aerial, railway data) provided by standard travel provider systems 4, while non-standard content may be any type of non-GDS content that does not meet IATA constraints (eg, car rental). ) provided by non-standard 5 or non-GDS travel provider systems. The standard registration data structure 90 may be a standard PNR data structure (hereinafter also referred to as "standard PNR", PNR being the acronym for "Passenger Name Record") which is configured to store standard content while the non-standard registration data structure 91 (hereinafter also referred to as "non-standard PNR") is configured to dynamically record any type of non-standard content without It is necessary that the types and attributes of non-standard content be predefined by a hardware encoding of the mechanisms for mapping and compiling data. The standard PNR 90 generally includes a complete set of data for a travel route, including segments from multiple carriers, with predefined data structures (types, attributes, families) and / or other services constituting the trip, such as hotel and rental vehicle reservations. The extended registration data structure 9 forms an Extended Travel Record (hereinafter also referred to as "Extended Travel Record"), where each content record can be handled in a fluid manner by the search engine. content management 3 regardless of the type of content associated with the record. The client devices 7 may be associated with a plurality of travel agent systems 700 requesting services via respective client interfaces 2. More particularly, the travel management system 100 may also access different types of client devices submitting different types of requests according to a client / server approach, such as traveler devices 6 via respective user interfaces 2 or even travel provider systems 4 or 5 (for example, for the exchange of content stored in the server). 'Extended Travel Registration 9). Standard travel provider systems 4 may include a plurality of airline or traveler systems. Non-standard travel product provider systems 5 may include vehicle rental systems, museum reservation systems, and the like. When implemented, company systems may include a Computer Reservation System (CRS) and / or billing system for the relevant airline, which allows GDS 1. Travel agencies 700 may be configured to book and pay for travel tickets and / or additional services provided by non-standard travel providers. Some standard travel provider systems may also interact with each other, either directly or via GDS 1, to allow an issuing company to sell tickets for seats provided by an operating company. The operating company may then charge the issuing company 15 for the services provided. GDS 1 can be configured to facilitate communication between travel providers 4 and 5 and travel agency systems 700 by allowing travel agents, carriers, or other indirect sellers to search for available segments and make bookings on one or more systems of 20 companies 4 and search and book additional services (eg vehicle rental, museum tickets, etc.) via the GDS 1. Each travel agency system 70 may include a web server that provides a publicly accessible website. This website may be configured to provide access to travel planning features, such as the ability to search for travel products matching a travel request. For this purpose, the travel agency system 70 can provide the traveler with access to data from one or more databases hosted by GDS 1, travel providers 4 and 5, and the agency system. In another embodiment of the invention, the travel agency system 70 may be a proprietary system that limits access to travel service providers or tour agents, in which case be provided via a private website or other application. Travelers or travel agents may use the travel agency system 70 to generate and / or search for travel proposals that satisfy a travel request received from the traveler using a specific travel application. travel (for example, a travel planning application). Passenger devices 6 can be connected directly to the travel management system 100 via a public or private network 13 (for example, the Internet). The traveler device 6 may be any appropriate computer system configured to communicate on the network 13 with the travel management system 100. For example, the traveler device 6 may comprise a desktop computer, a laptop computer or a tablet, a smartphone, or any other computing device that allows a traveler to search and book travel services on the network 20. In one embodiment of the invention, the traveler device 6 may include a browser application. A web that communicates with a web services application hosted by the content management engine 3 of the travel management system 100 for submitting travel requests based on the web services application.

15 D'une autre manière, le dispositif de voyageur 6 peut inclure une application de navigateur Web qui communique avec une application de services Web hébergée par le système d'agence de voyages 70. L'application de services Web peut, quant à elle, communiquer avec le système de gestion de voyages 100 pour soumettre les demandes de voyage en fonction de l'application de services de voyage.Alternatively, the traveler device 6 may include a web browser application that communicates with a web services application hosted by the travel agency system 70. The web services application may, in turn, communicate with the travel management system 100 to submit the travel requests based on the travel service application.

2 0 Les demandes de voyages peuvent être soumises, par exemple, pour obtenir des données apparentées à des segments de voyages disponibles, pour générer des propositions de voyage qui satisfont à la demande de voyage et/ou pour réserver des services auxiliaires (par exemple, location de véhicule, réservation de jet-ski, réservation de billet de musée, etc.) correspondant au contenu non-standard fourni par des fournisseurs non-standard 5, en 2 5 liaison avec un voyage fourni via le GDS 1 ou via un autre GDS. En référence maintenant à la Figure 4, le GDS 1, le système de gestion de voyages 100, les systèmes de fournisseurs de voyages 4 et 5, les systèmes d'agences de voyages 70, les dispositifs de voyageurs 6 de l'environnement d'exploitation 10 peuvent être implémentés sur un ou plusieurs dispositifs ou systèmes informatiques, appelés 30 collectivement ordinateur, tel que l'ordinateur 30. L'ordinateur 30 peut comporter un processeur 32, une mémoire 34, un dispositif de mémoire de stockage de masse 36, une interface d'entrée/sortie (I/O) 38 et une Interface Homme-Machine (IHM) 40. L'ordinateur 3021787 14 30 peut également être couplé de manière fonctionnelle à une ou plusieurs ressources externes 42 via le réseau 22 et/ou une interface I/O 38. Des ressources externes peuvent inclure, mais sans y être limitées, des serveurs, des bases de données, des dispositifs de stockage de masse, des dispositifs périphériques, des services de réseau à base de nuage, ou 5 toute autre ressource informatique appropriée qui peut être utilisée par l'ordinateur 30. Le processeur 32 peut inclure un ou plusieurs dispositifs sélectionnés parmi les microprocesseurs, les microcontrôleurs, les processeurs de signaux numériques, les micro-ordinateurs, les unités centrales de traitement, les réseaux prédiffusés programmables par l'utilisateur, les dispositifs logiques programmables, les machines d'état, les circuits 10 logiques, les circuits analogiques, les circuits numériques, ou d'autres dispositifs qui manipulent des signaux (analogiques ou numériques) en fonction d'instructions d'opérations qui sont stockées dans la mémoire 34. La mémoire 34 peut inclure un seul dispositif mémoire ou une pluralité de dispositifs mémoire incluant, mais sans y être limités, une mémoire morte (ROM), une mémoire vive (RAM), une mémoire volatile, une mémoire non 15 volatile, une mémoire à accès aléatoire statique (SRAM), une mémoire à accès aléatoire dynamique (DRAM), une mémoire flash, une mémoire cache, ou tout autre dispositif capable de stocker des informations. Le dispositif de mémoire de stockage de masse 36 peut inclure des dispositifs de stockage de données tels qu'un disque dur, un disque optique, un lecteur de cassette, un dispositif à semi-conducteurs non volatile, ou tout autre dispositif 20 capable de stocker des informations. Une base de données 44 peut résider sur le dispositif de mémoire de stockage de masse 36, et peut être utilisée pour collecter et organiser des données utilisées par les différents systèmes et modules décrits ici. Le processeur 32 peut fonctionner sous la commande d'un système d'exploitation 46 qui réside dans la mémoire 34. Le système d'exploitation 46 peut gérer des ressources 25 informatiques de telle sorte qu'un code de programme informatique intégré sous la forme d'une ou plusieurs applications logicielles, telles qu'une application 48 résidant dans la mémoire 34, peuvent avoir des instructions exécutées par le processeur 32. Dans une autre forme de réalisation, le processeur 32 peut exécuter l'application 48 directement, auquel cas le système de fonctionnement 46 peut être omis. Une ou plusieurs structures de données 50 30 peuvent également résider dans la mémoire 34, et peuvent être utilisées par le processeur 32, le système d'exploitation 46 et/ou l'application 48 pour le stockage ou la manipulation de données.Travel requests can be submitted, for example, to obtain data related to available travel segments, to generate travel proposals that satisfy the travel request and / or to reserve ancillary services (for example, vehicle rental, jet ski reservation, museum ticket reservation, etc.) corresponding to the non-standard content provided by non-standard providers 5, in connection with a trip provided via GDS 1 or via another GDS. Referring now to Figure 4, GDS 1, Travel Management System 100, Travel Provider Systems 4 and 5, Travel Agent Systems 70, Traveler Devices 6 of the Travel Environment, exploitation 10 may be implemented on one or more computer devices or systems, collectively referred to as a computer, such as the computer 30. The computer 30 may include a processor 32, a memory 34, a mass storage device 36, an input / output (I / O) interface 38 and a Human Machine Interface (HMI) 40. The computer 3021787 14 30 can also be operatively coupled to one or more external resources 42 via the network 22 and / or an I / O interface 38. External resources may include, but are not limited to, servers, databases, mass storage devices, peripheral devices, cloud-based network services, or all Another suitable computer resource that can be used by the computer 30. The processor 32 may include one or more devices selected from microprocessors, microcontrollers, digital signal processors, microcomputers, central processing units, networks user programmable logic controllers, programmable logic devices, state machines, logic circuits, analog circuits, digital circuits, or other devices that manipulate signals (analog or digital) according to instructions of operations that are stored in the memory 34. The memory 34 may include a single memory device or a plurality of memory devices including, but not limited to, a read only memory (ROM), a random access memory (RAM), a memory volatile, a nonvolatile memory, a static random access memory (SRAM), a random access memory dyn a memory, a cache memory, or any other device capable of storing information. The mass storage memory device 36 may include data storage devices such as a hard disk, an optical disk, a cassette player, a nonvolatile semiconductor device, or any other device capable of storing data. informations. A database 44 may reside on the mass storage memory device 36, and may be used to collect and organize data used by the different systems and modules described herein. The processor 32 may operate under the control of an operating system 46 that resides in the memory 34. The operating system 46 may manage computer resources such that an integrated computer program code in the form of one or more software applications, such as an application 48 residing in the memory 34, may have instructions executed by the processor 32. In another embodiment, the processor 32 may execute the application 48 directly, in which case the operating system 46 may be omitted. One or more data structures 50 may also reside in the memory 34, and may be used by the processor 32, the operating system 46 and / or the application 48 for storing or manipulating data.

3021787 15 L'interface I/O 38 peut fournir une interface machine qui couple fonctionnellement le processeur 32 à d'autres dispositifs et systèmes, tels que le réseau 22 et/ou une ressource externe 42. L'application 48 peut ainsi travailler en coopération avec le réseau 22 et/ou une ressource externe 42 en communiquant via l'interface I/O 38 pour fournir les différentes 5 particularités, fonctions, applications, processus et/ou modules comprenant des formes de réalisation de l'invention. L'application 48 peut également avoir un code programme qui est exécuté par une ou plusieurs ressources externes 42, ou autrement s'appuyer sur des fonctions et/ou signaux fournis par d'autres composants système ou réseau externes à l'ordinateur 30. En effet, étant donné la presque infinité de configurations matérielles et 10 logicielles possibles, l'homme du métier comprendra que les formes de réalisation de l'invention peuvent inclure des applications qui sont situées à l'extérieur de l'ordinateur 30, distribuées sur plusieurs ordinateurs ou d'autres ressources externes 42, ou fournies par des ressources informatiques (matérielles ou logicielles), sous la forme d'un service sur le réseau 22, tel qu'un service informatique en nuage.The I / O interface 38 may provide a machine interface that functionally couples the processor 32 to other devices and systems, such as the network 22 and / or an external resource 42. The application 48 can thus work cooperatively with the network 22 and / or an external resource 42 communicating via the I / O interface 38 to provide the various features, functions, applications, processes and / or modules comprising embodiments of the invention. The application 48 may also have program code that is executed by one or more external resources 42, or otherwise rely on functions and / or signals provided by other system or network components external to the computer 30. Indeed, given the almost infinite number of possible hardware and software configurations, those skilled in the art will understand that the embodiments of the invention may include applications that are located outside the computer 30, distributed over several computers or other external resources 42, or provided by computer resources (hardware or software), in the form of a service on the network 22, such as a cloud computing service.

15 L'interface IHM 40 peut être couplée de manière fonctionnelle au processeur 32 de l'ordinateur 30 d'une manière connue, pour permettre à un utilisateur de l'ordinateur 30 d'interagir directement avec l'ordinateur 30. L'interface IHM 40 peut inclure des écrans vidéo et/ou alphanumériques, un écran tactile, un haut-parleur, et tout autre indicateur audio et visuel approprié capable de fournir des informations à l'utilisateur. L'interface IHM 40 2 0 peut également inclure des dispositifs de saisie et des commandes tels qu'un clavier alphanumérique, un dispositif de pointage, des pavés numériques, des boutons poussoirs, des boutons de commande, des microphones, etc., capables de recevoir des commandes et données d'entrée en provenance de l'utilisateur et de transmettre les entrées introduites dans le processeur 32.The HMI interface 40 may be operably coupled to the processor 32 of the computer 30 in a known manner to allow a user of the computer 30 to interact directly with the computer 30. The HMI interface 40 may include video and / or alphanumeric screens, a touch screen, a speaker, and any other appropriate audio and visual indicators capable of providing information to the user. The HMI 4020 may also include input devices and controls such as alphanumeric keyboard, pointing device, keypads, push buttons, control buttons, microphones, etc. capable of receive commands and input data from the user and transmit the inputs entered into the processor 32.

2 5 La description qui suit sera faite en référence au système de gestion de contenu 100 de la Figure 3, à titre d'exemple uniquement. Différents agents de voyages connectés au système de gestion de contenu 100 via des systèmes d'agences de voyages 70 respectifs peuvent donc accéder directement, via une plateforme unique, à tout type de contenu fourni par un ensemble de systèmes de 30 fournisseurs de voyages (4, 5), quel que soit le type de contenu (tel que du contenu de ligne aérienne standard, des taxis, des billets de spectacle, etc.). Le Système de Gestion de Voyages 100 offre donc la possibilité de stocker non seulement du contenu standard 3021787 16 compatible avec la structure de données PNR standard 90, mais également tout nouveau type de contenu (à savoir, courses de taxi, billet de théâtre, concert, cadeaux, etc.) tout en rendant inutile que les agences de voyages réservent un tel contenu non-standard en dehors du système GDS par téléphone, ou par Internet, etc.The following description will be made with reference to the content management system 100 of Figure 3, by way of example only. Different travel agents connected to the content management system 100 via respective travel agency systems 70 can therefore directly access, via a single platform, any type of content provided by a set of travel provider systems (4). , 5), regardless of the type of content (such as standard airline content, taxis, show tickets, etc.). The Travel Management System 100 therefore offers the possibility of storing not only standard content 3021787 compatible with the standard PNR data structure 90, but also any new type of content (ie, taxi rides, theater ticket, concert , gifts, etc.) while making it unnecessary for travel agencies to reserve such non-standard content outside the GDS system over the phone, or over the Internet, etc.

5 Grâce à l'ajout d'un PNR non-standard 91 au PNR standard 90, le système de gestion de voyages peut fournir de manière dynamique et fluide un nombre illimité de services de voyages aux systèmes d'agences de voyages 70. L'Enregistrement de Voyage Etendu à deux couches 9 forme donc une représentation de contenu structurée fournie par un quelconque système de fournisseur de 10 voyages 4 ou 5 (il peut correspondre par exemple à un produit réservé en dehors du GDS), tandis que les enregistrements enregistrés dans l'ETR 9 peuvent être accédés et gérés comme si le PNR standard 90 et le PNR non-standard 91 formaient une unique structure de données d'enregistrement. Un élément de données standard (par exemple, un produit) dans le PNR standard 15 90 est associé à un ensemble d'attributs qui peuvent être qualifiés comme étant optionnels ou obligatoires en fonction de la topologie et du format mis en oeuvre dans le GDS 1 pour être compatible avec la norme IATA. Les données enregistrées dans l'Enregistrement de Voyage Etendu 9 peuvent être classifiées en une pluralité de familles, chaque famille comprenant plusieurs types 2 0 d'éléments de données comme, par exemple, les 5 familles représentées dans le Tableau 1. L'ETR 9 est adapté pour prendre en charge un nombre quelconque de nouveaux types et nouvelles familles d'éléments de données. Tableau 1 Déplacements Nuitées Repas Activités Services Air Hôtel Restaurant Activités sportives Assurance Ferry Appartement Bar & Club Boutiques Visa Croisière Camping Autre Spectacles & Sp Cadeaux Evénements Rail B&B Excursions Documentation 3021787 17 Autocar Autre Visites Equipement de loisirs Transports urbains Autre Services locaux Transfert Réunion Taxi Vaccin Voiture Autre Vélo Parking Le moteur de gestion de contenu 3 est configuré pour gérer du contenu hétérogène de l'ETR 9 qui peut comprendre : - l'ajout de nouveaux éléments de données provenant de tout système de fournisseur 5 de voyages 4 ou 5 dans l'enregistrement de voyage étendu 9, quel que soit le type de contenu, par exemple en réponse à des demandes émanant de systèmes d'agences de voyages 70; - la modification d'éléments de données dans l'enregistrement de voyage étendu 9 (par exemple par changement de la date de début d'un produit "Musée" correspondant à une pré-réservation de deux entrées pour un Musée); 10 - l'effacement d'éléments de données de l'enregistrement de voyage étendu 9 (par exemple par suppression du Produit "Musée" de l'enregistrement de voyage étendu si un utilisateur a décidé de retirer ce produit de son voyage à New-York). - la récupération d'éléments de données auprès de l'enregistrement de voyage étendu 9 (par exemple par récupération de tous les attributs structurés du produit "Musée" dans un 15 enregistrement de voyage spécifique). L'Enregistrement de Voyage Etendu (9) peut donc stocker du contenu non-standard et du contenu standard comme s'ils faisaient partie d'une unique structure de données d'enregistrement (PNR). Le moteur de gestion de contenu 3 gère le contenu hétérogène enregistré dans l'enregistrement de voyage étendu 9, d'une manière transparente pour les 2 0 clients utilisateurs. L'enregistrement de voyage étendu 9 est en outre flexible et adapté à tout type de nouveau contenu (taxi, métro, bus, billetterie de musée, etc.), quels que soit les 3021787 18 attributs associés au nouveau contenu. Le PNR standard 90 est organisé selon la norme IATA. Lorsqu'un ensemble donné d'éléments de données est transmis par un système de fournisseur de voyages standard 4 au moteur de gestion de contenu 3 via un message selon le premier format d'échange de 5 messages 14 dans un flux d'applications associé à un service donné (par exemple, un flux de gestion de réservation), les étapes suivantes peuvent être exécutées par le moteur de gestion de contenu 3 : i. les données peuvent être extraites par le moteur de gestion de contenu 3 à partir du message entrant transmis par le système de fournisseur de voyages standard 4, et 10 ii. un enregistrement peut être ajouté dans le PNR standard 90, l'enregistrement comprenant un identifiant d'enregistrement en association avec les éléments de données correspondant aux données extraites par le moteur de gestion de contenu 3 (données de contenu). Les données ainsi obtenues peuvent être utilisées pour construire un autre message à 15 envoyer à une application suivante dans le flux d'applications. Lorsque le flux d'applications met en jeu un ensemble d'applications internes chaînées, l'étape i. peut être effectuée par une application interne donnée dans le flux d'applications, tandis que l'étape ii. peut être déclenchée par une autre application du flux. Les données ajoutées dans le PNR standard 90 peuvent avoir uniquement un nombre 2 0 limité d'attributs prédéfinis et doivent respecter un ou plusieurs types et formats prédéfinis (attributs normalisés). Le PNR non-standard 91 n'est pas compatible avec les règles et les contraintes historiques de la norme (définition de contenu IATA, messages TTY, messages TATA). Cependant, le contenu non-standard peut faire partie de l'Enregistrement de Voyage Etendu 9 2 5 et être accédé de manière fluide et transparente par les applications exécutées par le moteur de gestion de contenu 3. L'Enregistrement de Voyage Etendu 9 peut donc stocker tout type de contenu standard (par exemple, du contenu GDS tel que vol, hôtel, véhicule, croisière, assurance, ferry) et de contenu non-standard (tels que bus/taxi/restaurant/etc.) d'une manière structurée 3 0 et dans un format universel.With the addition of a non-standard PNR 91 to the standard PNR 90, the travel management system can dynamically and seamlessly provide an unlimited number of travel services to the travel agency systems 70. Thus, a two-layer expanded travel record 9 thus forms a structured content representation provided by any travel provider system 4 or 5 (it may correspond for example to a product booked outside of the GDS), while the records recorded in ETR 9 can be accessed and managed as if the standard PNR 90 and the non-standard PNR 91 formed a single registration data structure. A standard data item (e.g., a product) in the standard PNR 90 is associated with a set of attributes that can be qualified as optional or mandatory depending on the topology and format implemented in the GDS 1 to be compatible with the IATA standard. The data recorded in the Extended Travel Record 9 can be classified into a plurality of families, each family including several types of data items such as, for example, the families shown in Table 1. The ETR 9 is adapted to support any number of new types and new families of data items. Table 1 Travel Overnight Meals Activities Services Air Hotel Restaurant Sports Activities Insurance Ferry Apartment Bar & Club Shops Visa Cruise Camping Other Shows & Sp Gifts Events Rail B & B Excursions Documentation 3021787 17 Coach Other Visits Recreational Equipment City Transportation Other Local Services Transfer Reunion Taxi Vaccin Car Other Bicycle Parking The content management engine 3 is configured to handle heterogeneous content of the ETR 9 which may include: adding new data items from any travel provider system 4 or 5 into the extended travel record 9, regardless of the type of content, for example in response to requests from travel agency systems 70; - the modification of data elements in the extended voyage record 9 (for example by changing the start date of a "Museum" product corresponding to a pre-reservation of two entries for a Museum); Erasing data elements from the extended trip registration 9 (for example by deleting the "Museum" product from the extended trip registration if a user has decided to remove this product from his trip to New Zealand. York). the retrieval of data items from the extended travel record 9 (for example by retrieving all the structured attributes of the "Museum" product in a specific travel record). The Extended Travel Record (9) can therefore store non-standard content and standard content as if they were part of a single registration data structure (PNR). The content management engine 3 manages the heterogeneous content recorded in the extended travel record 9, in a manner transparent to the user clients. The extended trip registration 9 is also flexible and adapted to any type of new content (taxi, metro, bus, museum ticketing, etc.), regardless of the attributes associated with the new content. The standard PNR 90 is organized according to the IATA standard. When a given set of data items is transmitted by a standard travel provider system 4 to the content management engine 3 via a message according to the first message exchange format 14 in an application flow associated with given service (for example, a reservation management flow), the following steps can be performed by the content management engine 3: i. the data may be retrieved by the content management engine 3 from the incoming message transmitted by the standard travel provider system 4, and ii. a record may be added in the standard PNR 90, the record including a record identifier in association with the data items corresponding to the data retrieved by the content management engine 3 (content data). The resulting data can be used to construct another message to be sent to a next application in the application stream. When the application flow involves a set of linked internal applications, step i. can be performed by a given internal application in the application flow, while step ii. can be triggered by another application of the stream. The data added in the standard PNR 90 may have only a limited number of predefined attributes and must respect one or more predefined types and formats (standard attributes). The non-standard PNR 91 is not compatible with the standard rules and constraints of the standard (IATA content definition, TTY messages, TATA messages). However, the non-standard content can be part of the Extended Travel Record 9 2 5 and be accessed in a fluid and transparent manner by the applications executed by the content management engine 3. The Extended Travel Record 9 can therefore store any type of standard content (eg, GDS content such as flight, hotel, vehicle, cruise, insurance, ferry) and non-standard content (such as bus / taxi / restaurant / etc.) in a structured manner 3 0 and in a universal format.

3021787 19 Pour la gestion dynamique de tout type de contenu, le moteur de gestion de contenu 3 est configuré pour créer un conteneur de données non-standard en réponse à du contenu reçu comprenant des éléments de données non-standard transmis au système de gestion de voyages 100 par des systèmes de fournisseurs de contenu non-standard 5. Le conteneur de 5 données non-standard peut s'adapter de manière dynamique au format de l'application interne du système de gestion de contenu qui reçoit l'élément de données en raison des propriétés d'auto-sérialisation du conteneur de données non-standard. Lorsque l'application interne réceptrice est une application d'un flux d'applications mettant en jeu un ensemble d'applications chaînées (applications internes), le conteneur de données non-standard peut 10 s'adapter de manière dynamique au format de chaque application interne à laquelle il est transmis à l'aide des propriétés d'auto-sérialisation du conteneur de données non-standard. Plus spécifiquement, lorsque le Système de Gestion de Voyages 100 se connecte à un nouveau fournisseur de voyages 5 fournissant un type de contenu non-standard, les éléments de données non-standard reçus du système de fournisseur de contenu non-standard 5 15 peuvent être stockés dans ce conteneur de données non-standard assigné au type de contenu non-standard. Un enregistrement peut ensuite être ajouté dans la structure de données d'enregistrement non-standard 91 par une application interne (par exemple dans un flux d'applications). L'enregistrement peut comprendre un identifiant d'enregistrement et le conteneur de données non-standard ayant le type de contenu non-standard. Le conteneur de 20 données non-standard peut comprendre une liste d'attributs, chaque attribut étant représenté par une clé et une valeur. Chaque attribut peut lui-même comprendre une liste de sous-attributs, qui sont chacun représentés par une clé et une valeur (de manière similaire pour les sous-attributs, etc.). Chaque clé d'attribut est associée à un nom et un type. Le conteneur de données non-standard est configuré pour s'auto-implémenter quelle(s) que soi(en)t la 25 structure qu'il représente ou les données qu'ils contient : pour un accès en lecture seule ou un accès en lecture/écriture (par exemple, obtenir ou paramétrer) d'une quelconque valeur de tout attribut qui fait partie du conteneur de données non-standard, le conteneur de données non-standard permet un tel accès via un procédé ne dépendant ni du nom de la clé ni du type de la clé, sans qu'il soit nécessaire de mettre en oeuvre des procédés d'obtention/paramétrage 30 par codage matériel. Le conteneur de données non-standard peut donc être utilisé pour créer un nouvel enregistrement dans le PNR non-standard 91, quel que soit le type de contenu. Cet 3021787 20 enregistrement peut être accédé de manière transparente par le moteur de gestion de contenu 3, pour tout type d'actions de gestion de contenu, par exemple pour exécuter des applications de voyages, générer un affichage de résultat de demande de service sur les dispositifs clients 7, ou transmettre du contenu à des dispositifs externes (par exemple, des systèmes de 5 fournisseurs de voyages ou des dispositifs de voyages). En référence maintenant à la Figure 5, celle-ci présente un organigramme qui décrit un procédé pour la création d'un nouvel enregistrement dans l'Enregistrement de Voyage Etendu 9 en réponse à un contenu reçu en provenance d'un ou plusieurs systèmes de fournisseurs de voyages.For dynamic management of any type of content, the content management engine 3 is configured to create a non-standard data container in response to received content including non-standard data elements transmitted to the management system. The non-standard data container 5 can dynamically adapt to the format of the internal application of the content management system that receives the data item. because of the self-serialization properties of the non-standard data container. When the receiving internal application is an application stream application involving a set of chained applications (internal applications), the non-standard data container can dynamically adapt to the format of each application. internally to which it is transmitted using the auto-serialization properties of the non-standard data container. More specifically, when the Travel Management System 100 connects to a new travel provider providing a non-standard content type, the non-standard data items received from the non-standard content provider system 5 may be stored in this non-standard data container assigned to the non-standard content type. A record can then be added to the non-standard registration data structure 91 by an internal application (for example, in an application stream). The record may include a record identifier and the non-standard data container having the non-standard content type. The non-standard data container may comprise a list of attributes, each attribute being represented by a key and a value. Each attribute itself may include a list of sub-attributes, each of which is represented by a key and a value (similarly for sub-attributes, etc.). Each attribute key is associated with a name and type. The non-standard data container is configured to self-implement which structure (s) it represents or the data they contain: for read-only access or access read / write (for example, get or set) any value of any attribute that is part of the non-standard data container, the non-standard data container allows such access via a method that does not depend on the name of the non-standard data container. the key and the type of the key, without it being necessary to implement methods of obtaining / parameterizing by hardware coding. The non-standard data container can therefore be used to create a new record in the non-standard PNR 91, regardless of the content type. This recording can be accessed transparently by the content management engine 3, for any type of content management actions, for example to execute travel applications, generate a service request result display on client devices 7, or transmit content to external devices (e.g., travel provider systems or travel devices). Referring now to Figure 5, there is shown a flowchart that describes a method for creating a new record in Extended Travel Record 9 in response to content received from one or more vendor systems. of travel.

10 Au bloc 501, le moteur de gestion de contenu 3 peut recevoir du contenu en provenance d'un ou plusieurs fournisseurs de voyages 4, 5 par l'intermédiaire de formats d'échange de messages 14 et/ou 15, par exemple en réponse à une demande de service émanant d'un dispositif client 7, tel qu'un système d'agences de voyages. Le contenu peut comprendre une pluralité d'éléments de données apparentés, par 15 exemple des éléments de données relatifs à un même voyage, tels qu'un produit de type Vol (élément de données standard) et un produit de type Taxi (contenu non-standard) reçus de manière séquentielle. Les éléments de données associés à un contenu commun peuvent être reçus de manière séquentielle ou en parallèle. Les éléments de données peuvent comprendre des informations permettant d'identifier qu'ils font partie d'un même contenu commun.In block 501, the content management engine 3 can receive content from one or more travel providers 4, 5 via message exchange formats 14 and / or 15, for example in response. a service request from a client device 7, such as a travel agency system. The content may include a plurality of related data items, e.g., data items relating to the same trip, such as a product of type Vol (standard data item) and a product of type Taxi (content not standard) received sequentially. Data elements associated with common content can be received sequentially or in parallel. Data elements may include information to identify that they are part of the same common content.

2 0 Les éléments de données peuvent comprendre des éléments de données standard (par exemple, un produit de type Vol) et/ou des éléments de données non-standard (par exemple, un produit de type Taxi). Les éléments de données standard (par exemple, du contenu GDS) peuvent être reçus selon le premier format d'échange de messages 14 tel que le format TTY.The data elements may comprise standard data elements (for example, a flight product) and / or non-standard data elements (for example, a Taxi product). Standard data elements (e.g., GDS content) may be received according to the first message exchange format 14 such as the TTY format.

2 5 Les éléments de données non-standard peuvent être reçus par l'unité d'échange de données 11 sous la forme d'un message défini selon un langage de description de balises tel que le langage XML selon le deuxième format d'échange de messages 15. La description qui suit sera faite en référence au message XML (également appelé document ou fichier XML) pour un échange de données entre le système de gestion de voyages 100 et des systèmes 3 0 externes. Le message d'échange de données peut comprendre un fichier de description de structure pour décrire la structure du message et les types et formats des données contenues 3021787 21 dans le message. Par exemple, pour des messages d'échange de données du type XML, XML XSD, des schémas tels que des fichiers de description de structure peuvent être utilisés pour fournir une représentation de la structure des attributs du message XML. Au bloc 502, pour chaque élément de données reçu pour le contenu commun, le 5 moteur de gestion de contenu 3 peut extraire les éléments de données. L'extraction de contenu peut être effectuée par une application interne du moteur de gestion de contenu 3. Si l'élément de données correspond à un contenu standard (par exemple, un produit de type Vol), le moteur de gestion de contenu 3 crée un enregistrement R dans le PNR standard (90) pour le contenu standard (par exemple, produit de type Vol) à l'aide d'un 10 conteneur de données standard (également appelé ci-après "conteneur standard") au bloc 503 ayant le type d'élément de données (par exemple, le type Vol). Le conteneur de données standard peut être un conteneur statique configuré pour des types d'éléments de données prédéfinis (éléments de données standard). L'enregistrement R peut se voir assigner un identifiant d'enregistrement I et peut être associé au conteneur de données 15 standard au bloc 505. L'enregistrement peut être sauvegardé dans un contexte temporaire et/ou dans au moins une base de données 8. Si l'élément de données correspond à un contenu non-standard (par exemple, un produite de type Taxi), le moteur de gestion de contenu 3 crée un enregistrement R dans le PNR non-standard (90) pour le contenu standard (par exemple, produit de type Vol) en 20 utilisant le conteneur de données non-standard (également appelé ci-après "conteneur standard") au bloc 505. L'étape 505 peut être déclenchée par une application interne du flux d'applications. L'application interne déclenchant la création de l'enregistrement dans l'ETR peut être différente de l'application interne recevant l'élément de données non-standard de l'unité d'échange de données 11. Par exemple, une première application interne Al peut 25 recevoir l'élément de données non-standard au format F 1 de l'application Al, l'élément de données non-standard peut être transmis aux autres applications internes de la chaîne jusqu'à ce qu'il arrive à une application interne An au format Fn de l'application An, et finalement l'application An déclenche la création d'un enregistrement dans la structure de données d'enregistrement non-standard 91 (le conteneur de données non-standard ayant le 30 format Fn). Le conteneur de données non-standard peut se voir assigner au type de l'élément de données (par exemple, type Taxi). Le conteneur de données non-standard est adapté pour contenir tout type d'élément 3021787 22 de données (élément de données non-standard). L'enregistrement R peut se voir assigner le même identifiant d'enregistrement I et peut être associé au conteneur de données non-standard au bloc 506. L'enregistrement peut être stocké dans un contexte temporaire et/ou dans au moins une base de données.The non-standard data elements can be received by the data exchange unit 11 in the form of a message defined according to a tag description language such as the XML language according to the second format of the exchange of data. messages 15. The following description will be made with reference to the XML message (also called document or XML file) for data exchange between the travel management system 100 and external systems. The data exchange message may include a structure description file to describe the message structure and the types and formats of the data contained in the message. For example, for data exchange messages of the XML, XML XSD type, schemes such as structure description files can be used to provide a representation of the structure of the attributes of the XML message. At block 502, for each piece of data received for the common content, the content management engine 3 can retrieve the data items. The content extraction can be performed by an internal application of the content management engine 3. If the data item corresponds to a standard content (for example, a product of the type Flight), the content management engine 3 creates a record R in the standard PNR (90) for the standard content (e.g., product of type Vol) using a standard data container (hereinafter also referred to as "standard container") at block 503 having the data element type (for example, the type Vol). The standard data container may be a static container configured for predefined data element types (standard data elements). The record R may be assigned a record identifier I and may be associated with the standard data container at block 505. The record may be stored in a temporary context and / or in at least one database 8. If the data item corresponds to non-standard content (for example, a taxi-type product), the content management engine 3 creates an R-record in the non-standard PNR (90) for the standard content (for example: Example, product of type Vol) using the non-standard data container (hereinafter also referred to as "standard container") at block 505. Step 505 can be triggered by an internal application of the application flow. The internal application triggering the creation of the record in the ETR may be different from the internal application receiving the non-standard data element of the data exchange unit 11. For example, a first internal application Al can receive the non-standard data element in the Al application F 1 format, the non-standard data element can be transmitted to the other internal applications of the chain until it arrives at a An internal application in the Fn format of the application An, and finally the application An triggers the creation of a record in the non-standard registration data structure 91 (the non-standard data container having the format Fn ). The non-standard data container can be assigned to the type of the data element (for example, Taxi type). The non-standard data container is adapted to contain any type of data element (non-standard data element). The record R may be assigned the same record identifier I and may be associated with the non-standard data container at block 506. The record may be stored in a temporary context and / or in at least one database .

5 Dans une forme de réalisation, le conteneur de données non-standard créé au bloc 506 peut en outre se voir assigner une étiquette au bloc 507. Cette étiquette peut être utilisée par le moteur de gestion de contenu 3 lors de l'accès à l'enregistrement R, par exemple pour identifier les éléments de données qui ne sont pas envoyés à des dispositifs clients 7.In one embodiment, the non-standard data container created in block 506 may further be assigned a tag to block 507. This tag may be used by the content management engine 3 when accessing the file. R record, for example to identify data items that are not sent to client devices 7.

10 Par conséquent, un identifiant d'enregistrement unique I peut être créé dans le PNR standard 90 et le PNR non-standard 91 pour tous les éléments de données standard et les éléments de données non-standard correspondant à un contenu commun (éléments de données apparentés). Cet identifiant d'enregistrement commun peut donc être partagé pour manipuler des enregistrements correspondant à des éléments de données hétérogènes, 15 comme s'ils étaient tenus dans une unique structure de données d'enregistrement. Par exemple, l'identifiant d'enregistrement I peut être utilisé par le moteur de gestion de contenu 3 pour permettre à une application de lire/écrire des éléments de données non-standard, quel que soit le type de données. Dans un exemple simplifié, l'Enregistrement de Voyage Etendu 9 peut par exemple 2 0 comprendre plusieurs enregistrements auxquels est assigné un identifiant d'enregistrement commun H , cet enregistrement ID1 étant associé en commun aux éléments de données suivants : - Elément de Données Standard Dl de type 1 - Elément de Données Standard D2 de type 2 2 5 - Elément de Données Standard D3 de type 3 Elément de Données Non-standard D4 de type 4 étiqueté Elément de Données Non-standard D5 de type 5 Elément de Données Non-standard D6 de type 2 étiqueté. Les enregistrements des éléments de données Dl, D2, D3 sont enregistrés dans la 3 0 structure de données d'enregistrement standard 90 en association avec l'identifiant d'enregistrement ID1.Therefore, a unique registration identifier I can be created in the standard PNR 90 and the non-standard PNR 91 for all standard data elements and the non-standard data elements corresponding to a common content (data elements related). This common registration identifier can thus be shared to handle records corresponding to heterogeneous data elements, as if they were held in a single record data structure. For example, the record identifier I may be used by the content management engine 3 to allow an application to read / write nonstandard data items, regardless of the type of data. In a simplified example, Extended Travel Record 9 may for example comprise a plurality of records to which a common record identifier H is assigned, which record ID1 is associated in common with the following data items: - Standard Data Item D1 Type 1 - Standard Data Element D2 Type 2 2 5 - Standard Data Element D3 Type 3 Non-Standard Data Element D4 Type 4 Labeled Non-Standard Data Element D5 Type 5 Non-Standard Data Element D6 type 2 labeled. The records of the data items D1, D2, D3 are recorded in the standard record data structure 90 in association with the record identifier ID1.

3021787 23 Les enregistrements pour les éléments de données D4, D5, D6 sont enregistrés dans la structure de données d'enregistrement standard 90 en association avec l'identifiant d'enregistrement ID1 (dans des conteneurs de données non-standard). Le conteneur de données standard utilisé pour contenir des éléments de données 5 standard est spécifiquement adapté pour contenir des éléments de données ayant un type prédéfini et paramétrer des attributs en fonction de la norme IATA. Le conteneur de données standard est donc uniquement adapté aux formats de données et types de données normalisés. Le conteneur de données non-standard peut être créé quels que soient le type, les attributs et le format des éléments de données non-standard. Chaque attribut peut lui-même 10 comprendre un certain nombre de sous-attributs. Le moteur de gestion de contenu 3 utilise par conséquent le conteneur de données non-standard pour créer de manière dynamique un nouveau type de contenu dans l'Enregistrement de Voyage Etendu (9), quel que soit le type de contenu. Le conteneur de données non-standard peut être un conteneur de données 15 polymorphe qui, à la différence d'un conteneur standard, n'est pas codé par codage matériel en le code pour un élément donné. En revanche, la forme qu'il prend peut être définie de manière dynamique. Le conteneur de données non-standard peut également avoir des propriétés d'autosérialisation/désérialisation.The records for the data elements D4, D5, D6 are recorded in the standard record data structure 90 in association with the record identifier ID1 (in non-standard data containers). The standard data container used to contain standard data elements is specifically adapted to contain data items having a predefined type and to set attributes according to the IATA standard. The standard data container is therefore only suitable for standardized data formats and data types. The non-standard data container can be created regardless of the type, attributes, and format of non-standard data elements. Each attribute itself may include a number of sub-attributes. The content management engine 3 therefore uses the non-standard data container to dynamically create a new content type in the Extended Travel Record (9), regardless of the content type. The non-standard data container may be a polymorphic data container which, unlike a standard container, is not hardware encoded into the code for a given element. On the other hand, the form it takes can be defined dynamically. The non-standard data container may also have self-serialization / deserialization properties.

2 0 Dans certaines formes de réalisation, le conteneur de données non-standard peut être un objet technique représenté par un Modèle d'Objet Métier 21 de l'application interne qui le manipule, ce qui facilite l'intégration d'un nouveau contenu dans l'Enregistrement de Voyage Etendu 9. La Figure 6 représente de manière schématique la structure d'une application interne 2 5 du moteur de gestion de contenu 3 selon certaines formes de réalisation de l'invention, dans lesquelles le conteneur de données non-standard est un Modèle d'Objet Métier 21. L'application interne peut être une application autonome ou une application dans une chaîne d'applications (formant des applications apparentées). L'application interne comprend : 3 0 - des interfaces structurées 2, 3021787 24 - un Modèle d'Objet Métier 21, - une Couche Métier 22. Les interfaces structurées 2 représentent la manière dont les applications communiquent entre elles. Les interfaces structurées peuvent transporter les données 5 fonctionnelles que les applications peuvent traiter. Elles peuvent être mappées sur le modèle d'objet métier 21 qui est utilisé par la couche métier 22 pour effectuer des actions de validation et fonctionner. Une action de validation correspond à des vérifications fonctionnelles effectuées par la couche métier 22 sur les données en plus des vérifications grammaticales. Les éléments de données peuvent être insérés dans la structure de données 10 d'enregistrement étendue 9 d'une manière structurée après validation. Par conséquent, une modification des structures de données du PNR étendu 9 peut mettre en jeu une modification du Modèle d'Objet Métier 21 de l'application et une modification de ses interfaces structurées. En outre, pour tirer avantage des modifications de structure de données, les autres applications apparentées possibles peuvent également avoir 15 besoin d'adapter leur Modèle d'Objet Métier 21, leurs interfaces structurées 2 et d'intégrer la nouvelle version du modèle de données dans les autres interfaces de modules. Les différentes formes de réalisation de l'invention permettent de limiter les coûts associés à une telle modification en utilisant le modèle de conteneur de données non-standard.In some embodiments, the non-standard data container may be a technical object represented by a Business Object Model 21 of the internal application that manipulates it, which facilitates the integration of new content into 9. The Figure 6 schematically illustrates the structure of an internal application of the content management engine 3 according to some embodiments of the invention, in which the non-standard data container is a Business Object Model 21. The internal application can be a stand-alone application or an application in a chain of applications (forming related applications). The internal application comprises: - structured interfaces 2, 3021787 24 - a Business Object Model 21, - a Business Layer 22. The structured interfaces 2 represent the way the applications communicate with each other. Structured interfaces can carry the functional data that applications can process. They can be mapped to the business object model 21 that is used by the business layer 22 to perform validation actions and operate. A validation action corresponds to functional checks performed by the business layer 22 on the data in addition to the grammar checks. The data elements may be inserted into the extended registration data structure 9 in a structured manner after validation. Therefore, a modification of the data structures of the extended PNR 9 may involve a modification of the Business Object Model 21 of the application and a modification of its structured interfaces. In addition, to take advantage of the data structure changes, other related applications may also need to adapt their Business Object Model 21, their structured interfaces 2 and to integrate the new version of the data model into the other module interfaces. The various embodiments of the invention make it possible to limit the costs associated with such a modification by using the non-standard data container model.

2 0 Des applications de services de voyages fonctionnant dans le moteur de gestion de contenu 3 peuvent fonctionner selon le schéma de la Figure 7. Le BOM 21 représente le Modèle d'Objet Métier 21 utilisé pour représenter le modèle de données interne utilisé par l'application. Le Service 210 représente un quelconque message structuré reçu par le système de 2 5 gestion de voyages 100 (tel qu'un message XML ou Edifact) en provenance d'un dispositif client 7, un fournisseur de voyages non-standard 5 ou un dispositif de voyageur 6 qui peut être déclenché par l'application. Le serveur de Contexte 211 représente le stockage Contextuel des données (également appelées "contexte") utilisées par l'application entre des interactions 3 0 asynchrones avec d'autres applications. Les données du contexte peuvent être sauvegardées dans la base de données 8 en 3021787 25 réponse à une demande, périodiquement ou selon certaines conditions. La Figure 8 illustre les interactions entre des applications chaînées Al à AN dans le moteur de gestion de contenu 3, en fonction de certaines formes de réalisation. Lorsque le système de gestion de voyages 100 est mis en oeuvre selon une architecture distribuée, les 5 applications internes chaînées Al à AN en charge des processus peuvent alors s'appeler mutuellement, ce qui peut entraîner plusieurs duplications de l'architecture 7 dans plusieurs serveurs d'application (30) (également appelés "serveurs principaux"), chaque serveur d'application 30 étant associé à une application chaînée respective Ai. A chaque étape de la chaîne de processus, dans des approches conventionnelles, les données qui sont 10 transportées du premier serveur principal 30 pour l'application Al au dernier serveur 30 pour l'application An sont transformées, codées et décodées de différentes manières avant de passer d'un serveur 30 à un autre au milieu des processus. Chaque serveur principal 30 décode ensuite les éléments de données entrants et valide les données pour son processus dédié avant d'accéder aux éléments de données. Ensuite, les données sont codées pour être 15 transmises à l'application suivante Ai÷i de la chaîne. En outre, le Modèle d'Objet Métier 21 peut être mis en jeu dans le processus de remplissage et de récupération d'informations dans ou depuis les interfaces structurées 2 et peut être utilisé pour écrire/lire des données. Dans des approches classiques, il faut des composants à codage manuel pour écrire/lire des données dans/depuis les interfaces structurées 2 et dans le référentiel d'enregistrement 2 0 central. Par conséquent, un seul changement dans le modèle de données peut être coûteux. En outre, les éléments de données que les applications manipulent ont généralement beaucoup de contraintes fonctionnelles, de sorte que chaque application peut avoir besoin de s'assurer que les données manipulées soient dans un format approprié, compatible avec les contraintes de l'industrie (validation).Travel services applications operating in the content management engine 3 may operate according to the scheme of Figure 7. The BOM 21 represents the Business Object Model 21 used to represent the internal data model used by the client. application. The service 210 represents any structured message received by the travel management system 100 (such as an XML or Edifact message) from a client device 7, a non-standard travel provider 5, or a communication device. traveler 6 that can be triggered by the application. The context server 211 represents the Contextual Storage of the data (also called "context") used by the application between asynchronous interactions with other applications. The context data may be stored in the database 8 in response to a request, periodically or under certain conditions. Figure 8 illustrates the interactions between chained applications A1 to AN in the content management engine 3, according to some embodiments. When the travel management system 100 is implemented according to a distributed architecture, the internal chained applications A1 to AN in charge of the processes can then call each other, which can lead to several duplications of the architecture 7 in several servers. application (30) (also called "main servers"), each application server 30 being associated with a respective chained application Ai. At each stage of the process chain, in conventional approaches, the data that is transported from the first main server 30 for the application A1 to the last server 30 for the application An is transformed, encoded and decoded in different ways before move from one server 30 to another in the middle of the process. Each primary server 30 then decodes the incoming data items and validates the data for its dedicated process before accessing the data items. Then, the data is encoded to be transmitted to the next application Ai ÷ i of the chain. In addition, the Business Object Model 21 may be involved in the process of filling and retrieving information in or from the structured interfaces 2 and may be used to write / read data. In conventional approaches, manually encoded components are required to write / read data to / from the structured interfaces 2 and the central registration repository. Therefore, a single change in the data model can be expensive. In addition, the data elements that applications manipulate usually have many functional constraints, so that each application may need to ensure that the manipulated data is in an appropriate format, compatible with industry constraints (validation ).

2 5 En conséquence, dans des approches classiques, à chaque fois qu'un élément de données doit être modifié dans ces applications chaînées, toutes les étapes du processus peuvent être impactées car chaque processus doit transmettre les nouvelles données au processus suivant et devra donc les décoder, les valider et les coder. De plus, lorsqu'un nouveau contenu doit être ajouté à une application existante, chaque processus doit en outre 3 0 transmettre le nouveau contenu au processus suivant et chaque processus de la chaîne doit décoder, valider et coder le nouvel élément. L'invention selon certaines formes de réalisation améliore la situation en utilisant 3021787 26 la propriété d'auto-sérialisation du conteneur de données non-standard de type BOM. En particulier, un conteneur de données non-standard peut être créé par une première application Al de la chaîne, en réponse à la réception d'éléments de données Dl, D2 et D3 en provenance de fournisseurs de contenu non-standard 5. Ce contenu non- 5 standard ne peut pas être stocké tel quel dans le PNR standard 90 car il ne comprend pas de types et attributs de données compatibles avec la structure standard du PNR 90. Le contenu non-standard peut prendre différentes formes et être associé à différents types et attributs. La première application Al peut créer par exemple le conteneur non-standard pour chaque élément de données non-standard Dk au format Fl de la première application interne 10 Al (par exemple, Tampons de Protocole). La première application Al fait ensuite passer le conteneur non-standard vers l'application suivante de la chaîne à l'aide d'un message M1 utilisant les propriétés d'auto-sérialisation/désérialisation du conteneur non-standard. Le message MI peut être un grand objet binaire transportant des informations d'autosérialisation/désérialisation. La deuxième application A2 peut ensuite extraire le conteneur 15 de données non-standard au format F2 de l'application interne A2. De manière similaire, la deuxième application peut transmettre le conteneur non-standard aux autres applications de la chaîne à l'aide de messages M2, M3, etc. transportant les informations d'autosérialisation/désérialisation jusqu'à ce qu'une application An déclenche la création d'un enregistrement dans l'ETR 9.Accordingly, in conventional approaches, whenever a data element is to be modified in these chained applications, all process steps can be impacted because each process must transmit the new data to the next process and will therefore have to decode, validate and code them. In addition, when new content is to be added to an existing application, each process must further transmit the new content to the next process and each process in the chain must decode, validate and encode the new element. The invention according to some embodiments improves the situation by using the auto-serialization property of the BOM non-standard data container. In particular, a non-standard data container may be created by a first application Al of the chain, in response to the receipt of data elements D1, D2 and D3 from non-standard content providers 5. This content non-standard can not be stored as such in the standard PNR 90 because it does not include data types and attributes compatible with the standard structure of the PNR 90. The non-standard content can take different forms and be associated with different types and attributes. The first application A1 can for example create the non-standard container for each non-standard data element Dk in the format F1 of the first internal application Al (for example, protocol buffers). The first application Al then passes the non-standard container to the next application of the chain using an M1 message using the auto-serialization / deserialization properties of the non-standard container. The MI message may be a large binary object carrying self-serialization / deserialization information. The second application A2 can then extract the non-standard format data container F2 from the internal application A2. Similarly, the second application can transmit the non-standard container to other applications in the chain using messages M2, M3, etc. carrying the self-serialization / deserialization information until an An application triggers the creation of a record in the ETR 9.

2 0 Par conséquent, grâce à l'utilisation d'un conteneur de données non-standard, aucun changement de données n'est requis pour l'ajout de nouvelles structures de données à l'ETR 9, la mise à jour de la structure de données ou la transmission d'un élément de données dans une chaîne d'applications internes. En outre, il n'est pas nécessaire de modifier des structures de données existantes. Les données contenues par le conteneur de données non- 2 5 standard peuvent être rendues disponibles sans qu'il soit nécessaire de les extraire et de les convertir d'un format en un autre. Les couches intermédiaires/codées manuellement peuvent donc être réduites. Tel que décrit dans l'exemple de la Figure 9, un conteneur de données non-standard 50 peut être défini par un ensemble de valeurs de clés qui décrivent un Modèle 3 0 d'Objet Métier qui peut être manipulé par des applications. Chaque clé 51 définit un attribut du BOM et comprend une valeur associée 52 (également appelée "données" sur la Figure 9). Par exemple, le conteneur de données non-standard défini par la clé "ville" est associé à 3021787 27 la valeur "Paris". Le conteneur de données peut comprendre des structures complexes et être associé à toute sorte de données. Par exemple, une ou plusieurs clés du conteneur de données peuvent en outre être associées à une référence 53 (appelée "REF" sur la Figure 9), pour associer un conteneur de données donné à un ensemble de conteneurs de données 5 apparentés. Par exemple, le conteneur de données désigné par le couple clé/valeur "téléphone/+335551213" comprend une référence ("REF") aux conteneurs de données suivants: "mobile/+336123456" et "domicile/ +335551213". Le conteneur de données non-standard 50 permet l'accès au moteur de gestion de contenu 3 en mode écriture pour l'un quelconque des éléments de données contenus dans le 10 conteneur de données non-standard, sans qu'il soit nécessaire de développer un module d'accès pour permettre cet accès. Cela garantit la flexibilité et l'extensibilité. En outre, un accès à l'élément de données contenu dans le conteneur de données non-standard peut être effectué par le moteur de gestion de contenu 3 à tout instant d'un traitement par une application à l'aide de demandes selon un langage d'interrogation 15 approprié tel que Xpath. Le conteneur de données non-standard peut avoir une compatibilité descendante et montante en ce qui concerne la programmation. Du point de vue de la programmation, aucun changement de code n'est requis pour utiliser une nouvelle version des structures d'éléments de données associées au conteneur de données non-standard.As a result, through the use of a non-standard data container, no data changes are required for the addition of new data structures to the ETR 9, updating the structure of data or the transmission of a data element in a chain of internal applications. In addition, there is no need to modify existing data structures. The data held by the non-standard data container can be made available without the need to extract and convert from one format to another. Intermediate / manually coded layers can therefore be reduced. As described in the example of Figure 9, a non-standard data container 50 may be defined by a set of key values that describe a Business Object Model that can be manipulated by applications. Each key 51 defines an attribute of the BOM and includes an associated value 52 (also referred to as "data" in Figure 9). For example, the non-standard data container defined by the key "city" is associated with the value "Paris". The data container can comprise complex structures and be associated with any kind of data. For example, one or more keys of the data container may further be associated with a reference 53 (referred to as "REF" in Figure 9), for associating a given data container with a set of related data containers. For example, the data container designated by the key / value pair "phone / + 335551213" includes a reference ("REF") to the following data containers: "mobile / + 336123456" and "home / +335551213". The non-standard data container 50 provides access to the content management engine 3 in write mode for any of the data elements contained in the non-standard data container, without the need to develop an access module to allow this access. This guarantees flexibility and scalability. In addition, access to the data item contained in the non-standard data container can be performed by the content management engine 3 at any time from an application processing using language requests. appropriate interrogation such as Xpath. The non-standard data container may have backward and upward compatibility with respect to programming. From the programming point of view, no code change is required to use a new version of the data element structures associated with the non-standard data container.

2 0 Le conteneur de données non-standard est configuré pour prendre en charge une sérialisation/désérialisation. En particulier, la sérialisation peut être exécutée au moment de la création et de la modification d'un ou plusieurs attributs du contenu non-standard pour coder le conteneur de données dans un format extensible et la désérialisation peut être effectuée à chaque fois qu'une application a besoin de lire au moins un attribut d'un contenu non- 2 5 standard. En particulier, les clés et valeurs du conteneur de données non-standard peuvent être sérialisées à tout instant par traduction de l'état de l'objet technique (par exemple, BOM) représentant le conteneur de données non-standard en un format (par exemple, une représentation binaire) qui peut être stocké et reconstruit par un mécanisme de désérialisation 3 0 pour restaurer le conteneur de données à son état d'origine. Le conteneur de données non- standard peut donc être transformé en tout format cible, quelles que soient les données 3021787 28 contenues dans le conteneur de données. Les mécanismes de sérialisation et désérialisation ne nécessitent pas un codage matériel. Des informations de sérialisation peuvent être intégrées dans une bibliothèque associée au Conteneur de Données. L'utilisation de ce BOM fournit donc nativement un mécanisme de sérialisation qui peut être pris en charge par toute sorte de 5 structure définie par les clés du conteneur de données non-standard, sans nécessiter de codage spécifique. Dans certaines formes de réalisation représentatives, le format de représentation du conteneur de données non-standard utilisé pour traduire son état selon les mécanismes de sérialisation/désérialisation peut se fonder par exemple sur les formats XML, ASCII, JSON, Binaires, tel qu'illustré sur la Figure 10.The non-standard data container is configured to support serialization / deserialization. In particular, serialization may be performed at the time of creation and modification of one or more non-standard content attributes to encode the data container in an extensible format and deserialization may be performed whenever a application needs to read at least one attribute of non-standard content. In particular, the keys and values of the non-standard data container can be serialized at any time by translating the state of the technical object (eg, BOM) representing the non-standard data container into a format (for example for example, a binary representation) that can be stored and reconstructed by a deserialization mechanism to restore the data container to its original state. The non-standard data container can therefore be transformed into any target format, regardless of the data contained in the data container. Serialization and deserialization mechanisms do not require hardware coding. Serialization information can be integrated into a library associated with the Data Container. The use of this BOM therefore natively provides a serialization mechanism that can be supported by any kind of structure defined by the non-standard data container keys, without requiring specific coding. In some representative embodiments, the representation format of the non-standard data container used to translate its state according to the serialization / deserialization mechanisms can be based, for example, on the XML, ASCII, JSON, Binary formats, as illustrated. in Figure 10.

10 La validation des valeurs du conteneur de données non-standard peut n'être nécessaire qu'au moment de la création et de la modification de l'élément de données représenté par l'objet conteneur de données non-standard. Par conséquent, aucun processus de lecture n'est requis pour revalider les éléments de données associés aux clés. A l'aide du conteneur de données non-standard, les informations relatives au type de 15 contenu (par exemple, transport aérien, taxi, manifestation sportive, parking, transport urbain, etc.) peuvent être transportées dans le conteneur de données non-standard lui-même. Le type de conteneur de données non-standard peut être stocké sous la forme d'une clé directement dans le conteneur de données non-standard. Dans certaines formes de réalisation, le mécanisme de validation à la création ou la 20 modification d'un conteneur de données non-standard donné peut être basé sur le type fonctionnel stocké dans l'élément de données non stocké sous la forme d'une clé au lieu d'un type C++ sous la forme d'approches classiques. Dans certaines formes de réalisation, chaque type de conteneur de données non-standard peut être associé à un fichier de description de structure (par exemple, XSD) 25 décrivant une structure d'attribut de l'élément de données (topologie d'attribut, dépendance d'attribut, et format d'attribut, etc.). Le fichier de description de structure (par exemple, XSD) représente en outre l'interrelation entre les attributs et les éléments d'un conteneur de données non-standard représenté sous la forme d'un objet technique (par exemple, un objet XML). Dans un schéma 3 0 XSD associé à un conteneur de données non-standard, les clés/valeurs différentes du conteneur de données non-standard et les contraintes auxiliaires qui lui sont appliquées 3021787 29 peuvent être décrites à l'aide d'un ensemble d'étiquettes XML. Les fichiers de description de structure peuvent être utilisés à la création et la modification de conteneurs de données non-standard. De plus, des contraintes auxiliaires peuvent être appliquées au conteneur de données non-standard à l'aide du fichier de description de structure (par exemple, XSD).Validation of non-standard data container values may only be necessary when creating and modifying the data element represented by the non-standard data container object. Therefore, no read process is required to re-validate the data items associated with the keys. Using the non-standard data container, the type of content information (for example, air transport, taxi, sporting event, parking, urban transport, etc.) can be transported in the non-standard data container. standard itself. The non-standard data container type can be stored as a key directly into the non-standard data container. In some embodiments, the validation mechanism upon creation or modification of a given non-standard data container may be based on the functional type stored in the non-stored data item in the form of a key. instead of a C ++ type in the form of classical approaches. In some embodiments, each type of non-standard data container may be associated with a structure description file (e.g., XSD) describing an attribute structure of the data item (attribute topology, attribute dependency, and attribute format, etc.). The structure description file (for example, XSD) further represents the interrelation between attributes and elements of a non-standard data container represented as a technical object (for example, an XML object) . In an XSD scheme associated with a non-standard data container, the different keys / values of the non-standard data container and the ancillary constraints applied thereto may be described using a set of non-standard data containers. XML tags. Structure description files can be used when creating and modifying non-standard data containers. In addition, auxiliary constraints may be applied to the non-standard data container using the structure description file (for example, XSD).

5 Le fichier de description de structure associé à chaque conteneur de données non- standard peut être utilisé pour valider les attributs du conteneur de données non-standard à la création ou la modification du conteneur de données non-standard. Le mécanisme de validation peut comprendre la vérification du fait que l'élément de données non-standard représenté par le conteneur de données non-standard adhère à la description de l'élément de 10 données dans lequel le contenu doit être placé. Dans certaines formes de réalisation, le mécanisme de validation peut être implémenté pour valider si les données stockées dans le conteneur de données non-standard correspond à un format cible à l'aide du fichier de description de structure associé au conteneur de données non-standard. Le système de gestion de voyages 100 peut contenir un tableau pour le stockage du 15 type de données du conteneur de données non-standard en correspondance avec le fichier de description de structure associé au conteneur de données non-standard. Le tableau peut être mis à jour au moment de l'exécution des processus. Le moteur de gestion de contenu 3 peut être configuré pour ajouter de nouvelles données dans un conteneur de données non-standard, par mise à jour des fichiers de 2 0 description de structure (par exemple, XSD) décrivant la structure du conteneur de données non-standard, comme par exemple de nouveaux attributs. Le fichier de description de structure (par exemple, XSD) définissant un conteneur de données non-standard peut être modifié sans avoir à effectuer un codage matériel des changements et à recompiler le code. La modification d'un conteneur de données non- 2 5 standard est donc dynamique et apte à être mise à jour au moment de l'exécution. La Figure 11 est une vue schématique des conteneurs de données non-standard représentatifs de la Figure 9, montrant leurs types respectifs : type Téléphone, type Adresse, type GPS. Le type d'information peut être stocké sous la forme d'un attribut dans le conteneur de données non-standard. Ces informations peuvent être utilisées pour récupérer 3 0 le fichier de description de structure associé à un conteneur de données non-standard. La Figure 12 illustre des fichiers de description XSD pour les exemples de 3021787 30 conteneurs de données non-standards de la figure 11 qui ont des types différents ("Type Téléphone", "Type Adresse", "Type GPS"). Selon certaines formes de réalisation, le moteur de gestion de contenu 3 peut générer en outre un ensemble d'interfaces de services internes 2 dans la plateforme unique 5 exposée par le Système de Gestion de Voyages 100 sur les dispositifs clients 7, quel que soit le type de contenu retourné à un dispositif client 7 et les applications entretenues par le moteur de gestion de contenu 3. L'Enregistrement de Voyage Etendu 9 peut être utilisé par un nombre considérable d'applications. Par exemple, le moteur de gestion de contenu 3 peut comprendre un 10 ensemble d'applications (par exemple, applications de voyages) pour délivrer différents types de services de voyages aux dispositifs clients 7 en fonction du contenu externe reçu de systèmes de fournisseurs de voyages standard 4 (par exemple, produits de ligne aérienne) et de tout autre système de fournisseur de voyages 5 (par exemple, des produits hors ligne aérienne), quel que soit le type de contenu. Ces services peuvent inclure par 15 exemple les services Boutiques, Réservations, Etablissement de prix, Assurance, Remboursement. Ces applications de services peuvent être exécutées en réponse à des demandes de services émanant de systèmes (par exemple, des systèmes d'agences de voyages 70) connectés au système de gestion de voyages 100 via un dispositif client 7, sans qu'il soit 20 nécessaire d'adapter chaque application aux N types de données ajoutées à l'ETR 9 par codage matériel. Les résultats peuvent être retournés via l'unité d'échange de données 11 à l'aide de messages de réponse dans un format donné tel que des messages XML. Les interfaces de services internes 2 générées par le système de gestion de voyages (100) peuvent donc être 2 5 du type XML. Pour rendre inutile le recodage et la recompilation de chaque application pour prendre en charge un nombre quelconque de nouveaux types de conteneurs de données non-standard, un élément générique ayant un type unique (type Elément Générique) peut être utilisé. L'élément générique est un méga-conteneur de données configuré pour contenir un 3 0 conteneur de données non-standard d'un type quelconque. L'élément générique peut être vu par toutes les applications de services comme un conteneur d'un type unique (appelé ci- 3021787 31 après "type Elément Générique") tandis que l'élément générique peut contenir un nombre illimité N de types de données non-standard. Chaque application peut donc instancier l'élément générique pour pouvoir manipuler les conteneurs non-standard d'une manière fluide, indépendamment du type de 5 l'élément de données contenu dans le conteneur de données. Par conséquent, chaque application n'a pas besoin d'instancier autant de conteneurs de données non-standard que de nouveaux types de données. En conséquence, l'ajout d'un nouveau type de contenu dans le PNR non-standard 91 n'impacte pas et ne nécessite pas l'adaptation aux applications traitées par le moteur de 10 gestion de contenu 3 pour assurer une compatibilité descendante (par exemple, un codage matériel). La Figure 13 est un organigramme décrivant l'accès aux enregistrements de l'ETR 9 ayant un identifiant d'enregistrement donné I par une application. Par exemple, l'identifiant d'enregistrement I peut comprendre : 15 - un élément de données standard SD1 de type Tl - un élément de données standard SD2 de type T2 - un élément de données non-standard NSD3, contenu dans un conteneur de données non-standard, de type T3 - un élément de données non-standard NSD4, contenu dans un conteneur de données 2 0 non-standard, de type T4. Au bloc 600, les enregistrements associés à l'identifiant d'enregistrement I sont récupérés auprès de l'ETR 9. Les enregistrements peuvent être associés à des éléments de données standard (SD1, SD2) et des éléments de données non-standard NSD3, NSD4 (conteneurs de données non-standard) ayant des types respectifs T1, T2, T3, T4.The structure description file associated with each non-standard data container may be used to validate the attributes of the non-standard data container upon creation or modification of the non-standard data container. The validation mechanism may include verifying that the non-standard data item represented by the non-standard data container adheres to the description of the data item in which the content is to be placed. In some embodiments, the validation mechanism may be implemented to validate whether the data stored in the non-standard data container corresponds to a target format using the structure description file associated with the non-standard data container. . The travel management system 100 may contain a table for storing the data type of the non-standard data container in correspondence with the structure description file associated with the non-standard data container. The table can be updated when running processes. The content management engine 3 may be configured to add new data to a non-standard data container, by updating the structure description files (e.g. XSD) describing the structure of the non-standard data container. -standard, such as new attributes. The structure description file (for example, XSD) defining a non-standard data container can be modified without having to physically code the changes and recompile the code. The modification of a non-standard data container is therefore dynamic and updateable at runtime. Figure 11 is a schematic view of the representative non-standard data containers of Figure 9, showing their respective types: Telephone type, Address type, GPS type. The type of information can be stored as an attribute in the non-standard data container. This information can be used to retrieve the structure description file associated with a non-standard data container. Figure 12 illustrates XSD description files for the examples of non-standard data containers of Figure 11 which have different types ("Telephone Type", "Address Type", "GPS Type"). According to some embodiments, the content management engine 3 may further generate a set of internal service interfaces 2 in the single platform 5 exposed by the Travel Management System 100 on the client devices 7, regardless of the type of content returned to a client device 7 and the applications maintained by the content management engine 3. The Extended Travel Record 9 can be used by a considerable number of applications. For example, the content management engine 3 may include a set of applications (e.g., travel applications) for delivering different types of travel services to the client devices 7 based on external content received from travel provider systems. standard 4 (eg, airline products) and any other travel provider system 5 (eg, off-line products), regardless of the type of content. Such services may include, for example, the Stores, Reservations, Pricing, Insurance, Refund services. These service applications may be executed in response to service requests from systems (e.g., travel agency systems 70) connected to the travel management system 100 via a client device 7, without it being 20 necessary to adapt each application to the N types of data added to the ETR 9 by hardware coding. The results can be returned via the data exchange unit 11 using response messages in a given format such as XML messages. The internal service interfaces 2 generated by the travel management system (100) can therefore be of the XML type. To make it unnecessary to recode and recompile each application to support any number of new types of non-standard data containers, a generic element with a unique type (Generic Element type) can be used. The generic element is a mega-data container configured to hold a non-standard data container of any type. The generic element can be seen by all service applications as a container of a single type (hereinafter referred to as "generic element type") while the generic element can contain an unlimited number N of data types. not standard. Each application can therefore instantiate the generic element in order to be able to handle non-standard containers in a fluid manner, regardless of the type of data element contained in the data container. As a result, each application does not need to instantiate as many non-standard data containers as new data types. Accordingly, adding a new type of content in the non-standard PNR 91 does not impact and does not require adaptation to the applications handled by the content management engine 3 to ensure backward compatibility (for example, a hardware coding). Fig. 13 is a flowchart describing access to the records of the ETR 9 having a given registration identifier I by an application. For example, the record identifier I may comprise: a standard data element SD1 of type T1; a standard data element SD2 of type T2; a non-standard data element NSD3 contained in a data container non-standard, type T3 - a non-standard NSD4 data element contained in a non-standard T4 type data container. In block 600, the records associated with the record identifier I are retrieved from the ETR 9. The records may be associated with standard data items (SD1, SD2) and non-standard data items NSD3, NSD4 (non-standard data containers) having respective types T1, T2, T3, T4.

25 Chaque élément de données SD1, SD2, NSD3 et NSD4 est ensuite traité séparément. En particulier, pour chaque élément de données tel que par exemple le NSD3, si l'élément de données est un élément de données non-standard (bloc 601), l'élément de données non-standard de type T3 est transformé en un élément générique d'un Type Elément Générique contenant l'élément de données non-standard de type T3 au bloc 602. L'élément 3 0 générique tel qu'un méga-conteneur de données peut contenir lui-même un conteneur de 3021787 32 données non-standard ayant un type spécifique. L'élément générique peut être implémenté sous la forme d'un objet technique tel qu'un BOM, et peut être basé sur la même technologie que le conteneur de données non-standard. Si l'élément de données est un élément de données standard (bloc 603) tel que par 5 exemple SD1, l'élément de données standard de type T1 peut être converti en un conteneur de données non-standard du même type T1 au bloc 604. Au bloc 602, l'élément de données non-standard ainsi obtenu est ensuite transformé en un élément générique d'un type Elément Générique unique contenant l'élément de données non-standard de type T1 correspondant à l'élément de données standard NSD1.Each data element SD1, SD2, NSD3 and NSD4 is then processed separately. In particular, for each data item such as for example NSD3, if the data item is a non-standard data item (block 601), the non-standard data item of type T3 is transformed into an item. Generic Generic Element Type containing the T3 non-standard data element at block 602. The generic element such as a mega-data container may itself contain a non-data container 3021787. -standard having a specific type. The generic element can be implemented as a technical object such as a BOM, and can be based on the same technology as the non-standard data container. If the data item is a standard data item (block 603) such as, for example, SD1, the standard T1 data item can be converted to a non-standard data container of the same type T1 at block 604. At block 602, the non-standard data item thus obtained is then transformed into a generic element of a single Generic Element type containing the non-standard T1 data element corresponding to the NSD1 standard data element. .

10 L'élément générique forme un état transitoire de l'élément de données non-standard, ce qui permet à l'application de manipuler les éléments de données standard et les éléments de données non-standard d'une manière fluide, quel que soit leur type. L'application peut donc manipuler les éléments de données de l'ETR 9 sans connaître explicitement le type du contenu non-standard comme s'ils avaient un type unique.The generic element forms a transient state of the non-standard data element, which allows the application to manipulate the standard data elements and non-standard data elements in a fluid manner, regardless of their type. The application can therefore manipulate the data elements of the ETR 9 without knowing explicitly the type of non-standard content as if they had a unique type.

15 Au bloc 605, si l'exécution de l'application nécessite qu'un ou plusieurs éléments de données puissent être envoyés à l'interface du dispositif client 7 envoyant la demande de services, l'application peut inspecter l'élément générique pour accéder au type de l'élément de données. Dans certaines formes de réalisation de l'invention, les éléments de données non- 20 standard peuvent être associés à des étiquettes respectives. Dans ces formes de réalisation, au bloc 601, seuls les éléments de données non-standard associés à des étiquettes respectives peuvent être sélectionnés par l'application et transformés dans un élément générique. Par conséquent, l'élément générique abstrait le type des éléments de données non-standard: au lieu de définir un nouveau type d'élément à chaque fois qu'un nouveau type de 25 contenu doit être manipulé par les applications (nouveau contenu ajouté dans l'ETR 9), chaque application peut donc instancier un élément générique unique capable de prendre en charge de quelconques nouveaux type et attributs. En référence de nouveau à la Figure 3, le système de gestion de voyages 100 peut être adapté pour échanger tout type de données (contenu standard et non-standard) avec tout 30 type de dispositif client externe tel qu'un système d'agences de voyages 70, un système de fournisseur de voyages non-standard 5, et tout autre serveur principal à l'intérieur du même 3021787 33 GDS via les interfaces internes 2. Dans des approches conventionnelles, le système de gestion de voyages 100 peut échanger des données d'un PNR standard avec d'autres dispositifs clients cibles (par exemple, des systèmes de fournisseurs de voyages, des systèmes d'agences de voyages) ayant leur 5 propre standard pour le format du contenu PNR (format de contenu PNR cible) par implémentation d'une conversion à codage matériel vers le format standard pris en charge par l'interface du dispositif client cible. Cela nécessite un mécanisme de codage au niveau du système de gestion de voyages 100 et des mécanismes de décodage/validation au niveau du dispositif cible. Au lieu de cela, chaque système de gestion de voyages peut avoir son propre 10 standard pour le format du contenu PNR (format de contenu PNR source) et donc les interfaces des dispositifs cibles ne prennent en charge que ce format. Cette conversion (codage/décodage/validation) met actuellement en jeu un codage matériel et une recompilation, dans une approche coûteuse et statique. L'unité d'échange de données 11 permet la réception ou la transmission d'un message 15 d'échange de données à partir d'un dispositif client externe selon le deuxième format d'échange de données 15 pour échanger tout type de contenu. Dans une forme de réalisation préférée, le deuxième format d'échange de données 15 est un langage de description de balise tel que XML. Chaque message d'échange de données correspondant à un élément de données non-standard comprend un fichier de description de structure définissant les attributs de 2 0 l'élément de données (topologie et format des attributs), tels qu'un XSD pour des messages XML, et un ensemble de valeurs correspondant aux valeurs des attributs. La Figure 14 représente plus en détail la structure de l'unité d'échange de données 11 selon certaines formes de réalisation. L'unité d'échange de données 11 peut être utilisée pour échanger des éléments de 2 5 données avec un dispositif client externe, tel qu'un fournisseur de voyages non-standard 5, un système d'agences de voyages ou un autre système non GDS. En particulier, l'unité d'échange de données 11 peut être utilisée pour : - recevoir des éléments de données non-standard en provenance d'un dispositif client ; ou 3 0 - transmettre des éléments de données de l'ETR 9 à un dispositif client. L'unité d'échange de données 11 peut comprendre un moteur de transformation de 3021787 34 structure 111 tel qu'un moteur XSLT pour la transformation d'un fichier de description de structure tel qu'un XSD d'un fichier de description de structure source XSD1 en un fichier de description de structure cible XSD2 et un générateur de message d'échange de données 112 pour la transmission des données sous la forme d'un message défini selon un langage de 5 description tel que XML. Le moteur XSLT peut utiliser des règles de mappage locales prédéfinies 113 (par exemple, feuilles de style XSLT) définissant des règles de transformation pour la transmission d'un fichier de description de structure source XSD1 en mode réception ou des règles de mappage client prédéfinies 117 (par exemple, feuilles de style XSLT) définissant des règles de transformation pour la transformation d'un fichier de 10 description de structure source XSD1 en mode transmission. Le système de gestion de voyages 100 peut enregistrer ou charger de manière dynamique au moment de l'exécution un ou plusieurs fichiers de description de structure locaux prédéfinis 115 associés à des types de contenu différents et correspondant à des fichiers de description de structure à appliquer localement par le système de gestion de 15 voyages 100. En mode réception, l'unité d'échange de données 11 peut recevoir un message d'échange de données entrant XML1 d'un dispositif client externe 7 compatible avec un fichier de description de structure source XSD1 défini par le dispositif client externe 7. Le message entrant XML1 contient un élément de données non-standard d'un type donné Ti.In block 605, if the execution of the application requires that one or more pieces of data can be sent to the interface of the client device 7 sending the service request, the application can inspect the generic element to access the type of the data element. In some embodiments of the invention, non-standard data items may be associated with respective tags. In these embodiments, at block 601, only the non-standard data items associated with respective tags can be selected by the application and transformed into a generic element. Therefore, the generic element abstract the type of the non-standard data elements: instead of defining a new type of element each time a new type of content has to be manipulated by the applications (new content added in ETR 9), each application can thus instantiate a single generic element capable of handling any new type and attribute. Referring again to FIG. 3, the travel management system 100 may be adapted to exchange any type of data (standard and non-standard content) with any type of external client device such as a branch office system. 70 travel, a non-standard 5 travel provider system, and any other main server within the same 3021787 33 GDS via internal interfaces 2. In conventional approaches, the travel management system 100 can exchange data a standard PNR with other target customer devices (eg, travel provider systems, travel agency systems) having their own standard for PNR content format (target PNR content format) by implementing a hardware-encoded conversion to the standard format supported by the interface of the target client device. This requires a coding mechanism at the level of the travel management system 100 and decoding / validation mechanisms at the target device. Instead, each travel management system may have its own standard for PNR content format (source PNR content format) and therefore target device interfaces only support this format. This conversion (coding / decoding / validation) currently involves hardware coding and recompilation, in a costly and static approach. The data exchange unit 11 allows the reception or transmission of a data exchange message from an external client device according to the second data exchange format to exchange any type of content. In a preferred embodiment, the second data exchange format 15 is a tag description language such as XML. Each data exchange message corresponding to a non-standard data item includes a structure description file defining attributes of the data item (topology and attribute format), such as an XSD for messages. XML, and a set of values corresponding to the values of the attributes. Figure 14 shows in more detail the structure of the data exchange unit 11 according to some embodiments. The data exchange unit 11 can be used to exchange data items with an external client device, such as a non-standard travel provider 5, a travel agency system or other non-standard system. GDS. In particular, the data exchange unit 11 can be used to: - receive non-standard data elements from a client device; or transmitting data items from the ETR 9 to a client device. The data exchange unit 11 can comprise a structure transformation engine 111 such as an XSLT engine for the transformation of a structure description file such as an XSD of a structure description file. XSD1 source to an XSD2 target structure description file and a data exchange message generator 112 for the transmission of data in the form of a message defined according to a description language such as XML. The XSLT engine can use predefined local mapping rules 113 (for example, XSLT stylesheets) that define transformation rules for forwarding an XSD1 source structure description file in receive mode or predefined client mapping rules. (eg, XSLT style sheets) defining transformation rules for transforming an XSD1 source structure description file into transmission mode. The travel management system 100 can dynamically record or dynamically load at run time one or more predefined local structure description files 115 associated with different content types and corresponding to structure description files to be applied locally. by the travel management system 100. In the receive mode, the data exchange unit 11 can receive an incoming XML1 data exchange message from an external client device 7 compatible with a source structure description file. XSD1 defined by the external client device 7. The incoming XML1 message contains a non-standard data item of a given type Ti.

2 0 A chaque fois qu'un tel message d'échange de données entrant XML1 est reçu par le système de gestion de voyages 100 comprenant un élément de données non-standard, le moteur de transformation 111 peut transformer le fichier de description de structure XSD1 du message entrant en un fichier de description de structure cible XSD2 à l'aide des règles de mappage locales 113 associées au type de l'élément de données contenu dans le message 25 d'échange de données XML1. Le fichier de description de structure cible XSD2 est ensuite ajouté à l'ensemble de fichiers de description de structure locaux 115. L'unité d'échange de données 11 peut en outre appliquer un mécanisme de validation au message entrant XML1 avant la transformation du fichier de description de structure source XSD1 en le fichier de description de structure cible XSD2 pour valider un certain 3 0 nombre de conditions relatives aux attributs du fichier de description de structure XSD1 (par exemple présence d'attributs obligatoires).Whenever such an incoming XML1 data exchange message is received by the travel management system 100 comprising a non-standard data element, the transformation engine 111 may transform the XSD1 structure description file. of the incoming message into an XSD2 target structure description file using the local mapping rules 113 associated with the type of the data item contained in the XML1 data exchange message. The XSD2 target structure description file is then added to the set of local structure description files 115. The data exchange unit 11 may further apply a validation mechanism to the XML1 incoming message before the file transformation. XSD1 source structure description scheme into the target structure description file XSD2 to validate a number of conditions relating to the attributes of the XSD1 structure description file (e.g. presence of mandatory attributes).

3021787 Le conteneur de données non-standard du type Ti peut ensuite être généré par mappage des champs du message d'échange de données XML1 sur les primitives du conteneur de données non-standard. Le conteur de données non-standard est ensuite ajouté à l'ETR 9 en association avec le fichier de description de structure cible (XSD2) stocké en 115 5 pour le type Ti tel que décrit en relation avec la Figure 5. Toute mise à jour ou tout ajout de nouveau contenu dans l'ETR 9 peut être effectué au moment de l'exécution. L'utilisation de l'unité d'échange de données 11 permet donc de convertir de manière dynamique tout message d'échange de données entrant reçu des systèmes de fournisseurs de contenu 4, 5 en plusieurs objets de contenu de données non-standard représentant les 10 éléments à ajouter/modifier, sans nécessiter de changement de code. En mode transmission (pointillés), le système de gestion de voyages 100 peut transmettre un quelconque élément de données de l'ETR dans l'interface cible d'un dispositif client externe 7 via l'unité d'échange de données. En mode transmission, l'unité d'échange de données 11 reçoit en entrée un conteneur 15 de données non-standard (contenant un élément de données non-standard ou un élément de données standard du type Ti préalablement converti en un conteneur de données non-standard). Le conteneur de données non-standard de type Ti est associé à un fichier de description de structure (appelé fichier de description de structure source) comprenant une 20 description des attributs (clé) du conteneur de données non-standard, de la topologie des attributs et du format d'attribut, tel qu'un fichier XSD (115). Un conteneur de données non-standard est également associé à des valeurs de clé correspôndant aux valeurs des attributs. Si l'élément de données devant être transmis par le système de gestion de voyages 100 comprend un conteneur de données non-standard d'un type donné Ti provenant de l'ETR 25 9, le moteur de transformation 111 peut transformer le fichier de description de structure XSD3 associé au conteneur de données non-standard dans les fichiers de description de structure locaux 115 en un fichier de description de structure cible XSD4 à l'aide des règles de mappage client 117 associé au type de l'élément de données non-standard. Les règles de mappage client 117 définissent les règles de transformation vers le format de l'interface du 3 0 dispositif client cible 7, par exemple pour afficher les interfaces graphiques utilisateur (GUI) du dispositif client cible 7.3021787 The non-standard type Ti data container can then be generated by mapping the fields of the XML1 data exchange message to the non-standard data container primitives. The non-standard data storyteller is then added to the ETR 9 in association with the target structure description file (XSD2) stored at 115 for the type Ti as described in connection with FIG. 5. Any update or any addition of new content in the ETR 9 can be done at runtime. The use of the data exchange unit 11 thus makes it possible to dynamically convert any incoming data exchange message received from the content provider systems 4, 5 into several non-standard data content objects representing the data exchange units. 10 items to add / edit without requiring code changes. In transmission mode (dotted line), the travel management system 100 can transmit any data element of the ETR into the target interface of an external client device 7 via the data exchange unit. In transmission mode, the data exchange unit 11 receives as input a non-standard data container 15 (containing a non-standard data element or a standard data element of the Ti type previously converted to a non-standard data container). -standard). The non-standard type Ti data container is associated with a structure description file (referred to as the source structure description file) including a description of the attributes (key) of the non-standard data container, the attribute topology and the attribute format, such as an XSD file (115). A non-standard data container is also associated with key values that match the attribute values. If the data item to be transmitted by the travel management system 100 comprises a non-standard data container of a given type Ti from the ETR 25 9, the transformation engine 111 can transform the description file. of structure XSD3 associated with the non-standard data container in local structure description files 115 into an XSD4 target structure description file using client mapping rules 117 associated with the type of the non-standard data element standard. The client mapping rules 117 define the rules for transforming to the interface format of the target client device 7, for example to display the user graphical user interfaces (GUIs) of the target client device 7.

3021787 36 Si l'élément de données à transmettre au dispositif client 7 est un élément de données standard (par exemple, éléments GDS) du type Ti, l'élément de données standard peut être préalablement converti en un conteneur de données non-standard du même type à l'aide du convertisseur de conteneur de données 12. L'élément de données standard peut ensuite être 5 envoyé à l'unité d'échange de données 11 sous la forme d'un conteneur de données non-standard pour la transmission du dispositif client cible 7. La Figure 15 décrit un organigramme pour la transmission d'un élément de données de type Ti à l'interface cible d'un dispositif client 7 (Interface Graphique Utilisateur, GUI), selon certaines formes de réalisation.If the data element to be transmitted to the client device 7 is a standard data element (for example, GDS elements) of the type Ti, the standard data element may be previously converted to a non-standard data container of the data type. same type using the data container converter 12. The standard data element can then be sent to the data exchange unit 11 as a non-standard data container for transmission. of the target client device 7. Figure 15 depicts a flowchart for transmitting a data element of type Ti to the target interface of a client device 7 (User Graphic Interface, GUI), according to some embodiments.

10 Si l'élément de données est un élément de données standard (bloc 700), l'élément de données standard du type Ti peut être converti en un conteneur de données non-standard du même type Ti au bloc 701 (similaire au bloc 604 de la Figure 12). L'élément de données standard est ensuite traité au bloc 703 sous la forme d'un conteneur de données non-standard du type Ti, associé à un fichier de description de structure XSD1 et à des valeurs de clés Vi.If the data item is a standard data item (block 700), the standard data item of type Ti may be converted to a non-standard data container of the same type Ti at block 701 (similar to block 604). of Figure 12). The standard data item is then processed in block 703 as a non-standard type Ti data container, associated with an XSD1 structure description file and Vi key values.

15 Si l'élément de données est un élément de données non-standard se présentant sous la forme d'un conteneur de données non-standard du type Ti (bloc 700) associé à un fichier de description de structure XSD1 et à des valeurs de clés Vi, l'élément de données non-standard de type Ti est traité directement au bloc 703. Au bloc 703, le fichier de description de structure source XSD1 associé au conteneur 2 0 de données non-standard est récupéré. Au bloc 704, le fichier de description de structure source XSD1 est converti en un fichier de description de structure cible XSD2 à l'aide du moteur de mappage 110 (par exemple, moteur XSLT) pour analyser le fichier de description de structure source XSD1 et convertir les champs analysés en un fichier de description de structure cible XSD2 à l'aide 2 5 des règles de mappage 113 (par exemple, feuilles de style XSLT). Les règles de mappage 113 sont définies selon le format de l'interface cible du dispositif client 7. Au bloc 705, le message XML contenant l'élément de données à transmettre au dispositif client est généré par ajout des valeurs Vi associées au conteneur de données non-standard.If the data item is a non-standard data item in the form of a non-standard type Ti data container (block 700) associated with an XSD1 structure description file and Vi keys, the non-standard data element of type Ti is processed directly at block 703. At block 703, the source structure description file XSD1 associated with the non-standard data container is retrieved. At block 704, the source structure description file XSD1 is converted to an XSD2 target structure description file using the mapping engine 110 (e.g., XSLT engine) to parse the source structure description file XSD1 and convert the scanned fields to an XSD2 target structure description file using mapping rules 113 (e.g., XSLT stylesheets). The mapping rules 113 are defined according to the format of the target interface of the client device 7. At block 705, the XML message containing the data item to be transmitted to the client device is generated by adding the values Vi associated with the data container. not standard.

3 0 Au bloc 706, le message XML est envoyé à l'interface cible du dispositif client 7 via le réseau 13. L'interface cible peut être adaptée de manière dynamique et transparente en 3021787 37 réponse à la réponse du message XML. Les dispositifs clients externes 7 peuvent en outre extraire l'élément de données contenu dans le message XML et le stocker selon son propre standard sans avoir besoin d'appliquer un mécanisme de décodage et de validation complexe aux données, quel que soit 5 le type des données et le format de l'interface cible. Grâce à l'utilisation de conteneur de données non-standard associé à des fichiers de description de structure (XSD) et ayant la capacité de se sérialiser sous la forme d'un message d'échange de données en un quelconque format 15 (par exemple, XML), un nouveau type d'interfaces 2 peut donc être construit.In block 706, the XML message is sent to the target interface of the client device 7 via the network 13. The target interface may be dynamically and transparently adapted in response to the response of the XML message. External client devices 7 can further extract the data element contained in the XML message and store it according to its own standard without the need to apply a complex decoding and validation mechanism to the data, regardless of the type of data. data and format of the target interface. Through the use of non-standard data container associated with structure description (XSD) files and having the ability to serialize as a data exchange message in any format (e.g. , XML), a new type of interfaces 2 can be built.

10 Dans une forme de réalisation, l'unité d'échange de données 11 peut être utilisée par le moteur de gestion de contenu 3 pour générer de manière dynamique une représentation cohérente de résultats de demande sur l'interface d'un dispositif client 7 (par exemple, système d'agences de voyages) quel que soit le type de contenu (contenu standard, non-standard, mixte), avec aussi peu de logiciel à codage manuel que possible.In one embodiment, the data exchange unit 11 may be used by the content management engine 3 to dynamically generate a coherent representation of request results on the interface of a client device 7 ( for example, travel agency system) regardless of the type of content (standard, non-standard, mixed content), with as little manual coding software as possible.

15 Les applications de services peuvent utiliser directement une structure de données homogène pour stocker les données dans les interfaces 2. Cela rend inutile l'échange entre les couches interfaces et les couches BOM d'encore un autre format de la structure de données. Cela permet en outre de réduire le surdébit entre les données stockées dans l'enregistrement de voyage étendu et la représentation des données dans les interfaces de services exposées 2 0 aux dispositifs clients 7 (par exemple, systèmes d'agences de voyages) via une plateforme unique. De manière spécifique, le procédé de la Figure 13 peut être appliqué pour générer une représentation de résultats en réponse à une demande de service émanant d'un dispositif client 7 (par exemple, système d'agence de voyages 70) et afficher cette représentation sur 2 5 l'interface graphique utilisateur associée au service sur l'interface du dispositif client, tout en assurant que la représentation soit homogène quel que soit le type de contenu (contenu standard ou contenu non-standard). Lorsqu'un identifiant d'enregistrement associé à un contenu non-standard et/ou un contenu standard est ajouté dans la Structure de Données d'Enregistrement Etendue 9, les 3 0 applications de services sont adaptées pour générer une représentation d'enregistrement de manière dynamique et homogène, quel que soit le nouveau type.The service applications can directly use a homogeneous data structure to store the data in the interfaces 2. This renders unnecessary the exchange between the interface layers and the BOM layers of yet another format of the data structure. It further reduces the overhead between the data stored in the extended trip record and the representation of the data in the service interfaces exposed to the client devices 7 (eg, travel agency systems) via a platform. unique. Specifically, the method of Figure 13 may be applied to generate a representation of results in response to a service request from a client device 7 (eg, travel agency system 70) and display this representation on 2 5 the graphical user interface associated with the service on the client device interface, while ensuring that the representation is homogeneous regardless of the type of content (standard content or non-standard content). When a registration identifier associated with non-standard content and / or standard content is added in the Extended Registration Data Structure 9, the service applications are adapted to generate a registration representation of dynamic and homogeneous, whatever the new type.

3021787 38 L'application du moteur de gestion de contenu 3 correspondant à la demande de service peut accéder aux enregistrements correspondant au résultat obtenu auprès de l'ETR selon le procédé d'accès de la Figure 12 à l'aide de l'élément générique. L'implémentation de l'accès aux conteneurs de données non-standard (50) sur la base 5 de l'élément générique unique quel que soit le type de contenu à renvoyer au dispositif client 7 permet à chaque application de prendre en charge tout type de contenu provenant de systèmes de fournisseurs de contenu non-standard 5. Les applications dans le moteur de gestion de contenu 3 sont donc indépendantes du type de contenu. Pour renvoyer les résultats à l'interface du système d'agence de voyages 70, 10 l'application peut inspecter l'élément générique pour accéder au conteneur de données non- standard (bloc 605 de la Figure 6). Le conteneur de données non-standard ainsi accédé peut donc être retourné selon le procédé de la Figure 14. Le moteur de gestion de contenu 3 est donc adapté pour fournir une plateforme unique à tous les dispositifs clients 7 comprenant un ensemble d'interfaces par service (par 15 exemple, service de voyage) représentant une réponse unique indépendamment du type de produits qui doit être manipulé (par exemple : produit de transport aérien GDS classique (vol) / location de véhicule GDS / taxi non GDS / restaurant non GDS...). Pour faciliter l'intégration d'un nouveau contenu dans une application, l'interface de services interne 2 associée à l'application peut avoir un ensemble d'attributs communs pour 20 chaque famille de contenu. Cela permet à des nouveaux éléments d'une famille de contenu déjà existante de tirer avantage de toutes les fonctions d'affichage disponibles pour la famille. De manière spécifique, la structure de données sous-jacente du Conteneur de Données non-standard (50) peut partager un format commun dans une catégorie d'élément spécifique. Par exemple, le fichier de description de format XSDi utilisé pour représenter un 25 élément de données du type segment ligne aérienne peut être le même indépendamment du fait qu'il a été réservé via le système de gestion de voyages (100) ou via un autre système de réservation externe. Il peut donc également partager un ensemble de données communes avec des éléments d'une autre catégorie (par exemple, catégorie transport). En particulier, le moteur de transformation 111 peut être défini de telle sorte que, 30 pour un identifiant d'enregistrement donné H dans l'ETR 9 associé à un élément de données non-standard et à un élément de données standard, si l'élément de données non-standard et 3021787 39 l'élément de données standard sont d'un même type général (par exemple, "hôtel"), une même représentation peut être générée pour les deux éléments de données au niveau de l'interface cible du dispositif client externe 7 (par exemple, système d'agence de voyages) par mappage du fichier de description de structure XSD1 associé à l'élément de données non-standard et du 5 fichier de description de structure XSD2 associé à l'élément de données standard sur un même fichier de description de structure du type commun compatible avec l'interface cible. Par exemple, tel que décrit sur la Figure 16, un élément de données standard du type TYPE C est tout d'abord converti en un conteneur non-standard associé au même type TYPE C (bloc 701 de la Figure 7), puis une représentation (XSD2) est générée sur le dispositif 10 client pour le TYPE C à l'aide du moteur de transformation 111 et des règles de mappage 117 définies pour le TYPE C au niveau du dispositif client (feuilles de style). Tel que représenté dans l'exemple de la Figure 17, une même représentation (XSD2) sera utilisée pour un conteneur non-standard du type TYPE C. De plus, les règles de transformation 117 peuvent être définies de telle sorte que des 15 attributs d'un même type de tout élément de données soient mappé sur une même sous-représentation, quel que soit le type de contenu (non-standard ou standard), qui comprend les attributs (dans le fichier de description cible). Dans l'exemple décrit sur la Figure 18, un conteneur standard de type TYPE D comprenant un ensemble d'attributs A1, A2, A3, A4 (tel que défini dans le fichier de 2 0 description de structure source XSD1) est tout d'abord converti en un conteneur non-standard associé au même type TYPE D (bloc 701 de la Figure 1), puis une représentation XSD2 (fichier de description de structure cible) est générée sur le dispositif client pour le TYPE D à l'aide du moteur de transformation 111, la représentation XSD2 comprenant des attributs de représentation {E1, E2, E3, E4} correspondant aux attributs source {A1, A2, A3, A4} . Tel 2 5 que représenté dans l'exemple de la Figure 19, une même représentation {E2, E3 } peut être générée pour les attributs A2, A3 d'un conteneur non-standard d'un autre type TYPE C comprenant l'ensemble d'attributs {C1, A2, A3, C4}, par application des mêmes règles de mappage 117 pour des attributs similaires d'un fichier de description de structure source XSD. Le moteur de mappage 11 générera une représentation XSD3 = {F 1 , E2, E3, F4, F5} 3 0 avec une même représentation E2 et E3 pour les attributs respectifs A2 et A3. Le moteur de gestion de contenu 3 fournit donc une plateforme unique à tous les dispositifs clients 7 (associés par exemple à des systèmes d'agences de voyages) comprenant 3021787 un ensemble d'interfaces par application, par l'intermédiaire desquelles une unique réponse peut être générée indépendamment du type de contenu qui doit être manipulé (par exemple, produit de type Vol GDS, location de véhicule GDS, taxi non GDS, restaurant non GDS, etc.).The application of the content management engine 3 corresponding to the service request can access the records corresponding to the result obtained from the ETR according to the access method of FIG. 12 using the generic element. . Implementing access to non-standard data containers (50) based on the single wildcard regardless of the type of content to be returned to the client device 7 allows each application to support any type of content. content from non-standard content provider systems 5. The applications in the content management engine 3 are therefore independent of the content type. To return the results to the interface of the travel agency system 70, the application may inspect the generic element to access the non-standard data container (block 605 of Figure 6). The non-standard data container thus accessed can therefore be returned according to the method of FIG. 14. The content management engine 3 is therefore adapted to provide a single platform for all the client devices 7 comprising a set of interfaces per service. (eg, travel service) representing a single response regardless of the type of products to be handled (eg: conventional GDS airlift (flight) / GDS vehicle hire / non-GDS / non-GDS. .). To facilitate the integration of new content into an application, the internal service interface 2 associated with the application may have a set of common attributes for each content family. This allows new elements of an existing content family to take advantage of all the display features available to the family. Specifically, the underlying data structure of the non-standard Data Container (50) can share a common format in a specific item category. For example, the XSDi format description file used to represent a data element of the airline line segment type may be the same regardless of whether it has been reserved via the travel management system (100) or via another external booking system. It can therefore also share a set of common data with elements of another category (for example, transport category). In particular, the transformation engine 111 may be defined such that for a given record identifier H in the ETR 9 associated with a non-standard data item and a standard data item, if the non-standard data element and the standard data element are of the same general type (e.g., "hotel"), the same representation can be generated for both data elements at the target interface of the external client device 7 (eg, travel agency system) by mapping the XSD1 structure description file associated with the non-standard data element and the XSD2 structure description file associated with the standard data on the same common type structure description file compatible with the target interface. For example, as depicted in Figure 16, a TYPE C standard data item is first converted to a non-standard container associated with the same TYPE C type (block 701 of Figure 7), and then a representation (XSD2) is generated on the client device for TYPE C using the transformation engine 111 and mapping rules 117 defined for TYPE C at the client device (style sheets). As shown in the example of Figure 17, the same representation (XSD2) will be used for a non-standard TYPE C container. In addition, transformation rules 117 may be defined such that attributes of the same type of any data item is mapped to the same under-representation, regardless of the content type (non-standard or standard), which includes the attributes (in the target description file). In the example depicted in FIG. 18, a typical TYPE D container comprising a set of attributes A1, A2, A3, A4 (as defined in the source structure description file XSD1) is all first converted to a non-standard container associated with the same type TYPE D (block 701 of Figure 1), then an XSD2 representation (target structure description file) is generated on the client device for the TYPE D using the transformation engine 111, the XSD2 representation comprising representation attributes {E1, E2, E3, E4} corresponding to the source attributes {A1, A2, A3, A4}. As shown in the example of FIG. 19, a same representation {E2, E3} can be generated for the attributes A2, A3 of a non-standard container of another type TYPE C comprising the set of attributes {C1, A2, A3, C4} by applying the same mapping rules 117 for similar attributes of an XSD source structure description file. The mapping engine 11 will generate a representation XSD3 = {F1, E2, E3, F4, F5} with the same representation E2 and E3 for the respective attributes A2 and A3. The content management engine 3 thus provides a single platform for all client devices 7 (associated for example with travel agency systems) comprising a set of application interfaces, through which a single response can be provided. be generated regardless of the type of content that needs to be handled (for example, GDS flight product, GDS vehicle rental, non-GDS taxi, non-GDS restaurant, etc.).

5 Les applications de services peuvent donc utiliser directement une structure de données homogène pour stocker les données dans les interfaces. Cela rend inutile l'échange entre les couches interfaces et les couches BOM d'encore un autre format de la structure de données. Cela permet en outre de réduire le surdébit entre les données stockées dans l'Enregistrement de Voyage étendu 9 et la représentation des données dans les interfaces de 10 services 2 exposées aux dispositifs clients 7 (par exemple, systèmes d'agences de voyages) via une plateforme unique. Par conséquent, l'unité d'échange de données 11 permet de générer de manière dynamique une représentation cohérente des résultats quel que soit le type de contenu (contenu standard, non-standard, mixte), avec aussi peu de logiciel à codage manuel que 15 possible. En particulier, le message d'échange de données utilisé pour retourner les résultats au dispositif client 7 a un format proche des structures internes (par exemple, XML) et ce format est hérité des fichiers de description de structure (par exemple, XSD) utilisés pour définir les éléments eux-mêmes dans l'Elément générique.Service applications can therefore directly use a homogeneous data structure to store the data in the interfaces. This makes the exchange between the interface layers and the BOM layers unnecessary for another format of the data structure. This further reduces the overhead between the data stored in the Extended Travel Record 9 and the data representation in the service 2 interfaces 2 exposed to the client devices 7 (eg, travel agency systems) via a single platform. Consequently, the data exchange unit 11 makes it possible to dynamically generate a coherent representation of the results regardless of the type of content (standard, non-standard, mixed content), with as little manual coding software as 15 possible. In particular, the data exchange message used to return the results to the client device 7 has a format close to the internal structures (for example, XML) and this format is inherited from the structure description files (for example, XSD) used. to define the elements themselves in the Generic Element.

2 0 Le système de gestion de voyages 100 fournit donc un ensemble d'interfaces par service de voyage représentant une réponse unique indépendamment du type de produits qui doit être manipulé (par exemple : produit de transport aérien GDS classique (vol) / location de véhicule GDS / taxi non GDS / restaurant non GDS...). La Figure 20 décrit un organigramme d'un procédé de gestion de contenu selon 2 5 certaines formes de réalisation. Un contenu associé à un identifiant d'enregistrement commun dans l'ETR 9 comprend un ensemble d'éléments de données apparenté à un même voyage. Selon l'application nécessitant un identifiant d'enregistrement particulier dans l'ETR 9, l'application peut nécessiter que les éléments de données différents associés à un repère de dossier donné soient disposés (par exemple, ordonnés) selon des critères de réagencement 3 0 prédéfinis lorsqu'ils sont accédés par l'application. Le procédé de réagencement de contenu peut être implémenté pour réarranger les 3021787 41 éléments de données selon des critères de réarrangement prédéfinis par l'application, par exemple selon un ordre chronologique, un critère de rangement, etc. Le procédé de réagencement peut fusionner les éléments de données standard et non-standard en un modèle de rangement abstrait basé sur un élément abstrait. L'élément abstrait peut être utilisé pour 5 trier les éléments de données selon les critères de réagencement. L'application peut donc retourner un élément de données fusionné ordonné selon les contraintes d'interface cible. Il peut en résulter par exemple des documents d'itinéraire agrégés où des segments de PNR et des éléments étendus (contenu non-standard) peuvent être fusionnés dans une même vue. En particulier, pour chaque élément de données, si l'élément de données est un 10 élément de données non-standard (bloc 801), l'élément de données non-standard du type Ti est transformé en un élément abstrait d'un type unique contenant un sous-ensemble des attributs de l'élément de données non-standard du type Ti dans le bloc 802. Les attributs du conteneur de données non-standard sont filtrés selon des critères de filtrage générés en fonction des critères de réagencement (par exemple, ordre chronologique, les critères de 15 filtrage sélectionneront des attributs de données). L'élément abstrait peut être implémenté sous la forme d'un objet technique tel qu'un BOM, et peut être basé sur la même technologie que le conteneur de données non-standard et/ou l'élément générique. Il convient d'observer que l'élément générique et l'élément abstrait permettent tous les deux une abstraction du type d'un élément de données.The travel management system 100 thus provides a set of travel service interfaces representing a single response regardless of the type of products to be handled (eg conventional GDS airlift (flight) / vehicle rental product). GDS / non GDS taxi / non GDS restaurant ...). Figure 20 depicts a flowchart of a content management method according to some embodiments. Content associated with a common registration identifier in the ETR 9 includes a set of data items related to the same trip. Depending on the application requiring a particular registration identifier in the ETR 9, the application may require that the different data items associated with a given folder mark be arranged (eg, ordered) according to rearrangement criteria. predefined when accessed by the application. The content rearrangement method may be implemented to rearrange the data items according to predefined rearrangement criteria by the application, for example in chronological order, storage criteria, etc. The rearrangement process can merge the standard and non-standard data elements into an abstract-based abstract storage model. The abstract element can be used to sort the data elements according to the rearrangement criteria. The application can therefore return an ordered merged data item according to the target interface constraints. This can result, for example, from aggregated route documents where PNR segments and extended elements (non-standard content) can be merged into a single view. In particular, for each data element, if the data element is a non-standard data element (block 801), the non-standard data element of type Ti is transformed into an abstract element of a type. A single subset of the attributes of the non-standard data element of type Ti in block 802. The attributes of the non-standard data container are filtered according to filtering criteria generated according to the rearrangement criteria (eg for example, chronological order, the filtering criteria will select data attributes). The abstract element can be implemented as a technical object such as a BOM, and can be based on the same technology as the non-standard data container and / or the generic element. It should be noted that both the generic element and the abstract element allow abstraction of the type of a data element.

2 0 Si l'élément de données est un élément de données standard (bloc 803) du type Ti, il peut être converti en un conteneur de données non-standard du même type Ti au bloc 804 (de manière similaire à l'étape 604 de la Figure 6). Au bloc 805, les attributs de l'élément de données non-standard ainsi obtenu sont filtrés selon des critères de filtrage.If the data item is a standard data element (block 803) of the type Ti, it can be converted to a non-standard data container of the same type Ti at block 804 (similarly to step 604). of Figure 6). In block 805, the attributes of the non-standard data item thus obtained are filtered according to filtering criteria.

2 5 Au bloc 806, l'élément de données non-standard obtenu à l'étape 804 est transformé en un élément abstrait contenant l'ensemble filtré d'attributs de l'élément de données non-standard de type Ti correspondant à l'élément de données standard de type Ti. De manière similaire à l'élément générique, l'élément abstrait obtenu forme un état transitoire de l'élément de données non-standard, ce qui permet d'abstraire le type de 3 0 conteneur de données. Cela permet en outre une manipulation globale des attributs d'éléments de données filtrés par l'application, quels que soient leurs types, par inspection du modèle 3021787 42 abstrait et en particulier un agencement de ceux-ci en fonction des critères de réagencement. Dans le champ Voyage, le PNR standard 90 peut être stocké dans une zone de stockage qui est partagée entre une pluralité de systèmes. Les éléments de données standard enregistrés dans le PNR standard 90 peuvent être de différents types et chaque élément peut 5 avoir son propre format de sérialisation. Les éléments de données standard peuvent partager un même identifiant d'enregistrement si les éléments de données sont liés (par exemple, communs à un même passage ou un même itinéraire). De manière similaire, un élément de données dans le PNR non-standard 91 peut partager un même identifiant d'enregistrement qu'un autre élément de données dans le PNR 10 non-standard 91 ou le PNR standard si les éléments de données sont liés. Le PNR non-standard 91 peut être stocké dans la même zone de stockage que le PNR standard. D'une autre manière, le PNR standard 90 et le PRN non-standard 91 peuvent être stockés dans des zones de stockage différentes. Les deux zones peuvent être générées par un mécanisme de gestion global afin de permettre une synchronisation de données communes. Le mécanisme de 15 gestion global peut être implémenté pour lier la zone de stockage dédiée au PNR non-standard 91 à l'autre zone de stockage dédiée au PNR standard 90 à chaque demande qui nécessite de manipuler l'enregistrement de voyage étendu 9 global. Même si l'ETR 9 est divisé en deux structures de données d'enregistrement 90 et 91, l'ETR 9 peut être géré globalement en fonction des identifiants d'enregistrement communs 20 identifiant des éléments de données apparentés, des données de conteneurs auxiliaires et/ou des informations de structure de données d'enregistrement. Les données du conteneur de données auxiliaires peuvent comprendre des informations de commande concernant chaque conteneur de données (par exemple, date de création, date de dernière modification, etc.). Dans des approches classiques, de telles 25 informations sont stockées directement dans chaque conteneur de données standard en association avec un identifiant d'enregistrement 0 et peuvent être accédées pour gérer le PNR standard (par exemple pour purger périodiquement le PNR standard). Cependant, cette approche ne permet pas une gestion optimisée des deux structures de données d'enregistrement 90 et 91.In block 806, the non-standard data item obtained in step 804 is transformed into an abstract element containing the filtered set of attributes of the non-standard type Ti data item corresponding to the standard data element of type Ti. Similar to the generic element, the resulting abstract element forms a transient state of the nonstandard data element, which makes it possible to abstract the type of data container. This further allows global manipulation of the attributes of the application-filtered data items, regardless of their types, by inspection of the abstract model and in particular an arrangement thereof according to the rearrangement criteria. In the travel field, the standard PNR 90 may be stored in a storage area that is shared between a plurality of systems. The standard data elements recorded in the standard PNR 90 may be of different types and each element may have its own serialization format. Standard data items can share the same record identifier if the data items are linked (for example, common to the same pass or route). Similarly, a piece of data in the non-standard PNR 91 may share the same record identifier as another piece of data in the non-standard PNR 91 or the standard PNR if the data items are linked. The non-standard PNR 91 can be stored in the same storage area as the standard PNR. Alternatively, the standard PNR 90 and the non-standard PRN 91 may be stored in different storage areas. Both zones can be generated by a global management mechanism to allow synchronization of common data. The global management mechanism may be implemented to link the dedicated non-standard PNR storage area 91 to the other standard PNR storage area 90 with each request that requires handling the global extended travel record 9. While ETR 9 is divided into two record data structures 90 and 91, ETR 9 can be managed globally based on common record identifiers 20 identifying related data items, auxiliary container data, and / or recording data structure information. Auxiliary data container data may include control information about each data container (eg, creation date, last modified date, etc.). In conventional approaches, such information is stored directly in each standard data container in association with a registration identifier 0 and can be accessed to manage the standard PNR (e.g., to periodically purge the standard PNR). However, this approach does not allow optimized management of the two record data structures 90 and 91.

3 0 La Figure 21 représente la structure de l'ETR 9 selon certaines formes de réalisation. Tel que représenté, pour optimiser la gestion globale des deux structures de données 3021787 43 d'enregistrement 90 et 91, dans une certaine forme de réalisation, l'enregistrement de voyage étendu 9 peut en outre comprendre une structure de données auxiliaires 92 (également appelée "structure de données de gestion centrale" ou "zone de gestion centrale") pour l'enregistrement de données de conteneur auxiliaires apparentées à chaque conteneur de 5 données créé dans l'ETR 9, telles que la date de création d'un conteneur de données, la date de dernière modification d'un conteneur de données, etc. Les informations enregistrées dans la structure de données auxiliaires 92 peuvent être utilisées pour gérer les deux zones d'une manière synchrone. Chaque entrée de la structure de données auxiliaires 92 peut partager les mêmes identifiants d'enregistrement sous la forme de conteneurs de données créés dans l'ETR 10 9. En outre, chaque enregistrement de la structure de données auxiliaires 92 peut être associé à un ensemble de données de conteneur auxiliaires apparentées aux conteneurs de données enregistrés dans l'ETR 9 (ayant le même identifiant d'enregistrement). La structure de données auxiliaires 92 peut être remplie d'informations de conteneur de données contenues dans la structure de données d'enregistrement standard 90 et la structure de données 15 d'enregistrement non-standard 91. Dans certaines formes de réalisation, chaque entrée de la structure de données auxiliaires 92 peut comprendre l'ensemble d'attributs auxiliaires apparentés aux conteneurs de données partageant le même identifiant d'enregistrement dans la structure de données d'enregistrement étendue (9). Chaque entrée peut comprendre un conteneur de données 2 0 auxiliaire pour le stockage de l'ensemble de données de conteneur auxiliaires apparentées aux enregistrements de l'ETR 9 partageant le même identifiant d'enregistrement. L'ensemble de données de conteneur auxiliaires peut comprendre des attributs de commande représentant des informations de commande relatives aux enregistrements de l'ETR 9 partageant le même identifiant d'enregistrement, tels que la date précédente de purge de l'enregistrement.Figure 21 shows the structure of the ETR 9 according to some embodiments. As shown, to optimize the overall management of the two record data structures 90 and 91, in one embodiment, the extended travel record 9 may further include an auxiliary data structure 92 (also called "central management data structure" or "central management area") for recording auxiliary container data related to each data container created in the ETR 9, such as the date of creation of a container of data, the date of last modification of a data container, etc. The information stored in the auxiliary data structure 92 can be used to manage the two areas in a synchronous manner. Each input of the auxiliary data structure 92 may share the same record identifiers as data containers created in the ETR 9. In addition, each record of the auxiliary data structure 92 may be associated with a set of data records. auxiliary container data related to the data containers registered in the ETR 9 (having the same registration identifier). The auxiliary data structure 92 may be filled with data container information contained in the standard record data structure 90 and the non-standard record data structure 91. In some embodiments, each entry of the auxiliary data structure 92 may comprise the set of auxiliary attributes related to the data containers sharing the same record identifier in the extended record data structure (9). Each entry may include an auxiliary data container for storing the ancillary container data set related to the records of the ETR 9 sharing the same registration identifier. The auxiliary container data set may include control attributes representing control information relating to the ETR 9 records sharing the same record identifier, such as the previous purge date of the record.

2 5 Dans certaines formes de réalisation, les informations de conteneur de données relatives à tous les enregistrements d'une structure de données d'enregistrement donnée 90 ou 91 peuvent être enregistrées dans un enregistrement dédié (également appelé "enregistrement d'informations de conteneur") dans cette structure de données d'enregistrement (90 ou 91) et se voir assigner un identifiant d'enregistrement particulier (par exemple, identifiant 3 0 d'enregistrement 0). L'enregistrement d'informations de conteneur de la structure de données d'enregistrement standard 90 et/ou l'enregistrement d'informations de conteneur de la structure de données d'enregistrement non-standard 91 peuvent être copiés dans la structure 3021787 44 de données non auxiliaires 92 à des intervalles de temps différents, par exemple périodiquement ou en réponse à une demande ou, d'une autre manière, à chaque fois que l'ETR 9 est sauvegardé dans la ou les bases de données 8. La structure de données auxiliaires 92 peut en outre enregistrer des informations de 5 structure de données d'enregistrement relatives à la structure de données d'enregistrement standard et/ou à la structure de données d'enregistrement non-standard, telles que des informations de version identifiant la dernière version de la structure de données d'enregistrement standard 90 et de la structure de données d'enregistrement non-standard 91 dans les bases de données.In some embodiments, the data container information relating to all records of a given record data structure 90 or 91 may be recorded in a dedicated record (also called "container information record"). ) in this recording data structure (90 or 91) and being assigned a particular record identifier (eg, record identifier 0). The container information record of the standard record data structure 90 and / or the container information record of the non-standard record data structure 91 can be copied into the structure 3021787 44 of non-auxiliary data 92 at different time intervals, for example periodically or in response to a request or, alternatively, whenever the ETR 9 is stored in the database (s). Auxiliary data 92 may further record registration data structure information relating to the standard registration data structure and / or the non-standard registration data structure, such as version information identifying the latest version of the standard registration data structure 90 and the non-standard registration data structure 91 in the databases.

10 Le système de gestion de voyages 100 peut comprendre une unité de commande d'ETR 18 pour gérer l'ETR 9 en fonction des données comprises dans la structure de données auxiliaires 92 (informations de données de conteneur auxiliaires et/ou les informations de structure de données d'enregistrement standard 90 et/ou les informations de structure de données d'enregistrement non-standard 91).The travel management system 100 may include an ETR controller 18 for managing the ETR 9 based on the data included in the auxiliary data structure 92 (auxiliary container data information and / or the structure information). standard recording data 90 and / or the non-standard recording data structure information 91).

15 Dans une forme de réalisation, l'unité de commande d'ETR 18 peut comprendre un module de purge 180 configuré pour purger périodiquement des enregistrements du PNR standard 90 et du PNR non-standard 91 de manière synchrone pour des données communes, à l'aide d'identifiants d'enregistrement communs, les données de conteneur auxiliaires étant enregistrées dans la structure de données auxiliaires 92 et/ou les informations de structure de 2 0 données d'enregistrement. Dans certaines formes de réalisation, l'unité de commande d'ETR 18 peut comprendre un gestionnaire d'accès 181 pour traiter simultanément un accès à un même identifiant d'enregistrement dans le PNR standard 90 et dans le PNR non-standard 91 en fonction des données enregistrées dans la structure de données auxiliaires 92. Dans cette 2 5 forme de réalisation, la structure de données auxiliaires peut en outre enregistrer des informations de version identifiant la dernière version de la structure de données d'enregistrement standard 90 et de la structure de données d'enregistrement non-standard 91 dans les bases de données 8. Par exemple, à chaque fois que l'ETR 9 est sauvegardé dans la base de données à partir du contexte, les informations de version sont mises à jour dans la 3 0 structure de données auxiliaires 92. Le gestionnaire d'accès 18 peut être configuré pour gérer l'accès à l'ETR 9 en fonction des informations de version enregistrées dans la structure de données auxiliaires 92.In one embodiment, the ETR control unit 18 may include a purge module 180 configured to periodically purge records of the standard PNR 90 and the non-standard PNR 91 synchronously for common data at the same time. using common registration identifiers, the auxiliary container data being stored in the auxiliary data structure 92 and / or the recording data structure information. In some embodiments, the ETR control unit 18 may include an access manager 181 for simultaneously processing access to the same registration identifier in the standard PNR 90 and in the non-standard PNR 91 based on stored in the auxiliary data structure 92. In this embodiment, the auxiliary data structure may further record version information identifying the latest version of the standard record data structure 90 and the structure. For example, each time the ETR 9 is saved in the database from the context, the version information is updated in the database. Auxiliary Data Structure 92. The access manager 18 may be configured to manage access to the ETR 9 based on the version information stored in the structure. auxiliary data 92.

3021787 Le code programme selon l'une quelconque des formes de réalisation de l'invention décrites ici peut être distribué sur une base individuelle ou collective sous la forme d'un produit de programme se présentant sous toute une variété de formes différentes. En particulier, le code programme peut être distribué à l'aide de supports lisibles par ordinateur, 5 qui peuvent inclure des supports de stockage lisibles par ordinateur et des supports de communication. Les supports de stockage lisibles par ordinateur, qui sont par nature non transitoires, peuvent inclure des supports tangibles volatiles et non volatiles, et amovibles et non amovibles, implémentés selon une quelconque méthode ou technologie pour le stockage d'informations, telles que des instructions lisibles par ordinateur, des structures de données, 10 des modules de programmes, ou d'autres données. Les supports de stockage lisibles par ordinateur peuvent inclure une RAM, une ROM, une mémoire morte programmable et effaçable (EPROM), une mémoire morte électriquement programmable et effaçable (EEPROM), une mémoire flash ou une autre technologie de mémoire à semi-conducteurs, une mémoire morte à disque compact portable (CD-ROM), ou un autre stockage optique, des 15 cassettes magnétiques, une bande magnétique, un stockage par disque magnétique ou d'autres dispositifs de stockage magnétiques, ou tout autre support qui peut être utilisé pour stocker les informations souhaitées et qui peut être lu par un ordinateur. Les supports de communication peuvent mettre en oeuvre des instructions lisibles par ordinateur, des structures de données, ou d'autres modules de programmes. A titre d'exemple, et sans 2 0 limitation, des supports de communication peuvent inclure des supports filaires tels qu'un réseau filaire ou une connexion filaire directe, et des supports sans fil tels que des supports sans fil acoustiques, RF, infrarouge et autres. Toutes combinaisons de ce qui précède sont également incluses dans le cadre de supports lisibles par ordinateur. Les procédés décrits dans le présent document peuvent être implémentés par des 2 5 instructions de programme informatique fournies au processeur d'un quelconque type d'ordinateur pour produire une machine ayant un processeur qui exécute les instructions pour implémenter les fonctions/actes spécifiés dans le présent document. Ces instructions de programme informatique peuvent également être stockées dans un support lisible par ordinateur qui peut diriger un ordinateur afin qu'il fonctionne d'une manière particulière. A 3 0 cette fin, les instructions de programme informatique peuvent être chargées sur un ordinateur pour provoquer l'exécution d'une série d'étapes fonctionnelles et ainsi produire un procédé implémenté par ordinateur de telle sorte que les instructions exécutées fournissent des procédés pour l'implémentation des fonctions/actes spécifiés dans le présent document.The program code according to any of the embodiments of the invention described herein may be distributed on an individual or collective basis in the form of a program product in a variety of different forms. In particular, the program code may be distributed using computer readable media, which may include computer readable storage media and communication media. Computer readable storage media, which are inherently non-transient, may include volatile and nonvolatile tangible media, and removable and non-removable, implemented by any method or technology for storing information, such as readable instructions computer, data structures, program modules, or other data. Computer readable storage media may include RAM, ROM, EPROM, EPROM, flash memory, or other solid state memory technology, a portable compact disc (CD-ROM), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store the desired information and that can be read by a computer. The communication media may implement computer readable instructions, data structures, or other program modules. By way of example, and without limitation, communication media may include wired media such as a wired network or direct wired connection, and wireless media such as wireless, RF, infrared, and wireless media. other. Any combinations of the above are also included in the context of computer readable media. The methods described herein may be implemented by computer program instructions provided to the processor of any type of computer to produce a machine having a processor that executes the instructions for implementing the functions / acts specified herein. document. These computer program instructions may also be stored in a computer readable medium that can direct a computer to operate in a particular manner. For this purpose, the computer program instructions may be loaded onto a computer to cause a series of functional steps to be performed and thereby produce a computer implemented method so that the executed instructions provide methods for the execution of a computer program. implementation of the functions / actions specified in this document.

3021787 46 Bien que des formes de réalisation de l'invention aient été illustrées par une description de différents exemples, et bien que ces formes de réalisation aient été décrites d'une manière très détaillée, il n'est pas dans l'intention de la demanderesse de restreindre ou limiter d'une quelconque manière à ces détails le cadre des revendications jointes. Des 5 avantages et modifications additionnels apparaîtront de manière évidente à l'homme du métier. L'invention, prise dans ses aspects les plus larges, n'est donc pas limitée aux détails spécifiques, aux procédés représentatifs, et aux exemples illustratifs présentés et décrits. En particulier, bien que l'élément abstrait ait été décrit pour le réagencement de contenu, il peut être utilisé d'une manière générale par les applications internes pour l'accès à un contenu pour 10 différentes sortes d'opérations. Les règles de filtrage appliquées pour filtrer les attributs d'un conteneur de données peuvent varier en fonction des opérations prévues.Although embodiments of the invention have been illustrated by a description of various examples, and although these embodiments have been described in great detail, it is not intended to Applicant to restrict or in any way limit these details to the scope of the attached claims. Additional advantages and modifications will be apparent to those skilled in the art. The invention, taken in its broadest aspects, is thus not limited to the specific details, representative processes, and illustrative examples presented and described. In particular, although the abstract element has been described for content rearrangement, it can be used in general by internal applications for accessing content for different kinds of operations. The filtering rules applied to filter the attributes of a data container may vary depending on the intended operations.

Claims (12)

REVENDICATIONS1. Procédé de gestion de contenu fourni par un ou plusieurs fournisseurs de contenu (4, 5) dans un système de gestion de contenu comprenant un agrégateur d'applications (3) comprenant un ensemble d'applications et une structure de données d'enregistrement étendue (9), ladite structure de données d'enregistrement étendue comprenant une structure de données d'enregistrement standard (90) pour stocker un enregistrement associé à des éléments de données standard prédéfinis de types standard et une structure de données d'enregistrement non-standard (91) pour stocker des enregistrements associés à des éléments de données non-standard ayant un type non- standard différent desdits types standard prédéfinis, ledit procédé comprenant la réception (102) de contenu provenant d'un ou plusieurs fournisseurs de contenu (4, 5), ledit contenu comprenant un ensemble d'éléments de données associés de types respectifs, et, pour chaque élément de données : - la création d'un enregistrement pour l'élément de données dans la structure de données d'enregistrement standard (90) si l'élément de données présente un type standard, ledit enregistrement comprenant un identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; la génération d'un conteneur de données non-standard pour ledit élément de 2 0 données si l'élément de données a un type non-standard et la création d'un enregistrement pour l'élément de données dans la structure de données d'enregistrement non-standard (91), ledit enregistrement comprenant ledit identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; 2 5 ledit procédé de gestion de contenu comprenant en outre la gestion de l'accès aux enregistrements maintenus dans la structure de données d'enregistrement étendue (9) sur la base de l'identifiant d'enregistrement commun.REVENDICATIONS1. A content management method provided by one or more content providers (4, 5) in a content management system comprising an application aggregator (3) comprising a set of applications and an extended registration data structure ( 9), said extended record data structure including a standard record data structure (90) for storing a record associated with standard standard type predefined data items and a non-standard record data structure ( 91) for storing records associated with non-standard data items having a non-standard type different from said predefined standard types, said method comprising receiving (102) content from one or more content providers (4, 5). ), said content comprising a set of associated data elements of respective types, and, for each data element: n recording for the data item in the standard record data structure (90) if the data item has a standard type, said record including a common record identifier and data values corresponding to the item of data ; generating a non-standard data container for said data element if the data element has a non-standard type and creating a record for the data element in the data structure of the data element. non-standard record (91), said record including said common record identifier and data values corresponding to the data item; Said content management method further comprising managing access to the records maintained in the extended record data structure (9) based on the common registration identifier. 2. Procédé selon la revendication 1, dans lequel le conteneur de données non-standard 3 0 est un objet technique comprenant un ensemble de clés et de valeurs, chaque clé correspondant à un attribut de l'élément de données. 3021787 48The method of claim 1, wherein the non-standard data container 30 is a technical object comprising a set of keys and values, each key corresponding to an attribute of the data element. 3021787 48 3. Procédé selon la revendication 2, dans lequel le conteneur de données non-standard comprend une clé définissant le type du conteneur de données non-standard.The method of claim 2, wherein the non-standard data container comprises a key defining the type of the non-standard data container. 4. Procédé selon la revendication 2, dans lequel le conteneur de données non-standard 5 est un modèle d'objet métier, ledit modèle métier étant auto-implémenté.The method of claim 2, wherein the non-standard data container is a business object model, said business model being auto-implemented. 5. Procédé selon la revendication 4, dans lequel le conteneur de données non-standard comprend un mécanisme d'auto-sérialisation pour se sérialiser en un format cible d'application, le conteneur de données non-standard comprenant une bibliothèque 10 incorporant des informations de sérialisation pour sérialiser ou désérialiser le conteneur de données non-standard.The method of claim 4, wherein the non-standard data container includes a self-serialization mechanism for serializing into an application target format, the non-standard data container comprising a library incorporating information serialization to serialize or deserialize the non-standard data container. 6. Procédé selon la revendication 1, dans lequel il comprend la fourniture d'un accès d'une application à un enregistrement dans la structure de données d'enregistrement 15 étendue associé à un élément de données non-standard d'un type donné en générant un conteneur générique auquel est attribué un type générique unique, ledit conteneur générique contenant le conteneur de données non-standard dudit type donné.The method of claim 1, wherein it comprises providing an access of an application to a record in the extended record data structure associated with a non-standard data item of a given type in accordance with the present invention. generating a generic container assigned a unique generic type, said generic container containing the non-standard data container of said given type. 7. Procédé selon la revendication 6, comprenant la fourniture d'un accès d'une 2 0 application à un enregistrement dans la structure de données d'enregistrement étendue associé à un élément de données standard d'un type donné en convertissant l'élément de données standard en un élément de données non-standard et en générant un conteneur générique auquel est attribué ledit type générique unique contenant le conteneur de données non-standard résultant de ladite conversion. 25The method of claim 6, including providing an access of an application to a record in the extended record data structure associated with a standard data item of a given type by converting the item of standard data into a non-standard data element and generating a generic container to which said single generic type containing the non-standard data container resulting from said conversion is assigned. 25 8. Procédé selon l'une quelconque des revendications précédentes 5 et 6, dans lequel chaque application peut accéder au type d'un conteneur de données non-standard contenu dans l'élément générique en inspectant l'élément de données non-standard. 3 0The method of any of the preceding claims 5 and 6, wherein each application can access the type of a non-standard data container contained in the generic element by inspecting the non-standard data item. 30 9. Procédé selon l'une quelconque des revendications précédentes, dans lequel ladite structure de données d'enregistrement standard et ladite structure de données d'enregistrement non-standard sont stockées dans une même zone de stockage à l'intérieur du système de gestion de contenu. 3021787 49The method of any of the preceding claims, wherein said standard registration data structure and said non-standard registration data structure are stored in a same storage area within the management system. content. 3021787 49 10. Procédé selon l'une quelconque des revendications précédentes, dans lequel ladite structure de données d'enregistrement standard et ladite structure de données d'enregistrement non-standard sont stockées dans différentes zones de stockage à 5 l'intérieur du système de gestion de contenu.The method of any of the preceding claims, wherein said standard registration data structure and said non-standard registration data structure are stored in different storage areas within the management system. content. 11. Procédé selon l'une quelconque des revendications précédentes, dans lequel ledit contenu reçu peut être reçu par une application d'un ensemble d'applications chaînées de l'agrégateur d'applications (3), chaque élément de données non-standard du 10 contenu reçu étant transmis entre les applications dudit ensemble d'applications chaînées par des messages portant des informations d'auto-sérialisation, le stockage du conteneur de données non-standard dans l'enregistrement de voyage étendu (9) étant déclenché par l'une des applications de l'ensemble d'applications chaînées. 15The method of any of the preceding claims, wherein said received content can be received by an application of a set of chained applications of the application aggregator (3), each non-standard data element of the application aggregator. Received content being transmitted between the applications of said set of chained applications by messages carrying auto-serialization information, storing the non-standard data container in the extended travel record (9) being triggered by the one of the applications of the set of chained applications. 15 12. Système de gestion de contenu pour la gestion de contenu fourni par un ou plusieurs fournisseurs de contenu (4, 5), le système de gestion de contenu comprenant un agrégateur d'applications (3) comprenant un ensemble d'applications et une structure de données d'enregistrement étendue (9), ladite structure de données d'enregistrement étendue comprenant une structure de données d'enregistrement standard (90) pour 2 0 stocker un enregistrement associé à des éléments de données standard de types standard prédéfinis et une structure de données d'enregistrement non-standard (91) pour stocker des enregistrements associés à des éléments de données non-standard ayant un type non-standard différent desdits types standard prédéfinis, ledit système de gestion de contenu (100) étant configuré pour : 2 5 recevoir (102) un contenu provenant d'un ou de plusieurs fournisseurs de contenu (4, 5), ledit contenu comprenant un ensemble d'éléments de données associés de types respectifs, et, pour chaque élément de données : créer un enregistrement pour l'élément de données dans la structure de données d'enregistrement standard (90) si l'élément de données a un type 3 0 standard, ledit enregistrement comprenant un identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; générer un conteneur de données non-standard pour ledit élément de données si l'élément de données a un type non-standard et créer un enregistrement pour 3021787 50 l'élément de données dans la structure de données d'enregistrement non-standard (91), ledit enregistrement comprenant ledit identifiant d'enregistrement commun et des valeurs de données correspondant à l'élément de données ; ledit système de gestion de contenu étant en outre configuré pour gérer l'accès aux enregistrements maintenus dans la structure de données d'enregistrement étendue (9) sur la base de l'identifiant d'enregistrement commun.12. Content management system for managing content provided by one or more content providers (4, 5), the content management system comprising an application aggregator (3) comprising a set of applications and a structure extended registration data structure (9), said extended registration data structure comprising a standard registration data structure (90) for storing a record associated with standard data elements of predefined standard types and a structure non-standard record data (91) for storing records associated with non-standard data items having a non-standard type different from said predefined standard types, said content management system (100) being configured to: 2 Receiving (102) content from one or more content providers (4, 5), said content comprising a set of associated data items of the type s, and, for each data item: create a record for the data item in the standard record data structure (90) if the data item has a standard type, said record including an identifier common record and data values corresponding to the data item; generating a non-standard data container for said data item if the data item has a non-standard type and creating a record for the data item in the non-standard record data structure (91). ), said record including said common record identifier and data values corresponding to the data item; said content management system being further configured to manage access to the records maintained in the extended registration data structure (9) based on the common registration identifier.
FR1554332A 2014-05-30 2015-05-13 CONTENT MANAGEMENT SYSTEM Active FR3021787B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14305811.3A EP2950244A1 (en) 2014-05-30 2014-05-30 Content management system
US14/291,837 US10042871B2 (en) 2014-05-30 2014-05-30 Content management in a travel management system

Publications (2)

Publication Number Publication Date
FR3021787A1 true FR3021787A1 (en) 2015-12-04
FR3021787B1 FR3021787B1 (en) 2023-08-18

Family

ID=54544807

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1554332A Active FR3021787B1 (en) 2014-05-30 2015-05-13 CONTENT MANAGEMENT SYSTEM

Country Status (4)

Country Link
JP (1) JP6559468B2 (en)
KR (1) KR101700509B1 (en)
CN (1) CN105279599B (en)
FR (1) FR3021787B1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110326019B (en) * 2017-02-21 2023-10-24 艾玛迪斯简易股份公司 Nonstandard data management in a data management system
CN108876491A (en) * 2017-05-11 2018-11-23 艾玛迪斯公司 For handling and the system and method for checking of invoice data file
CN109962883B (en) * 2017-12-22 2021-06-29 北京华为数字技术有限公司 Information indication method, network equipment and user equipment
KR102093291B1 (en) 2018-06-14 2020-03-26 조영애 Managerial system for culture contents based on the block chain
CN113065049A (en) * 2021-03-19 2021-07-02 深圳市腾讯网域计算机网络有限公司 Data capture method and device, storage medium and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1843290A1 (en) * 2006-04-07 2007-10-10 Amadeus s.a.s Improved global distribution system for searching best travel deals
US20070260495A1 (en) * 2005-10-21 2007-11-08 Scott Mace Software Architecture and Database for Integrated Travel Itinerary and Related Reservation System Components
US20120259667A1 (en) 2011-04-05 2012-10-11 Marc Pelissier Reservation method and system with improved pnr handling

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004110620A (en) * 2002-09-20 2004-04-08 Hitachi Software Eng Co Ltd Dynamic integration method and system for web service
JP4413575B2 (en) * 2003-10-22 2010-02-10 株式会社日立製作所 Information processing apparatus that supports integrated management of account service information, integrated management method of account service information, program, and recording medium
JP2005352634A (en) * 2004-06-09 2005-12-22 Hidenori So Distributed data processing system using xml
US7574516B2 (en) * 2005-02-01 2009-08-11 Microsoft Corporation Mechanisms for transferring raw data from one data structure to another representing the same item
US7630999B2 (en) * 2005-07-15 2009-12-08 Microsoft Corporation Intelligent container index and search
CN102135997A (en) * 2011-03-23 2011-07-27 华中科技大学 Method for managing digital learning resource based on body
US20120278334A1 (en) * 2011-04-29 2012-11-01 John Abjanic Database System
CN103559322B (en) * 2013-11-22 2017-11-17 北大医疗信息技术有限公司 Document format conversion method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070260495A1 (en) * 2005-10-21 2007-11-08 Scott Mace Software Architecture and Database for Integrated Travel Itinerary and Related Reservation System Components
EP1843290A1 (en) * 2006-04-07 2007-10-10 Amadeus s.a.s Improved global distribution system for searching best travel deals
US20120259667A1 (en) 2011-04-05 2012-10-11 Marc Pelissier Reservation method and system with improved pnr handling

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SANTIAGO COMELLA-DORDA ET AL: "A Survey of Legacy System Modernization Approaches COTS-Based Systems Initiative Unlimited distribution subject to the copyright", 30 April 2000 (2000-04-30), XP055142625, Retrieved from the Internet <URL:http://www.sei.cmu.edu/reports/00tn003.pdf> [retrieved on 20140925] *

Also Published As

Publication number Publication date
CN105279599B (en) 2019-11-12
FR3021787B1 (en) 2023-08-18
JP6559468B2 (en) 2019-08-14
KR20150138822A (en) 2015-12-10
JP2016006641A (en) 2016-01-14
CN105279599A (en) 2016-01-27
KR101700509B1 (en) 2017-01-26

Similar Documents

Publication Publication Date Title
FR3021788A1 (en)
FR3021790A1 (en)
JP5863072B2 (en) Reservation method and system with improved PNR processing
Dunning et al. Streaming architecture: new designs using Apache Kafka and MapR streams
FR3021789A1 (en)
FR3021787A1 (en)
US10891279B2 (en) Content management in a travel management system
US10643292B1 (en) Trust-based social graph for travel planning
US10049329B2 (en) Content exchange with a travel management system
FR3069076A1 (en) SYSTEM AND METHOD FOR DYNAMICALLY DELIVERING CONTENT
WO2014201537A1 (en) System and method for generating personalized websites
EP2950246A1 (en) Content exchange method and system
FR3062228A1 (en) AGREGATIVE DATABASE OF RECORDINGS CONTEXT
US11625651B1 (en) Repository of customizable itineraries for travel planning
ES2822630T3 (en) A procedure and system for managing a log data structure
FR3067839A1 (en) UPDATING A COMPLETE TRAVEL ROUTE BASED ON THE MODIFICATION OF ONLY ONE TRAVEL BOOK
FR3061575A1 (en) INTERRUPTION INDEX FOR TRACKING DATABASE RECORDS

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLSC Publication of the preliminary search report

Effective date: 20230303

PLFP Fee payment

Year of fee payment: 9